主页 详情

《VHDL:代码编写和基于SYNOPSYS工具的逻辑综合》_Weng Fook Lee著(AMD公司)_11906136_9787302160953

【书名】:《VHDL:代码编写和基于SYNOPSYS工具的逻辑综合》
【作者】:Weng Fook Lee著(AMD公司)
【出版社】:北京:清华大学出版社
【时间】:2007
【页数】:394
【ISBN】:9787302160953
【SS码】:11906136

最新查询

内容简介

第1部分 VHDL代码编写

第1章 绪言

1.1 传统设计方法——原理图输入

1.2 硬件描述语言

1.3 VHDL设计的结构

1.4 VHDL设计内的元件实例化

1.5 结构式、行为式与可综合VHDL设计

1.5.1 结构式VHDL描述

1.5.2 行为式VHDL描述

1.5.3 RTL级代码

1.6 在VHDL设计中使用库声明

第2章 VHDL仿真与综合流程

第3章 基本逻辑元件的可综合代码

3.1 与逻辑

3.2 或逻辑

3.3 非逻辑

3.4 与非逻辑

3.5 或非逻辑

3.6 三态缓冲器逻辑

3.7 复杂逻辑门

3.8 锁存器

3.8.1 避免代码中出现锁存器

3.9 触发器

3.10 译码器

3.11 编码器

3.12 多路选择器

3.13 优先级编码器

3.14 存储器单元

3.15 加法器

3.16 元件推定

第4章 信号与变量

4.1 变量

4.2 信号

4.3 采用信号和变量的时机

4.4 反馈信号的用法

第5章 复杂示例的可综合代码

5.1 移位器

5.2 计数器

5.3 存储器模块

5.4 汽车行驶控制器

第6章 设计可综合的流水式微控制器

6.1 定义指令集

6.2 定义体系结构

6.3 定义流水线

6.4 定义流水式微控制器的微结构

6.4.1 预译码功能块

6.4.2 译码功能块

6.4.3 寄存器堆功能块

6.4.4 执行功能块

6.4.5 整个微控制器芯片

第2部分 基于SYNOPSYS工具的逻辑综合

第7章 设计中的时序因素

7.1 建立时间违规

7.2 保持时间违规

7.3 逻辑综合中的建立时间和保持时间因素

7.4 改进微结构以消除建立时间违规

7.4.1 通过逻辑复制生成独立路径

7.4.2 在利用滞后到达信号作选择之前进行逻辑复制

7.4.3 在触发器间进行逻辑均衡

7.4.4 优先级译码与多路译码

7.5 改进微结构以消除保持时间违规

7.6 异步路径与无效路径

7.7 多周期路径

第8章 基于时序约束的VHDL综合

8.1 Design Compiler简介

8.2 使用Design Compiler进行综合

8.3 性能改进

8.3.1 采用-map_effort high选项编译

8.3.2 将关键路径聚合成组并设定权重因子

8.3.3 对设计对象进行逻辑展平

8.3.4 表征子模块

8.3.5 寄存器均衡

8.3.6 采用FSM Compiler优化有限状态机

8.3.7 对高级功能模块选择高速实现电路

8.3.8 对重负载逻辑树进行均衡

8.4 通过综合改进实现面积优化

8.4.1 组合逻辑不单独作为功能块使用

8.4.2 模块间不使用胶黏逻辑

8.4.3 使用set_max_area属性

8.5 使用Synopsys工具消除保持时间违规

8.6 其他常用的综合命令

8.7 自顶而下与自底而上编译

第9章 实例化GTECH库单元

第10章 DesignWare库

10.1 建立自己的DesignWare库

第11章 综合中的可测试性问题

11.1 复用触发器扫描方式

11.2 使用Synopsys的Test Compiler实现扫描插入

第12章 FPGA综合

第13章 综合与版图工序之间的联系

13.1 前向标注

13.2 连线负载模型

13.3 版面规划

13.4 版图工序之后的优化

第14章 实现有效综合应遵循的设计指导原则

附录A STD_LOGIC_1164库

附录B 移位器综合结果

附录C 计数器综合结果

附录D 流水式微控制器综合结果

附录E 第6章微控制器示例综合出的EDIF文件

附录F 第6章微控制器示例综合出的SDF文件

词汇表

参考文献

图1 只有一个结构体的设计

图2 具有多个结构体的设计

图3 层次化的设计对象

