第四章 集成电路设计综合
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
16
一、设计综合
3.3 版图综合的目标
根据逻辑综合完成后的结果来进行以性能优化为目标的版图设计。
3.4 逻辑综合网表连接到版图设计的流程:
a. 设计前期在顶层的整体规划,通过预布局得出一种满足定 时、面积、功耗和可布通性约束的一种硅编辑预测; b. 转入版图布线; c. 连接版图自动交互设计环境。
一、设计综合
2.1 高层次综合的意义(续3)
a. 可以对一个系统的行为描述,就不同的性能指标和不同的 面积/速度等指标进行优化,形成多种可选实现方案。(续3)
> 例:单独控制时序,不顾及面积控制
A B C D OUT
12
一、设计综合
2.1 高层次综合的意义(续3)
b. 对于超大规模芯片设计和上市时间的要求,设计者较难一开 始就设计出低层次的实现描述。通过高层次综合可以将设计 者给出的算法级行为描述快速转化为RTL级的结构描述。 c. 在对系统实现方案的规划过程中,通过高层次综合可以在设 计初期就对各种方案的资源占用和速度方面的特性做出评估, 以减少和避免在设计后期的设计(逻辑层、电路层、版图层) 回溯。
—— 根据RTL级描述和工艺库提供的器件单元工艺信息,产生 一个满足时序和约束的正确实现方案。
* 目前业界主流逻辑综合EDA工具是: - Synopsys公司的Design Compiler - Cadence公司的Encounter RTL Compiler
25
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续1)
33
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续9)
b. 约束(续7)
> 关于延时的约束 (续3) - 被综合电路输出延时(Output_delay)约束。(续1) Example:
注:通过定义被综合电路 输出路径外部逻辑的 延时大小,来约束被 综合电路内部输出路 径的延时量,进而综 合出相应的电路。
19
本章课程安排
一、设计综合 二、逻辑综合 三、功率优化
20
二、逻辑综合 本节内容安排
1. 逻辑综合定义 2. 逻辑综合过程 3. VHDL / Veralog HDL综合
21
二、逻辑综合
在数字系统集成电路设计中,需要完成两方面的任务: * 根据电子系统硬件的功能和行为描述出相应的电路结构; * 对得到的电路进行仿真,以验证所设计电路是否确实满足指标要求。
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续4)
b. 约束(续2)
> 关于时钟的约束 (续1) - 为了更好地反映实际时钟的工作状态,还可以对时钟定义 一些附加约束。 Example:
29
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续5)
b. 约束(续3)
> 关于面积的约束 - 用面积约束条件规定设计中所有逻辑器件应控制的面积大小。 Example: 注:* 此面积不包含逻辑器件连线和器件间隔的面积等。 * 面积约束条件只是一个目标值,实际综合结果可偏离此值。 * 面积约束条件一般不要取零值,以免增加综合的时间。 - 多数综合工具允许以工艺库中 基本元件单元作为面积单位。
数字系统集成电路设计流程
22
二、逻辑综合
1. 逻辑综合定义
从 RTL 描述或从布尔方程、真值表、状态 图等描述到逻辑门级网表描述的综合过程。
Synthesis = Translation + Optimization + Mapping
23
二、逻辑综合
2. 逻辑综合过程 2.1 逻辑综合的一般步骤
6
一、设计综合
1.2 集成电路设计综合的层次化(续1)
c. 不同设计层次的设计综合划分
7
一、设计综合
1.2 集成电路设计综合的层次化(续2)
c. 不同设计层次的设计综合划分(续1)
> 高层次综合将系统算法层的行为描述转化为RTL级的结构描述。 包含系统综合和算法综合,其中: - 系统综合将用户设计要求转化为设计技术规范,划分出软件和 硬件设计的结构,设计资源和指标的折衷与跟踪。 - 算法综合为硬件资源选择一种合适的RTL级的结构。 > 逻辑综合将RTL级的描述转化为逻辑门级的结构描述。 - 目前在这个层次上已完成大量的逻辑综合算法研究,比较成熟。 > 版图综合将系统电路层的结构描述转化为版图层的物理描述。 - 主要完成包括布局/布线的面积、速度和功率三维空间的综合。
b. 其他新特点
> Top-down/Bottom-up结合的设计方法; > 综合优先于功能验证,精确的时序分析成为设计成功与否的关键; > 注重逻辑层次与版图层次的一致性。
c. 目前设计的障碍
> 性能得不到满足; > “关键路径”的延时性能不满足,进而导致整个设计的失败。
18
思考题
1. 简述集成电路设计综合的层次化划分方式? 2. 何谓高层次综合?简述高层次综合的意义。 3. 简述高层次综合的主要步骤。 4. 何谓版图综合?版图综合的目标是什么? 5. 版图综合对设计方法学的要求有哪些?
Example:
注:通过定义被综合电路输 入路径外部逻辑的延时 大小,来约束被综合电 路内部输入路径的延时 量,进而综合出相应的 电路。
32
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续8)
b. 约束(续6)
> 关于延时的约束 (续2) - 被综合电路输出延时(Output_delay)约束。
14
一、设计综合
2.3 高层次综合存在的问题
a. 设计空间的有效搜索方法与策略确定。 b. 异步数字系统的设计。
> 如接口电路设计。
c. 数字系统的划分。
> 划分为相关过程。
d. 人的因素在高层次综合中的作用。
> 如专家干预等。
e. 高层次综合的可测性设计等。
15
一、设计综合
3. 版图综合简述(自学) 3.1 深亚微米工艺版图设计出现的新课题
带约束的寄存器和云图
27
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续3)
b. 约束(续1)
> 关于时钟的约束 - 必须定义好时钟输入端和时钟周期
10
Example: create_clock -period 10 [ get_ports Clk ] 一般希望一个芯片中的时钟均为同步时钟。
28
a. RTL级描述—— 在规定设计中,以各种寄存器形式为特征, 然后在寄存器之间插入组合逻辑。
> 注:在 RTL 级选用什么样的描述去完成逻辑综合,与选用的 EDA 逻辑综合工具有密切的关系。 > 寄存器和云图描述方式用于逻辑综合的分析与描述
寄存器和云图
26
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续2)
34
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续10)
b. 约束(续8)
> 关于延时的约束 (续4) - 被综合电路输入 / 输出延时约束一般要求内部逻辑路径占 一个时钟周期的40%。 Example:
35
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续11)
b. 约束(续9)
> 关于延时的约束 (续5) - 在综合过程中,可以通过时序报告来判断延时约束的综合结果。 Example:
B E
SUM3 <= A + B + E;
C D E
A
B
+ +
SUM1
+ +
SUM2
+ +
SUM3
+ +
SUM1
+
SUM2
+
SUM3
9
一、设计综合
2.1 高层次综合的意义(续1)
a. 可以对一个系统的行为描述,就不同的性能指标和不同的 面积/速度等指标进行优化,形成多种可选实现方案。(续1)
> 例:时序控制(改变器件的连接顺序) Z <= A + B + C + D ( Where Z is time constrained )
30
Example:
二、逻辑Leabharlann Baidu合
2.2 输入逻辑综合工具的信息有三种(续6)
b. 约束(续4)
> 关于延时的约束 (主要是对被综合电路输入/输出延时的约束) - 被综合电路输入延时(Input_delay)约束。
31
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续7)
b. 约束(续5)
> 关于延时的约束 (续1) - 被综合电路输入延时(Input_delay)约束。(续1)
Z
所有输入信号同时到达
A输入端信号延时到达
10
一、设计综合
2.1 高层次综合的意义(续2)
a. 可以对一个系统的行为描述,就不同的性能指标和不同的 面积/速度等指标进行优化,形成多种可选实现方案。(续2)
> 例:同时控制面积与时序
a b c
f0
a b c d t0
f0
f1
d e
f1 f2
e
f2
11
第四章
集成电路设计综合
本章课程安排
一、设计综合 二、逻辑综合 三、功率优化
2
本章课程安排
一、设计综合 二、逻辑综合 三、功率优化
3
一、设计综合 本节内容安排
1. 集成电路设计综合概述 2. 高层次综合简述 3. 版图综合简述
4
一、设计综合
集成电路设计EDA工具的两次飞跃 第一次——自动布线器(AutoRouter)出现; 第二次——设计综合工具(AutoSynthesis)出现。
a. 把RTL描述转为未优化常用门 (如与门、或门、触发器和锁 存器)的布尔描述; b. 执行布尔算法优化; c. 按所采用工艺库把优化的布尔 等式描述映射到实际逻辑门, 实际是生成网表。
门级网表包含了芯片设计所要求的面积和速度等目标信息。
24
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种
* 逻辑综合目标:
> 把设计综合最佳地连接到版图综合; > 由于实际版图及参数的返标将加快设 计过程的收敛。
17
一、设计综合
3.5 版图综合对设计方法学的要求
a. SoC设计的出现,对版图综合的能力有了更高的要求。
> IP硬核使版图综合将面对一种大规模器件; > 多时钟SoC 将使版图综合时的时序处理超出想像; > 版图综合的布局设计将以IP核为单元,进入层次化设计阶段。
b. 约束(constraints)—— 与电路系统的设计要求有关,用于 (逻辑综合的核心) 控制优化输出和映射工艺。
> 环境约束针对芯片工作环境,如:电压、温度、负载和驱动等。 > 时序约束针对芯片工作时钟,如:时钟、接口时序/延时等。 > 设计规则约束针对工艺规则,如:面积、最大扇入扇出和最大电容等。
36
二、逻辑综合
2.2 输入逻辑综合工具的信息有三种(续12)
b. 约束(续10)
> 关于延时的约束 (续6) - 在综合过程中,对于面积约束和延时约束是一对矛盾,通常 综合工具认为延时约束比面积约束拥有更高的优先级。 * 为满足延时时间最小的设计目标 ——在综合优化电路中大量增加并行电路。 * 为满足面积占用最小(延时时间不为主)的设计目标 ——在综合优化电路中大量采用串行的复用电路。
8
一、设计综合
2. 高层次综合简述(自学) 2.1 高层次综合的意义
a. 可以对一个系统的行为描述,就不同的性能指标和不同的 面积/速度等指标进行优化,形成多种可选实现方案。
> 例:面积控制(资源共享,节省面积) SUM1 <= A + B + C;
A B C A B D A
SUM2 <= A + B + D;
5
一、设计综合
1.2 集成电路设计综合的层次化
a. 集成电路一般的设计周期
> 从最高层次的设计描述逐级转化到最终物理实现且可制造的 某种描述的过程。 > 一般设计层次需经历: 系统级、芯片级、RTL级、门级、电路级和版图级。
b. 集成电路的设计综合
> 电路与系统的硬件设计从较高层次的一种设计描述形式自动转换到 同一层次(或较低层次)另一种设计描述形式的过程。 同一层次上的综合可将其行为描述转换为结构描述。
1. 集成电路设计综合概述 1.1 设计综合技术的发展
a. 20世纪60年代,IBM公司T.J.Watson研究中心开发ALERT系 统,将RTL算法描述转化成逻辑级结构实现。 b. 20世纪70年代,主要致力于较低层次的逻辑综合与版图综合。 c. 20世纪80年代中期,由于ASIC设计与应用的加大,推动了从 算法级设计描述向RTL级设计描述转换的高层次综合技术。
13
一、设计综合
2.2 高层次综合的主要内容
a. 翻译与优化
> 将算法描述翻译成中间格式, 并编译优化和操作优化。
b. 调度(Scheduling)
> 从时间上安排操作的执行顺序。
c. 分配
> 从空间上完成操作和变量(或 值)对应功能单元和寄存器的 资源分享。
d. 控制器综合
主要步骤的流程示意图 > 对按调度要求驱动数据通道的 控制器进行。
a. 互连线延时已经在电路性能(定时)设计中占主导地位; b. 设计的逻辑层次与版图的物理层次的一致性问题十分重要; c. 需要提供实际版图拓扑的用户定义线负载模型; d. 满足高速器件中关键路径的时序性能与版图的可布通性之 间的收敛性。
3.2 深亚微米工艺版图设计面临的新挑战
时序速度 功率优化 版图面积 可布通性