Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: XILINX Spartan-3 FPGA
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Arischenko Ivan
Добрый день.

Знаний о FPGA у меня "ниже начальных" но в проекте в котором я занят используется XILINX FPGA Spartan-3 XC3S5000. На FPGA возложена задача по цифровой обработке сигнала (выделение шумоподобного сигнала с использованием псевдослучайных последовательностей) в пару к нему используется процессор Atmel AT91RM9200. В двух словах алгоритм работы : ПЛИС производит начальную обработку сигнала, процессор - окончательную, соответственно возникает вопрос совместного доступа к данным первичной обработки.

Сейчас предполагается следущая схема : (ПЛИС+SDRAM)-(AT91+SDRAM). Данные первичной обработки помещаются в SDRAM ПЛИС, откуда процессор должен их забирать и обрабатывать.

Нажмите для просмотра прикрепленного файла

Схема мне очень не нравится, но обосновать необходимость ее улучшения без аргументирования я не могу.
Можно ли ее упростить? Например : память оставить одну и заменить ее на DDR, в DDR складывать данные, и от туда же исполнять программу AT91RM9200?
На сколько сложная задача на FPGA выполнить преобразование SDRAM-SRAM для передачи данных из памяти FPGA в процессор?
DmitryR
Тут вопрос в том, хватит ли процессору скорости SRAM порта, если на нем будет его основная память. Кроме этого других проблем сделать на FPGA арбитр, который будет обеспечивать двухпортовый доступ к SDRAM (для собственных нужд и для процессора) нет. А память конечно лучше поставить DDR2 со стандартным MIG контроллером - по сравнению с DDR, вам не придется ставить резисторы (используя DCI в Spartan-3).
Arischenko Ivan
Цитата(DmitryR @ Oct 30 2009, 12:36) *
Тут вопрос в том, хватит ли процессору скорости SRAM порта, если на нем будет его основная память. Кроме этого других проблем сделать на FPGA арбитр, который будет обеспечивать двухпортовый доступ к SDRAM (для собственных нужд и для процессора) нет. А память конечно лучше поставить DDR2 со стандартным MIG контроллером - по сравнению с DDR, вам не придется ставить резисторы (используя DCI в Spartan-3).



Т.е если организовать в FPGA двухпортовый контроллер памяти SDRAM, подключить его к шине EIB процессора AT91SAM9200 на NCS1 (SDRAM) то FPGA в приципе будет успевать сохранять данные в память и обеспечивать исполнение кода из памяти sdram для AT91SAM9200? Как на пальцах посчитать необходимую минимальную пропускную способность памяти чтобы процессор не затыкался?
DmitryR
Цитата(Arischenko Ivan @ Oct 30 2009, 14:19) *
подключить его к шине EIB процессора AT91SAM9200 на NCS1 (SDRAM)
Не SDRAM, а SRAM.

Цитата(Arischenko Ivan @ Oct 30 2009, 14:19) *
Как на пальцах посчитать необходимую минимальную пропускную способность памяти чтобы процессор не затыкался?
Думаю никак - это очень зависит от задачи.
faa
Цитата(Arischenko Ivan @ Oct 30 2009, 14:19) *
Т.е если организовать в FPGA двухпортовый контроллер памяти SDRAM, подключить его к шине EIB процессора AT91SAM9200 на NCS1 (SDRAM) то FPGA в приципе будет успевать сохранять данные в память и обеспечивать исполнение кода из памяти sdram для AT91SAM9200? Как на пальцах посчитать необходимую минимальную пропускную способность памяти чтобы процессор не затыкался?

FPGA работает со своей памятью (SDRAM/DDR/DDR2) и висит на EBI как обычная статическая память. Двухпортовый (трехпортовый и т.д. - в зависимости от количества источников и потребителей данных) контроллер памяти в FPGA обслуживает "внутренние" запросы к памяти и "внешние" от ARM. На шине ARM-a висит своя SDRAM/DDR/DDR2 (какую поддерживает ARM), там крутится операционка (если необходима) и программа вторичной обработки. Вот пример. Только на Altera, что не принципиально. Или у embeddedarm или micro9 смотрите. Есть еще хорошая реализация такого подхода у elphel, только SoC там от AXIS.
А делать разделяемую память смысла нет - надо или DMA прикручивать или контроллер делать очень умным, что накладно. Да и с DMA, ЕМНИП, у AT91SAM9200 не все гладко.
Я прикручивал Spartan-3 к EP9315 примерно так (SDRAM - FPGA) - (EP9315 - SDRAM). FPGA подключена как два банка (CS1, CS7 ) к контроллеру статической памяти (SMC) SoC, физически шина SDRAM и SMC общая (как EBI у AT91SAM9200).

Если есть конкретные вопросы - в личку.
Arischenko Ivan
DmitryR, faa спасибо. Вопрос исчерпан.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.