【课程简介】
阶段:主要帮助学员了解FPGA系统设计的基础知识,掌握FPGA最小系统硬件电路设计方法,学会操作QuartusII软件来完成FPGA的设计和开发。
1.编程逻辑器件简介
2.可编程逻辑器件的发展历史
3.FPGA/CPLD的基本结构
3.1FPGA的基本结构
3.2CPLD的基本结构
3.3FPGA和CPLD的比较
3.4FPGA/CPLD的设计流程
4.PLD/FPGA的分类和使用
5.FPGA关键电路的设计(最小电路设计):
5.1FPGA管脚设计
5.2下载配置与调试接口电路设计
5.3高速SDRAM存储器接口电路设计
5.4异步SRAM(ASRAM)存储器接口电路设计
5.5FLASH存储器接口电路设计
5.6开关、按键与发光LED电路设计
5.7VGA接口电路设计
5.8PS/2鼠标及键盘接口电路设计
5.9RS-232串口
5.10字符型液晶显示器接口电路设计
5.11USB2.0接口芯片CY7C68013电路设计
5.12电源电路设计
5.13复位电路设计
5.14拨码开关电路设计
5.15i2c总线电路设计
5.16时钟电路设计
5.17图形液晶电路设计
第二阶段:介绍熟练掌握硬件描述语言(VerilogHDL)是FPGA工程师的基本要求。通过本节课程的学习,学员可以了解目前的VerilogHDL语言的基本语法,掌握VerilogHDL语言中最常用的基本语法。通过本节课程学习,学员可以设计一些简单的FPGA程序,掌握组合逻辑和时序逻辑电路的设计方法。通过实战训练,学员可以对VerilogHDL语言有更深入的理解和认识。
2.1硬件描述语言简介
2.1.1VerilogHDL的特点
2.1.2VerilogHDL的设计流程简介
2.2Verilog模块的基本概念和结构
2.2.1Verilog模块的基本概念
2.2.2VerilogHDL模块的基本结构
2.3数据类型及其常量及变量
2.4运算符及表达式
2.4.1算术运算符
2.4.2关系运算符
2.4.3逻辑运算符
2.4.4按位逻辑运算符
2.4.5条件运算符
2.4.6移位运算符
2.4.7拼接运算符
2.4.8缩减运算符
2.5条件语句和循环语句
2.5.1条件语句
2.5.2case语句
2.5.3while语句
2.5.4for语句
2.6结构说明语句
2.6.1initial语句
2.6.2always语句
2.6.3task和function语句
2.7系统函数和任务
2.7.1标准输出任务
2.7.2仿真控制任务
2.7.3时间度量系统函数
2.7.4文件管理任务
2.8小结
第三阶段AlteraFPGA设计
3.1Altera高密度FPGA
3.1.1主流高端FPGA——Stratix系列3.1.2内嵌高速串行收发器的FPGAStratixGX系列3.2Altera的Cyclone系列低成本FPGA3.2.1新型可编程架构
3.2.2嵌入式存储资源
3.2.3专用外部存储接口电路
3.2.4支持的接口和协议
3.2.5锁相环的实现
3.2.6I/0特性
3.2.7NiosII嵌入式处理器
3.2.8配置方案
3.3Altera的MAXII系列CPLD器件
3.4QuartusII软件综述
3.4.1QuartusII软件的特点及支持的器件
3.4.2QuartusII软件的工具及功能简介
3.4.3QuartusII软件的用户界面
3.5设计输入
3.5.1建立工程
3.5.2建立设计
3.6综合
3.7布局布线
3.8仿真
3.9编程与配置
3.10小结
第四阶段:随着FPGA芯片的性能和密度不断提高,基于FPGA产品开发正在逐渐成熟并且在很多领域得到了应用。本阶段重点学习在FPGA产品设计核心技术4.1FPGA的硬件设计技术4.2基于NiosII的S0PC系统设计
4.3NiosII的S0PC系统的设计实例
4.4系统时序逻辑设计技术
4.5基于FPGA的IP核设计技术
4.6FPGA的数据采集系统设计
4.7基于FPGA的硬件回路仿真器设计
第五阶段Alter的IP工具
5.1IP的概念
5.2Alter可提供的IP
5.3AlterIP在设计中的作用
5.4使用Alter的基本宏功能
5.5使用Alter的IP核
第六阶段:总结答疑,由工程师带领学员设计项目