图4 实例化出3个与门元件的设计

图5 “某一模块”的原理图

图6 HDL仿真与综合的常规流程

图7 VHDL设计对象及其测试平台

图8 综合出的与逻辑

图9 综合出的或逻辑

图10 综合出的非逻辑

图11 综合出的与非逻辑门

图12 综合出的或非逻辑门

图13 综合出的三态缓冲器

图14 综合出的复杂逻辑门

图15 综合出的锁存器

图16 综合出的触发器

图17 综合出的译码器

图18 综合出的编码器

图19 综合出的多路选择器逻辑

图20 综合出的优先级编码器

图21 具有滞后到达信号E的逻辑元件

图22 综合出的采用触发器的存储器单元

图23 综合出的加法器方块图

图24 由逻辑门构造出的加法器的原理图

图25 例27(采用变量)的仿真结果时序图

图26 例28(采用信号)的仿真结果时序图

图27 反馈信号

图28 4位移位器设计的引脚示意图

图29 移位器设计的流程图

图30 左移时序图

图31 右移时序图

图32 桶式右移时序图

图33 桶式左移时序图

图34 4位计数器设计引脚示意图

图35 计数器设计的递增计数时序图

图36 计数器设计的递减计数时序图

图37 存储器模块引脚示意图

图38 存储器模块读操作/写操作流程图

图39 存储器模块写操作时序波形图

图40 存储器模块读操作时序波形图

图41 汽车行驶控制器模块状态图

图42 汽车行驶控制器的仿真结果时序图

图43 微控制器接口示意图

图44 微控制器的流水阶段

图45 流水线中的指令执行过程

图46 整个微控制器芯片的微结构定义

图47 预译码功能块接口信号示意图

图48 预译码功能块测试平台时序波形图

图49 译码功能块接口信号示意图

图50 译码功能块测试平台时序波形图

图51 寄存器堆功能块接口信号示意图

图52 寄存器堆测试平台仿真结果时序波形图

图53 执行功能块接口信号示意图

图54 执行功能块接口信号示意图

图55 执行功能块测试平台时序波形图

图56 微控制器测试平台时序波形图

图57 以组合逻辑驱动触发器的输入信号A的电路示意图

图58 信号A的建立时间时序图

图59 信号A的保持时间时序图

图60 对综合出的电路作静态时序分析

图61 某个组合逻辑电路示意图

图62 某个作了逻辑复制的组合逻辑电路示意图

图63 某逻辑电路示意图

图64 通过逻辑复制对稍早到达的信号提前译码的逻辑电路示意图

图65 采用多级译码的设计示意图

图66 某个采用多级译码而作了逻辑均衡的设计示意图

图67 采用优先级译码的设计

图68 采用多路译码的设计

图69 保持时间违规的设计

图70 消除了保持时间违规的设计对象示意图

图71 具有多周期路径的设计对象示意图

图72 以虚拟时钟为参照的输入延迟和输出延迟时序图

图73 顶层TOP模块和其多个子模块的示意图

图74 流水式设计对象的示意图

图75 未作划分的设计对象

图76 划分得体的零散逻辑和状态机

图77 由balance_buf_ent综合出的电路

图78 对balance_buf_ent作了balance_buffer处理而综合出的电路

图79 独立的组合逻辑功能块

图80 将组合逻辑X、Y和Z组合起来

图81 模块A和C之间的胶黏逻辑

图82 RESET是无效路径

图83 多周期路径

图84 推导出的四个与门

图85 两个与门聚成一组形成b1ock1

图86 将与门聚组形成block1和b1ock2

图87 使用LOOP和NEXT语句的VHDL代码的综合结果

图88 具有5个子模块的顶层设计对象示意图

图89 顶层模块的时间预算示意图

图90 从GTECH库中的XNOR4映射出四输入XNOR逻辑单元

图91 从GTECH库中的XNOR4映射出两输入XNOR逻辑单元和两输入XOR逻辑单元

图92 含测试插入的综合/版图设计流程图

图93 用作等价扫描单元的复用触发器

图94 扫描模式和正常工作模式下复用触发器的用法

图95 设计对象中的扫描链

图96 将设计对象综合到FPGA中的步骤流程图

图97 从综合到版图工序间的信息前向标注图

图98 RC信息的反向标注

表1 “某一模块”的真值表

表2 “某一模块”的卡诺图

