-
wowa
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 157
-
Спасибо получено: 37
-
-
-
-
|
Для проверки мне нужно несколько клоков: один мастер и один мастер/8. Сейчас я для проверки туда вкладываю делитель и беру внутри клок делёный на 8. Как это сделать правильно без такой вот камасутры??
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
bfgroup
-
-
Не в сети
-
Осваиваюсь на форуме
-
-
Сообщений: 21
-
Спасибо получено: 11
-
-
|
wowa, а почему это камасутра-то?? вполне приемлемое решение когда стимулы описываются в синтезабельном стиле, пользуйтесь.
главный минус такого подхода -- неэффективное расходование памяти машины на которой проводится верефикация (особенно это касается вхдл, особенно вхдл!), но если у Вас тестовое окружение и имплементация небольшие, то такой подход можно использовать.
ну а если нет, то смотрите в сторону несинтезируемых конструкций. в VHDL при необходимости создать в тестбенче несколько клоков, я поступаю так:
constant tick: time:= 10 ns; -- задаю квант периода клока;
clk <= not clk after tick;
clk_8 <= not clk_8 after tick*8 -- взгляните как просто решается Ваша задача!!
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
wowa
-
Автор темы
-
Не в сети
-
Давно я тут
-
-
Сообщений: 157
-
Спасибо получено: 37
-
-
-
-
|
Так вот у меня не заработало.. parameter tck = 10; ///< clock tick
reg clk;
reg clk8;
/** The OCT instance */
oct_counter oct(
clk, clk8, reset, wr, data, cnt_out
);
always #(tck/2) clk <= ~clk;
always #(tck*4) clk8 <= ~clk8; В том то и дело что я написал чтото похожее и оно просто не работало :) Всегда работал только первый клок. А все остальные были как бы не дефинированы. Поэтому чтобы проверить как работает - я написал маленький делитель в теле модуля..
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Последнее редактирование: от wowa.
|
Время создания страницы: 0.089 секунд