FPGA系统设计初级和中级介绍

来源:百度文库 编辑:神马文学网 时间:2024/04/26 23:56:52
热线:021-51875830 62450161 0755-61280252传真:021-62450161业务手机:15921673576曙海培训网站:http://www.51qianru.cn课程背景        FPGA系统设计初级和中级介绍 FPGA系统设计初级班培训课程主要帮助学员尽快掌握 CPLD/FPGA 的开发流程和设计方法,以工程实践为例,循序渐进的学习FPGA的集成开发环境,开发流程以及硬件电路设计等知识。每次课程都配有相关实战训练,每个实战训练题目都可以在Cyclone(飓风系列)的FPGA硬件平台上进行下载验证。通过实战,学员可以更好的理解消化课堂知识,工程实践水平会得到迅速提高。 课程目标 培养学员迅速掌握和使用CPLD/FPGA数字系统开发工具、开发流程,能够独立进行初步的FPGA系统设计。经过培训,学员可以掌握HDL语言的初步开发能力,并且解决FPGA产品开发过程中的常见问题,掌握基于FPGA的嵌入式系统(NIOSII)的设计和调试方法。 培养对象 FPGA系统的软件和硬件开发工程师;电子类专业的大学生和研究生;电子产品设计爱好者。 入学要求 学员学习本课程应具备下列基础知识: ◆电路系统的基本概念。 班级规模及环境 为了保证培训效果,增加互动环节,我们坚持小班授课,每期报名人数限5人,多余人员安排到下一期进行。 上课时间和地点 上课地点:华东师范大学/银城大厦(上海市,地铁3号线或4号线金沙江路站旁)最近开班有周末班/连续班/晚班 学时   ◆课时: 共12天,96学时 ◆外地学员:代理安排食宿(需提前预定) ☆合格学员免费颁发相关资格证书,提升您的职业资质 作为最早专注于嵌入式培训的专业机构,曙海嵌入式学院提供的证书得到本行业的广泛认 可,学员的能力得到大家的认同。 ☆合格学员免费推荐工作 最新优惠 ◆团体报名优惠措施:两人95折优惠,三人或三人以上9折优惠    同时报选《FPGA应用设计高级班》,即享受400元现金优惠! 质量保障 1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听; 2、培训结束后免费提供一个月的技术支持,充分保证培训后出效果; 3、培训合格学员可享受免费推荐就业机会。 课程进度安排 课程大纲(本教学方案有两种语言版本,如果学员想学VHDL语言编程,我们可根据要求调整) 第一阶段 第一阶段的课程主要帮助学员了解FPGA系统设计的基础知识,掌握FPGA最小系统硬件电路设计方法,学会操作QuartusII软件来完成FPGA的设计和开发。 1.可编程逻辑设计技术简介2.下一代可编程逻辑设计技术展望3.可编程逻辑器件硬件上的四大发展趋势4.EDA软件设计方法及发展趋势5.FPGA的设计流程6.FPGA的常用开发工具7.FPGA的基本结构8.主流低成本FPGA Cyclone9.新一代低成本FPGA Cyclone II10.FPGA芯片的选型策略详解11.FPGA关键电路的设计(最小电路设计): 11.1 FPGA管脚设计 11.2 下载配置与调试接口电路设计 11.3 高速SDRAM存储器接口电路设计 11.4 异步SRAM(ASRAM)存储器接口电路设计 11.5 FLASH存储器接口电路设计 11.6 开关、按键与发光LED电路设计 11.7 VGA接口电路设计 11.8 PS/2鼠标及键盘接口电路设计 11.9 RS-232串口 11.10 字符型液晶显示器接口电路设计 11.11 USB2.0接口芯片CY7C68013电路设计 11.12 电源电路设计 11.13 复位电路设计 11.14 拨码开关电路设计 11.15 i2c总线电路设计 11.16 时钟电路设计 11.17 图形液晶电路设计 12.Alter FPGA的结构 12.1 Alter 高密度FPGA-Stratix的结构、内部逻辑单元及接口 12.2 Alter 主流低成本FPGA-Cyclone,Cyclone II 的结构、内部逻辑单元及接口 12.3 Alter FPGA的布线策略 1. 实战一:在Altera的FPGA开发板上运行一个接口实验程序-交通灯的设计实现,如何控制Red,Green,Yellow灯在南北东西各个方向的交替运作。 训练课题:“交通灯的设计实现” 实验要点: 1.1 Quartus II工程创建及属性设置 1.2 Quartus II源文件设计输入方式 1.3 Quartus II约束设计 1.4 Quartus II工程编译 1.5 Quartus II功能仿真 1.6 Quartus II时序仿真 1.7 Quartus II硬件下载 第二阶段 熟练掌握硬件描述语言(Verilog HDL)是FPGA工程师的基本要求。通过本节课程的学习,学员可以了解目前最流行的Verilog HDL语言的基本语法,掌握Verilog HDL语言中最常用的基本语法。通过本节课程学习,学员可以设计一些简单的FPGA程序,掌握组合逻辑和时序逻辑电路的设计方法。通过实战训练,学员可以对Verilog HDL语言有更深入的理解和认识。 1.Verilog HDL语言简介2.Verilog HDL语言逻辑系统3.Verilog HDL操作数和操作符4.Verilog HDL和VHDL语言的对比5.Verilog HDL循环语句 6.Verilog HDL程序的基本结构7.Verilog HDL语言的数据类型和运算符8.Verilog HDL语言的赋值语句和块语,阻塞和非阻塞赋值语句的区别9.Verilog HDL语言的条件语句,包括IF语句和CASE语句的典型应用10.Verilog HDL语言的其他常用语句11.Verilog HDL语言实现组合逻辑电路12.Verilog HDL语言实现时序逻辑电路 1. 实战训练二: 训练课题:“多路选择器的设计” 实验要点: 1.1 Quartus II软件操作 1.2 组合逻辑电路设计实现 1.3 IF语句和CASE语句的使用2. 实战训练三: 训练课题:“跑马灯设计实现” 实验要点: 2.1 Quartus II软件操作 2.2 时序逻辑电路设计实现 2.3 分频原理和实现方法3. 实战训练四: 训练课题:“7段数码管测试实验-以动态扫描方式在8位数码管“同时”显示0-7” 实验要点: 3.1 Quartus II软件操作 3.2 了解如何按一定的频率轮流向各个数码管的COM端送出低电平,同时送出对应的数据给各段。 3.3 介绍多个数码管动态显示的方法。 第三阶段 虽然利用第二阶段课程学到的HDL基本语法可以完成大部分的FPGA功能,但相对复杂的FPGA系统设计中,如果能够合理的应用Verilog HDL的高级语法结构,可以达到事半功倍的效果。通过第三天课程的学习,学员可以掌握任务(TASK),函数(FUNCTION)和有限状态机(FSM)的设计方法,可以更好的掌握FPGA的设计技术。此外,本节课程还介绍了QuartusII软件的两个常用的高级工具-SignalTAP和LogicLock,可以提高FPGA设计和调试的效率。 1. TASK和FUNCTION语句的应用场合2. Verilog HDL高级语法结构-任务(TASK)3. Verilog HDL高级语法结构-任务(FUNCTION) 4. 有限状态机(FSM)的设计原理及其代码风格5. 逻辑综合的原则以及可综合的代码设计风格 6. SignalTap II在线逻辑分析仪使用方法 7. Logic Lock逻辑锁定工具使用技巧 1. 实战训练五: 训练课题:“典型状态机设计实例” 实验要点: 1.1 FSM设计方法 1.2 状态机的编码(Binary、gray-code、one-hot等) 1.3 状态机的初始化状态和默认状态(完整状态机设计) 1.4 状态机的状态定义风格 1.5 状态机的编写风格2. 实战训练六: 训练课题:“拨码开关设计实验” 实验要点: 2.1 Quartus II原理图输入方式 2.2 SignalTap II在线调试 2.3 了解拨码开关的工作原理及电路设计3. 实战训练七: 训练课题:“矩阵键盘设计实验” 实验要点: 3.1 Quartus II原理图输入方式 3.2 了解矩阵键盘的工作原理及电路设计 第四阶段 随着FPGA芯片的性能和密度不断提高, 基于FPGA的SOPC系统正在逐渐成熟并且在很多领域得到了应用。第四阶段课程主要给学员介绍Altera公司基于NIOSII软核的SoPC系统设计流程和方法。通过硬件开发板上的SoPC系统设计实验,学员能够体会SoPC技术给系统设计带来的灵活性。最后通过FPGA综合设计实验,学员完成对四天学习内容的回顾和总结。 1. 基于FPGA的SOPC系统组成原理和典型方案2. Altera公司的NIOS II 解决方案3. 基于NIOS II的硬件系统设计流程4. 基于NIOS II的软件系统设计流程5. 基于NIOS II的软件系统调试方法 1. 实战训练八: 训练课题:“存储器读写测试” 实验要点: 2.1 QuartusII SOPC Builder使用方法 2.2 NIOSII IDE软件开发流程 2.3 CFI接口FLASH芯片的读写方法 2.4 NIOSII的CFI接口外设驱动调用方法2. 实战训练九: 训练课题:“FPGA综合设计实验” 训练内容: 针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真验证和程序下载固化。 实验要点: 第五阶段 Alter的IP工具1.IP的概念、Alter的IP1.1 IP的概念1.2 Alter可提供的 IP1.3 Alter IP在设计中的作用2.使用Alter的基本宏功能2.定制基本的宏功能2.1定制基本宏功能2.2实现基本宏功能2.3设计实例3.使用Alter的IP核3.1定制IP核3.2实现IP核3.3设计实例 第六阶段 QUARTUS II 的常用辅助设计工具1.I/O分配验证1.1 I/O分配验证功能简介1.2 I/O分配验证流程1.3 用于I/O分配验证的输入1.4 运行I/O分配验证2. 功率分析2.1Excel-base功率计算器2.2Simulation-based功率估算3.RTL阅读器3.1RTL阅读器用户界面3.2原理图的分页和模块层次的切换3.3过滤原理图3.4将原理图中的节点定位到源设计文件3.5在原理图中查找节点或网线3.6使用RTL阅读器分析设计中的问题4.时序收敛平面布局规划器(Time Closure Floorplan)4.1使用Time Closure Floorplan分析设计4.2Time Closure Floorplan优化设计5.Chip Editor底层编辑器5.1Chip Editor功能详解5.2使用Chip Editor的设计流程5.3Chip Editor视图5.4资源特性编辑器5.5 Chip Editor的一般应用6.工程更改管理(ECO)6.1 ECO的应用范围6.2 ECO的操作流程6.3 使用Change Manager查看和管理更改6.4 ECO验证7.第三方EDA工具7.1NativeLink与WYSIWYG7.2 3种EDA工具的使用流程7.3 QUARTUS II支持的第三方工具8.综合的概念与Synplify/Synplify Pro综合工具8.1Synplify Pro用户界面8.2 Synplify Pro综合流程8.3 Synplify Pro的其他综合技巧 第七阶段 1.实战训练十: 训练课题:“数码管进位与刷新综合设计实验” 步骤一、详细一个铺垫性实验,通过它讲解数码管各种进位的方法,与进位代码的编写,其中注意:  a.数码管整体刷新和数码管动态扫描显示的区别和联系,怎样编写代码  b.编程中注意FPGA的精髓:并行运行  c.注意在传递数据的过程中,采用什么方法比较好 步骤二、学员自己编写一个数字时钟程序  a.训练学员举一反三的能力  b.注意一些特殊用法 步骤三、总结学员的出错原因,给出解决方法 2.实战训练十一:训练课题:“蜂鸣器怎样演奏音乐,怎样演奏梁祝的曲子” 步骤一、详细一个铺垫性实验,通过它讲解怎样通过分频来实现音阶和音调,其中注意:  a.状态机的高级用法  b.怎样分频  c.注意在传递数据的过程中,采用什么方法比较好 步骤二、学员自己编写一个数字时钟程序  a.训练学员举一反三的能力  b.注意一些特殊用法 步骤三、总结学员的出错原因,给出解决方法 3.实战训练十二: 1. 内容的回顾与难点消化,解疑答惑 2.编程中举一反三和融汇贯通训练 3. FPGA的程序固化方法 第八阶段 知识详解: 1.字符型液晶显示原理 2.图形液晶显示原理 3.彩色液晶显示原理详解,TFT 液晶显示原理详解 4.UFB、STN、TFT比较 1. 实战训练十二: 训练课题:1602字符型液晶显示实验 训练内容: 通过实验充分理解字符型液晶的显示原理,是怎样通过通过代码体现的,针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真。2. 实战训练十三: 训练课题:“128x64图形液晶显示实验” 训练内容: 通过实验充分理解字图形液晶的显示原理,是怎样通过通过代码体现的针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真。 iphone培训wap培训brew培训上海单片机培训劳务派遣人才派遣人事代理人事外包