Перейти к содержанию
    

Как подключить FPGA к GPMC DM3730

Господа, спасибо за ответ в соседне ветке, Вот

Я и сам чувствовал, что организовывать параллельную шину из gpio это неправильно. Но это предистория.

Задача, которую мне необходимо решить - организовать обмен с FPGA с максимальной пропускной способностью.

Имею вот такой девайс: dm3730

на шине GPMC уже сидин nand флеш, как можно параллельно подключить свою fpga и организовать обмен?

Приложил описание разводки платы. Смущает, что распаять шины адреса и данных можно, а клоков нет.

Направьте в нужном направлении??

Заранее благодарен.

BLIZZARDrevA.pdf

Изменено пользователем IgorKossak
лишние пробельные строки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

максимальная пропускная способность нужна для чего? Какая она в цифрах?

 

Это я к тому что иногда выиграв в скорости передачи данных, так теряются ресурсы проца, что выигрыш не имеет смысла. К примеру если взять обмен большими пакета через SPI, то реализовав его через ДМА, мы получаем практически полностью свободный проц, а на малых расстояниях скорость обмена очень высока. При той же реализации через параллельную шину получаются сравнимые скорости, но 100% загрузку проца на шевеление ногами.

 

И того мой совет по максимум использовать автоматизированную периферию, которая может автономно без загрузки проца слать данные, самое очевидное что приходит на ум SPI.

 

Причем если очень извратиться можно подключить несколько каналов SPI и слать данные в параллель.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Смущает, что распаять шины адреса и данных можно, а клоков нет.

GPMC асинхронный, поэтому клоков и нет. Фантастическую скорость на нем не получите.

Обмен с FPGA подразумевается двунаправленный симметричный, или же в какую-либо сторону нужно иметь полосу толще?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

максимальная пропускная способность нужна для чего? Какая она в цифрах?

 

Это я к тому что иногда выиграв в скорости передачи данных, так теряются ресурсы проца, что выигрыш не имеет смысла. К примеру если взять обмен большими пакета через SPI, то реализовав его через ДМА, мы получаем практически полностью свободный проц, а на малых расстояниях скорость обмена очень высока. При той же реализации через параллельную шину получаются сравнимые скорости, но 100% загрузку проца на шевеление ногами.

 

И того мой совет по максимум использовать автоматизированную периферию, которая может автономно без загрузки проца слать данные, самое очевидное что приходит на ум SPI.

 

Причем если очень извратиться можно подключить несколько каналов SPI и слать данные в параллель.

 

Хочется отсылать в комп по сети отсчеты, снятые с 200 Мгц АЦП. У Вас есть опыт по взаимодействию с GPMC? Откуда берется 100% загрузка?

 

Какова максимальная производительность SPI?

 

GPMC асинхронный, поэтому клоков и нет. Фантастическую скорость на нем не получите.

Обмен с FPGA подразумевается двунаправленный симметричный, или же в какую-либо сторону нужно иметь полосу толще?

 

На самом чипе GPMC_clk есть, наружу с процессорной платы он не выведен.

Вот здесь ti tutorial написано про

 

Below is the Throughput achived with Writes and Reads between the GPMC and the LPDDR.

Initiator Data Size

(Bytes)

Achieved Throughput

(MB/sec)

GPMC Tx(Write) 156000 51.54

GPMC Rx(Read) 156000 39.21

 

Это правда?

 

В сторону чтения с FPGA желательно потолще, запись в FPGA не так критична по скорости.

 

Подскажите, как грамотно реализовать? не очень понятно, каким отбразом организовать подключение одновременно и nand и связи c fpga. Я так понимаю, нужный чип выбирается gpmc_ncsx ? Каким образом им управлять из linux?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это правда?

Цифры похожи на правду.

 

Посмотрите, может для вашей задачи подойдет интерфейс камеры. Ничего другого скоростного нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Цифры похожи на правду.

 

Посмотрите, может для вашей задачи подойдет интерфейс камеры. Ничего другого скоростного нет.

 

Так в интерфейсе камеры только вход, выхода нет никакого :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так в интерфейсе камеры только вход, выхода нет никакого :rolleyes:

 

В сторону чтения с FPGA желательно потолще, запись в FPGA не так критична по скорости.

 

А на выход - GPMC/SPI/что-то еще.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

100% нагрузка:

 

посылка по усарту

задал для ДМА где брать данные и сколько, запустил процесс...

по прерыванию выдла новую порцию

 

 

посылка по параллельной шине через порт

взял данные из памяти

выставил адрес

выставил на порт данные

дернул строб данных

выждал паузу

взял следующую порцию..

 

 

в СПИ все операции делает железо без проца.

в параллельной шине все операции делает проц.

 

скорость СПИ в зависимости от процов достигает половины или четверти их частоты. ну правда еще длинна линий важна, но очень не маленькая скорость.... правда я без операционок работаю, может с ними все подругому....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

в параллельной шине все операции делает проц.

GPMC - это "железная" шина, там процессор ничего не делает. А на "ногодрыжечной" шине конечно 100%

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Принято! Что-то правда не поглядел что там за проц на платке...

 

Друзья, именно по поводу подключения подскажете, как и что? К gpmc. как управлять gpmc_csx?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Может быть, подцепить FPGA к шине DDR? Пусть "слушает" и ловит свои данные оттуда.

 

подниму тему, еще интересует данный вопрос, после разгребания текущих дел, опять вернулся к данному вопросу.

 

У кого есть опыт, поделитесь :crying:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Работаю над точно такой же проблемой. Собираюсь подключать на GPMC. Собственно поэтому и смотрю на этот проц, ибо у DM365/8 полная непонятка с внешей шиной, она как бы есть, но на ней и так куча всего висит и вроде как ее использовать можно только если и грузиться с нее же, а это не катит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я проектировал slave контроллер длы GPMC( 80МХз). Эта шина синхронная. Если не видите клока то попробуйте на осцилографе наложить ЦПУ клок на cигналы шины и определить GPMC клок. В моем случае эта шина была конфигурируемая по частоте клока и многим другим параметрам. Обратите внимание на endianness.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...