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

 
 
> Передача данных в микроблейз с VHDL уровня.
Ar-han
сообщение Feb 9 2014, 16:41
Сообщение #1


Частый гость
**

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



Всех приветствую!

Есть spartan-3an starter kit.
Спаял ацп плату, данные 8 bit 50 msps.
Задача - передать данные на комп.
После игр с com-портом, остановился на UDP пакетах.

Вопрос 1: как лучше передавать данные процессору с vhdl уровня. Пока что интересуют пакеты по 1000 байт.
Данные собираются на частоте 50 мгц. пакетами по 1000 точек.
Для начала готов терять часть пакетов.
Пока пробую через GPIO. Подвел к контроллеру прерывания ногу и вывел её на vhdl уровень.
Можно данные по 4 байта складывать в GPIO, но всё равно, кажется не будет успевать.

Вопрос 2: Сколько тактов нужно процессору для обработки прерывания и дописывания в строку переменной из порта GPIO?

Вопрос 3: Почему столько ресурсов скушал только microblaze c переферией?
Это нормально?

OS Platform - standalone
UDP пакеты через Lwip

Microblaze + ethernetlite ip.
Процессор на частоте 62.5 mhz.
16 kb local memory
2kB + 2kb cache data, instr DDR2 SDRAM

fpga xc3s700an

Number of Slice Flip Flops 4,337 ___ 36%
Number of 4 input LUTs 5,218 ___ 44%
Number of occupied Slices 4,259 ___ 72%
Total Number of 4 input LUTs 5,358 ___ 45%
Number of MULT18X18SIOs 3 ___ 15%
Number of RAMB16BWEs 17 ___ 85%

Всем спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Feb 9 2014, 17:20
Сообщение #2


Гуру
******

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



Прелесть микроблайза именно в том что это процессор внутри ПЛИС. И не надо к нему как к обычному процу относиться. У вас в этом проце наружу выведены шины! Через них можно читать и писать данные, при этом как всегда существуют ДМА, так что можно перепихивать данные прямо в память.

Самое простое с помощью визард create and import сделать модуль с регистровым доступом, слейв режима, он добавляется в микроблайз на шину,и данные из него просто читаются как из адресного пространства. Такой же модуль может быть мастером на шине, и сам инициировать обмен. Ну так же есть готовы IP ядра ДМА

обмен по шине одиночный достаточно медленный, много циклов уходят на начало обмена, для увеличения смотрите БРАСТ режимы.

если будите работать из ДДР, а скорее всего так учитывая LwIP и 16 кбайт памяти, то размахивайте кэш на максимум, без кэша с всеми рычажками на скорость, все очень медленно поедет...


ну и поток 50 МБайт в секунду нереальный....
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 30th July 2025 - 11:31
Рейтинг@Mail.ru


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