Skip to content

Lenet for MNIST handwritten digit recognition using Vivado hls tool

License

Notifications You must be signed in to change notification settings

FloyedShen/mnist_hls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mnist_hls

Lenet for MNIST handwritten digit recognition using Vivado hls tool.

  • Accuracy : 97.5938% (8-bit Mode).
  • Speed : 71.43 FPS (100MHz, Zedboard)
  • The complete project is provided, please download it from Baidu net disk, key:1bv4

requirement

  • Vivado hls 2019.2
  • petalinux 2019.2 (optional)
  • Vitis 2019.2
  • python 3+

usage

  • Download MNIST dataset from MNIST and cpoy the dataset to '~/Vivado_hls/MNIST_DATA/'

  • build hls project

# When you are in the project root directory
cd Vivado_hls
vivado_hls -f script.tcl
  • Generate 'tanh' table (default: ap_fixed<8,3>)
# When you are in the project root directory
cd Vivado_hls/tools
python ./tanh_table.py
  • build vivado project
# When you are in the project root directory
cd Vivado
vivado -source source/tcl
  • Generate output product && export hardware.

  • Open Vitis && create platform from *.xsa generated by vivado.

  • Create an application project based on the 'hello world' template.

  • Use this file './Vitis/helloworld.c' replace the original file and add file './Vitis/mnist_data.h'.

  • Run and see the results

TODO

  • Simplify lookup table of 'tanh'.
  • Complete PS design based on embedded linux.

About

Lenet for MNIST handwritten digit recognition using Vivado hls tool

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published