VHDL与FPGA设计
分類: 图书,计算机/网络,程序设计,其他,
作者: 胡振华编著
出 版 社: 中国铁道出版社
出版时间: 2003-1-1字数: 481000版次: 1版1次页数: 317印刷时间: 2003/01/01开本:印次:纸张: 胶版纸I S B N : 9787113050467包装: 平装编辑推荐
内容简介
定位在学习VHDL和FPGA设计的初学者
即深入浅出地讲述了VHDL程序设计方法,又结合Modelsim、FPGA Express和Xilinx Foundation软件详细讲述了FPGA设计的功能仿真,综合,布局布线和时序仿真等
结合EDA设计的特点,剖析了VHDL语言在FPGA设计中的重点难点,并将这些设计思想贯穿全书始终
本书读者对象为大中专院校相关专业的高年级本科生和研究生,以及从事EDA设计的研发工程师
本书涉及到的范例程序文件在http://www.tqbooks.net/download.asp网页上可免费下载。
作者简介
目录
第0章 前 言 1
0-1 VHDL的发展 2
0-2 VHDL的优点 3
0-3 所须具备的概念 3
0-4 "SRAM Base"vs."Anti-Fuse" 4
0-5 本书的内容 5
0-6 使用工具 7
第1章 设计的基本概念 9
1-1 设计阶段的划分 10
1-2 VHDL设计的流程 10
1-3 Design Entry-Schematics vs. VHDL 12
1-4 Function Simulation VHDL 12
1-5 Synthesis 13
1-6 Place & Route 14
1-7 Timing Simulation 14
1-8 小结 14
第2章 架构(Architecture) 17
2-1 Simulator的使用 18
2-2 基本架构 24
2-2-1Library 26
2-2-2Use 28
2-2-3Entity 29
2-2-4Port 30
2-3 Architecture 32
2-4 命名法则与注释 33
2-5 扩展的声明 33
2-5-1Package 34
2-5-2Package Body 36
2-6 小结 38
问题 38
第3章 数据类型(Type) 41
3-1 Standard Package定义的数据类型 42
3-1-1标量型数据类型 42
3-1-2枚举型数据类型 43
3-1-3复合型的数据类型 44
3-2 IEEE Package定义的数据类型 44
3-3 复合型数据类型 48
3-3-1Array 48
3-3-2Record 48
3-4 文件型数据类型 49
3-5 小结 51
问题 52
第4章 运算符(Operator) 53
4-1 1076-1987与1076-1993 Operator的差异 54
4-2 Logical Operator 54
4-3 Relational Operator 56
4-4 Shift Operator 58
4-4-1IEEE 1076-1993中的Shift Operator 59
4-4-2衍生的移位处理 61
4-5 Adding Operator 64
4-5-1加减法运算处理 64
4-5-2连接(Concatenation)处理 67
4-6 Sign Operator 68
4-7 Multiplying Operator 68
4-8 Miscellaneous Operator 69
4-9 Operator的优先级 70
4-10 小结 72
问题 72
第5章 组合逻辑电路(Combinational Logic) 73
5-1 基本的Combinational Logic 74
5-1-1And 74
5-1-2Or 76
5-1-3Not及其他 77
5-2 较复杂的Combinational Logic 77
5-2-1When-Else 77
5-2-2With-Select-When 78
5-3 Process中的Combinational Logic 79
5-4 Delay对Combinational Logic的影响 84
5-5 小结 85
问题 86
第6章 时序逻辑电路(Sequential Logic) 87
6-1 Process的语法结构 88
6-2 If语句 92
6-3 Wait语句 96
6-3-1Wait Until语句 96
6-3-2Wait For语句 98
6-3-3Wait On语句 100
6-4 Case语句 102
6-5 Sync与Async Reset 103
6-6 Loop 105
6-6-1与While及For合用 105
6-6-2Loop的嵌套 107
6-6-3Next语句 109
6-6-4Exit语句 111
6-7 Assert语句 113
6-8 小结 116
问题 117
第7章 函数(Function)与过程(Procedure) 119
7-1 Function的声明及使用 120
7-2 类型转换的Function 122
7-3 重载函数(Overload Function) 126
7-4 Procedure 129
7-5 小结 132
问题 133
第8章 属性(Attribute)与配置(Configuration) 135
8-1 返回信号状态的属性 136
8-1-1Event属性 136
8-1-2Active属性 137
8-1-3Last_event属性 137
8-1-4Last_value及Last_active属性 139
8-2 返回单一数值的属性 140
8-3 返回数值范围的属性 142
8-4 Configuration 144
8-4-1Architecture Configuration 144
8-4-2Component Configuration 147
8-4-3Generic Configuration 151
8-5 小结 154
问题 155
第9章 层次式设计(Hierarchy Design) 157
9-1 Component Instantiation 158
9-2 Design Partition 163
9-3 设计方法的讲述 164
9-3-1Input Latch & Float-Fix 164
9-3-2Adder 166
9-3-3Fix-Float & Output Latch 168
9-4 顶层设计及仿真 170
9-4-1顶层设计的连接 170
9-4-2设计仿真 172
9-5 小结 174
问题 174
第10章 功能仿真(Function Simulation) 177
10-1 Dependency 178
10-2 ModelSim中的Options 179
10-3 建立Simulation Macro 184
10-3-1建立基本的Marco 184
10-3-2双向Bus的仿真Macro 187
10-4 Testbench Simulation 189
10-5 Textio仿真 192
10-6 Simulation Library的建立 198
10-6-1Core Generator的使用 199
10-6-2Simulation Library的建立 202
10-6-3Design的处理 205
10-6-4进行Simulation 208
10-7 层次式的仿真及调试 208
10-8 小结 210
问题 211
第11章 合成(Synthesis) 213
11-1 Synthesizer的使用 214
11-2 预布局仿真(Pre-Layout Simulation) 218
11-3 一些不能合成的例子 219
11-3-1时间延迟的要求 219
11-3-2不合乎硬件设计 222
11-3-3起始值的设定 223
11-4 Constraint的设置方法 227
11-5 Block Box的Synthesis 233
11-6 层次式设计的Synthesis 234
11-7 小结 235
问题 236
第12章 布局布线(Place & Route) 237
12-1 Place & Route工具的使用 238
12-2 Constraint的设定 241
12-2-1Timing Constraint 241
12-2-2非Timing Constraint 246
12-3 Report Analyze 247
12-4 层次式设计的Place & Route 249
12-5 小结 250
问题 251
第13章 时序仿真(Timing Simulation) 253
13-1 编译VHDL Netlist File 254
13-2 Timing Simulation 255
13-2-1信号GSR所造成的问题 256
13-2-2Setup Time Check造成的错误 259
13-3 SDF File 261
13-3-1SDF的内容 261
13-3-2表头部分 261
13-3-3基本单元 263
13-3-4时序检查 264
13-4 仿真分析 266
13-5 规格的设定 273
13-6 运用Textio做数据对比的Timing Simulation 274
13-7 Timing Simulation的好处 278
13-8 小结 278
问题 279
第14章 状态机设计(State Machine Design) 281
14-1 State Machine的建立 282
14-1-1程序代码的撰写 283
14-1-2设计的Function Simulation 287
14-1-3设计的Synthesis及Place& Route 289
14-1-4时序仿真(Timing Simulation) 290
14-2 状态机的修改 291
14-2-1程序代码的修改 292
14-2-2修改设计的功能仿真(Function Simulation) 294
14-2-3设计的合成(Synthesis)与布局布线(Place & Rute) 295
14-2-4时序仿真(Timing Simulation) 297
14-3 One-hot与Binary Decode 298
14-4 小结 299
问题 299
第15章 并行处理(Pipelined Processing) 301
15-1 未使用并行处理的乘法器 302
15-2 增加Input Latch的乘法器 308
15-3 将乘法器一分为二的设计 310
15-4 改善已有的设计 314
15-5 并行处理的缺点 315
15-6 小结 316
附 录 317
媒体评论