|
FIFO на DDR2, можно получить 100МГц запись/чтение? |
|
|
|
May 5 2015, 10:21
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
Есть платка на базе XC6SLX150-2FGG (https://www.opalkelly.com/products/xem6310/) Память MT47H64M16HR-3:G. Хочется принимать данные и отдавать через USB3 в ПК. Входной постоянный входной поток 32 бита и частота 1 до 80МГц. Выходной в контроллер USB3 на частоте 100МГц. Перед передачей данные буферизуются через FIFO, чтобы иметь свободу маневра на ПК (16Мбайт даст ~50мс буфера). Входные данные записываются непрерывно. Выходные по мере готовности USB. Данные на входе поступают блоками (пока в ФИФО нет места на блок, они не записываются), на выходе тоже забираются блоками. Возможно такое реализовать, или утопия? Если возможно, то сколько по времени надо на разработку (или цена вопроса)? Память работает на 300МГц*32бита. По 100 на запись и чтение блоками, и 100 на рефреш и открытие строк. Или лучше подумать про https://www.opalkelly.com/products/xem7350/? Эта нравиться больше, но не ясно как с экспортом/импортом.
|
|
|
|
|
 |
Ответов
(1 - 10)
|
May 5 2015, 12:55
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! Судя по всему память DDR2 -333MHz 16bit соответственно имеет в пике ~1200 MByte/s. Для Ваших максимальных ~320 MByte/s на запись и ~320 MByte/s на чтение хватит. Пртери на рефреш и т.д.обычно не более 5-10 % от пиковой полосы. Пр времени - система на FPGA от 2-4 недель - в зависимости от опыта и доп. хотелок по обработке. По цене - опять же сильно зависит от хотелок и на сколько наглость позволяет - но судя по Вашему нику можно не скромничать  А Вам именно USB3 нужно ? че-то дороговато $800 за модуть с Spartan6-LX150. Успехов! Rob.
|
|
|
|
|
May 5 2015, 14:06
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
Спасибо за ответ. Я где-то так и прикидывал по пропускной способности. Сам запускал только DDR на циклоне и очень давно. 1. Посмотрел возможности ise webpack (покупать лицензию желания нет). Похоже мне подходит только XEM6310MT-LX45T на XC6SLX45T-2 за 500уе. Подошла бы плата альтере ZEM4310 (EP4CE55F23C8N), но спидгрейд совсем плохой. Сколько процентов от него займет такое фифо, котроллер DDR2 и сопряжение с USB контроллером? Так чтобы контроллер DDR2 + КА работали на 300МГц и dcfifo на встроенной памяти справлялись. Меньше 50% от LX45? 2. Нужен именно USB 3.0, инет 10G или PCI-e на 4 lane получаются дороже. Цена плат opalkelly меня устраивает. Надеюсь получить решение включил-забыл. Сначала их будет две, а дальше или покупать партией или заказать разработку реплики. Раньше не работал с xilinx, правильно понимаю что MIG входит в состав ise webpack и не требует доп отчислений? Цитата Memory Interface Generator (MIG) is a free software tool used to generate memory controllers and interfaces for Xilinx® FPGAs. MIG generates unencrypted Verilog or VHDL design files, UCF constraints, simulation files and implementation script files to simplify the design process. Memory Interfaces supported are: DDR3 SDRAM, DDR2 SDRAM, QDRII SRAM, and DDRII SRAM, LP DDR, QDRII+ SRAM, and RLDRAM II. http://www.xilinx.com/products/intellectua...operty/mig.html
|
|
|
|
|
May 5 2015, 14:45
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! В Spartan 6 контроллер DDR железный мульти-портовый - почти ничего не занимает. MIG ( халява  ) просто генерит обвязку для встроенного контроллера. Рабочие частоты для логики ~150-300 MHz. память и FIFO 300-400 MHz. AXI шина 100-125 MHz На LХ45 можно много всего впихнуть - например систему обработки данных доплеровского локатора (FIR, FFT, AFC, и.т.д ) с входным потоком 2x250 MByte/s + SOC на MicroBlaze + 1G ethernet c выходом ~90 MByte/s (и еще останется место светодиодом поморгать  ). В Вашем случае думаю что почти пустой будет ~20-30% займет. Можно будет использовать готовые блоки для организации FIFO на DDR. (см AXI Virtual FIFO) ну или свои извраты на тему AXI DMA  Успехов! Rob.
|
|
|
|
|
May 5 2015, 15:15
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
RobFPGA, благодарю за помощь. Похоже много потерял, пока не смотрел на xilinx. AXI Virtual FIFO практически то, что мне надо. P.S. Если понадобиться, есть еще одна плата на спартане-6 от немцев: http://www.cesys.com/products/efm-02/По начинке вкуснее (256МБ памяти 800МГц), цена 364 евро против 500$.
|
|
|
|
|
May 5 2015, 17:50
|
Местный
  
Группа: Свой
Сообщений: 301
Регистрация: 18-09-07
Из: Украина
Пользователь №: 30 647

|
Цитата(Major @ May 5 2015, 13:21)  Есть платка на базе XC6SLX150-2FGG (https://www.opalkelly.com/products/xem6310/) Память MT47H64M16HR-3:G. Хочется принимать данные и отдавать через USB3 в ПК. Входной постоянный входной поток 32 бита и частота 1 до 80МГц. Выходной в контроллер USB3 на частоте 100МГц. Перед передачей данные буферизуются через FIFO, чтобы иметь свободу маневра на ПК (16Мбайт даст ~50мс буфера). Входные данные записываются непрерывно. Выходные по мере готовности USB. Данные на входе поступают блоками (пока в ФИФО нет места на блок, они не записываются), на выходе тоже забираются блоками. Возможно такое реализовать, или утопия? Если возможно, то сколько по времени надо на разработку (или цена вопроса)? Память работает на 300МГц*32бита. По 100 на запись и чтение блоками, и 100 на рефреш и открытие строк. Или лучше подумать про https://www.opalkelly.com/products/xem7350/? Эта нравиться больше, но не ясно как с экспортом/импортом. Добрый день. Реализовывал передачу данных из оптики -> Spartan 6 (протокол AURORA) FIFO (на базе LPDDR) -> USB. FIFO (на базе LPDDR) делал на примере xapp492_S6_ConnectivityTRD_Aurora.pdf Разбор примера собого труда не составил. Прикрепленный файл - .zip Удачи.
|
|
|
|
|
May 6 2015, 11:21
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
Цитата(Magnum @ May 6 2015, 14:55)  Мои 32 бита данных на своей частоте появляются не из воздуха. Задач несколько, например завести 24 АЦП (18*2МГц каждое), плюс управление усилением каналов. В других данные предварительно обрабатываются. Поэтому FPGA на входе обязателен. Логический анализатор не совсем подходит. В ним плюс это его ПО, а оно мне совсем не нужно. Готовые платы АЦП не всегда подходят по аналоговой части, или дрова кривые, и не дешево. Для нас заманчиво получить за 500уе плату с возможностью быстро запустить нужное АЦП. И размер 50*80 вполне себе OEM решение. Плата cesys efm-02 весьма удачна, сразу разведены отверстия под ЭМ экран, много памяти. Буферизация в DDR2 нужна, так как в реальной жизни приходилось сталкиваться с кратковременным отказом HDD (ударная звуковая волна или механический удар приводит к парковке головок). Это дает короткие лаги в системе. А если пишешь поток на винт, то можно получить отказ на дястяку секунд. Надеятся на 100% присутствие SSD нельзя. Бывало сетевой драйвер подгружал систему (в винде и линуксе).
|
|
|
|
|
May 8 2015, 07:02
|

Частый гость
 
Группа: Свой
Сообщений: 130
Регистрация: 19-12-05
Пользователь №: 12 399

|
Цитата(Major @ May 5 2015, 17:21)  Эта нравиться больше, но не ясно как с экспортом/импортом. Есть еще вот - эта http://www.minerva-tech.com/en/products/di...are/fmc_carrier - проблем с импортом/экспортом нет т.к. маэйд ин ссср. Пример "Фифо на ддр" есть.
|
|
|
|
|
May 11 2015, 05:41
|
Знающий
   
Группа: Свой
Сообщений: 618
Регистрация: 7-12-04
Из: Новосибирск
Пользователь №: 1 375

|
Цитата(monty @ May 8 2015, 13:02)  Есть еще вот - эта http://www.minerva-tech.com/en/products/di...are/fmc_carrier - проблем с импортом/экспортом нет т.к. маэйд ин ссср. Пример "Фифо на ддр" есть. Спасибо за линку. Напишу им письмо. Жаль что как обычно открытая документация скудная, по сравнению с зарубежными.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|