- 机械工业出版社
- 9787893863202
- 1-1
- 545905
- 2024-01
- 电子与信息大类
- 高职
内容简介
本书以Altera公司的MAXⅡ系列EPM1270T144C5N为蓝本,阐述了基于CPLD/FPGA的数字系统设计方法,重点放在工程实践能力和VerilogHDL的编程开发能力方面。本书按照基于工作过程的教学模式进行编写,项目的选取以直观、生动、有趣、实用为原则,并遵循由易到难、由简单到综合的学习规律。本书内容包括CPLD/FPGA项目开发入门、VerilogHDL(硬件描述语言)、基于CPLD/FPGA的单元项目开发和综合项目开发。全书以项目为载体,介绍用VerilogHDL进行项目开发的一般步骤,使读者在实践中锻炼编程、调试和创新能力,养成良好的编程习惯。
目录
第1章CPLD/FPGA
项目开发入门1
1.1CPLD/FPGA开发系统概述1
1.1.1PLD的发展历程及发展趋势1
1.1.2CPLD/FPGA概述3
1.1.3CPLD/FPGA的结构与原理4
1.1.4CPLD与FPGA的区别8
同步训练1-19
1.2CPLD/FPGA器件识别10
1.2.1CPLD/FPGA产品概况11
1.2.2MAX系列产品的基本功能及编程方式13
同步训练1-215
1.3CCITCPLD/FPGA实验仪使用16
1.3.1实验仪结构设计17
1.3.2熟悉实验仪的元器件17
1.3.3解析主控芯片EPM1270T144C518
1.3.4了解实验仪的外围接口及其引脚对应关系19
1.3.5设计实验仪原理图21
1.3.6USB-Blaster下载口21
同步训练1-326
1.4QuartusⅡ开发环境安装27
1.4.1QuartusⅡ软件功能简介27
1.4.2QuartusⅡ软件安装28
1.4.3USB-Blaster下载驱动器安装29
同步训练1-432
1.5QuartusⅡ软件开发环境的应用32
1.5.1简单的三人表决器功能描述33
1.5.2文本方式输入34
1.5.3原理图方式输入42
同步训练1-545
1.6技能实训46
第2章VerilogHDL(硬件描述语言)49
2.1VerilogHDL语言基础知识49
2.1.1VerilogHDL基本结构49
2.1.2VerilogHDL数据类型53
2.1.3VerilogHDL运算符及表达式55
2.1.4VerilogHDL基本语句56
同步训练2-162
2.2VerilogHDL设计闪烁灯和流水灯63
2.2.1闪烁灯设计64
2.2.2闪烁灯设计技能实训67
2.2.3流水灯设计69
2.2.4流水灯设计技能实训73
同步训练2-275
2.3VerilogHDL设计分频器76
2.3.1奇偶分频设计77
2.3.2任意分频设计79
同步训练2-381
第3章基于CPLD/FPGA的单元
项目开发83
3.1
项目1设计基本逻辑门电路83
同步训练3-186
3.2
项目2译码器设计87
3.2.1设计3-8译码器88
3.2.2设计八段LED数码管译码电路91
3.2.3技能实训93
同步训练3-296
3.3
项目3编码器设计97
3.3.1设计8-3优先编码器98
3.3.2技能实训100
同步训练3-3103
3.4
项目4数据选择器设计104
3.4.1设计4-1数据选择器105
3.4.2技能实训107
同步训练3-4109
3.5
项目5触发器设计109
3.5.1触发器概述110
3.5.2识别基本触发器110
3.5.3识别触发器的逻辑功能111
3.5.4设计时钟触发器112
3.5.5设计直接置位复位触发器112
3.5.6转换不同逻辑功能的触发器113
3.5.7技能实训114
同步训练3-5116
3.6
项目6全加器设计118
3.6.1设计一位全加器118
3.6.2设计串行进位加法器119
3.6.3设计先行进位加法器120
3.6.4设计加减法器121
3.6.5技能实训123
同步训练3-6126
3.7
项目7计数器设计127
3.7.1设计二进制计数器128
3.7.2设计七进制计数器129
3.7.3采用异步置数和同步清零的方法设计七进制计数器129
3.7.4十五进制计数器技能实训131
3.7.5按键点灯设计一134
3.7.6按键点灯设计二135
3.7.7设计按键计数器137
3.7.81000进制计数器技能实训138
同步训练3-7141
3.8
项目8乘法器设计143
3.8.1利用被乘数左移法设计无符号乘法器143
3.8.2利用部分积右移法设计无符号乘法器146
3.8.3设计带符号乘法器147
同步训练3-8148
3.9
项目9数码管显示设计148
3.9.1静态数码管的显示149
3.9.2动态数码管的显示152
3.9.3技能实训155
同步训练3-9157
3.10
项目10滚动点阵广告牌设计158
3.10.1点阵LED显示驱动158
3.10.2分时显示信息161
3.10.3滚动显示信息164
3.10.4技能实训168
同步训练3-10171
3.11
项目11蜂鸣器应用设计171
3.11.1设计报警声172
3.11.2设计数字电子琴173
3.11.3播放“梁祝”音乐175
3.11.4技能实训178
同步训练3-11183
3.12
项目12基于串行通信的LCD液晶显示系统设计184
3.12.1串行通信基础知识184
3.12.2LCD基础知识186
3.12.3驱动字符液晶滚动显示192
3.12.4设计UART串行收发模块199
3.12.5LCD显示UART串行接收信息204
3.12.6技能实训208
同步训练3-12211
第4章基于CPLD/FPGA的综合
项目开发212
4.1
项目1基于VerilogHDL的数字时钟设计与实现212
4.1.1
任务提出及设计分析212
4.1.2顶层模块设计213
4.1.3子模块设计215
4.1.4下载调试运行220
4.1.5技能实训220
4.2
项目2基于VerilogHDL的交通信号灯模拟控制设计226
4.2.1
任务提出及设计分析226
4.2.2顶层模块设计229
4.2.3子模块设计229
4.2.4下载调试运行233
4.2.5技能实训233
4.3
项目3多功能教室智能控制系统的设计与实现240
4.3.1
任务提出及设计分析241
4.3.2顶层模块设计242
4.3.3子模块设计244
4.3.4下载调试运行251
4.3.5技能实训252
参考文献256
项目开发入门1
1.1CPLD/FPGA开发系统概述1
1.1.1PLD的发展历程及发展趋势1
1.1.2CPLD/FPGA概述3
1.1.3CPLD/FPGA的结构与原理4
1.1.4CPLD与FPGA的区别8
同步训练1-19
1.2CPLD/FPGA器件识别10
1.2.1CPLD/FPGA产品概况11
1.2.2MAX系列产品的基本功能及编程方式13
同步训练1-215
1.3CCITCPLD/FPGA实验仪使用16
1.3.1实验仪结构设计17
1.3.2熟悉实验仪的元器件17
1.3.3解析主控芯片EPM1270T144C518
1.3.4了解实验仪的外围接口及其引脚对应关系19
1.3.5设计实验仪原理图21
1.3.6USB-Blaster下载口21
同步训练1-326
1.4QuartusⅡ开发环境安装27
1.4.1QuartusⅡ软件功能简介27
1.4.2QuartusⅡ软件安装28
1.4.3USB-Blaster下载驱动器安装29
同步训练1-432
1.5QuartusⅡ软件开发环境的应用32
1.5.1简单的三人表决器功能描述33
1.5.2文本方式输入34
1.5.3原理图方式输入42
同步训练1-545
1.6技能实训46
第2章VerilogHDL(硬件描述语言)49
2.1VerilogHDL语言基础知识49
2.1.1VerilogHDL基本结构49
2.1.2VerilogHDL数据类型53
2.1.3VerilogHDL运算符及表达式55
2.1.4VerilogHDL基本语句56
同步训练2-162
2.2VerilogHDL设计闪烁灯和流水灯63
2.2.1闪烁灯设计64
2.2.2闪烁灯设计技能实训67
2.2.3流水灯设计69
2.2.4流水灯设计技能实训73
同步训练2-275
2.3VerilogHDL设计分频器76
2.3.1奇偶分频设计77
2.3.2任意分频设计79
同步训练2-381
第3章基于CPLD/FPGA的单元
项目开发83
3.1
项目1设计基本逻辑门电路83
同步训练3-186
3.2
项目2译码器设计87
3.2.1设计3-8译码器88
3.2.2设计八段LED数码管译码电路91
3.2.3技能实训93
同步训练3-296
3.3
项目3编码器设计97
3.3.1设计8-3优先编码器98
3.3.2技能实训100
同步训练3-3103
3.4
项目4数据选择器设计104
3.4.1设计4-1数据选择器105
3.4.2技能实训107
同步训练3-4109
3.5
项目5触发器设计109
3.5.1触发器概述110
3.5.2识别基本触发器110
3.5.3识别触发器的逻辑功能111
3.5.4设计时钟触发器112
3.5.5设计直接置位复位触发器112
3.5.6转换不同逻辑功能的触发器113
3.5.7技能实训114
同步训练3-5116
3.6
项目6全加器设计118
3.6.1设计一位全加器118
3.6.2设计串行进位加法器119
3.6.3设计先行进位加法器120
3.6.4设计加减法器121
3.6.5技能实训123
同步训练3-6126
3.7
项目7计数器设计127
3.7.1设计二进制计数器128
3.7.2设计七进制计数器129
3.7.3采用异步置数和同步清零的方法设计七进制计数器129
3.7.4十五进制计数器技能实训131
3.7.5按键点灯设计一134
3.7.6按键点灯设计二135
3.7.7设计按键计数器137
3.7.81000进制计数器技能实训138
同步训练3-7141
3.8
项目8乘法器设计143
3.8.1利用被乘数左移法设计无符号乘法器143
3.8.2利用部分积右移法设计无符号乘法器146
3.8.3设计带符号乘法器147
同步训练3-8148
3.9
项目9数码管显示设计148
3.9.1静态数码管的显示149
3.9.2动态数码管的显示152
3.9.3技能实训155
同步训练3-9157
3.10
项目10滚动点阵广告牌设计158
3.10.1点阵LED显示驱动158
3.10.2分时显示信息161
3.10.3滚动显示信息164
3.10.4技能实训168
同步训练3-10171
3.11
项目11蜂鸣器应用设计171
3.11.1设计报警声172
3.11.2设计数字电子琴173
3.11.3播放“梁祝”音乐175
3.11.4技能实训178
同步训练3-11183
3.12
项目12基于串行通信的LCD液晶显示系统设计184
3.12.1串行通信基础知识184
3.12.2LCD基础知识186
3.12.3驱动字符液晶滚动显示192
3.12.4设计UART串行收发模块199
3.12.5LCD显示UART串行接收信息204
3.12.6技能实训208
同步训练3-12211
第4章基于CPLD/FPGA的综合
项目开发212
4.1
项目1基于VerilogHDL的数字时钟设计与实现212
4.1.1
任务提出及设计分析212
4.1.2顶层模块设计213
4.1.3子模块设计215
4.1.4下载调试运行220
4.1.5技能实训220
4.2
项目2基于VerilogHDL的交通信号灯模拟控制设计226
4.2.1
任务提出及设计分析226
4.2.2顶层模块设计229
4.2.3子模块设计229
4.2.4下载调试运行233
4.2.5技能实训233
4.3
项目3多功能教室智能控制系统的设计与实现240
4.3.1
任务提出及设计分析241
4.3.2顶层模块设计242
4.3.3子模块设计244
4.3.4下载调试运行251
4.3.5技能实训252
参考文献256