目录
- 前言
- 相关培训课程推荐
- FPGA开发设计培训课程清单详解
-
- 送FPGA开发板套件
- 配套视频+文档教程
- 资料截图
- 配套工程源码--工程文件架构
- 配套工程源码--时序约束
- 配套工程源码1--LED流水灯例程
- 配套工程源码2--串口收发例程
- 配套工程源码3--串口指令控制例程
- 配套工程源码4--i2c读写e2prom串口打印例程
- 配套工程源码5--640x480动态彩条HDMI输出例程
- 配套工程源码6--1280x720动态彩条HDMI输出例程
- 配套工程源码7--串口指令控制动态彩条HDMI输出例程
- 配套工程源码8--动态彩条SDRAM图像缓存HDMI输出例程
- 配套工程源码9--GC0308摄像头SDRAM图像缓存HDMI输出例程
- [配套工程源码10--GC0308摄像头 sobel 边沿检测HDMI输出例程](#配套工程源码10--GC0308摄像头 sobel 边沿检测HDMI输出例程)
- 学习方法和步骤
国产安路FPGA开发设计培训课程,提供开发板+工程源码+视频教程+技术支持
前言
国产FPGA现状
"苟利国家生死以,岂因祸福避趋之!"大洋彼岸的我优秀地下档员,敏锐地洞察到祖国的短板在于先进制程半导体的制造领域,于是本着为中华民族伟大复兴的中国梦贡献绵薄之力的初心,懂先生站在高略高度和长远角度谋划,宁愿背当代一世之骂名也要为祖国千秋万世谋,2018年7月,懂先生正式打响毛衣战,随后又使出恰勃纸战术,旨在为祖国先进制程半导体领域做出自主可控的战略推动;2019年初我刚出道时,还是Xilinx遥遥领先的时代(现在貌似也是),那时的国产FPGA还处于黑铁段位;然而才短短7年,如今的国产FPGA属于百家争鸣、百花齐放、八仙过海、神仙打架、方兴未艾、得陇望蜀、友商都是XX的喜极而泣之局面,此情此景,不得不吟唱老人家的诗句:魏武挥鞭,东临碣石有遗篇,萧瑟秋风今又是,换了人间。。。
目前对于国产FPGA优势有以下几点:
1:性价比高,与同级别国外大厂芯片相比,价格相差几倍甚至十几倍;
2:自主可控,国产FPGA拥有完整自主知识产权的产业链,从芯片到相关EDA工具;
3:响应迅速,FAE技术支持比较到位,及时解决开发过程中遇到的问题,毕竟中文数据手册;
4:采购方便,产业链自主可控,采购便捷;
本课程采用国产FPGA头部的安路系列FPGA,后面将会陆续推出其他国产系列FPGA教程
国产安路FPGA开发设计培训课程适合于初学者
国产安路FPGA开发设计培训课程清单
国产安路FPGA开发设计培训课程清单如下:

包括FPGA工程源码10套;
每套工程均配有PDF文档教程+视频教程
送配套的FPGA开发板套件
你仅需准备一台电脑和一台显示器即可
相关培训课程推荐
本国产安路FPGA开发设计培训课程属于入门级基础培训,旨在让鸽鸽踏入FPGA设计工程师的大门,如果想学到更多更高端的项目,想充实自己的项目经历和经验,增强自己的写简历找工作的能力,可以看看我针对就业培训的往期培训课程,如下:
高端图像处理培训课程
高端图像处理培训课程,主要针对图像处理方向,链接如下:
点击直接前往
高端ISP专业图像处理培训课程
高端专业化的ISP图像处理培训课程,主要针对ISP图像处理方向,链接如下:
点击直接前往
高端就业项目经历培训课程
高端就业项目经历培训课程,主要针对项目开发经验积累和简历丰富方向,链接如下:
点击直接前往
FPGA开发设计培训课程清单详解
送FPGA开发板套件
直接送你送国产安路FPGA开发板套件,清单如下:
1、国产安路FPGA开发板x1
2、电源线/串口线/下载线x1
3、GC0308摄像头x1
4、HDMI线缆x1
开发板功耗低、小巧玲珑,可随身携带,不占空间
配套视频+文档教程
1、每套工程均配有对应的PDF版本教程文档
2、每套工程均配有对应的视频教程
3、视频文档需下载至本地电脑观看,使用专用播放器才能观看
4、视频教程只是参考,想学会FPGA千万不能沉迷于看视频,要少看视频多思考多写代码
资料截图
所有培训资料均已上传网盘,如下:

配套工程源码--工程文件架构
配套的工程源码以工程文件方式呈现,具体如下:

配套工程源码--时序约束
有别于友商提供的代码,我们提供给鸽鸽的每一套工程,无论FPGA资源消耗大小,同意做了时序约束,在保证工程时序收敛的同时,重在使鸽鸽学会时序约束设计方法,不要一股脑的写代码,时序更为重要,工程里的时序约束文件位置如下,可双击打开:

配套工程源码1--LED流水灯例程
流水灯设计之于FPGA开发,好比打印hello word之于软件开发,他本身没有多大工程价值,却实走进FPGA开发世界的大门,所以,学好流水灯也不能说毫无意义,关键在于如何用工程师思维设计出通用性强、代码维护性好、多功能、好用的LED模块,基于此,我们提供给鸽鸽的LED流水灯例程打破友商常规,直接给高价值的LED流水灯,可能你会疑问,一个LED流水灯还能搞出什么新鲜玩意,那么请看我的流水灯顶层接口,你可曾见过?

这个工程的作用也很简单,那就是颠覆你的设计观,让你学会工程级的代码设计思路、方法、规范,谁便让你点亮一颗LED,从此照亮你的前路。
配套工程源码2--串口收发例程
相比流水灯,串口收发就有用点了,串口收发例程可以让你学会串口接收和发送的设计方法,并将接收和发送回环起来,利用串口调试助手便可轻松玩转串口,我们提供给鸽鸽的串口收发例程打破友商常规,直接给高价值的串口收发,可能你会疑问,一个串口收发还能搞出什么新鲜玩意,那么请看我的串口收发顶层接口,你可曾见过?

配套工程源码3--串口指令控制例程
串口指令控制例程是针对常用的工程项目使用场景设计的,比如,上位机需要通过串口配置FPGA产品,或通过串口读取FPGA产品状态等等。
串口指令控制例程的功能如下:
1、电脑端用串口调试助手下发一串自定义的指令给FPGA开发板
2、FPGA开发板接收串口信息并根据自定义协议解析串口指令
3、FPGA首先检测自定义协议的帧头信息
4、FPGA然后接收4字节的有效控制指令数据
5、FPGA然后接收和校验,并自主计算有效控制指令的和校验,并比较对错
6、FPGA然后检测自定义协议的帧尾信息
7、FPGA经过上述步骤且都正确接收、比较、校验后,输出4字节的有效控制指令
8、FPGA根据4字节的有效控制指令控制8颗LED状态
串口指令帧格式如下:

本例程设计的PGA根据4字节的有效控制指令控制8颗LED状态如下:

工程代码架构如下:

配套工程源码4--i2c读写e2prom串口打印例程
i2c读写e2prom串口打印例程设计架构如下:

这个例程将工程项目中常用的i2c和uart都结合起来了,具体过程如下:
1、FPGA实现一个i2c主机驱动,可以实现标准的i2c读写操作
2、FPGA内部生成从0开始到255的累加数
3、FPGA内部在状态机控制下将256个数据依次写入e2prom中存储
4、FPGA再在状态机控制下从e2prom中读出刚写入的256个数据
5、FPGA将读出的256个数据通过串口发送模块发送到上位机
6、电脑端串口调试助手接收显示256个数据,以验证正确性
工程代码架构如下:

配套工程源码5--640x480动态彩条HDMI输出例程
这个例程的作用是让鸽鸽由低端的低速总线设计过渡到图像处理设计领域
我们设计了一个动态彩条来模拟一个视频信号,动态彩条设计遵循工程设计要求,具有通用性、实用性和移植性等特点,动态彩条顶层接口如下:

HDMI视频接口也是FPGA图像处理中的重要接口,我们还需要你掌握RGB转HDMI的接口转换设计方法
本例程的功能也很简单,如下:
1、FPGA内部生成一个640x480@60Hz的动态彩条
2、FPGA内部设计一个RGB888转HDMI模块
3、FPGA将生成的动态彩条送入RGB888转HDMI模块实现接口转换
4、FPGA开发板通过HDMI线缆接到显示器,显示器即可显示动态彩条图像
输出显示如下:

配套工程源码6--1280x720动态彩条HDMI输出例程
本例程与工程源码5相比,仅是分辨率不同,由原来的640x480@60Hz变为1280x720@60Hz,目的是让鸽鸽掌握不同分辨率的图像时序设计,工程项目需求是不断变化的,需要工程师具备任何分辨率的设计能力
输出显示如下:

配套工程源码7--串口指令控制动态彩条HDMI输出例程
本例程将前面的串口指令控制代码加入,实现上位机动态控制、切换视频输出的功能,具备很强的工程使用价值,具体如下:
1、电脑端通过串口调试助手下发控制指令到FPGA开发板
2、FPGA解析串口控制指令,并切换改变动态彩条形态
3、上位机具备实时控制切换FPGA输出视频的能力
4、串口指令4字节数据中的最高字节控制动态彩条的大小
5、串口指令4字节数据中的第3字节控制动态彩条的颜色
指令举例介绍
指令1:aa bb 78 ff c0 cb 02 cc dd
控制动态彩条的大小为120x120
控制动态彩条的颜色为粉色
指令2:aa bb 28 00 00 00 28 cc dd
控制动态彩条的大小为40x40
控制动态彩条的颜色为黑色
指令3:aa bb 28 ff 00 00 27 cc dd
控制动态彩条的大小为40x40
控制动态彩条的颜色为红色
串口调试助手发送指令:aa bb 78 ff c0 cb 02 cc dd
显示器输出如下:

串口调试助手发送指令:aa bb 28 00 00 00 28 cc dd
显示器输出如下:

串口调试助手发送指令:aa bb 28 ff 00 00 27 cc dd
显示器输出如下:

配套工程源码8--动态彩条SDRAM图像缓存HDMI输出例程
这个例程的作用是让鸽鸽掌握FPGA图像缓存设计方法
图像缓存是FPGA开发必备的技能,他不仅仅包括图像的缓存,也包括其他数据的缓存,其本质是将采集的数据送入存储设备再读出,包括SDRAM、DDR3、DDR4等。
本例程设计架构如下:

其中的图像缓存设计是重点,本设计使用FPGA内置的SDRAM作为缓存介质,基于此方法,鸽鸽可以扩展到基于DDR3和DDR4的图像缓存设计
配套工程源码9--GC0308摄像头SDRAM图像缓存HDMI输出例程
这个例程的作用是让鸽鸽掌握FPGA摄像头视频采集缓存输出的设计方法,具有很强的工业应用价值,虽然只是采集简单的GC0308摄像头模组,但其中涉及到的知识点和设计方法很多也很丰富,是一个系统级的参考例程。
本例程设计架构如下:

这里与前面的彩条HDMI输出不同的是将彩条视频换为了真实的GC0308摄像头,并加入了i2c摄像头配置、图像采集等功能。
输出显示如下:

配套工程源码10--GC0308摄像头 sobel 边沿检测HDMI输出例程
这个例程在程源码9的基础上加入了sobel边沿检测算法,属于入门级的图像处理算法,目的是让鸽鸽从图像处理领域过渡到图像算法领域。本例程设计架构如下:

输出显示如下:

学习方法和步骤
1、需自学verilog语法,起码能看懂代码,已有verilog基础的跳过
2、下载我提供的10套工程源码和文档教程,认真研读代码,不懂的先自行网上搜索或问AI解决,千万不要一上来就看视频教程,不然就废了,看视频是学不会FPGA的
3、在充分理解代码后,将工程编译文件下载到配套的FPGA开发板验证
4、在验证后发挥自己的主观能动性,常识修改代码,实现不同的功能,然后下载验证
5、中途可以偶尔打开视频教程看看,但只需看视频中的设计思路