|
Цифровой осциллограф на базе ПЛИС |
|
|
|
Nov 27 2008, 12:14
|
Местный
  
Группа: Свой
Сообщений: 224
Регистрация: 22-06-04
Из: Новосибирск
Пользователь №: 87

|
Цитата(jovanny @ Nov 27 2008, 14:57)  Появилась необходимость разработки многоканального осциллографа на базе ПЛИС, основной функцией которого является просмотр временных задержек цифровых сигналов. Например,возникла проблема : при подключении к микроконтроллеру внешней памяти при цикле записи данные в памяти не сохраняются. На осциллографе просматриваем шины управления,адреса и данных и выявляем соответствия с указанными задержками в даташите памяти. Подскажите структурную схему устройства и тонкости реализации,уровни исследуемых сигналов +5В,в наличии есть ПЛИС серии Max3000 EPM3128ATC100-10 - подойдет ли такая, ориентируемое число -каналов - 8(хватит ли?).Надо ли ставить преобразователь уровней,ПЛИС питается от 3.3 , хотя в даташите заявлен диапазон входных напряжений до 5.75 В? Заранее благодарен. С точки зрения сигналов тут проблем нет EPM3128ATC100-10 толерантна +5В т.е. на ее входы сигналы 5В подавать можно. Но куда вы собираетесь складывать осциллограмы и каким образом их потом смотреть. В этих PLD внутренней памяти нет и тригеров там всего ровно 128, т.е. для 8-ми каналов вы можете получить максимальную глубину 16 отсчетов, и это еще без всякого обрамления. Вот на FPGA (типа XILINX Spartan3 или ALTERA Cyclone) это реализовать можно, там есть блочная память куда можно сливать осциллограмы.
|
|
|
|
|
Nov 27 2008, 13:32
|
Местный
  
Группа: Свой
Сообщений: 224
Регистрация: 22-06-04
Из: Новосибирск
Пользователь №: 87

|
Цитата(ukpyr @ Nov 27 2008, 17:19)  но можно сделать делитель опорной частоты/синхронный реверсивный счетчик адреса/компаратор адреса/пусковой триггер-детектор + внешняя SRAM + мелкий контроллер для управления, намного дешевле всяких спартанов/циклонов. Конечно можно, кто бы спорил. Просто вопрос то был, сделать осциллограф на EPM3128ATC100-10. Правда есть некие сомнения по поводу быстродействия, т.к. предполагается мерить задержки между сигналами, а это, наверное, с точностью 10 - 20нс, успеет такая конфигурация сливать во внешнюю SRAM - это еще вопрос.
|
|
|
|
|
Nov 27 2008, 14:31
|
Частый гость
 
Группа: Новичок
Сообщений: 101
Регистрация: 26-11-08
Пользователь №: 41 993

|
Цитата(Apast @ Nov 27 2008, 16:32)  Конечно можно, кто бы спорил. Просто вопрос то был, сделать осциллограф на EPM3128ATC100-10. Правда есть некие сомнения по поводу быстродействия, т.к. предполагается мерить задержки между сигналами, а это, наверное, с точностью 10 - 20нс, успеет такая конфигурация сливать во внешнюю SRAM - это еще вопрос. Есть K6R4008V1D - статическая память с временем доступа 10 нс Цитата(ukpyr @ Nov 27 2008, 16:19)  но можно сделать делитель опорной частоты/синхронный реверсивный счетчик адреса/компаратор адреса/пусковой триггер-детектор + внешняя SRAM + мелкий контроллер для управления, намного дешевле всяких спартанов/циклонов. А зачем контроллер для управления,нельзя чтобы эту роль выполняла сама ПЛИС?
|
|
|
|
|
Nov 27 2008, 14:53
|
Знающий
   
Группа: Свой
Сообщений: 758
Регистрация: 11-07-05
Из: Понаехал (Мск)
Пользователь №: 6 688

|
Я так понимаю это уже будет логический анализатор. или вы хотите использовать для каждого канала АЦП ? Подобные проекты уже есть. к примеру http://www.opencores.org/projects.cgi/web/...ascope/overviewили http://www.opencores.org/projects.cgi/web/log_anal/overviewболее того, если вам нужно мерить только задержки между сигналами, то можно сделать некоторую схему, которая будет сообщать только колличество тактов прошедших с между определенными значениями уровней на тех или иных каналах. так можно будет избежать использование памяти, хотнализ результатов и эксплуатация и усложняется.
|
|
|
|
|
Nov 27 2008, 16:31
|
Частый гость
 
