《CPLD/FPGA技术应用项目教程》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:陈明芳,樊秋月主编;尹海昌,黄进财,王志辉等副主编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2015
  • ISBN:9787121244964
  • 页数:227 页
图书介绍:本教材设置了3个完整的综合项目,将EDA技术、可编程逻辑器件、verilog HDL 语言、Quartus II10.0版开发软件的使用、有限状态机、模块化和自顶向下的设计方法及仿真工具运用技巧等贯穿其中,项目的选择由浅入深,由简单到复杂,由个体到综合。这三个综合项目分别为数字电子时钟、多功能交通灯设计项目和卡拉OK项目,每个项目后都配有拓展题,锻炼学生自主创新和设计的能力。

模块一 EDA基础设计项目 1

项目1 3-8译码器设计 1

项目要求 1

一、项目任务 1

二、实训设备 1

三、学习目标 1

项目相关知识 2

一、EDA技术与硬件描述语言 2

二、Verilog HDL模块结构 5

三、译码器原理 6

四、源码 6

项目实施 7

一、编辑调试模块代码 7

二、创建和导入原理图 10

三、仿真 12

拓展练习 18

项目2 8-3编码器设计 19

项目要求 19

一、项目任务 19

二、实训设备 19

三、学习目标 19

项目相关知识 19

一、Verilog HDL基本规范 19

二、case语句 20

三、编码器原理 21

四、模块符号 22

五、源码 22

项目实施 23

一、编辑调试模块代码 23

二、仿真测试模块功能 23

拓展练习 24

项目3 优先编码器设计 25

项目要求 25

一、项目任务 25

二、实训设备 25

三、学习目标 25

项目相关知识 25

一、Verilog HDL的常量 25

二、优先编码器原理 27

三、模块符号 27

四、源码 28

项目实施 28

一、编辑调试模块代码 28

二、仿真测试模块功能 29

拓展练习 30

项目4 数据选择器设计 31

项目要求 31

一、项目任务 31

二、实训设备 31

三、学习目标 31

项目相关知识 31

一、Verilog HDL参数型常量 31

二、if-else语句 32

三、数据选择器原理 33

四、模块符号 34

五、源码 34

项目实施 35

一、编辑调试模块代码 35

二、仿真测试模块功能 35

拓展练习 37

项目5 多位数值比较器设计 38

项目要求 38

一、项目任务 38

二、实训设备 38

三、学习目标 38

项目相关知识 38

一、关系运算符和全等运算符 38

二、Verilog HDL的变量 39

三、多位数值比较器原理 41

四、模块符号 41

五、源码 42

项目实施 43

一、编辑调试模块代码 43

二、仿真测试模块功能 43

拓展练习 44

项目6 半加器与全加器设计 45

项目要求 45

一、项目任务 45

二、实训设备 45

三、学习目标 45

项目相关知识 45

一、位拼接运算符 45

二、结构化的建模方式 46

三、数据流建模方式 46

四、半加器原理 47

五、全加器原理 48

六、模块符号 48

七、源码 49

项目实施 49

一、编辑调试模块代码 49

二、仿真测试模块功能 50

拓展练习 51

项目7 D触发器设计 52

项目要求 52

一、项目任务 52

二、实训设备 52

三、学习目标 52

项目相关知识 52

一、算术运算符和位运算符 52

二、行为建模方式 54

三、D触发器原理 55

四、模块符号 56

五、源码 57

项目实施 57

一、编辑调试模块代码 57

二、仿真测试模块功能 57

拓展练习 58

项目8 寄存器,双向移位寄存器设计 59

项目要求 59

一、项目任务 59

二、实训设备 59

三、学习目标 59

项目相关知识 59

一、赋值运算 59

二、移位运算 60

三、寄存器原理 61

四、移位寄存器原理 61

五、模块符号 61

六、源码 62

项目实施 63

一、编辑调试模块代码 63

二、仿真测试模块功能 63

拓展练习 65

项目9 四位二进制加减计数器设计 66

项目要求 66

一、项目任务 66

二、实训设备 66

三、学习目标 66

项目相关知识 66

