Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Вопрос по VHDL знатокам
Отправлено
Sandwich 08 января 2009 г. 17:27
Описываю в тестбенче поведение линии синхронизации линии SCK порта SPI процессора. Сама линия SCK процессора имеет начальное состояние "на вход", подтянутое к единице. Далее, SCK переходит в активную единицу и производит серию импульсов. Тупо описываю это в тесбенче:
SCK <= 'H';
wait for 30 ns;
SCK <= '1';
wait for 30 ns;
SCK <= '0';
wait for 30 ns;
SCK <= '1';
....
Проблема состоит в том, что в тестируемой с помощью этого тестбенча модели ПЛИСа процесс, ожидающий фронта сигнала SCK, ловит не только фронты, но и момент смены состояния линии SCK c 'H' на '1'.
process(SCK)
begin
if (SCK'event and SCK='1') then
.......
end if;
end process;
Вопрос: Как этом случае грамотно описывать процесс с ожиданием перепада 0 -> 1, чтобы игнорировались переходы H -> 1 (речь идёт о физически реализуемой модели - в синтезируемом подмножестве VHDL).
Или пассивное подтянутое состояние линии в тестбенче как-то по-другому описывать? Я моделирую в Active-HDL 7.1.
Может, какие-то настойки есть у Active-HDL на эту тему?
Буду благодарен за ответы.
Составить ответ | Вернуться на конференцию.
Ответы