- UVC (USB video device class) USB Cameras,for example Logitech C270
- now,FPGA reconfigurable
- IntelFPGA OpenCL SDK 17.1 , 18.1 ,19.1
- ubuntu 18.04 root file system
- LXDE desktop
- support x2go server (run desktop through ethernet)
- also working with terasic's OpenCL hardware template BSP(x2go only with no vedio ip core,here)
- All in one ( DE1-SoC , DE10-Nano and DE10-Standard)
- usb host and uvc driver for UVC USB cameras
You can downlaod the c5soc_opencl_lxde_fpga_reconfigurable_20201027.img
all in one SD card Image file here Baidu Cloud Link or Google Drive Link.
- Download the Image file and write it into the microSD card
- run
update_rbf_and_dtb.bat
orsh ./update_rbf_and_dtb.sh
on PC to update rbf and dtb for target board - Insert the microSD card to the DE10-nano , DE1-SoC or DE10-Standard board
- Set the MSEL[4:0] on your board to 01010 , SW10(1 to 6) on,off,on,off,on,N/A
- Connect a monitor to the HDMI or VGA port on baord
- Conect USB mouse and keyboard to the USB ports on the board
- Conect UART to PC
- Power on the board and you will see the LXDE graphical environment
- Open the LXterminal on the desktop
- source the init_opencl_17.1.sh file
- run sobel host
host.17.1.run
directly. (which keep same as your target board and the OpenCL SDK version )
Target Board | Hardware Template wtih VIP core | terasic's Hardware Template |
---|---|---|
DE1SOC | de1soc_sharedonly_vga | de1soc_sharedonly |
DE10-nano | de10_nano_sharedonly_hdmi | de10_nano_sharedonly |
DE10-Standard | de10_standard_sharedonly_vga | de10_standard_sharedonly |
de10_nano_sharedonly_mil for DE10-nano + Mi_LCD
A UVC usb camera application program is used to convert YUYV to RGB and Gray by using opencl.
Host usage:
colorApp.run -w960 -h720
colorApp.run -w640 -h480 -r2 -g1 -b2 -u700 -d200
YUYV --> Y(gray) --> sobel
camera_sobel.run -v //"-v" hardware mode
do sobel by using four methods : arm , neon , opencl ,opencl with shared memory
Methods | Frequency | Time |
---|---|---|
Cortex-A9 | 800Mhz | 168ms |
Neon | ? | 37ms |
OpenCL Memory Copy | 140Mhz | 256ms |
OpenCL Shared Memory | 140Mhz | 14.8ms |
Host useage:
number 1 2 3 4 5 6 different ways to run filter
"+" Increase filter threshold
"=" Reset filter threshold to default
" q/<enter>/<esc>" Quit the program
Host useage:
mandelbrot -w=800 -h=640 -c=32
- add mandelbrot application
- add to DE10-nano BSP
- update template to Intel FPGA SDK for OpenCL 17.x
- add DE10-Standard BSP
- add colorGaryAPP shared memory edition
- add camera sobel application
- guides for building SD card image
- Intel FPGA SDK for OpenCL 18.0 template
- add c5soc_opencl_rte runtime environment submodule
- add de10_nano sharedonly with i80 controller BSP for Mi-LCD
- Intel FPGA SDK for OpenCL 18.1, 19.1 environment
- add initial script for selecting the target board in sdcard image
- update u-boot to fix boot hangs bug when not connecting USB-UART to PC
Set the CL_CONTEXT_COMPILER_MODE_INTELFPGA=3 (opencl sdk17.1 ~ 19.1) flag in environment to disable the reprogramming of the FPGA by host. For updating aocx, go to How to do fpga reconfiguration