|
FIFO (CPLD+SRAM) |
|
|
|
Sep 5 2015, 13:37
|
Местный
  
Группа: Свой
Сообщений: 248
Регистрация: 2-02-09
Из: Тверь
Пользователь №: 44 309

|
Доброго времени суток уважаемые!!! Есть задача построить модуль FIFO на связке CPLD+SRAM. Это образно говоря решение будет использоваться как простое FIFO для передачи данных в микроконтроллер. Мозги кипят и требуется помощь знающих людей которые смогут помочь разобраться в проблеме. Вопрос коммутационного плана на выложенной схеме дело в том что мк и плис работают на разных тактовых частотах и тут то и проблема. Я думаю так сделать: Данные со входа IN_DATA[15..0] поступают во внешнюю sram и там фиксируются сигналом (wd_sram) по адресу схемы которая тут не представлена в принципе это не важно. Начало работы начинается с того что мк подаёт запрос на то чтоб данные записались в регистр (inst5) сигналом (request) и если sram находится в режиме чтения то данные записываются в регистр при этом выставляется флаг регистр загружен -(confirmation) и сбрасывается регистр запроса на запись данных из sram. По приходу следующего запроса записи из sram в регистр (inst5) флаг (confirmation) сбрасывается в ноль и мк ожидает загрузки регистра (inst5) из него потом сдвиговым регистром будут выгружены данные в мк. Так я предположил выйти из проблемы пересечения клоковых доменов асинхронной фифо. Подскажите в правильном ли я направлении двигаюсь?
Прикрепленные файлы
FIFO.pdf ( 1.19 мегабайт )
Кол-во скачиваний: 59
|
|
|
|
|
 |
Ответов
|
Sep 7 2015, 05:21
|

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