表3 与逻辑功能的真值表

表4 或逻辑功能的真值表

表5 与非逻辑功能的真值表

表6 或非逻辑功能的真值表

表7 三态缓冲器逻辑功能的真值表

表8 复杂逻辑门功能的真值表

表9 译码逻辑功能的真值表

表10 8输入编码器的真值表

表11 多路选择器逻辑功能的真值表

表12 逐位选择式优先级编码器的真值表

表13 加法器逻辑功能的真值表

表14 用于逻辑元件推导的算符和关键字

表15 各种移位模式的移位过程

表16 移位器的引脚和功能描述

表17 计数器设计的引脚描述

表18 存储器模块的引脚描述

表19 汽车行驶控制器模块的引脚描述

表20 微控制器指令集描述

表21 微控制器接口信号的描述

表22 微控制器16个内部寄存器的表示法

表23 预译码功能块接口信号的描述

表24 译码功能块接口信号的描述

表25 寄存器堆功能块接口信号的描述

表26 执行功能块接口信号的描述

表27 加法器的不同实现方案

例1 具有多种结构体的VHDL代码

例2 实例化出3个与门元件设计的VHDL代码

例3 “某一模块”的结构式VHDL描述

例4 “某一模块”的行为式代码

例5 “某一模块”的描述式VHDL代码

例6 编写可综合VHDL代码时使用类型转换函数

例7 与逻辑的可综合代码

例8 或逻辑的可综合代码

例9 非逻辑的可综合代码

例10 与非逻辑的可综合代码

例11 或非逻辑的可综合代码

例12 三态缓冲器逻辑的可综合代码

例13 复杂逻辑门的可综合代码

例14 锁存器的可综合代码

例15 产生锁存器的IF语句代码

例16 不会产生锁存器的IF语句代码

例17 产生锁存器的CASE语句代码

例18 不会产生锁存器的CASE语句代码

例19 触发器的可综合代码

例20 译码器的可综合代码

例21 编码器的可综合代码

例22 多路选择器逻辑的可综合代码

例23 优先级编码器的可综合代码

例24 存储器单元的可综合代码

例25 加法器的可综合代码

例26 推导出与门的VHDL代码

例27 体现变量用法的VHDL代码

例28 体现信号用法的VHDL代码

例29 仿真信号和变量用法的测试平台

例30 声明使用一个BUFFER端口和一个OUT端口的VHDL代码

例31 使用信号实现反馈

例32 4位移位器的可综合VHDL代码

例33 4位移位器设计的测试平台

例34 4位计数器设计的可综合VHDL代码

例35 4位计数器设计的测试平台

例36 1KB容量存储器模块的可综合代码

例37 存储器模块的VHDL测试平台

例38 汽车行驶控制器模块的可综合VHDL代码

例39 汽车行驶控制器模块的测试平台

例40 预译码功能块的可综合VHDL代码

例41 用于核对功能正确性的测试平台的VHDL代码

例42 译码功能块的可综合VHDL代码

例43 译码功能块的测试平台

例44 寄存器堆功能块的可综合VHDL代码

例45 寄存器堆功能块测试平台的可综合VHDL代码

例46 执行功能块的可综合VHDL代码

例47 用于检查执行功能块功能正确性的测试平台

例48 整个微控制器芯片的可综合代码

例49 微控制器的测试平台

例50 32位加法器的可综合VHDL代码

例51 16位减法器

例52 4位乘法器

例53 具有2条流水线的设计对象的VHDL代码

例54 反相器的VHDL代码

例55 32位比较器的可综合VHDL代码

例56 采用BLOCK语句的四个与门的VHDL代码

例57 采用LOOP语法结构的VHDL代码

例58 采用GENERATE语法结构的VHDL代码

例59 使用LOOP和NEXT的VHDL代码

例60 含有组合反馈环路的设计对象的VHDL代码

例61 实例化GTECH库中的XNOR单元

例62 实例化DesignWare元件的VHDL代码

例63 对DesignWare DWO3库中的SRAM模块作实例化的VHDL代码

例64 N位移位器的VHDL代码

例65 实例化MY_DW_SHIFTER的VHDL代码

例66 连线负载模型


书查询(www.shuchaxun.com)本网页唯一编码:
09f45f69ea4d75bc0bbbb29101694b2e#9106d0c6a8e301ed26fe0e8091dcb30a#18811067#11906136.zip