Предоставление входных данных в FPGA через USB

Я работаю над платформой Xilinx Spartan 3E, используя эту плату для разработки:

http://www.xilinx.com/products/boards-and-kits/HW-SPAR3E-SK-US-G.htm

Моя программа работает с определенными данными, а затем выдает результат. Я хочу передать входные сигналы извне. Входные данные - это поток 8-битных сигналов.

Итак, как мне отправить входные сигналы с моего ноутбука на FPGA через USB? Поддерживает ли это Xilinx или для этого есть стандартное программное обеспечение?

Спасибо.


person Neel Mehta    schedule 21.08.2011    source источник
comment
Какая у вас пропускная способность? Встроенный USB не самый простой способ реализовать ни на одной из сторон (Fpga или ПК). Используете ли вы плату разработчика Xilinx partan 3e или другую стандартную плату разработки, которая может иметь существующие интерфейсы, которые вы могли бы использовать вместо этого?   -  person davidd    schedule 21.08.2011
comment
Я использую стартовый комплект Spartan 3E, который поставляется со встроенным интерфейсом USB, который используется для его программирования с использованием xilinx ide.   -  person Neel Mehta    schedule 22.08.2011
comment
Требования к пропускной способности варьируются. У меня 8-битные цифровые сигналы, а частота для большинства приложений составляет примерно 100 Гц.   -  person Neel Mehta    schedule 22.08.2011
comment
Можете ли вы указать в вопросе ссылку на вашу конкретную плату разработчика - некоторые из них имеют USB только для JTAG (т.е. только конфигурация и отладка, что для вас не очень полезно), некоторые из них могут использовать USB для фактической передачи данных.   -  person Martin Thompson    schedule 22.08.2011
comment
Вот ссылка: xilinx.com /products/boards-and-kits/HW-SPAR3E-SK-US-G.htm. ПЛИС - XC3S500.   -  person Neel Mehta    schedule 22.08.2011
comment
Почему вы сосредоточились на USB? Есть ли причина, по которой последовательный интерфейс RS-232 не будет работать для вас (как предлагается в двух ответах ниже)?   -  person davidd    schedule 23.08.2011


Ответы (2)


Похоже, вы описываете uart больше, чем собственный интерфейс USB. Вы можете получить последовательный адаптер USB на логический уровень, который позволит вам легко передавать данные на ПК и обратно со скоростью до 921,6 кбод. UART / последовательный порт легко реализовать в Fpga, а ПК легко использовать с последовательными портами.

Вот кабель: http://www.ftdichip.com/Products/Cables/USBTTLSerial.htm Если у вас есть карта разработчика, вполне возможно, что этот тип интерфейса присутствует.

Со стороны программного обеспечения вы можете использовать выбранный вами язык программирования, как если бы он взаимодействовал с портом уплотнения, или использовать программу терминала, такую ​​как гипертерминал, или загрузить teraterm http://ttssh2.sourceforge.jp/

Обновленный ответ: 100 Гц - несложный интерфейс. В этом случае вы должны использовать последовательный интерфейс, если это вообще возможно. Плата, на которую вы ссылаетесь, имеет 2 полных соединения RS-232. На этом этапе вам нужен только способ подключить его к вашему компьютеру. Если у вас есть ПК с разъемами RS-232, вам понадобится только кабель, если у вас новый компьютер без кабеля-переводчика RS-232 на USB (например, этот: http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=768-1014-ND или google rs232 usb). Это даст вам виртуальный COM-порт на ПК для взаимодействия с ранее упомянутыми терминальными программами или вашим пользовательским программным обеспечением.

Обновление 2: на вкладке ресурсов страницы платы разработки, на которую вы ссылаетесь, есть несколько проектов fpga на основе UART, которые вы можете использовать в качестве отправной точки. то есть "Программатор SPI Flash для процессора PicoBlaze".

person davidd    schedule 21.08.2011

Насколько я могу судить, эта плата не обеспечивает легкий доступ к интерфейсу USB от ПЛИС. Это просто для настройки и отладки.

Некоторые из более новых плат и инструментов позволяют так называемое аппаратное тестирование, когда симулятор может загружать данные в FPGA, ждать, пока он вычислит результаты, а затем получить данные обратно. Это относительно часто при использовании продукта Xilinx System Generator, поскольку моделирование может быть очень долгим.

Но я думаю, что с этой платой вам будет лучше использовать встроенный порт RS232 для передачи данных на плату и с нее. Однако вам придется построить инфраструктуру, чтобы сделать это самостоятельно.

Это также может дать вам некоторые идеи:

http://www.1pin-interface.com/

person Martin Thompson    schedule 22.08.2011