模块一 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