[an error occurred while processing this directive]
(+)
(«Телесистемы»: Конференция «Языки описания аппаратуры (VHDL и др.))

миниатюрный аудио-видеорекордер mAVR

Отправлено Oldring 25 ноября 2004 г. 12:41
В ответ на: Таки допишу чего хотел (+) отправлено Dr.Alex 25 ноября 2004 г. 11:29

RTL схему иногда смотрю - но она у меня часто показываетсая как-то странно. Кроме того, по RTL схеме непонятно, куда именно будет помещен триггер.

Я, вроде бы, уже получил то, что хотел (по крайней мере, касательно двунаправленной шины) на VHDL. Так что - спасибо за помощь. Сейчас размышляю над тем, что является более читаемым. Склоняюсь к тому, что если я хочу выразить свое желание получить конкретную конструкцию в IOB - то использование примитивов является прямым путем, а игры с VHDL в рассчете на синтезатор - это непрямой путь. Потому сейчас я склонен считать, что использование примитивом в данном случае является более правильным путем описания схемы.

Входы я хочу защелкивать потому, что не очень хорошо ориентируюсь в констрейнтах. Если вход не будет защелкиваться в IOB - setup time будет зависеть от логики, которую синтезатор поместит на входе между пином и первым триггером, которая, в свою очередь, зависит от реализации внутренней схемы. Эта связь, на мой взгляд, излишняя - у меня проблем и без нее хватает. Если же триггер помещен в IOB - то такой связи нет. Разделяй и властвуй - один из главнейших принципов инженерии.

По поводу PCI - спасибо, понял, что Вы имеете в виду. Опять же, мне кажется, что этот пример - это иллюстрация того, что поведенческий VHDL не предназначен для описания таких вещей, как допустимость или недопустимость глитчей на конкретном пине. В конце концов, Вы совершенно правильно заметили, что это нельзя считать глюком синтезатора. Синтезатор, конечно, виноват - он не учитывает физику пина, в результате на выходе получается не то, что описано в VHDL. Но такова модель мира для синтезатора, а реальный мир оказался немного сложнее. Значит, правильное поведение пина должно описываться внешними средствами - например, констрейнтами, если бы их предусмотрели разработчики. Если же нет - то самый прямой путь - вручную описать структуру схемы, непосредственно взаимодействующую с пином. Через примитивы.

Замечу, что в Вашем примере безглитчного VHDL кода для PCI Вы полагаетесь на поведение конкретного синтезатора. Думаю, что если синтезатор будет другой - может получиться, что он редуцирует схему к состоянию, когда появятся глитчи - с точки зрения синтезатора поведение схемы-то не изменяется!

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru