|
Вопрос про ПЛИС в целом и VHDL, как описать адресуемый модуль |
|
|
|
Jul 18 2006, 19:54
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Здрасте. Пробовал воспользоваться поиском, ни к чему хорошему это не привело.
Вопроса 2.
Первый Можно ли описать такую вещ? Шину надо отпускать в 3 состояние (или high impedance не уверен что это одно и тоже) но при этом подтянуть ее к земле. В смысле чтобы если ее никто не дергает она ноль, но если кто ее дергает, конфликтов нет. Можно ли это сделать внутри ПЛИС? Это аналог того, что с наружи резюком к земле шинку подтянуть ну или к питанию. Если можно то лучше пример.
Второй Я как то его поднимал, и ответы меня устроили, но сейчас чуть другая ситуация. На плате 9 одинаковых ЦАП, хочется написать один интерфейсный модуль, а потом его размножить. Для этого надо писать модуль с возможностью задачи адреса (даже адресов). Как я понимаю это надо делать через Женерик или через внешнюю шину на которую константой задать адрес. Но вот беда, все что написано в женерике или передается снаружи не является статиком, и в кейз это запихать нельзя. На кейзе построен внутренний дешифратор адреса, каждый блок имеет несколько адресов. Я решил проблему описав кейз через иф и елсиф, но как то это криво. Как решают проблему профессионалы? Я имею ввиду как делаются по уму модули с меняемыми адресными пространствами? Пакедж не подойдет, потому что надо уметь создавать копии модулей с разными адресами.
И как бы подпункт этого вопроса, я потом все написанные модули объединяю в графике, мне так как то удобно, но вот вопрос, как нарисованному модулю задать параметры женерика? Есть ли какие методы, я вроде все обтыкал не нашел.
Ну вот и все, надеюсь вопросы не вызовут бурю негодования по поводу их несерьезности, заранее спасибо. Все это для Ксалинксов и среды ИСЕ 7.1, и VHDL, но ради эрудиции хотелось бы и про другие плис-среды услышать.
|
|
|
|
|
 |
Ответов
|
Jul 19 2006, 05:14
|
Профессионал
    
Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898

|
Цитата(Golikov A. @ Jul 19 2006, 02:54)  ... в 3 состояние (или high impedance не уверен что это одно и тоже) ... Одно и тоже Цитата(Golikov A. @ Jul 19 2006, 02:54)  В смысле чтобы если ее никто не дергает она ноль, но если кто ее дергает, конфликтов нет. Можно ли это сделать внутри ПЛИС? Это аналог того, что с наружи резюком к земле шинку подтянуть ну или к питанию. Если можно то лучше пример. У Altera, такая возможность обзывается bus-hold. Это уже обсуждалось, вот, здесь, например, http://electronix.ru/forum/index.php?showt...&hl=pull-up
|
|
|
|
|
Jul 19 2006, 08:42
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
[quote name='dinam' date='Jul 19 2006, 09:14' post='135467'] [/quote] У Altera, такая возможность обзывается bus-hold. Это уже обсуждалось, вот, здесь, например, http://electronix.ru/forum/index.php?showt...&hl=pull-up[/quote] не совсем то! это если шина выходит наружу. А меня интересует как это реализовать внутри ПЛИС, то есть если внутри ПЛИС блоки все висят на одной шине, и когда не выбраны отпускают ее в Z, но вот хочется чтобы когда все ее в Z отпустили она была бы в нуле. Про instantiation. если я правильно понял сделать еще один блок который следит за шиной, и если все устройства ее отпустили делает шину нулевой, а если кто то держит то наружу выпускает то что на шине? Глобально это имелось ввиду? или я совсем ничего не понял... почему кейз не ест, ну наверное вот почему ADRES_WIDTH - определен в пакедже. generic (constant SDAC_ADR : std_logic_vector ((ADRES_WIDTH-1) downto 0) :=(others=>'0')); case ADR is when SDAC_ADR =>TimeOutAfterCS<="0000"; when others => Null; end case; Line 139. Choice SDAC_ADR is not a locally static expression. причем вот сейчас это пишу и это просто варнинг, а вчера это был еррор... Странно может устал вчера и не так что то понял, но смысл такой. Наверное через кейз можно.
|
|
|
|
Сообщений в этой теме
Golikov A. Вопрос про ПЛИС в целом и VHDL Jul 18 2006, 19:54   andrew_b Цитата(dinam @ Jul 19 2006, 12:50) По хор... Jul 19 2006, 09:13    dinam Я разрабатываю схемы и пишу программы так, чтобы н... Jul 19 2006, 09:27  seven7 [quote name='Golikov A.' date='Jul 19 ... Jul 19 2006, 09:25   andrew_b Цитата(seven7 @ Jul 19 2006, 13:25) Внутр... Jul 19 2006, 10:45    seven7 Цитата(andrew_b @ Jul 19 2006, 13:45) Нич... Jul 19 2006, 11:41     Golikov A. СПАСИБО ВСЕМ!
Оказалось сделать не универсаль... Jul 19 2006, 12:52      dinam Цитата(Golikov A. @ Jul 19 2006, 19:52) (... Jul 20 2006, 01:41       Golikov A. Цитата(dinam @ Jul 20 2006, 05:41) Цитата... Jul 21 2006, 10:26 seven7 Первый вопрос:
Если правильно понял вопрос, такое ... Jul 19 2006, 06:09 Wild Цитата(Golikov A. @ Jul 18 2006, 23:54) З... Jul 19 2006, 09:45
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|