一、逻辑运算符 66

二、缩减运算符 67

三、计数器原理 67

四、模块符号 69

五、源码 70

项目实施 70

一、编辑调试模块代码 70

二、仿真测试模块功能 70

拓展练习 72

项目10 十进制加减计数器设计 73

项目要求 73

一、项目任务 73

二、实训设备 73

三、学习目标 73

项目相关知识 73

一、Testbench 73

二、顺序块语句 73

三、十进制计数器原理 75

四、模块符号 76

五、源码 76

项目实施 78

一、编辑调试模块代码 78

二、仿真测试模块功能 78

拓展练习 79

项目11 顺序脉冲发生器设计 80

项目要求 80

一、项目任务 80

二、实训设备 80

三、学习目标 80

项目相关知识 80

一、顺序脉冲发生器原理 80

二、模块符号 81

三、源码 81

项目实施 82

一、编辑调试模块代码 82

二、仿真测试模块功能 82

拓展练习 83

项目12 序列信号发生器设计 84

项目要求 84

一、项目任务 84

二、实训设备 84

三、学习目标 84

项目相关知识 84

一、序列信号发生器原理 84

二、模块符号 85

三、源码 85

项目实施 86

一、编辑调试模块代码 86

二、仿真测试模块功能 86

拓展练习 88

项目13 串行数据检测器设计 89

项目要求 89

一、项目任务 89

二、实训设备 89

三、学习目标 89

项目相关知识 89

一、串行数据检测器原理 89

二、模块符号 90

三、源码 90

项目实施 91

一、编辑调试模块代码 91

二、仿真测试模块功能 92

拓展练习 93

项目14 分频器设计 94

项目要求 94

一、项目任务 94

二、实训设备 94

三、学习目标 94

项目相关知识 94

一、分频器原理 94

二、整数分频器的设计 94

三、模块符号 95

四、源码 95

项目实施 96

一、编辑调试模块代码 96

二、仿真测试模块功能 96

拓展练习 97

模块二 FPGA技术应用项目 98

项目1 跑马灯设计 98

项目要求 98

一、项目任务 98

二、实训设备 98

三、学习目标 98

项目相关知识 99

一、可编程逻辑器件 99

二、SP-FGCE11A FPGA实训平台 102

三、跑马灯原理 103

四、引脚分配 104

五、模块符号 109

六、源码 110

项目实施 110

一、编辑调试模块代码 110

二、分配引脚 111

三、配置 112

四、编译 113

五、下载 113

拓展练习 115

项目2 按键控制LED设计 116

项目要求 116

一、项目任务 116

二、实训设备 116

三、学习目标 116

项目相关知识 116

一、按键控制1ed灯原理 116

二、模块符号 116

三、源码 117

项目实施 117

一、编辑调试模块代码 117

二、分配引脚 117

三、配置 118

四、编译 118

五、下载 118

拓展练习 118

项目3 蜂鸣器设计 119

项目要求 119

一、项目任务 119

二、实训设备 119

三、学习目标 119

项目相关知识 119

一、蜂鸣器原理 119

二、模块符号 120

三、源码 120

项目实施 121

一、编辑调试模块代码 121

二、分配引脚 121

三、配置 121

四、编译 121

五、下载 121

拓展练习 122

项目4 七段数码管扫描显示设计 123

项目要求 123

一、项目任务 123

二、实训设备 123

三、学习目标 123

项目相关知识 123

一、七段数码管扫描显示原理简介 123

二、模块符号 124

三、源码 124

项目实施 125

一、编辑调试模块代码 125

二、分配引脚 125

三、配置 125

四、编译 126

五、下载 126

拓展练习 126

项目5 点阵控制设计 127

项目要求 127

一、项目任务 127

二、实训设备 127

三、学习目标 127

项目相关知识 127

一、点阵控制原理简介 127

二、模块符号 128

三、源码 128

项目实施 130

一、编辑调试模块代码 130

二、分配引脚 130

三、配置 131

四、编译 131

五、下载 131

拓展练习 131

项目6 直流电机控制设计 132

项目要求 132

