课程背景 FPGA系统设计初级和中级班 |
FPGA系统设计初级班培训课程主要帮助学员尽快掌握 FPGA 的开发流程和设计方法,以工程实践为例,循序渐进的学习FPGA的集成开发环境,开发流程以及硬件电路设计等知识。每次课程都配有相关实战训练,每个实战训练题目都可以在FPGA硬件平台上进行下载验证。通过实战,学员可以更好的理解消化课堂知识,工程实践水平会得到迅速提高。 |
课程目标 |
培养学员迅速掌握和使用FPGA数字系统开发工具、开发流程,能够独立进行初步的FPGA系统设计。经过培训,学员可以掌握HDL语言的初步开发能力,并且解决FPGA产品开发过程中的常见问题,掌握基于FPGA的设计和调试方法。 |
培养对象 |
FPGA系统的软件和硬件开发工程师;电子类专业的大学生和研究生;电子产品设计爱好者。 |
入学要求 |
学员学习本课程应具备下列基础知识:
◆电路系统的基本概念。 |
班级规模及环境 |
为了保证培训效果,增加互动环节,我们坚持小班授课,每期报名人数限3到5人,多余人员安排到下一期进行。 |
上课时间和地点 |
上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山学院/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:云峰大厦
最近开课时间(周末班/连续班/晚班):FPGA初级和中级班开课时间:即将开课,具体请咨询客服 |
学时 |
◆课时: 共5天,30学时
◆外地学员:代理安排食宿(需提前预定)
☆注重质量
☆边讲边练
☆合格学员免费推荐工作
☆合格学员免费颁发相关工程师等资格证书,提升您的职业资质
专注高端培训15年,曙海提供的证书得到本行业的广泛认可,学员的能力
得到大家的认同,受到用人单位的广泛赞誉。
★实验设备请点击这儿查看★ |
最新优惠 |
◆团体报名优惠措施:两人95折优惠,三人或三人以上9折优惠 。注意:在读学生凭学生证,即使一个人也优惠500元。
同时报选《FPGA应用设计高级班》,即享受优惠! |
质量保障 |
1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
2、培训结束后免费提供半年的技术支持,充分保证培训后出效果;
3、培训合格学员可享受免费推荐就业机会。 ☆合格学员免费颁发相关工程师等资格证书,提升您的职业资质。专注高端培训13年,曙海提供的证书得到本行业的广泛认可,学员的能力得到大家的认同,受到用人单位的广泛赞誉。 |
师资团队 |
◆【李老师】
FPGA课程金牌讲师,项目经验非常丰富,9年FPGA/DSP系统硬件开发工作经验。熟悉整个EDA设计流程,熟练使用Alter、Xinlinx,ModelSim开发工具,精通Verilog
HDL语言和VHDL语言,精通Nios II EDS/SOPC、、IP核、PCI PLX 9054数据采集卡等开发。
◆【陈老师】
资深FPGA开发工程师,FPGA培训课程金牌讲师,有8年的FPGA和DSP系统硬件开发经验,最近4年来一直从事视频和图像处理领域的高速DSP系统硬、软件和FPGA系统的设计和开发,具有非常丰富的高速系统设计经验,精通TI公司的C6000系列高速DSP和Altera公司的全系列FPGA/CPLD。
更多师资力量请参见曙海师资团队,请点击这儿查看。 |
课程进度安排 |
课程大纲(本教学方案有两种语言版本,如果学员想学VHDL语言编程,我们可根据要求调整) |
第一阶段 |
第一阶段的课程主要帮助学员了解FPGA系统设计的基础知识,掌握FPGA最小系统硬件电路设计方法,学会操作QuartusII软件来完成FPGA的设计和开发。 |
1.可编程逻辑设计技术简介
2.下一代可编程逻辑设计技术展望
3.可编程逻辑器件硬件上的四大发展趋势
4.EDA软件设计方法及发展趋势
5.FPGA的设计流程
6.FPGA的常用开发工具
7.FPGA的基本结构
8.主流低成本FPGA 芯片
9.FPGA芯片的选型策略详解
10.FPGA .V文件的编程规范
10.1 单个.v文件的书写规范
10.2 多个.v文件的书写规范
10.3 声明部分的编写规范
10.4 主体部分编写,always、initial、function、task的选择和使用
10.5 Always语句块编写规范和注意要点
10.6 Alwasys内部功能的扩充和Always直接的通信和协调
11.FPGA关键电路的设计(最小电路设计):
11.1 FPGA管脚设计
11.2 下载配置与调试接口电路设计
11.3 RS-232串口
11.4 字符型液晶显示器接口电路设计
11.5 电源电路设计
11.6 复位电路设计
11.7 拨码开关电路设计
11.8 i2c总线电路设计
11.9 时钟电路设计
11.10 图形液晶电路设计
12.FPGA芯片的的结构
12.1 FPGA的结构、内部逻辑单元及接口
12.2 主流低成本FPGA的结构、内部逻辑单元及接口
12.3 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,可以提高FPGA设计和调试的效率。 |
1.
TASK和FUNCTION语句的应用场合
2. Verilog HDL高级语法结构-任务(TASK)
3. Verilog HDL高级语法结构-任务(FUNCTION)
4. 有限状态机(FSM)的设计原理及其代码风格
5. 逻辑综合的原则以及可综合的代码设计风格
6. SignalTap II在线逻辑分析仪使用方法
7. FPGA编程思想梳理和升华
7.1 状态机的使用技巧(嵌套,相互调用,顺序执行)
1.2 标志的编程思想
1.3 并发编程思想(提高代码执行效率的方法,Always协调和通信)
1.4 分频的技巧
|
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 了解矩阵键盘的工作原理及电路设计
4. 实战训练八:SignalTap II逻辑分析仪实验
4.1 SignalTap II逻辑分析仪分析流程
4.2 SignalTap II逻辑分析仪使用技巧
|
第四阶段 |
随着FPGA芯片的性能和密度不断提高,
基于FPGA的SOPC系统正在逐渐成熟并且在很多领域得到了应用。第四阶段课程主要给学员介绍Altera公司基于NIOSII软核的SoPC系统设计流程和方法。通过硬件开发板上的SoPC系统设计实验,学员能够体会SoPC技术给系统设计带来的灵活性。最后通过FPGA综合设计实验,学员完成对四天学习内容的回顾和总结。 |
1.
基于FPGA系统组成原理和典型方案
2. Altera公司的解决方案
3. FPGA的编程思想的总结
4. FPGA硬件开发的思路
5. FPGA调试方法
6. SOPC 开发思路和技巧
7. NIOS开发流程和技巧
8. SOPC Build CPU软核的搭建
9. NIOS+SOPC Builder+Quartus的联合使用案例 |
1. 实战训练九:
训练课题:“NIOS+SOPC Builder+Quartus的联合使用”
实验要点:
1.1 SOPC调试方法
1.2 SOPC软件开发流程
1.3 NIOS+SOPC Builder+Quartus的联合开发实验
2. 实战训练十:
训练课题:“SOPC 软核综合设计实验”
训练内容: 针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真验证和程序下载固化。
实验要点:
2.1 复杂软核的构建
2.2 复杂软核的Nios编程
2.3 软核组织和裁剪 |
第五阶段 |
1.实战训练十一:
训练课题:“数码管进位与刷新综合设计实验”
步骤一、详细一个铺垫性实验,通过它讲解数码管各种进位的方法,与进位代码的编写,其中注意:
a.数码管整体刷新和数码管动态扫描显示的区别和联系,怎样编写代码
b.编程中注意FPGA的精髓:并行运行
c.注意在传递数据的过程中,采用什么方法比较好
步骤二、学员自己编写一个数字时钟程序
a.训练学员举一反三的能力
b.注意一些特殊用法
步骤三、总结学员的出错原因,给出解决方法
2.实战训练十二:
训练课题:“蜂鸣器怎样演奏音乐,怎样演奏梁祝的曲子”
步骤一、详细一个铺垫性实验,通过它讲解怎样通过分频来实现音阶和音调,其中注意:
a.状态机的高级用法
b.怎样分频
c.注意在传递数据的过程中,采用什么方法比较好
步骤二、学员自己编写一个数字时钟程序
a.训练学员举一反三的能力
b.注意一些特殊用法
步骤三、总结学员的出错原因,给出解决方法
3.实战训练十三:
训练课题:LCD液晶控制实验
1. 内容的回顾与难点消化,解疑答惑
2.编程中举一反三和融汇贯通训练
3. FPGA的程序固化方法
3.实战训练十四:
训练课题:TRAFFIC实验
1. 内容的回顾与难点消化,解疑答惑
2.编程中举一反三和融汇贯通训练
3. FPGA的程序固化方法
3.实战训练十五:
训练课题:串口开发实验
1. 内容的回顾与难点消化,解疑答惑
2.编程中举一反三和融汇贯通训练
3. FPGA的程序固化方法 |
第六阶段 |
知识详解:
1.字符型液晶显示原理
2.图形液晶显示原理
3.液晶显示原理详解
4.I2C协议原理与编程 |
1. 实战训练十六:
训练课题:1602字符型液晶显示实验
训练内容: 通过实验充分理解字符型液晶的显示原理,是怎样通过代码体现的,针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真。
2. 实战训练十七:
训练课题:“128x64图形液晶显示实验”
训练内容: 通过实验充分理解字图形液晶的显示原理,是怎样通过代码体现的针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真。
3. 实战训练十八:
训练课题:“I2C读写EEPROM实验”
训练内容: 通过实验充分理解I2C协议原理,用I2C协议实现对EEPROM的读写操作,演示是怎样通过代码体现的针对一个综合性实验题目,学员独立完成需求分析,结构设计,代码设计,仿真。 |