|
|
  |
Простенький проект CPLD |
|
|
|
Dec 1 2010, 21:20
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Цитата Сначала в графике делал (а-ля 74хх), потом на AHDL перешёл... Вы будете смеяться, но у меня почти все схемы с микроконтроллерами, для которых я и программы (или их часть) пишу на Си и Асме, но почему-то в данном случае мне проще нарисовать схему чем вникать в AHDL/VHDL/Verilog. В этом проекте тоже стоят два ARM7 и один DSP, так что программирования хватает (на DSP к счастью программу другие пишут, на ARMы - я). Цитата(dvladim @ Dec 1 2010, 20:51)  Нет, это ерунда какая-то. Переходите к нормальному синхронному дизайну, сброс будет шириной в такт и вопросов о длительности сигнала сброса возникать вообще не будет. Уже перешел  Сброс счетчиков вообще не понадобился - они теперь как простые делители работают, крутятся по кругу. Раньше меня волновала не сама по себе длительность сброса, а чтобы она небыла больше чем полпериода тех импульсов, которые счетчик считает. Если по простому - счетчик должен был выдать сигнал после определенного числа импульсов, после фронта сигнала 100кгц. Импульсы и сигнал синхронные, но нельзя было потерять первый счетный импульс что после фронта. Цитата В поиск. Обсуждалось многократно. Если бы еще этот поиск нормально работал... Цитата Если разработчик сознательно уходит от синхронного дизайна к асинхронному, то он точно знает что делает и чем ему это грозит. В данном случае - знаю. Более того - схема на 74хх была спаяна на макетке и прекрасно работала. Просто решено было добавить некоторые дополнительные возможности да заодно упаковать все в один чип. Потому к CPLD и перешли. Цитата Он не будет спрашивать как сделать то или иное, а новичку лучше разобраться с нормальным синхронным дизайном, а уж потом заниматься с асинхронщиной. Я переделал вообще всю концепцию и сигналы все идут из CPLD, только один общий клок идет снаружи. Пока все хорошо получается, во всяком случае на экране...
|
|
|
|
|
Dec 2 2010, 09:04
|

Знающий
   
Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402

