Komanch
Feb 11 2010, 12:43
Здравствуйте.
Возникла вот какая задача: взять аналоговый сигнал, оцифровать его с помощью АЦП, который стоит на плате, подать в ПЛИС и передать его на ЦАП. Пока что без всякого изменения сигнала в ПЛИС, никакой модуляции - просто передать с одного на другое и сравнить вход АЦП и выход ЦАП на осциллографе.
Проблема вот в чем: АЦП и ЦАП используют одну и ту же шину SPI, поэтому вряд ли получится заставить их работать одновременно.
Что в таком случае стоит предпринять? Передавать шину им по очереди? Не будет ли при этом потерь?
Я в области ПЛИС новичок, поэтому прошу сильно не пинать.
З.Ы. Spartan-3E Starter Kit User Guide, Chapter 9 & Chapter 10 читал.
Буду рад любой помощи.
Komanch,
Отделите мух от котлет и всё станет ясно и понятно:
"АЦП и ЦАП используют одну и ту же шину SPI" - это данность, не подлежащая обсуждению? Тогда она и определяет пропускную способность всей системы. Вариант непосредственной передачи данных с АЦП в ЦАП, наверное, не рассматриваем, так как по условию их надо прогонять через ПЛИС ("Пока что без всякого изменения сигнала в ПЛИС", то есть "потом будет"?). Раз шина одна, а данные будут разные - значит по-очереди. Тут вариантов нет. Определитесь с максимальной скоростью передачи по SPI, которую допускает эта плата. Посчитайте время, требуемое для передачи всех битов измеренного значения с АЦП, добавьте время на передачу этих же битов в ЦАП, добавьте два времени переключения шины (К АЦП и к ЦАП) - получите минимальный период оцифровки (ПЛИС тут пока совершенно не при чём). Ответьте на вопрос "Удовлетворяет ли полученная максимальная частота оцифровки требованиям к системе?". Если "да", то просто реализуйте требуемую диаграмму тактировки АЦП и передачи по SPI на ПЛИС.