《四则运算小计算器设计过程实录 VERILOG FPGA数字系统设计入门学习日记》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:赵然编著;夏宇闻审定
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2016
  • ISBN:7512419589
  • 页数:174 页
图书介绍:本书以一位电子设计初学者的视角,全面阐述完成FPGA工程设计项目必须掌握的所有知识点,针对每个功能模块,深入讲解每个语法细节和解决实际问题的具体方法,对于想学习Verilog数字设计,有志进入FPGA和集成电路设计行业的年轻人定会有很大的帮助。本书的核心是设计一个简易的按键式计算器,输入输出最大为6位十进制,能够实现整数的加,减,乘,除四种运算,其中除法运算舍去余数。输入数和结果均用6位数码管以十进制形式显示出来。

第1章 第一天——数码管显示模块的设计 1

1.1 设计需求讲解 1

1.2 七段式数码管显示原理讲解 2

1.3 设计工具使用讲解 4

1.3.1 Quartus Ⅱ工具的配置 4

1.3.2 数码管显示模块的可综合代码 6

1.3.3 显示模块的测试 8

1.3.4 转到ModelSim仿真工具进行测试 11

1.3.5 下载程序到开发板进行调试 13

1.4 今天工作总结 19

1.5 夏老师评述 19

第2章 第二天——键盘扫描模块的设计 21

2.1 设计需求讲解 21

2.2 七段式数码管显示原理讲解 22

2.3 设计工具使用讲解 23

2.3.1 矩阵键盘码扫描分析模块的可综合代码 24

2.3.2 矩阵键盘码扫描分析模块代码解析 29

2.3.3 矩阵键盘扫描分析模块的测试 35

2.3.4 转到ModelSim仿真工具进行测试 42

2.3.5 下载程序到开发板进行调试 42

2.4 今天工作总结 46

2.5 夏老师评述 47

第3章 第三天——输入状态机模块的设计 48

3.1 设计需求讲解 48

3.2 我对状态机概念的理解 48

3.3 设计工具使用讲解 49

3.3.1 范例代码解析 49

3.3.2 重写状态机代码 61

3.3.3 转到ModelSim仿真工具进行测试 67

3.3.4 下载程序到开发板进行调试 67

3.4 今天工作总结 71

3.5 夏老师评述 72

第4章 第四天——BCD码与二进制码转换模块的设计 73

4.1 设计需求讲解 73

4.2 BCD码转二进制码 74

4.2.1 BCD码转二进制码的可综合代码 74

4.2.2 BCD码转二进制码模块的测试代码 75

4.2.3 转到ModelSim仿真工具进行测试 76

4.2.4 二进制码转BCD码的可综合代码 76

4.2.5 二进制码转BCD码模块的测试 80

4.2.6 转到ModelSim仿真工具进行测试 82

4.3 今天工作总结 83

4.4 夏老师评述 83

第5章 第五天——计算模块的设计 84

5.1 设计需求讲解 84

5.2 设计工具使用讲解 84

5.2.1 计算模块的可综合代码 85

5.2.2 计算模块的测试 85

5.2.3 转到ModelSim仿真工具进行仿真 87

5.2.4 模块连接关系 88

5.2.5 下载程序到开发板进行调试 95

5.3 今天工作总结 95

5.4 夏老师评述 95

第6章 第六天——可进行连续运算的状态机改进 97

6.1 设计需求讲解 97

6.2 状态机设计讲解 97

6.2.1 状态机的编码形式 97

6.2.2 状态机的分类 98

6.2.3 状态转移图(STD) 102

6.3 设计工具使用讲解 103

6.3.1 状态机模块的可综合代码 103

6.3.2 状态机模块的测试 107

6.3.3 转到ModelSim仿真工具进行仿真 111

6.3.4 下载程序到开发板进行调试 111

6.4 今天工作总结 113

6.5 夏老师评述 114

第7章 第七天——面积优化 115

7.1 设计需求讲解 115

7.2 面积与速度 116

7.3 模块改进 118

7.3.1 计算模块的可综合代码 118

7.3.2 转到ModelSim仿真工具进行测试 121

7.3.3 下载程序到开发板进行调试 123

7.4 今天工作总结 125

7.5 夏老师评述 126

第8章 第八天——二进制码转BCD码模块的优化 127

8.1 设计需求讲解 127

8.2 算法实现 128

8.3 模块改进 129

8.3.1 二进制码转BCD码模块的可综合代码 129

8.3.2 转到ModelSim仿真工具进行测试 132

8.3.3 下载程序到开发板进行调试 134

8.4 今天工作总结 138

8.5 夏老师评述 140

第9章 第九天——去“0”模块的设计 141

9.1 设计需求讲解 141

9.2 算法实现 141

9.3 模块改进 142

9.3.1 去“0”模块的可综合代码 142

9.3.2 转到ModelSim仿真工具进行测试 144

9.3.3 下载程序到开发板进行调试 146

9.4 今天工作总结 150

9.5 夏老师评述 151

第10章 第十天——负数计算 152

10.1 设计需求讲解 152

10.2 二进制数表示法 152

10.3 补码原码转换模块 153

10.3.1 补码转原码模块的可综合代码 154

10.3.2 转到ModelSim仿真工具进行测试 154

10.3.3 原码转补码模块的可综合代码 155

10.3.4 转到ModelSim仿真工具进行测试 155

10.4 其他模块的修改 156

10.4.1 显示模块的修改 156

10.4.2 消“0”模块的修改 159

10.4.3 BCD码和二进制码转换模块的修改 160

10.4.4 计算模块的修改 163

10.4.5 按键状态机模块的修改 165

10.4.6 顶层模块的修改 169

10.5 下载程序到开发板进行调试 171

10.6 今天工作总结 171

10.7 夏老师评述 172

参考文献 174