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

 
 
> XC9572 Binary Counter, Простой счетчик чудит
shell_inspector
сообщение Jan 11 2006, 15:15
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 11-01-06
Пользователь №: 13 061



Мужики, делаю элементарный 8-и битовый двоичный счетчик на ISE7.1 для XC9572-PC44 CPLD. Сигналы счетчика вывожу через IO выходы. По идее, частота каждого следущего бита досжна делиться на два. У меня же частота всех равна половине CLK (CLK/2) плюс некоторые биты "дергаются" словно шум по фазе. Не могу понять в чем дело. Вроде нет ни ошибок с компиляцией ни с загрузкой.
С сигналом CLEAR и CLK Все нормально. Исходник взят из справочника на инете:
--------------------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;


entity counter is
Port (
CLEAR: in std_logic;
Q5: out std_logic_vector(7 downto 0);
CLK : in std_logic);
end counter;

architecture Behavioral of counter is

signal Q5_IN : std_logic_vector(7 downto 0); -- Defines internal signals
begin
Q5 <= Q5_IN; -- Set output
process(CLEAR, CLK) begin
if CLEAR='1' then -- Clear counter ?
Q5_IN <= "00000000"; -- Yes. Clear counter
elsif CLK='1' and CLK'event then -- Clock rising edge ?

if Q5_IN=128 then -- Yes. Count = 4 ?
Q5_IN <= "00000000"; -- Yes. Clear counter
else -- No
Q5_IN <= Q5_IN + '1'; -- Count-up
end if;

end if;
end process;
end Behavioral;
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
shell_inspector
сообщение Jan 11 2006, 20:49
Сообщение #2





Группа: Новичок
Сообщений: 3
Регистрация: 11-01-06
Пользователь №: 13 061



Спасибо,

Сигнал дергается во времени на осцилоцграфе, по типу: ..1,0,1,0,1,0 и врдуг опять 0,1,0... Частота "клока" маленькая - не больше 1кHz.
Тест бенч на ISE 7.1.1 я писать не умею, не знаю где что вставлять. Раньше в унив. делал что то подобное в Xilinx Foundation. В принципе подобный делитеь можно записать и в другом духе, что я и пробовал, работает нормально. Ошибки в моем исходнике нет точно, так как такими же (почти) исходниками полон и интернет и книги по VHDL. Я подозреваю ошибку в прогр. обеспечении ISE 7.1. или сам чип тормозит. Или какие установки типа user time cosntraints и прочее. Обидно, не хочется просто так бросить этот пустяк так и не разобравшись в чем дело. Два дня уже на это потратил.
Elresearch, попробую твои вещи завтра, но почти уверен что тоже не пойдет. Что то он не любит конструкцию типа:
COUNT_INT <= COUNT_INT + 1;
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 12th August 2025 - 12:43
Рейтинг@Mail.ru


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