内容简介
第1章EDA技术概述
1.1 EDA技术
1.2 EDA技术应用对象
1.3常用的硬件描述语言
1.4 EDA技术的优势
1.5面向FPGA和CPLD的开发流程
1.5.1设计输入
1.5.2综合
1.5.3适配(布线布局)
1.5.4仿真
1.5.5 RTL描述
1.6可编程逻辑器件
1.6.1 PLD的分类
1.6.2 PROM可编程原理
1.6.3 GAL
1.7 CPLD的结构与可编程原理
1.8 FPGA的结构与工作原理
1.8.1查找表逻辑结构
1.8.2 Cyclone 4E系列器件的结构原理
1.8.3内嵌Flash的FPGA器件
1.9硬件测试技术
1.9.1内部逻辑测试
1.9.2 JTAG边界扫描测试
1.10编程与配置
1.11 Quartus Ⅱ
1.12 IP核
1.13 EDA的发展趋势
习题
第2章 程序结构与数据对象
2.1 VHDL程序结构
2.2 VHDL程序基本构建
2.2.1实体和端口模式
2.2.2结构体
2.2.3库和库的种类
2.2.4库和程序包的调用方法
2.2.5配置
2.3 VHDL文字规则
2.3.1数字
2.3.2字符串
2.3.3关键词
2.3.4标识符及其表述规则
2.3.5文件取名和存盘
2.3.6规范的程序书写格式
2.4 VHDL数据对象
2.4.1常数
2.4.2变量
2.4.3信号
习题
第3章 数据类型与顺序语句
3.1 VHDL数据类型
3.1.1 BIT和BIT VECTOR类型
3.1.2 STD LOGIC和STD LOGIC VECTOR类型
3.1.3整数类型INTEGER
3.1.4布尔数据类型BOOLEAN
3.1.5 SIGNED和UNSIGNED类型
3.1.6其他预定义类型
3.1.7数据类型转换函数
3.2常用顺序语句
3.2.1赋值语句
3.2.2 CASE语句
3.2.3 PROCESS语句
3.2.4并置操作符&
3.2.5 IF语句
3.3 IF语句使用示例
3.3.1 D触发器的VHDL描述
3.3.2含异步复位和时钟使能D触发器的描述
3.3.3基本锁存器的描述
3.3.4含清零控制锁存器的描述
3.3.5实现时序电路的不同表述方式
3.3.6 4位二进制加法计数器设计
3.3.7计数器更常用的VHDL表达方式
3.3.8设计一个实用计数器
3.3.9含同步并行预置功能的8位移位寄存器设计
3.3.10优先编码器设计
3.4 VHDL其他顺序语句
3.4.1 LOOP循环语句
3.4.2 NEXT语句
3.4.3 EXIT语句
3.4.4 WAIT语句
3.4.5 GENERIC参数定义语句
3.4.6 REPORT语句
3.4.7断言语句
3.4.8端口数据含1个数的统计电路模块设计
习题
第4章 时序仿真与硬件实现
4.1代码编辑输入和系统编译
4.1.1编辑和输入设计文件
4.1.2创建工程
4.1.3约束项目设置
4.1.4全程综合与编译
4.1.5 RTL图观察器应用
4.2时序仿真
4.3硬件测试
4.3.1引脚锁定
4.3.2编译文件下载
4.3.3通过JTAG口对配置芯片进行间接编程
4.3.4 USB-Blaster驱动程序安装方法
4.4电路原理图设计流程
4.4.1设计一个半加器
4.4.2完成全加器顶层设计
4.4.3对全加器进行时序仿真和硬件测试
4.5利用属性表述实现引脚锁定
4.6 SignalTap Ⅱ的用法
4.7编辑SignalTap Ⅱ的触发信号
4.8安装Quartus Ⅱ 13.1说明
习题
实验与设计
实验4-1多路选择器设计实验
实验4-2十六进制7段数码显示译码器设计
实验4-3应用宏模块设计数字频率计
实验4-4计数器设计实验
实验4-5数码扫描显示电路设计
实验4-6硬件消抖动电路设计
实验4-7串行静态显示控制电路设计
第5章 并行语句
5.1并行信号赋值语句
5.1.1简单信号赋值语句
5.1.2条件信号赋值语句
5.1.3选择信号赋值语句
5.1.4块语句
5.1.5元件例化语句
5.1.6例化语句应用示例
5.1.7生成语句
5.1.8 GENERIC参数传递映射语句及其使用方法
5.1.9数据类型定义语句
5.1.10 VHDL的存储器描述
5.1.11信号属性及属性函数
5.2 VHDL运算操作符
5.2.1逻辑操作符
5.2.2关系操作符
5.2.3算术操作符
5.2.4省略赋值操作符
5.3 keep属性应用
5.4 SignalProbe使用方法
习题
实验与设计
实验5-1 8位加法器设计实验
实验5-2高速硬件除法器设计
实验5-3移位相加型8位硬件乘法器设计
实验5-4基于VHDL代码的频率计设计
实验5-5 VGA彩条信号显示控制电路设计
实验5-6不同类型的移位寄存器设计实验
第6章LPM宏模块使用方法
6.1调用计数器宏模块示例
6.1.1计数器LPM模块文本代码的调用
6.1.2 LPM计数器代码与参数传递语句应用
6.1.3创建工程与仿真测试
6.2利用属性控制乘法器构建的示例
6.3 LPM RAM宏模块用法
6.3.1初始化文件及其生成
6.3.2 LPM RAM的设置与调用
6.3.3测试LPM RAM
6.3.4用 VHDL代码描述存储器以及用初始化文件加载表述
6.4 LPM ROM使用示例
6.4.1简易正弦信号发生器设计
6.4.2正弦信号发生器硬件实现和测试
6.5在系统存储器数据读写编辑器应用
6.6 LPM嵌入式锁相环调用
6.6.1建立嵌入式锁相环元件
6.6.2测试锁相环
6.7 In-System Sources and Probes Editor用法
6.8 DDS实现原理与应用
6.8.1 DDS原理
6.8.2 DDS信号发生器设计示例
习题
实验与设计
实验6-1查表式硬件运算器设计
实验6-2正弦信号发生器设计
实验6-3简易逻辑分析仪设计
实验6-4 DDS正弦信号发生器设计
实验6-5移相信号发生器设计
实验6-6 VGA简单图像显示控制模块设计
实验6-7 AM幅度调制信号发生器设计
第7章VHDL设计深入
7.1进程中的信号赋值与变量赋值
7.2含高阻输出的电路设计
7.2.1三态门设计
7.2.2双向端口的设计方法
7.2.3三态总线电路设计
7.3资源优化
7.3.1资源共享
7.3.2逻辑优化
7.3.3串行化
7.4速度优化
7.4.1流水线设计
7.4.2关键路径法
7.5仿真延时
7.5.1固有延时
7.5.2传输延时
7.5.3仿真δ
习题
实验与设计
实验7-1 4X4阵列键盘键信号检测电路设计
实验7-2乐曲硬件演奏电路设计
实验7-3 PS2键盘控制模型电子琴电路设计
实验7-4直流电机综合测控系统设计
实验7-5 VGA动画图像显示控制电路设计
第8章 状态机设计技术
8.1 VHDL状态机的一般形式
8.1.1状态机的特点与优势
8.1.2 VHDL状态机的一般结构
8.1.3状态机设计初始约束与表述
8.2 Moore型状态机的设计
8.2.1多进程状态机
8.2.2序列检测器之状态机设计
8.3 Mealy型状态机的设计
8.4状态编码
8.4.1直接输出型编码
8.4.2顺序编码
8.4.3一位热码状态编码
8.4.4状态编码设置
8.5安全状态机设计
8.5.1程序直接导引法
8.5.2状态编码监测法
8.5.3借助EDA优化控制工具生成安全状态机
习题
实验与设计
实验8-1序列检测器设计
实验8-2并行ADC采样控制电路实现与硬件验证
实验8-3数据采集模块设计
实验8-4五功能智能逻辑笔设计
实验8-5串行ADC/DAC采样或信号输出控制电路设计
第9章16位CPU创新设计
9.1 KX9016的结构与特色
9.2 KX9016基本硬件系统设计
9.2.1单步节拍发生模块
9.2.2运算器
9.2.3比较器
9.2.4基本寄存器与寄存器阵列组
9.2.5移位器
9.2.6程序与数据存储器
9.3 KX9016v 1指令系统设计
9.3.1指令格式
9.3.2指令操作码
9.3.3软件程序设计实例
9.3.4 KX9016 v 1控制器设计
9.3.5指令设计实例详解
9.4 KX9016的时序仿真与硬件测试
9.4.1时序仿真与指令执行波形分析
9.4.2 CPU工作情况的硬件测试
9.5 KX9016应用程序设计实例和系统优化
9.5.1乘法算法及其硬件实现
9.5.2除法算法及其硬件实现
9.5.3 KX9016v1的硬件系统优化
习题
实验与设计
实验9-1 16位CPU验证性设计综合实验
实验9-2新指令设计及程序测试实验
实验9-3 16位CPU的优化设计与创新
第10章VHDL仿真和语句补充
10.1 VHDL仿真流程
10.2 VHDL测试基准实例
10.3 VHDL Test Bench测试流程
10.4 VHDL子程序
10.4.1函数
10.4.2重载函数
10.4.3决断函数
10.4.4过程
10.4.5重载过程
10.4.6子程序调用语句
10.4.7 RETURN语句
10.4.8并行过程调用语句
10.5 VHDL程序包
习题
实验与设计
实验10-1在ModelSim上对VHDL Test Bench进行仿真
第11章DSP Builder系统设计方法
11.1 MATLAB/DSP Builder及其设计流程
11.2正弦信号发生器设计
11.2.1建立设计模型
11.2.2 Simulink模型仿真
11.2.3 SignalCompiler使用方法
11.2.4使用ModelSim进行RTL级仿真
11.2.5使用Quartus Ⅱ实现时序仿真
11.2.6硬件测试与硬件实现
11.3 DSP Builder层次化设计
11.4基于DSP Builder的DDS设计
11.4.1 DDS模块设计
11.4.2 FSK调制器设计
11.4.3正交信号发生器设计
11.4.4数控移相信号发生器设计
11.4.5幅度调制信号发生器设计
11.5 HIL硬件测试
习题
实验与设计
实验11-1利用MATLAB/DSP Builder设计基本电路模块
实验11-2基于DSP Builder的DDS应用模型设计
实验11-3 HIL硬件环仿真实验
第12章DSP Builder设计深入
12.1 FIR数字滤波器设计
12.1.1 FIR滤波器原理
12.1.2使用DSP Builder设计FIR滤波器
12.1.3使用MATLAB的滤波器设计工具
12.1.4使用FIR IP Core设计FIR滤波器
12.2 HDL模块插入仿真及其设计
习题
实验与设计
实验12-1 FIR数字滤波器设计实验
实验12-2调制解调模块设计实验
实验12-3 HDL Import模块应用实验
附录A EDA开发系统及相关电路与表格
A.1 KX CDS系列EDA/SOPC系统
A.2部分实验扩展模块
A.3.mif文件生成器使用方法
A.4核心板FPGA扩展至KX CDS系统对照表
A.5多功能重配置结构可切换的部分实验电路图