本课程结合目前热门的FPGA技术,由多年开发经验的工程师授课,系统地介绍了FPGA的基本设计方法。学习FPGA/CPLD概念的基础上, Altera公司和Xilinx公司主流FPGA/CPLD的结构与特点。本课程在FPGA应用开发方面主要有:初级篇内容包括Verilog HDL语言基础,Altera公司FPGA设计工具Quartus II软件综述,FPGA组合逻辑设计技术等,高级篇内容包括FPGA的硬件设计技术,基于Nios II的SOPC系统设计,NiosII SOPC系统设计实例,系统时序逻辑设计技术以及基于FPGA的IP核设计技术。
本课程结合目前热门的FPGA技术,由多年开发经验的工程师授课,系统地介绍了FPGA的基本设计方法。学习FPGA/CPLD概念的基础上, Altera公司和Xilinx公司主流FPGA/CPLD的结构与特点。本课程在FPGA应用开发方面主要有:初级篇内容包括Verilog HDL语言基础,Altera公司FPGA设计工具Quartus II软件综述,FPGA组合逻辑设计技术等,高级篇内容包括FPGA的硬件设计技术,基于Nios II的SOPC系统设计,NiosII SOPC系统设计实例,系统时序逻辑设计技术以及基于FPGA的IP核设计技术。
课程大纲
1. 第一阶段:主要帮助学员了解FPGA系统设计的基础知识,掌握FPGA最小系统硬件电路设计方法,学会操作QuartusII软件来完成FPGA的设计和开发。1.1 可1.编程逻辑器件简介
2.可编程逻辑器件的发展历史
3. FPGA/CPLD的基本结构
3.1 FPGA的基本结构
3.2 CPLD的基本结构
3.3 FPGA和CPLD的比较
3.4 FPGA/CPLD的设计流程
4. PLD/FPGA的分类和使用
5. FPGA关键电路的设计(最小电路设计):
5.1 FPGA管脚设计
5.2 下载配置与调试接口电路设计
5.3 高速SDRAM存储器接口电路设计
5.4 异步SRAM(ASRAM)存储器接口电路设计
5.5 FLASH存储器接口电路设计
5.6 开关、按键与发光LED电路设计
5.7 VGA接口电路设计
5.8 PS/2鼠标及键盘接口电路设计
5.9 RS-232串口
5.10 字符型液晶显示器接口电路设计
5.11 USB2.0接口芯片CY7C68013电路设计
5.12 电源电路设计
5.13 复位电路设计
5.14 拨码开关电路设计
5.15 i2c总线电路设计
5.16 时钟电路设计
5.17 图形液晶电路设计
第二阶段:介绍熟练掌握硬件描述语言(Verilog HDL)是FPGA工程师的基本要求。通过本节课程的学习,学员可以了解目前最流行的Verilog HDL语言的基本语法,掌握Verilog HDL语言中最常用的基本语法。通过本节课程学习,学员可以设计一些简单的FPGA程序,掌握组合逻辑和时序逻辑电路的设计方法。通过实战训练,学员可以对Verilog HDL语言有更深入的理解和认识。
2.1 硬件描述语言简介
2.1.1 Verilog HDL的特点
2.1.2 Verilog HDL的设计流程简介
2.2 Verilog模块的基本概念和结构
2.2.1 Verilog模块的基本概念
2.2.2 Verilog HDL模块的基本结构
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.2 case 语句
2.5.3 while语句
2.5.4 for语句
2.6 结构说明语句
2.6.1 initial语句
2.6.2 always语句
2.6.3 task和function语句
2.7 系统函数和任务
2.7.1 标准输出任务
2.7.2 仿真控制任务
2.7.3 时间度量系统函数
2.7.4 文件管理任务
2.8 小结
第三阶段 Altera FPGA设计
3.1 Altera高密度FPGA
3.1.1 主流高端FPGA——Stratix系列
3.1.2 内嵌高速串行收发器的FPGA Stratix GX系列
3.2 Altera的Cyclone系列低成本FPGA
3.2.1 新型可编程架构
3.2.2 嵌入式存储资源
3.2.3 专用外部存储接口电路
3.2.4 支持的接口和协议
课程大纲
1. 第一阶段:主要帮助学员了解FPGA系统设计的基础知识,掌握FPGA最小系统硬件电路设计方法,学会操作QuartusII软件来完成FPGA的设计和开发。1.1 可1.编程逻辑器件简介
2.可编程逻辑器件的发展历史
3. FPGA/CPLD的基本结构
3.1 FPGA的基本结构
3.2 CPLD的基本结构
3.3 FPGA和CPLD的比较
3.4 FPGA/CPLD的设计流程
4. PLD/FPGA的分类和使用
5. FPGA关键电路的设计(最小电路设计):
5.1 FPGA管脚设计
5.2 下载配置与调试接口电路设计
5.3 高速SDRAM存储器接口电路设计
5.4 异步SRAM(ASRAM)存储器接口电路设计
5.5 FLASH存储器接口电路设计
5.6 开关、按键与发光LED电路设计
5.7 VGA接口电路设计
5.8 PS/2鼠标及键盘接口电路设计
5.9 RS-232串口
5.10 字符型液晶显示器接口电路设计
5.11 USB2.0接口芯片CY7C68013电路设计
5.12 电源电路设计
5.13 复位电路设计
5.14 拨码开关电路设计
5.15 i2c总线电路设计
5.16 时钟电路设计
5.17 图形液晶电路设计
第二阶段:介绍熟练掌握硬件描述语言(Verilog HDL)是FPGA工程师的基本要求。通过本节课程的学习,学员可以了解目前最流行的Verilog HDL语言的基本语法,掌握Verilog HDL语言中最常用的基本语法。通过本节课程学习,学员可以设计一些简单的FPGA程序,掌握组合逻辑和时序逻辑电路的设计方法。通过实战训练,学员可以对Verilog HDL语言有更深入的理解和认识。
2.1 硬件描述语言简介
2.1.1 Verilog HDL的特点
2.1.2 Verilog HDL的设计流程简介
2.2 Verilog模块的基本概念和结构
2.2.1 Verilog模块的基本概念
2.2.2 Verilog HDL模块的基本结构
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.2 case 语句
2.5.3 while语句
2.5.4 for语句
2.6 结构说明语句
2.6.1 initial语句
2.6.2 always语句
2.6.3 task和function语句
2.7 系统函数和任务
2.7.1 标准输出任务
2.7.2 仿真控制任务
2.7.3 时间度量系统函数
2.7.4 文件管理任务
2.8 小结
第三阶段 Altera FPGA设计
3.1 Altera高密度FPGA
3.1.1 主流高端FPGA——Stratix系列
3.1.2 内嵌高速串行收发器的FPGA Stratix GX系列
3.2 Altera的Cyclone系列低成本FPGA
3.2.1 新型可编程架构
3.2.2 嵌入式存储资源
3.2.3 专用外部存储接口电路
3.2.4 支持的接口和协议