图书介绍
VHDL:代码编写和基于SYNOPSYS工具的逻辑综合PDF|Epub|txt|kindle电子书版本网盘下载
![VHDL:代码编写和基于SYNOPSYS工具的逻辑综合](https://www.shukui.net/cover/51/31790572.jpg)
- Weng Fook Lee著(AMD公司) 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302160953
- 出版时间:2007
- 标注页数:394页
- 文件大小:10MB
- 文件页数:416页
- 主题词:硬件描述语言,VHDL-程序设计
PDF下载
下载说明
VHDL:代码编写和基于SYNOPSYS工具的逻辑综合PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1部分 VHDL代码编写3
第1章 绪言3
1.1 传统设计方法——原理图输入3
1.2 硬件描述语言3
1.3 VHDL设计的结构4
1.4 VHDL设计内的元件实例化7
1.5 结构式、行为式与可综合VHDL设计10
1.5.1 结构式VHDL描述10
1.5.2 行为式VHDL描述12
1.5.3 RTL级代码14
1.6 在VHDL设计中使用库声明16
第2章 VHDL仿真与综合流程18
第3章 基本逻辑元件的可综合代码20
3.1 与逻辑20
3.2 或逻辑21
3.3 非逻辑22
3.4 与非逻辑23
3.5 或非逻辑24
3.6 三态缓冲器逻辑26
3.7 复杂逻辑门27
3.8 锁存器28
3.8.1 避免代码中出现锁存器29
3.9 触发器33
3.10 译码器34
3.11 编码器36
3.12 多路选择器37
3.13 优先级编码器39
3.14 存储器单元41
3.15 加法器42
3.16 元件推定44
第4章 信号与变量46
4.1 变量46
4.2 信号47
4.3 采用信号和变量的时机51
4.4 反馈信号的用法53
第5章 复杂示例的可综合代码56
5.1 移位器56
5.2 计数器66
5.3 存储器模块73
5.4 汽车行驶控制器80
第6章 设计可综合的流水式微控制器87
6.1 定义指令集87
6.2 定义体系结构88
6.3 定义流水线90
6.4 定义流水式微控制器的微结构91
6.4.1 预译码功能块93
6.4.2 译码功能块104
6.4.3 寄存器堆功能块112
6.4.4 执行功能块121
6.4.5 整个微控制器芯片131
第2部分 基于SYNOPSYS工具的逻辑综合147
第7章 设计中的时序因素147
7.1 建立时间违规147
7.2 保持时间违规148
7.3 逻辑综合中的建立时间和保持时间因素148
7.4 改进微结构以消除建立时间违规149
7.4.1 通过逻辑复制生成独立路径150
7.4.2 在利用滞后到达信号作选择之前进行逻辑复制150
7.4.3 在触发器间进行逻辑均衡151
7.4.4 优先级译码与多路译码152
7.5 改进微结构以消除保持时间违规153
7.6 异步路径与无效路径153
7.7 多周期路径153
第8章 基于时序约束的VHDL综合155
8.1 Design Compiler简介155
8.2 使用Design Compiler进行综合156
8.3 性能改进159
8.3.1 采用-map_effort high选项编译159
8.3.2 将关键路径聚合成组并设定权重因子164
8.3.3 对设计对象进行逻辑展平170
8.3.4 表征子模块174
8.3.5 寄存器均衡175
8.3.6 采用FSM Compiler优化有限状态机181
8.3.7 对高级功能模块选择高速实现电路186
8.3.8 对重负载逻辑树进行均衡187
8.4 通过综合改进实现面积优化190
8.4.1 组合逻辑不单独作为功能块使用190
8.4.2 模块间不使用胶黏逻辑191
8.4.3 使用set_max_area属性192
8.5 使用Synopsys工具消除保持时间违规193
8.6 其他常用的综合命令193
8.7 自顶而下与自底而上编译224
第9章 实例化GTECH库单元227
第10章 DesignWare库229
10.1 建立自己的DesignWare库233
第11章 综合中的可测试性问题240
11.1 复用触发器扫描方式241
11.2 使用Synopsys的Test Compiler实现扫描插入243
第12章 FPGA综合250
第13章 综合与版图工序之间的联系260
13.1 前向标注260
13.2 连线负载模型261
13.3 版面规划262
13.4 版图工序之后的优化263
第14章 实现有效综合应遵循的设计指导原则264
附录A STD_LOGIC_1164库266
附录B 移位器综合结果302
附录C 计数器综合结果308
附录D 流水式微控制器综合结果312
附录E 第6章微控制器示例综合出的EDIF文件330
附录F 第6章微控制器示例综合出的SDF文件359
词汇表392
参考文献394
图1 只有一个结构体的设计5
图2 具有多个结构体的设计5
图3 层次化的设计对象7
图4 实例化出3个与门元件的设计7
图5 “某一模块”的原理图10
图6 HDL仿真与综合的常规流程18
图7 VHDL设计对象及其测试平台19
图8 综合出的与逻辑21
图9 综合出的或逻辑22
图10 综合出的非逻辑23
图11 综合出的与非逻辑门24
图12 综合出的或非逻辑门25
图13 综合出的三态缓冲器27
图14 综合出的复杂逻辑门28
图15 综合出的锁存器29
图16 综合出的触发器33
图17 综合出的译码器35
图18 综合出的编码器37
图19 综合出的多路选择器逻辑38
图20 综合出的优先级编码器41
图21 具有滞后到达信号E的逻辑元件41
图22 综合出的采用触发器的存储器单元42
图23 综合出的加法器方块图43
图24 由逻辑门构造出的加法器的原理图44
图25 例27(采用变量)的仿真结果时序图51
图26 例28(采用信号)的仿真结果时序图51
图27 反馈信号53
图28 4位移位器设计的引脚示意图57
图29 移位器设计的流程图58
图30 左移时序图65
图31 右移时序图65
图32 桶式右移时序图65
图33 桶式左移时序图66
图34 4位计数器设计引脚示意图67
图35 计数器设计的递增计数时序图72
图36 计数器设计的递减计数时序图72
图37 存储器模块引脚示意图73
图38 存储器模块读操作/写操作流程图74
图39 存储器模块写操作时序波形图79
图40 存储器模块读操作时序波形图79
图41 汽车行驶控制器模块状态图81
图42 汽车行驶控制器的仿真结果时序图86
图43 微控制器接口示意图88
图44 微控制器的流水阶段90
图45 流水线中的指令执行过程91
图46 整个微控制器芯片的微结构定义92
图47 预译码功能块接口信号示意图95
图48 预译码功能块测试平台时序波形图103
图49 译码功能块接口信号示意图105
图50 译码功能块测试平台时序波形图111
图51 寄存器堆功能块接口信号示意图113
图52 寄存器堆测试平台仿真结果时序波形图120
图53 执行功能块接口信号示意图122
图54 执行功能块接口信号示意图127
图55 执行功能块测试平台时序波形图130
图56 微控制器测试平台时序波形图144
图57 以组合逻辑驱动触发器的输入信号A的电路示意图148
图58 信号A的建立时间时序图148
图59 信号A的保持时间时序图148
图60 对综合出的电路作静态时序分析149
图61 某个组合逻辑电路示意图150
图62 某个作了逻辑复制的组合逻辑电路示意图150
图63 某逻辑电路示意图151
图64 通过逻辑复制对稍早到达的信号提前译码的逻辑电路示意图151
图65 采用多级译码的设计示意图151
图66 某个采用多级译码而作了逻辑均衡的设计示意图152
图67 采用优先级译码的设计152
图68 采用多路译码的设计152
图69 保持时间违规的设计153
图70 消除了保持时间违规的设计对象示意图153
图71 具有多周期路径的设计对象示意图154
图72 以虚拟时钟为参照的输入延迟和输出延迟时序图160
图73 顶层TOP模块和其多个子模块的示意图174
图74 流水式设计对象的示意图175
图75 未作划分的设计对象182
图76 划分得体的零散逻辑和状态机182
图77 由balance_buf_ent综合出的电路188
图78 对balance_buf_ent作了balance_buffer处理而综合出的电路190
图79 独立的组合逻辑功能块191
图80 将组合逻辑X、Y和Z组合起来191
图81 模块A和C之间的胶黏逻辑192
图82 RESET是无效路径193
图83 多周期路径194
图84 推导出的四个与门213
图85 两个与门聚成一组形成b1ock1213
图86 将与门聚组形成block1和b1ock2214
图87 使用LOOP和NEXT语句的VHDL代码的综合结果217
图88 具有5个子模块的顶层设计对象示意图224
图89 顶层模块的时间预算示意图226
图90 从GTECH库中的XNOR4映射出四输入XNOR逻辑单元228
图91 从GTECH库中的XNOR4映射出两输入XNOR逻辑单元和两输入XOR逻辑单元228
图92 含测试插入的综合/版图设计流程图241
图93 用作等价扫描单元的复用触发器241
图94 扫描模式和正常工作模式下复用触发器的用法242
图95 设计对象中的扫描链242
图96 将设计对象综合到FPGA中的步骤流程图250
图97 从综合到版图工序间的信息前向标注图260
图98 RC信息的反向标注262
表1 “某一模块”的真值表12
表2 “某一模块”的卡诺图15
表3 与逻辑功能的真值表20
表4 或逻辑功能的真值表21
表5 与非逻辑功能的真值表23
表6 或非逻辑功能的真值表25
表7 三态缓冲器逻辑功能的真值表26
表8 复杂逻辑门功能的真值表27
表9 译码逻辑功能的真值表34
表10 8输入编码器的真值表36
表11 多路选择器逻辑功能的真值表37
表12 逐位选择式优先级编码器的真值表39
表13 加法器逻辑功能的真值表43
表14 用于逻辑元件推导的算符和关键字45
表15 各种移位模式的移位过程56
表16 移位器的引脚和功能描述57
表17 计数器设计的引脚描述66
表18 存储器模块的引脚描述73
表19 汽车行驶控制器模块的引脚描述80
表20 微控制器指令集描述87
表21 微控制器接口信号的描述89
表22 微控制器16个内部寄存器的表示法89
表23 预译码功能块接口信号的描述93
表24 译码功能块接口信号的描述105
表25 寄存器堆功能块接口信号的描述112
表26 执行功能块接口信号的描述121
表27 加法器的不同实现方案187
例1 具有多种结构体的VHDL代码6
例2 实例化出3个与门元件设计的VHDL代码7
例3 “某一模块”的结构式VHDL描述10
例4 “某一模块”的行为式代码12
例5 “某一模块”的描述式VHDL代码14
例6 编写可综合VHDL代码时使用类型转换函数17
例7 与逻辑的可综合代码20
例8 或逻辑的可综合代码21
例9 非逻辑的可综合代码22
例10 与非逻辑的可综合代码24
例11 或非逻辑的可综合代码25
例12 三态缓冲器逻辑的可综合代码26
例13 复杂逻辑门的可综合代码27
例14 锁存器的可综合代码29
例15 产生锁存器的IF语句代码30
例16 不会产生锁存器的IF语句代码30
例17 产生锁存器的CASE语句代码31
例18 不会产生锁存器的CASE语句代码32
例19 触发器的可综合代码33
例20 译码器的可综合代码34
例21 编码器的可综合代码36
例22 多路选择器逻辑的可综合代码38
例23 优先级编码器的可综合代码40
例24 存储器单元的可综合代码41
例25 加法器的可综合代码43
例26 推导出与门的VHDL代码45
例27 体现变量用法的VHDL代码46
例28 体现信号用法的VHDL代码47
例29 仿真信号和变量用法的测试平台48
例30 声明使用一个BUFFER端口和一个OUT端口的VHDL代码53
例31 使用信号实现反馈54
例32 4位移位器的可综合VHDL代码57
例33 4位移位器设计的测试平台59
例34 4位计数器设计的可综合VHDL代码66
例35 4位计数器设计的测试平台68
例36 1KB容量存储器模块的可综合代码74
例37 存储器模块的VHDL测试平台76
例38 汽车行驶控制器模块的可综合VHDL代码81
例39 汽车行驶控制器模块的测试平台83
例40 预译码功能块的可综合VHDL代码95
例41 用于核对功能正确性的测试平台的VHDL代码99
例42 译码功能块的可综合VHDL代码105
例43 译码功能块的测试平台108
例44 寄存器堆功能块的可综合VHDL代码113
例45 寄存器堆功能块测试平台的可综合VHDL代码117
例46 执行功能块的可综合VHDL代码122
例47 用于检查执行功能块功能正确性的测试平台127
例48 整个微控制器芯片的可综合代码131
例49 微控制器的测试平台137
例50 32位加法器的可综合VHDL代码159
例51 16位减法器165
例52 4位乘法器170
例53 具有2条流水线的设计对象的VHDL代码176
例54 反相器的VHDL代码187
例55 32位比较器的可综合VHDL代码199
例56 采用BLOCK语句的四个与门的VHDL代码211
例57 采用LOOP语法结构的VHDL代码214
例58 采用GENERATE语法结构的VHDL代码215
例59 使用LOOP和NEXT的VHDL代码216
例60 含有组合反馈环路的设计对象的VHDL代码218
例61 实例化GTECH库中的XNOR单元227
例62 实例化DesignWare元件的VHDL代码229
例63 对DesignWare DWO3库中的SRAM模块作实例化的VHDL代码231
例64 N位移位器的VHDL代码233
例65 实例化MY_DW_SHIFTER的VHDL代码237
例66 连线负载模型261