第1章 FPGA系统设计基础
1.1 FPGA技术的发展历史和动向
1.1.1 FPGA技术的发展历史
1.1.2 FPGA技术的发展动向
1.2 FPGA的典型应用领域
1.2.1 数据采集和接口逻辑领域
1.2.2 高性能数字信号处理领域
1.2.3 其他应用领域
1.3 FPGA的工艺结构
1.3.1 基于SRAM结构的FPGA
1.3.2 基于反融丝结构的FPGA
1.3.3 基于Flash结构的FPGA
1.4 主流的FPGA芯片厂家及其代表产品
1.4.1 Xilinx公司的代表产品
1.4.2 Altera公司的代表产品
1.5 工程项目中FPGA芯片选择策略和原则
1.5.1 尽量选择成熟的产品系列
1.5.2 尽量选择兼容性好的封装
1.5.3 尽量选择一个公司的产品
第2章 从零开始设计。FPGA最小系统
2.1 FPGA最小系统的概念
2.2 FPGA最小系统电路分析
2.2.1 FPGA管脚设计
2.2.2 下载配置与调试接口电路设计
2.2.3 高速SDRAM存储器接口电路设计
2.2.4 异步SRAM(ASRAM)存储器接口电路设计
2.2.5 Flash存储器接口电路设计
2.2.6 开关、按键与发光LED电路设计
2.2.7 VGA接口电路设计
2.2.8 PS/2鼠标及键盘接口电路设计
2.2.9 RS-232串口
2.2.10 字符型液晶显示器接口电路设计
2.2.11 USB2.0接口芯片CY7C68013电路设计
2.2.12 电源电路设计
2.2.13 复位电路设计
2.2.14 时钟电路设计
2.3 FPGA硬件系统的设计技巧
2.3.1 管脚兼容性设计
2.3.2 根据电路布局来分配管脚功能
2.3.3 预留测试点
2.4.FPGA硬件系统的调试方法
2.5 典型实例1:在Altera的FPGA开发板上运行第一个FPGA程序
2.5.1 实例的内容及目标
2.5.2 平台简介
2.5.3 实例详解
2.5.4.小结
2.6 典型实例2:在Xilinx的FPGA开发板上运行第一个FPGA程序
2.6.1 实例的内容及目标
2.6.2 平台简介
2.6.3 实例详解
2.6.4 小结
第3章 硬件描述语言YerilogIIDI.基础
3.1 VerilogHDI.语言简介
3.1.1 VerilogHDL的历史和进展
3.1.2 VHDL和VerilogHDL语言对比
3.2 VetilogHDL程序基本结构
3.2.1 VerilogHDL,程序入门
3.2.2 模块的框架
3.3 VerilogHDL语言的数据类型和运算符
3.3.1 常用数据类型
3.3.2 常用运算符
3.4 VerilogHDL语言的赋值语句和块语句
3.4.1 非阻塞赋值和阻塞赋值
3.4.2 块语句
3.4.3 关键词
3.5 VerilogHDL语言的条件语句
3.5.1 if语句
3.5.2 case语句
3.5.3 其他条件语句
3.6 VerilogHDL语言的其他常用语句
3.6.1 循环语句
3.6.2 结构说明语句
3.7 VerilogHDL语言实现组合逻辑电路
3.7.1 assign语句实现组合逻辑
3.7.2 always块实现组合逻辑
3.8 VerilogHDL语言实现时序逻辑电路
3.9 VerilogHDL语言与C语言的区别与联系
3.10 VerilogHDL程序设计经验
3.11 典型实例3:数字跑表
3.11.1 实例的内容及目标
3.11.2 原理简介
3.11.3 代码分析
3.11.4 参考设计
3.12 典型实例4:PS/2接口控制
3.12.1 实例的内容及目标
3.12.2 原理简介
3.12.3 实例详解
3.12.4 参考设计
3.13 典型实例5:交通灯控制器
3.13.1 实例的内容及目标
3.13.2 原理简介
3.13.3 代码分析
3.13.4 参考设计
第4章 硬件描述语言YerilogHDL设计进阶
4.1 task和function说明语句的区别
4.2 VerilogHDL高级语法结构任务(TASK)
4.3 VerilogHDL高级语法结构任务(function)
4.4 有限状态机的设计原理及其代码风格
4.4.1 有限状态机(FSM)设{原理
4.4.2 FSM设计实例
4.4.3 设计可综合状态机的指导原则
4.5 逻辑综合的原则以及可综合的代码设计风格
4.5.1 always块语言指导原则
4.5.2 可综合风格的VerilogHDL模块实例
4.6 典型实例6:状态机应用
4.6.1 实例的内容及目标
4.6.2 实例详解
4.6.3 参考设计
4.7 典型实例7:自动转换量程频率计控制器
4.7.1 实例内容及目标
4.7.2 原理简介
4.7.3 代码分析
4.7.4 参考设计
4.8 典型实例8:使用函数实现简单的处理器
4.8.1 实例的内容及目标
4.8.2 原理简介
4.8.3 代码分析
第5章 FPGA设计开发软件QuartusII的使用技巧
5.1 QuartusII软件简介
5.2 QuartusII软件新特性
5.3 QuartusII软件的安装与启动
5.4 QuartusII软件设计流程
5.5 创建工程设计文件
5.5.1 创建工程
5.5.2 添加设计文件
5.6 编译及仿真工程
5.6.1 编译
5.6.2 仿真
5.7 约束及配置工程
5.7.1 器件选择
5.7.2 管脚分配
5.7.3 时序约束
5.7.4 配置工程
5.8 LogicLock逻辑锁定工具使用技巧
5.8.1 逻辑锁定方法学
5.8.2 逻辑锁定优势
5.8.3 逻辑锁定参数设置
5.8.4 逻辑锁定流程
5.9 SignalTapII在线逻辑分析仪的使用方法
5.9.1 SignalTapII介绍
5.9.2 使用SignalTapII操作流程
5.9.3 设置触发器
5.10 典型实例9:SignalTapII功能演示
5.10.1 实例的内容及目标
5.10.2 实例详解
5.10.3 小结
5.11 典型实例10:LogicLock功能演不
5.11.1 实例的内容及目标
5.11.2 实例详解
第6章 FPGA设计开发软件ISE使用技巧
6.1 ISE软件简介
6.1.1 ISE软件简介
6.1.2 ISE7.1 i特点
6.2 ISE软件的安装与启动
6.2.1 ISE软件的安装
6.2.2 ISE软件的启动
6.3 ISE软件的设计流程
6.4 创建设计工程
6.5 编译与仿真设计工程
6.6 增量式设计(IncrementalDesign)技巧
6.6.1 增量式设计的必要性
6.6.2 增量设计流程
6.6 -3小结
6.7 片上逻辑分析仪(ChipScopePro)使用技巧
6.7.1 ChipScopePro概述
6.7.2 ChipScopePro设计流程
6.7.3 ChipScopeProCoreInserter简介
6.7.4 ChipScopeProAnalyzer简介
6.7.5 小结
6.8 典型实例11:ChipScope功能演示
6.8.1 实例的内容及目标
6.8.2 基于ChipScopeProCoreGenerator的实现流程,
6.8.3 基于ChipScopeProCoreInserter的实现流程
6.8.4 小结
6.9 典型实例12:增量式设计(IncrementalDesign)演示
6.9.1 实例的内容及目标
6.9.2 实例详解
6.9.3 小结
第7章 FPGA系统设计的仿真验证
7.1 FPGA设计仿真验证的原理和方法
7.1.1 FPGA设计仿真验证
7.1.2 FPGA设计仿真的切入点
7.2 ModelSim仿真工具简介
7.2.1 标题栏
7.2.2 菜单栏
7.2.3 工具栏
7.2.4 工作区
7.2.5 状态栏
7.3 ModelSim的仿真流程
7.3.1 ModelSim的安装
7.3.2 使用ModelSim进行功能仿真w
7.4 功能仿真和时序仿真的区别和实现方法
7.4.1 功能仿真
7.4.2 时序仿真
7.5 仿真测试文件(Testbench)的设计方法
7.5.1 测试文件的用途
7.5.2 测试文件设计方法
7.5.3 测试常用语句
7.6 典型实例13:SDRAM读写控制的实现与Modelsim仿真
7.6.1 实例的内容及目标
7.6.2 SDRAM简介
7.6.3 SDRAM控制器的Modelsim仿真
7.6.4 小结
第8章 基于FPGA的片上可编程系统(SOPC)设计
8.1 基于FPGA的SOPC系统组成原理和典型方案
8.1.1 SOC及SOPC简介
8.1.2 Xilinx的SOPC解决方案
8.2 Altera公司的NIOSII解决方案
8.2.1 NIOS的主要特点
8.2.2 NIOS技术实现方式
8.3 基于NIOSII的开发设计流程
……
第9章 FPGA系统设计原则和技巧
第10章 利用FPGA实现外设通信接口
第11章 FPGA与DSP协同处理系统设计
第12章 数字图像倍焦系统设计与实现综合实例
第13章 高带PCI信号采集卡设计与实现综合实例