I have some demand on getting several HID-apps to operate with mouse and keyboard and would like to do this from inside the FPGA instead of adding a PC ore anything like that. I have an easy GUI wich is controlled by push buttons an generates information VGA screans.
I thought of adding conventional ps2 mouse and keyboards for data entry but think they are outdated.
What should be the easiest way to get USB devices attached to the FPGA?
Would a board (which) be able to work as an USB host to do this? Do I need a linux for this?
THX
Hello,
I think that easiest way it's to use Zynq FPGA chip with embedded Linux. This way you will have USB controller in hardware and USB stack in software.
You can look at https://shop.trenz-electronic.de/de/Produkte/Trenz-Electronic/TE07XX-Zynq-SoC/TE0726-Zynq-SoC/ as the board for this project.
Best regards
Oleksandr Kiyenko
Quote from: martinius on October 08, 2017, 09:35:15 PM
I have some demand on getting several HID-apps to operate with mouse and keyboard and would like to do this from inside the FPGA instead of adding a PC ore anything like that. I have an easy GUI wich is controlled by push buttons an generates information VGA screans.
I thought of adding conventional ps2 mouse and keyboards for data entry but think they are outdated.
What should be the easiest way to get USB devices attached to the FPGA?
Would a board (which) be able to work as an USB host to do this? Do I need a linux for this?
THX
PS/2 mouse keyboard can be easily connected to FPGA, there are many such projects done. USB is another topic as USB requires much more software processing and more complex interface so for USB only real option is some Zynq device.
Hello, thanks all sofar. I am coming back to this task now.
Yes, I need full USB support. I found this offer now:
https://shop.trenz-electronic.de/de/27229-Bundle-ZynqBerry-512-MByte-DDR3L-und-SDSoC-Gutschein
I think the Zynqberry will fullfill my demands, but this voucher causes the question, if it is necessary to have a special license?
I want to probably also modifie the usb code, at least I need to write the software to interpret the commands.
My main question is: Why high is the usb bandwidth witch such a device configuration?
I also want to send streaming data, with about 10...20Mbit to the FPGA part and then to the pins to connect another FPGA board.
Hi,
this voucher is only for Xilinx SDSoC:
- https://www.xilinx.com/products/design-tools/software-zone/sdsoc.html (https://www.xilinx.com/products/design-tools/software-zone/sdsoc.html)
It's a second develoment enviroment, where yyou can develop FPGA design in C/C++ and openCL
Normally you need only Vivado,SDK and Petalinux (other linux build enviroment is also possible).The FPGA device of the Zynqberry is include into the free available Vivado webpack:
- https://www.xilinx.com/products/design-tools/vivado/vivado-webpack.html
- https://www.xilinx.com/support/documentation/sw_manuals/xilinx2017_4/ug973-vivado-release-notes-install-license.pdf
Reference Designs and documentation of the zynqberry:
- https://wiki.trenz-electronic.de/display/PD/TE0726+Resources
We have not done any performance test.Zynq has USB 2 controller, but on Zynqberry this controller is used for both USB connectors and ETH over USB.Basic Zynq Documentations from Xilinx:
- https://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf
- https://www.xilinx.com/support/documentation/data_sheets/ds187-XC7Z010-XC7Z020-Data-Sheet.pdf
brJohn