|
Цитата Более того - схема на 74хх была спаяна на макетке и прекрасно работала. Просто решено было добавить некоторые дополнительные возможности да заодно упаковать все в один чип. Потому к CPLD и перешли. Во-во-во  Как раз это и надо искоренять из своего сознания. Медленно и мучительно, путём проб и ошибок. Рассыпуха будет работать такой, какой её выпустил завод и какой Вы её спаяли на макетке. А в плисине работать будет не то, что Вы видите в редакторе, а то - как Вас поймёт синтезатор и как разложит фиттер. А конкретно на "схема на 74хх была спаяна на макетке и прекрасно работала" замечу, что Вам, наверняка, знакома ситуация (с тем же APM'ом), когда один и тот же исходник либо работает, либо нет в зависимости от того - какую оптимизацию Вы выбрали. Здесь абсолютно тоже самое: макетка это без оптимизации вообще, плиска - с оптимизацией.
--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
|
|
|
|
|
Dec 2 2010, 16:50
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Цитата замечу, что Вам, наверняка, знакома ситуация (с тем же APM'ом), когда один и тот же исходник либо работает, либо нет в зависимости от того - какую оптимизацию Вы выбрали. Еще как знакома! Правда, с АРМами не сильно - там Кейл шибко вумный, но вот с 430-ми - ИАР с оптимизацией иногда ТАКОГО намутит, вплоть дополной неработоспособности. Цитата А в плисине работать будет не то, что Вы видите в редакторе, а то - как Вас поймёт синтезатор и как разложит фиттер. Но тому что рисует симулятор хоть можно верить ?
|
|
|
|
|
Dec 3 2010, 05:51
|

Знающий
   
Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402

|
Цитата(Maverick @ Dec 2 2010, 22:37)  это почему полностью верить нельзя симулятору? Например, в случае с объявлением регистра без инициирующего значения. Симулятор покажет одно, а в жизни может быть другое. С времянками - аналогично.
--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
|
|
|
|
|
Dec 3 2010, 06:24
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(Maverick @ Dec 2 2010, 22:37)  это почему полностью верить нельзя симулятору? Полностью, это на 100%, так я понял? Т.е. после симуляции Вы уверены во всем так, что готовы на любые жертвы? Я симулировал FSM средней сложности в MAXII+plus на тактовых частотах 80 и 100 МГц, симулятор показывает, что FSM не работает, так как надо. В QuartusII 7.2 картина аналогичная, хотя и результаты другие, т.е. уже лучше, но полного доверия нет. А в аппаратуре же, путем подборок и перестановок местами микроопераций в FSM, как бы шаманством, все же требуемый результат получен на частотах 80 и 100 МГц . Могу ли я после этого готовым к любым жертвам, т.е. к 100% уверенности? Нет, не могу, но я симулятору все равно где-то верю, и советую это начинающим, они же не работают вблизи пределов….
|
|
|
|
|
Dec 3 2010, 07:05
|
Гуру
     
Группа: Свой
Сообщений: 2 435
Регистрация: 6-10-04
Из: Петербург
Пользователь №: 804

|
Цитата(Евгений Николаев @ Dec 3 2010, 08:51)  Например, в случае с объявлением регистра без инициирующего значения. Симулятор покажет одно Симулятор покажет неопределенное состояние. И уже по барабану, что будет реально в жизни. Цитата(Serhiy_UA @ Dec 3 2010, 09:24)  А в аппаратуре же, путем подборок и перестановок местами микроопераций в FSM, как бы шаманством, все же требуемый результат получен на частотах 80 и 100 МГц . На столе при комнатной температуре в одном экземпляре.
|
|
|
|
|
Dec 3 2010, 07:22
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(sazh @ Dec 3 2010, 10:05)  На столе при комнатной температуре в одном экземпляре. экземпляров с FPGA много они работают на объектах ... диапазон температур коммерческий...
|
|
|
|
|
Dec 3 2010, 07:39
|

Знающий
   
Группа: Свой
Сообщений: 597
Регистрация: 24-05-06
Из: г. Чебоксары
Пользователь №: 17 402

|
Цитата(sazh @ Dec 3 2010, 10:05)  Симулятор покажет неопределенное состояние. И уже по барабану, что будет реально в жизни. Обычно да, но я написал про реальный случай, с которым столкнулся. Регистр был внутренним и представлял собой счётчик байт в контроллере SPI. Сброс регистра осуществлялся автоматически либо по подъёму CS, либо по выходу длины пакета за разумный предел. Видимо, логика этих сбросов синтезировалась так, что состояние было не неопределённым. И только явное объявление начального значения расставило всё по места. А в большинстве случаев - да, ХХХ там.
--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
|
|
|
|
|
Dec 3 2010, 09:27
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Цитата И только явное объявление начального значения расставило всё по места. Если я использую разные счетчики/делители - нужно ли объединить им все входы спроса, и вывести на пин глобального сброса? Если да - что с этим пином потом делать? Достаточно обычной RC-цепочки сброса, или чего посильнее надо (типа супервизора, дергуть ногой с МК и т.п) ?
|
|
|
|
|
Dec 6 2010, 16:51
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763

|
Друзья, нужно помощь! Все тах хорошо шло и прекрасно получалось (в симуляторе MAX+plus II) пока Device стояло на Auto. Брало они при этом MAX7000, проект сначала влазил в 7032, потом я расширил функции в в итоге влез в 7064. Но (!) как только я поставил MAX3000A (а именно она и предполагается в конечном итоге, ибо у меня 3.3в питание почти везде), я получил кучу ворнингов симулятора типа "Found Clock high time violation at aaa us at node bbb", и глитчи на его графиках (см график i2wc - это всего -навсего выход переноса счетччика!). Я сократил проект до минимального, при котором это проявляется, и вот он в пркрепленном файле. Посмотрите пожалуйста - в чем проблемы? Есть еще несколько вопросов, но о них потом. Заранее большое спасибо.
Прикрепленные файлы
ttt.rar ( 47.53 килобайт )
Кол-во скачиваний: 35
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|