реклама на сайте
подробности

 
 
> Деление частоты в 50 миллионов раз., VHDL + XilinxISE
asya
сообщение May 17 2005, 23:14
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 43
Регистрация: 4-02-05
Пользователь №: 2 412



Написал вот такой вот код.
Код
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity tst_clk is
   Port ( clock : in std_logic;
          drive : out std_logic);
end tst_clk;

architecture Behavioral of tst_clk is
signal driveout1:std_logic;
begin
drive<=driveout1;
process(clock)
variable count:integer range 0 to 1_000_000:=0;
begin
    if    (clock='1') and (clock'event) then
 count:=count+1;
    end if;
    if count=1_000_000 then
 count:=0;
 driveout1<=not driveout1;
    end if;
end process;  
end Behavioral;

Делаю это для того, чтобы поделить частоту на 50 миллионов. (там написал 1 миллион, потому что проблема - читайте ниже). И вот если я там меняю 1 миллион на большее число (больше 1 048 ХХХ), то не работает. а вот так - работает. (правда слишком высокая частота - мне надо больше поделить. Если пытаюсь увеличить range - то даже так уже не работает. Пытаюсь убрать вообще range (знаю, что нехорошо, но ради теста) - тоже не работает. Пользуюсь Xilinx ISE 6.3 + spartan3.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
des00
сообщение May 18 2005, 03:56
Сообщение #2


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(asya @ May 17 2005, 18:14)
Делаю это для того, чтобы поделить частоту на 50 миллионов. (там написал 1 миллион, потому что проблема - читайте ниже). И вот если я там меняю 1 миллион на большее число (больше 1 048 ХХХ), то не работает. а вот так - работает. (правда слишком высокая частота - мне надо больше поделить. Если пытаюсь увеличить range - то даже так уже не работает. Пытаюсь убрать вообще range (знаю, что нехорошо, но ради теста) - тоже не работает. Пользуюсь Xilinx ISE 6.3 + spartan3.
*


integer = signed31 - 32бита, -2147483648.....2147483647
поэтому 50 милионов никак по любому, почему у вас 1048ХХХ вылетает смотреть нужно,
ИМХО причина в этом


--------------------
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- asya   Деление частоты в 50 миллионов раз.   May 17 2005, 23:14
- - kas   Цитата(asya @ May 18 2005, 07:14)Делаю это дл...   May 18 2005, 04:10
- - andrew_b   Нужно отказаться от integer и использовать std_log...   May 18 2005, 04:43
- - oval   Помоему код вообще написан неправильно. Выполнение...   May 18 2005, 11:13
|- - andrew_b   Цитата(oval @ May 18 2005, 15:13)переменная c...   May 18 2005, 13:06
- - oval   Цитата(andrew_b @ May 18 2005, 16:06)Цитата(o...   May 18 2005, 14:13
|- - andrew_b   Цитата(oval @ May 18 2005, 18:13)Да, возможно...   May 19 2005, 06:44
- - Genn   Самый простой способ решить вашу задачу - это реал...   May 18 2005, 18:38
- - asya   Des, вы написали range с краями в два миллиарда с ...   May 18 2005, 21:24
|- - kas   Цитата(asya @ May 19 2005, 05:24)Kas, входная...   May 19 2005, 05:01
- - oval   Цитата(andrew_b @ May 19 2005, 09:44)Цитата(o...   May 19 2005, 11:26
- - Alexandr   To kas: Маленькая поправочка. Надо проинициализир...   May 19 2005, 12:22
- - asya   Цитата(Alexandr @ May 19 2005, 16:22)To kas: ...   May 19 2005, 22:02
|- - kas   Цитата(asya @ May 20 2005, 06:02)да. это для ...   May 20 2005, 01:46
- - kas   Цитата(Alexandr @ May 19 2005, 20:22)To kas: ...   May 20 2005, 01:43


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 19:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01406 секунд с 7
ELECTRONIX ©2004-2016