Группа: Новичок
Сообщений: 101
Регистрация: 26-11-08
Пользователь №: 41 993

|
Цитата(SFx @ Nov 27 2008, 17:53)  Я так понимаю это уже будет логический анализатор. или вы хотите использовать для каждого канала АЦП ? Подобные проекты уже есть. к примеру http://www.opencores.org/projects.cgi/web/...ascope/overviewили http://www.opencores.org/projects.cgi/web/log_anal/overviewболее того, если вам нужно мерить только задержки между сигналами, то можно сделать некоторую схему, которая будет сообщать только колличество тактов прошедших с между определенными значениями уровней на тех или иных каналах. так можно будет избежать использование памяти, хотнализ результатов и эксплуатация и усложняется. Да,будет логический анализатор. Насчет идеи по подсчету задержек-спасибо.
|
|
|
|
|
Nov 27 2008, 18:30
|
Местный
  
Группа: Свой
Сообщений: 368
Регистрация: 16-11-06
Из: Тверь
Пользователь №: 22 379

|
Цитата(jovanny @ Nov 27 2008, 13:57)  Подскажите структурную схему устройства и тонкости реализации,уровни исследуемых сигналов +5В,в наличии есть ПЛИС серии Max3000 EPM3128ATC100-10 - подойдет ли такая, ориентируемое число -каналов - 8(хватит ли?).Надо ли ставить преобразователь уровней,ПЛИС питается от 3.3 , хотя в даташите заявлен диапазон входных напряжений до 5.75 В? Заранее благодарен. Вам уже посоветовали использовать FPGA (типа XILINX Spartan3 или ALTERA Cyclone) - могу только присоединиться к этому совету. EPM3128ATC100-10 : 1) 128 ячеек это очень мало для осциллографа (даже с вешней памятью). Если задержки большие (минуты), то даже в варианте простого счетчика может не хватить ячеек. 2) Тактовая частота будет небольшая следовательно мало отсчетов и низкая точность.
|
|
|
|
|
Nov 28 2008, 05:54
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(jovanny @ Nov 27 2008, 13:57)  Подскажите структурную схему устройства .... Делал я такое - см. статейку у меня на сайте... Самое интересное в этом деле - сделать сжатие информации. А еще можно сделать "линзу", те отдельную область памями и в нее писать примерно в 5-10 раз чаще, чем в остальное время. Это поможет смотреть и большие по времени диаграммы и в нужные места, например на фронтах, записывать более подробные "сюжеты"... Удачи.
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Nov 30 2008, 19:54
|
Частый гость
 
Группа: Новичок
Сообщений: 101
Регистрация: 26-11-08
Пользователь №: 41 993

|
Цитата(ukpyr @ Nov 27 2008, 16:19)  но можно сделать делитель опорной частоты/синхронный реверсивный счетчик адреса/компаратор адреса/пусковой триггер-детектор + внешняя SRAM + мелкий контроллер для управления, намного дешевле всяких спартанов/циклонов. Можно ли будет это все организовать на базе ПЛИС?
|
|
|
|
|
Dec 1 2008, 13:41
|
Знающий
   
Группа: Свой
Сообщений: 961
Регистрация: 28-11-05
Пользователь №: 11 489

|
"ТЗ" уже было озвучено. Цитата(jovanny @ Nov 27 2008, 13:57)  уровни исследуемых сигналов +5В,в наличии есть ПЛИС серии Max3000 EPM3128ATC100-10 - подойдет ли такая, ориентируемое число -каналов - 8(хватит ли?).Надо ли ставить преобразователь уровней,ПЛИС питается от 3.3 , хотя в даташите заявлен диапазон входных напряжений до 5.75 В? EPM3128 не самый удачный выбор для этого дела. Хватит ли вам 8 каналов? Это кому вопрос? Преобразователь уровней и вообще буфер перед ПЛИС очень желателен.
--------------------
В действительности всё не так, как на самом деле.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|