# 时间地点 2019年7月8日到8月18日,于苏州腾飞创新园 # 培训内容 培训内容主要包括PCB设计与焊接、FPGA开发,机器视觉与神经网络和PYNQ硬件设计等方面。 * PCB设计与焊接(第一周到第二周) * 利用KiCad为小脚丫FPGA开发板设计外围接口模块。 * KiCad是一款免费开源的PCB设计工具,提供了一个用于原理图输入和PCB布局布线的集成化开发环境,在这个工具中还有用于产生BOM、Gerber文件、对PCB及其上元器件进行3D查看的功能。 * 小脚丫FPGA开发板以Lattice LCMX02-4000HC-4MG132芯片为核心,拥有4320个LUT逻辑资源,36个用户IO,板载编程器等。 * FPGA开发(第一周到第二周) * 在小脚丫FPGA开发板上实现一些功能,包括PWM生成、UART串口通信、LED显示屏驱动和DDS(直接数字式频率合成器)产生信号波形等 * 完成一个完整的项目,设计一个简易的波形发生器。包含功能有: * FPGA通过UART口接收电脑发送的想要产生的波形和频率等数据; * FPGA通过一个R-2R电阻网络产生对应波形和频率的模拟波形; * 并且在OLED上显示波形和频率。 {{ :students:前两周项目.png?200 |}} * Python入门与网络爬虫(第三周) * 学习Python的基本语法 * 训练项目:尝试利用requests和beautifulsoup这两个库来爬取学校老师邮箱等信息。 * 机器视觉和神经网络(第四周) * 了解图像处理的基本内容,并利用python实现简单的图像处理操作,包括二值化、滤波和锐化等操作。 * 学习opencv库的使用,实现图像拼接、图像追踪和人脸检测等功能。OpenCV是一个开源跨平台计算机视觉库,包含图像处理和计算机视觉方面的很多通用算法。 * 学习神经网络的知识点,能够利用tensorflow,搭建并训练简单的神经网络。 * PYNQ硬件设计(第五周到第六周) * 了解PYNQ内部架构和总线协议 * 掌握高层次综合的步骤,在Vivado HLS中利用C语言设计FPGA的IP核(GPIO、卷积运算等)。 * 利用PYNQ实现对手写数字的加速识别: * 搭建神经网络,利用mnist数据集训练网络,使网络能过够实现对手写数字的识别; * 制作卷积运算和池化运算的硬件IP单元; * 在PYNQ中利用硬件IP单元加速神经网络识别数字的速度。 {{ :students:硬件卷积神经网络.jpg?200 |}}