时间:2024-07-26 来源:网络搜集 关于我们 0
FPGA层次可划分为,鸡蛋级别,菜鸟级别,老鸟级别,高手级别四类。鸡蛋级别属于还未入门的,这里就先不说了。下面的内容主要介绍如何成为一个菜鸟。
1)熟悉语法,其实你不需要什么都会,但是要记住几个经典的时序,逻辑电路的描述方式。
2)熟悉三个经典电路描述并仿真。仿真其实不是很重要,我开始学习压根没学那个玩意儿,因为要是只做接口那玩意儿没啥用。直接用ChipSchop抓抓数据更快。仿真是给做算法,工程相对较大的人用的。三个经典电路分别是,分频器,计数器(可做一个时钟),序列检测器。
这样你就基本熟悉了开发环境了。
3)上板卡跑一个灯,熟悉一个板卡上时钟资源使用,硬件的使用原理。
4)知道了FPGA学习主要不在于编程!压根没有编程这回事!!Verilog是硬件描述语言!描述!!写代码时脑子里必须有电路图!!知道FPGA主要学的是硬件和算法!!软件最多能占10%就不错了!!
只要你能完成这上面的东西,恭喜你进入菜鸟行列,可以在别人设计好FPGA方案的条件下完成一些模块的设计了。其实华为招聘员工,很多人FPGA水平一开始都差不多这么菜。
先写一下老鸟需要会什么,以后再答怎么做到。
1)FPGA逻辑资源,特别是时钟资源要非常熟悉。
2)做算法的必须熟悉sysgen的使用。说的容易了,sysgen画画图也没那么容易哦,你要熟悉使用各种滤波器,理论知识要求起点就不小。
3)充分理解FPGA从上而下的设计原则,能够编写中等程度的FPGA详细设计方案。
4)熟悉时序优化,时序收敛,区域约束等知识。并且能运用到编程之中,解决菜鸟们解决不了的“不科学”的问题。说白了就是会使用planhead,以及ISE中那些你还没接触过的功能。一般菜鸟们ISE都只会编程,默认的编译一下,然后下载,ChipSchop抓抓数看看。
5)能够熟悉FPGA常用的接口,不求都会编程,但是要知道他们功能是什么。比如ADC,DAC,串口,EMIF等等。并且熟悉DSP等FPGA周边常用芯片工作原理。
6)熟悉硬件设计,至少要知道Bank上IO规划怎么好,全局时钟,区域时钟大致怎么规划等等。
7)信号源,示波器,频谱仪都要熟悉使用吧!
等这些都熟悉了,差不多是老鸟了。
如何加快成为合格菜鸟的进度 ?
按照以上的方法,从时间上来说一般1-2年能入门,就是成为一个合格的菜鸟水平,但是没有达到老鸟级别,3-5年达到老鸟级别。能不能到高手看个人造化。那么如何加快进度呢?其实还是有方法的,如果你有一个好的老师能够指导你,当你遇到困难时可以帮你指正,也可以把自己的经验传授给你,这样会大大加快FPGA进阶进度。如果自己周围没有一个好老师该怎么办?最好的办法就是通过网课来提升,建议参加EETOP创芯大讲堂刚刚推出的一门FPGA入门课程来实现。
课程介绍:
【连载】
从零开始大战FPGA
引子:
本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“硬件思维”。本课程所使用硬件编程语言为Verilog,示例分别在Xilinx和Intel(Altera)开发板,基于ISE、Vivado和Quartus II软件进行演示。
通过本课程学习,可以让初学者透过表面看到FPGA设计技术的实质,快速进入FPGA设计领域,为掌握FPGA高级设计技术打下基础,发展个人兴趣,实现个人理想,助创新创业一臂之力。
主讲人:姜佩贺,哈尔滨工业大学博士,烟台大学讲师,曾就职于某机器人行业顶尖企业。多年来一直从事FPGA开发及相关工作,具有丰富的FPGA实践和授课经验。
识别二维码
参与学习
课程简介:
近年来,FPGA技术发展迅速,其高度的灵活性,使其在通信、数据处理、网络、仪器、工业控制、军事和航空航天等领域得到越来越广泛的应用,已俨然成为数字系统的核心。特别是在当前人工智能、大数据、云计算火爆的背景下,FPGA迎来了又一个春天。
电子工程师精通FPGA已是对电子工程师的最基本要求。同时,FPGA工程师也是IC设计公司迫切需要的人才。业内人士认为,目前FPGA/IC设计行业至少有20-30万的人才缺口,而且还在持续增加。这主要有两方面的原因:一是目前高校的专业设置很少涉及FPGA和IC设计的课程,即使有也是偏重于理论,因此企业很难招聘到实战型人才;二是FPGA和IC设计需要硬件环境和大量的实践来积累经验。如果没有适当的指导,需要走很多弯路。
本课程是一线高校教师和资深工程师的经验总结,包含从入门到精通的各个知识体系,囊括“基础篇、语法篇、实践篇、工具篇、提高篇”等内容。课程尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路对应的“硬件思维”。
本课程所使用硬件编程语言为Verilog语言,在课程中,示例分别基于ISE、Vivado和Quartus II软件,分别在Xilinx和Altera开发板进行演示,其中开发板为自行设计。由于Verilog语言的通用性,所将讲授内容及所有示例也适用于其他FPGA硬件平台。
通过本课程学习,可以让初学者透过表面看到FPGA设计技术的实质,快速进入FPGA设计领域,为掌握FPGA高级设计技术打下基础。此外,在“大众创业、万众创新”的背景下,希望本课程的推出,能够帮助你发展个人兴趣,实现个人理想,助创新创业一臂之力。
适用对象:
期望涉足FPGA领域的初学者;
有一定基础但没有系统学习过FPGA的相关人员;
不同阶段的学习者可以有所选择听取不同阶段的课程。
课程目标:
本课程具有完整的知识体系,涵盖从入门到精通的各个知识环节。通过本课程的学习,能够帮助初学者透过表面看到FPGA设计技术的实质,更快速进入FPGA设计领域,达到初级工程师水平;能够帮助没有系统学习过FPGA知识的学习者,系统掌握FPGA知识,成为“正规军”;能够帮助有一定基础的工程师,进一步提高FPGA设计水平。
开发平台:
本课程所使用的演示平台为自行设计,包含两块核心板和一块扩展板,核心板分别基于Xilinx Spartan 6 LX9和Altera Cyclone IV系列FPGA,扩展板通用。由于Verilog语言的通用性,所将讲授内容及所有示例也适用于其他FPGA硬件平台。
课程内容:
基础篇:
本部分内容包含3讲,分别为“基础知识与课程介绍”、“数字电路基础知识”和“全局总览及简单实验”。在“基础知识与课程介绍”中,介绍了FPGA的基本概念、应用领域、开发流程、设计工具及课程介绍;在“数字电路基础知识”中,复习了数字电路的相关知识,讲授了组合逻辑电路、时序逻辑电路的特点,列举了常用的组合和时序逻辑电路,着重分析了数字系统的构成和波形图的绘制分析方法;在“全局总览及简单实验”,以3-8译码器为例子,演示了代码编写、modelsim仿真、综合下载的全过程,以方便学员从全局把控所学知识的架构。
语法篇:
本部分内容包含3讲,分别为“基础知识与课程介绍”、“数字电路基础知识”和“全局总览及简单实验”。在“基础知识与课程介绍”中,介绍了FPGA的基本概念、应用领域、开发流程、设计工具及课程介绍;在“数字电路基础知识”中,复习了数字电路的相关知识,讲授了组合逻辑电路、时序逻辑电路的特点,列举了常用的组合和时序逻辑电路,着重分析了数字系统的构成和波形图的绘制分析方法;在“全局总览及简单实验”,以3-8译码器为例子,演示了代码编写、modelsim仿真、综合下载的全过程,以方便学员从全局把控所学知识的架构。
工具篇:
本部分将介绍gvim的使用,modelsim的命令行仿真,debussy的波形查看,QuartusII中的SignalTap II、ISE中的ChipScope等工具的使用。
实践篇:
本部分将对开发板上所有的外设进行驱动。在实践中,以专题的形式讲授有限状态机、IP核的调用、FPGA内部构成等知识。
提高篇:
本部分将针对跨时钟域问题、FPGA设计原则与操作技巧、速度优化、面积优化、时序分析等知识进行讲解,并且选取相关高阶实验进行设计和演示。