реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Как подключить FPGA к GPMC DM3730
nik135
сообщение Feb 6 2013, 11:36
Сообщение #1





Группа: Участник
Сообщений: 10
Регистрация: 26-09-12
Пользователь №: 73 693



Господа, спасибо за ответ в соседне ветке, Вот
Я и сам чувствовал, что организовывать параллельную шину из gpio это неправильно. Но это предистория.
Задача, которую мне необходимо решить - организовать обмен с FPGA с максимальной пропускной способностью.
Имею вот такой девайс: dm3730
на шине GPMC уже сидин nand флеш, как можно параллельно подключить свою fpga и организовать обмен?
Приложил описание разводки платы. Смущает, что распаять шины адреса и данных можно, а клоков нет.
Направьте в нужном направлении??
Заранее благодарен.

Сообщение отредактировал IgorKossak - Feb 6 2013, 12:13
Причина редактирования: лишние пробельные строки

Прикрепленные файлы
Прикрепленный файл  BLIZZARDrevA.pdf ( 242.11 килобайт ) Кол-во скачиваний: 1599
 
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Feb 6 2013, 13:15
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



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

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

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

Причем если очень извратиться можно подключить несколько каналов SPI и слать данные в параллель.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 6 2013, 15:53
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(nik135 @ Feb 6 2013, 15:36) *
Смущает, что распаять шины адреса и данных можно, а клоков нет.

GPMC асинхронный, поэтому клоков и нет. Фантастическую скорость на нем не получите.
Обмен с FPGA подразумевается двунаправленный симметричный, или же в какую-либо сторону нужно иметь полосу толще?
Go to the top of the page
 
+Quote Post
nik135
сообщение Feb 7 2013, 06:08
Сообщение #4





Группа: Участник
Сообщений: 10
Регистрация: 26-09-12
Пользователь №: 73 693



Цитата(Golikov A. @ Feb 6 2013, 17:15) *
максимальная пропускная способность нужна для чего? Какая она в цифрах?

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

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

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


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

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

Цитата(aaarrr @ Feb 6 2013, 19:53) *
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?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 7 2013, 08:10
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(nik135 @ Feb 7 2013, 10:08) *
Это правда?

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

Посмотрите, может для вашей задачи подойдет интерфейс камеры. Ничего другого скоростного нет.
Go to the top of the page
 
+Quote Post
nik135
сообщение Feb 7 2013, 11:42
Сообщение #6





Группа: Участник
Сообщений: 10
Регистрация: 26-09-12
Пользователь №: 73 693



Цитата(aaarrr @ Feb 7 2013, 12:10) *
Цифры похожи на правду.

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


Так в интерфейсе камеры только вход, выхода нет никакого rolleyes.gif
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 7 2013, 12:10
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(nik135 @ Feb 7 2013, 15:42) *
Так в интерфейсе камеры только вход, выхода нет никакого rolleyes.gif


Цитата(nik135 @ Feb 7 2013, 10:08) *
В сторону чтения с FPGA желательно потолще, запись в FPGA не так критична по скорости.


А на выход - GPMC/SPI/что-то еще.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Feb 7 2013, 14:44
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



100% нагрузка:

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


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


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

скорость СПИ в зависимости от процов достигает половины или четверти их частоты. ну правда еще длинна линий важна, но очень не маленькая скорость.... правда я без операционок работаю, может с ними все подругому....
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 7 2013, 14:57
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Golikov A. @ Feb 7 2013, 18:44) *
в параллельной шине все операции делает проц.

GPMC - это "железная" шина, там процессор ничего не делает. А на "ногодрыжечной" шине конечно 100%
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Feb 7 2013, 18:56
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Принято! Что-то правда не поглядел что там за проц на платке...
Go to the top of the page
 
+Quote Post
nik135
сообщение Feb 8 2013, 07:14
Сообщение #11





Группа: Участник
Сообщений: 10
Регистрация: 26-09-12
Пользователь №: 73 693



Цитата(Golikov A. @ Feb 7 2013, 22:56) *
Принято! Что-то правда не поглядел что там за проц на платке...


Друзья, именно по поводу подключения подскажете, как и что? К gpmc. как управлять gpmc_csx?
Go to the top of the page
 
+Quote Post
scifi
сообщение Feb 8 2013, 07:24
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Может быть, подцепить FPGA к шине DDR? Пусть "слушает" и ловит свои данные оттуда.
Go to the top of the page
 
+Quote Post
nik135
сообщение Mar 5 2013, 09:21
Сообщение #13





Группа: Участник
Сообщений: 10
Регистрация: 26-09-12
Пользователь №: 73 693



Цитата(scifi @ Feb 8 2013, 11:24) *
Может быть, подцепить FPGA к шине DDR? Пусть "слушает" и ловит свои данные оттуда.


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

У кого есть опыт, поделитесь crying.gif
Go to the top of the page
 
+Quote Post
DASM
сообщение Mar 23 2013, 20:44
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Работаю над точно такой же проблемой. Собираюсь подключать на GPMC. Собственно поэтому и смотрю на этот проц, ибо у DM365/8 полная непонятка с внешей шиной, она как бы есть, но на ней и так куча всего висит и вроде как ее использовать можно только если и грузиться с нее же, а это не катит.
Go to the top of the page
 
+Quote Post
agate
сообщение Mar 25 2013, 17:39
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 19-06-10
Пользователь №: 58 021



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

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th June 2025 - 13:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01457 секунд с 7
ELECTRONIX ©2004-2016