|
Просто переключающими регистрами задачу красиво решить, наверное, не получится. Нужен ещё автомат, который, принимая управляющие сигналы, будет прокручивать сценарии завершения работы с АЦП, с записью данных в ОЗУ, полученных от АЦП, корректно переводить сигналы связи CPLD<>RAM в исходное состояние и т.п. Особенно наглядно это видно, если АЦП имеет последовательный канал связи (SPI и т.п.), когда Вам, получив команду от МК, необходимо "принять её к сведению" и завершить протокол обмена с АЦП в штатном режиме, потом записать эти данные в ОЗУ, переназначить адресные индексы кольцевого буфера (ну или глубины стека FIFO), хранящегося в ОЗУ. Не видя основного направления применения задачи, трудно строить умозаключения, но в общем случае я за кольцевой буфер, т.к. такое построение позволяет всегда иметь акутальные данные. Надо будет вести 2 параметра для "кольца": адрес последнего значения и длина буфера (т.к. пока кольцо не замкнулось - длина не равна размеру ОЗУ).
--------------------
Почему разработчики систем повышенной надёжности плохо справляются с простыми проектами? :)
|
|
|
|
Сообщений в этой теме
uragan90 FIFO (CPLD+SRAM) Sep 5 2015, 13:37 uragan90 И вообще как такое реализовать можно?
Я делаю так... Sep 5 2015, 15:10 Maverick Цитата(uragan90 @ Sep 5 2015, 18:10) И во... Sep 5 2015, 15:43  uragan90 Цитата(Maverick @ Sep 5 2015, 19:43) Для ... Sep 5 2015, 15:48   Maverick Цитата(uragan90 @ Sep 5 2015, 18:48) Мне ... Sep 5 2015, 15:58    uragan90 Цитата(Maverick @ Sep 5 2015, 19:58) Тогд... Sep 5 2015, 16:05 krux ЦитатаМне не нужна двух клоковая фифо! Мне дос... Sep 5 2015, 16:02 uragan90 Цитата(krux @ Sep 5 2015, 20:02) тогда эт... Sep 5 2015, 16:11  Maverick Цитата(uragan90 @ Sep 5 2015, 19:11) Запи... Sep 5 2015, 16:13   uragan90 Цитата(Maverick @ Sep 5 2015, 20:13) Пожа... Sep 5 2015, 16:26 krux ЦитатаПросто криво возможно как то но возможно вед... Sep 5 2015, 16:10 Gorby Цитата(krux @ Sep 5 2015, 20:10) я полага... Sep 24 2015, 13:04  uragan90 Цитата(Gorby @ Sep 24 2015, 17:04) Тут пр... Sep 24 2015, 13:22   Gorby Цитата(uragan90 @ Sep 24 2015, 17:22) Так... Sep 24 2015, 13:49    uragan90 Цитата(Gorby @ Sep 24 2015, 17:49) Да, ко... Sep 24 2015, 13:58    EvgenyNik Цитата(Gorby @ Sep 24 2015, 16:49) Если о... Sep 24 2015, 14:04     uragan90 Цитата(EvgenyNik @ Sep 24 2015, 18:04) Но... Sep 24 2015, 14:09      EvgenyNik Цитата(uragan90 @ Sep 24 2015, 17:09) Чит... Sep 24 2015, 15:10 krux ЦитатаЗапись в срам должна быть выше по приоритету... Sep 5 2015, 16:16 krux ЦитатаСообщает об этом мк и мк с помощью сдвиговог... Sep 5 2015, 16:31 uragan90 Цитата(krux @ Sep 5 2015, 20:31) сколько ... Sep 5 2015, 16:50 krux Цитатая вот тоже не пойму проблемы что вас волнует... Sep 5 2015, 16:52 uragan90 Цитата(krux @ Sep 5 2015, 20:52) волнуют ... Sep 5 2015, 17:06 krux я прошу прощения за мазню в paint, но это было быс... Sep 5 2015, 17:55 uragan90 Цитата(krux @ Sep 5 2015, 21:55) я прошу ... Sep 5 2015, 18:02 krux ура! ко второй странице разродились на верхний... Sep 5 2015, 18:09 uragan90 Цитата(krux @ Sep 5 2015, 22:09) тактиров... Sep 5 2015, 18:33 bugdesigner А какие сигналы идут от ADC? Если данные поступают... Sep 5 2015, 18:34 uragan90 Клока, клока... Я ж говорю что по импульсу от мк в... Sep 5 2015, 19:45  x736C Цитата(uragan90 @ Sep 5 2015, 22:45) Это ... Sep 5 2015, 20:55 krux для корректной работы плис нужно стабильное тактир... Sep 5 2015, 18:46 bugdesigner Трудность здесь в пересечении доменов клоков. Как ... Sep 6 2015, 05:15 x736C Цитата(bugdesigner @ Sep 6 2015, 08:15) Т... Sep 6 2015, 09:27 Golikov A. ЦитатаЭто что так сложно привести к основному клок... Sep 6 2015, 17:09 Golikov A. Цитатапринимая управляющие сигналы, будет прокручи... Sep 7 2015, 05:36 Maverick Цитата(Golikov A. @ Sep 6 2015, 20:09) На... Sep 7 2015, 06:02  uragan90 Цитата(Maverick @ Sep 7 2015, 10:02) как ... Sep 7 2015, 06:57 EvgenyNik Цитата(Golikov A. @ Sep 7 2015, 08:36) и ... Sep 7 2015, 06:06 krux при старте, если указатели чтения и записи равны (... Sep 7 2015, 07:22 uragan90 Цитата(krux @ Sep 7 2015, 11:22) при стар... Sep 7 2015, 08:21 uragan90 Удалось реализовать такой модуль FIFO на внешней S... Sep 24 2015, 12:44 Golikov A. задача проста как 2 копейки, вы мудрите...
первое... Sep 24 2015, 19:32 uragan90 Цитата(Golikov A. @ Sep 24 2015, 23:32) з... Sep 25 2015, 07:45  EvgenyNik Цитата(uragan90 @ Sep 25 2015, 10:45) У м... Sep 25 2015, 07:55   Corner Цитата(EvgenyNik @ Sep 25 2015, 11:55) Ды... Sep 28 2015, 19:28    RobFPGA Приветствую!
Цитата(Corner @ Sep 28 2015... Sep 28 2015, 23:46     uragan90 Цитата(RobFPGA @ Sep 29 2015, 03:46) Прив... Sep 30 2015, 09:00  Gorby Цитата(uragan90 @ Sep 25 2015, 10:45) У м... Sep 25 2015, 10:23 uragan90 Начертал схемку которая решает практически половин... Sep 30 2015, 17:49
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|