P2P и DMA FIFO

Ответить
bahec06
interested
interested
Сообщения: 4
Зарегистрирован: 24 июн 2014, 16:26
Версия LabVIEW: 2013
Контактная информация:

P2P и DMA FIFO

Сообщение bahec06 »

Добрый день.
Имеется система, которая содержит: шасси NI PXIe-1082, модуль FPGA NI PXIe-7966R и генератор NI PXIe-5451.
Система работает следующим образом:
С персонального компьютера на FPGA с помощью DMA FIFO Host to Target отправляются числа в формате uint8 с частотой 100 мегасемплов в секунду. В FPGA эти числа обрабатываются, получается некоторый сигнал, который затем отправляется на генератор PXIe-5451 с помощью технологии Peer-to-Peer тоже со скоростью 100 мегасемплов в секунду, но уже в формате U32.
DMA FIFO и P2P FIFO у меня находятся в разных циклах SCTL.
Когда я смотрю осциллографом выход генератора - сигнал пропадает в некоторые моменты (то есть на выходе показывает нуль в течение некоторого времени). Я так понимаю, что ему не хватает скорости или такая система не может работать в принципе.
Вопрос: Поддерживает ли PXIe-7966R одновременную работу DMA FIFO Host to Target и P2P? И вообще из-за чего у меня может быть эта проблема?
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: P2P и DMA FIFO

Сообщение Borjomy_1 »

Тактирующий сигнал должен быть один! Если это ЦАП (а это ЦАП), то должны быть средства и буфферизиации и контроля опустошения буфера ЦАП. Исходный сигнал не может генериться сам по себе, только по необходимости.
Сейчас у вас несколько тактовых циклов. 100Мс/c на компе и на FPGA (условно) это не одно и тоже. Не существует в природе ТГ с абсолютно одинаковой частотой. А так как они расходятся, то это только вопрос времени, когда произойдет рассогласование на один отсчет и у вас появятся нули.
bahec06
interested
interested
Сообщения: 4
Зарегистрирован: 24 июн 2014, 16:26
Версия LabVIEW: 2013
Контактная информация:

Re: P2P и DMA FIFO

Сообщение bahec06 »

Да, согласен.
Но я сейчас переместил всё в один цикл, который тактируется от одного клока 100 МГц, и всё равно ничего не работает
У генератора максимальная частота 400 мегасемплов в секунду. Когда я с FPGA в генератор отправляю одно 16-битное число и выставляю частоту 100 МГц, то выводится ошибка "Underflow". Когда я снижаю частоту до 50 МГц, то всё хорошо работает. Но это уже не та частота, которая мне нужна.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: P2P и DMA FIFO

Сообщение Borjomy_1 »

С персонального компьютера на FPGA с помощью DMA FIFO Host to Target отправляются числа в формате uint8 с частотой 100 мегасемплов в секунду.
Сеть гигабитная? Кто отправляет сейчас огибающую сигнала?
Код FPGA в студию
bahec06
interested
interested
Сообщения: 4
Зарегистрирован: 24 июн 2014, 16:26
Версия LabVIEW: 2013
Контактная информация:

Re: P2P и DMA FIFO

Сообщение bahec06 »

Для передачи с компьютера на FPGA используется MXI link. Там со скоростью передачи всё в порядке.
FPGA отправляет сигнал на ЦАП.
Проект LabVIEW 2014 по ссылке ниже.

https://yadi.sk/d/FfpLhrxMnoTVj
Ответить

Вернуться в «Real Time / FPGA / Embedded»