一、项目任务 132

二、实训设备 132

三、学习目标 132

项目相关知识 132

一、直流电机控制原理简介 132

二、模块符号 133

三、源码 133

项目实施 136

一、编辑调试模块代码 136

二、分配引脚 136

三、配置 136

四、编译 136

五、下载 136

拓展练习 137

项目7 步进电机控制设计 138

项目要求 138

一、项目任务 138

二、实训设备 138

三、学习目标 138

项目相关知识 138

一、步进电机控制原理简介 138

二、模块符号 139

三、源码 139

项目实施 140

一、编辑调试模块代码 140

二、分配引脚 141

三、配置 141

四、编译 141

五、下载 141

拓展练习 141

项目8 矩阵键盘接口控制设计 142

项目要求 142

一、项目任务 142

二、实训设备 142

三、学习目标 142

项目相关知识 142

一、矩阵键盘接口控制原理简介 142

二、模块符号 144

三、源码 144

项目实施 146

一、编辑调试模块代码 146

二、分配引脚 147

三、配置 147

四、编译 147

五、下载 147

拓展练习 147

项目9 LCD1602控制器设计 148

项目要求 148

一、项目任务 148

二、实训设备 148

三、学习目标 148

项目相关知识 148

一、LCD1602原理 148

二、模块符号 151

三、源码 152

项目实施 153

一、编辑调试模块代码 153

二、分配引脚 154

三、配置 154

四、编译 154

五、下载 154

拓展练习 154

项目10 ADC0809控制设计 155

项目要求 155

一、项目任务 155

二、实训设备 155

三、学习目标 155

项目相关知识 155

一、ADC0809转换原理 155

二、ADC0809控制器符号 158

三、源码 158

项目实施 160

一、编辑调试模块代码 160

二、分配引脚 161

三、配置 161

四、编译 161

五、下载 161

拓展练习 162

项目11 DAC0832控制设计 163

项目要求 163

一、项目任务 163

二、实训设备 163

三、学习目标 163

项目相关知识 163

一、DAC0832转换原理 163

二、DAC0832控制器符号 166

三、源码 166

项目实施 167

一、编辑调试模块代码 167

二、分配引脚 167

三、配置 168

四、编译 168

五、下载 168

拓展练习 168

模块三 FPGA技术综合设计项目 169

项目1 多功能数字时钟设计 169

项目要求 169

一、项目任务 169

二、实训设备 169

三、学习目标 169

项目相关知识 170

一、自顶向下的设计方法 170

二、数字钟的功能要求 170

三、顶层设计 170

四、模块 170

五、源码 174

项目实施 178

一、编辑调试模块代码 178

二、分配引脚 183

三、配置 183

四、编译 183

五、下载 183

拓展练习 184

项目2 VGA图像显示设计 185

项目要求 185

一、项目任务 185

二、实训设备 185

三、学习目标 185

项目相关知识 185

一、VGA简介 185

二、VGA接口引脚图 185

三、VGA时序分析 186

四、硬件电路 187

五、顶层设计 189

六、程序解析 190

七、源码 191

项目实施 195

一、编辑调试模块代码 195

二、分配引脚 195

三、配置 196

四、编译 196

五、下载 196

拓展练习 196

项目3 UART通信接口设计 197

项目要求 197

一、项目任务 197

二、实训设备 197

三、学习目标 197

项目相关知识 197

一、模块实例化方法 197

二、串口引脚图 199

三、UART传输时序 199

四、调试 200

五、源码 200

项目实施 209

一、编辑调试模块代码 209

二、分配引脚 209

三、配置 209

四、编译 210

五、下载 210

拓展练习 210

项目4 I2C总线接口设计 211

项目要求 211

一、项目任务 211

二、实训设备 211

三、学习目标 211

项目相关知识 211

一、I2C总线简介 211

二、I2C总线特征介绍 211

三、二线制I2C串行EEPROM读/写操作 212

四、模块符号 213

五、源码 213

项目实施 225

一、编辑调试模块代码 225

二、分配引脚 225

三、配置 226

四、编译 226

五、下载 226

拓展练习 226