电子设计自动化-综合课件

上传人:我*** 文档编号:143864018 上传时间:2020-09-02 格式:PPT 页数:75 大小:1.36MB
返回 下载 相关 举报
电子设计自动化-综合课件_第1页
第1页 / 共75页
电子设计自动化-综合课件_第2页
第2页 / 共75页
电子设计自动化-综合课件_第3页
第3页 / 共75页
电子设计自动化-综合课件_第4页
第4页 / 共75页
电子设计自动化-综合课件_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《电子设计自动化-综合课件》由会员分享,可在线阅读,更多相关《电子设计自动化-综合课件(75页珍藏版)》请在金锄头文库上搜索。

1、1,Electronics Design Automation第5章,逻 辑 综 合 Design Compiler,2,本章目录,1. 综合的概念 4.综合控制流程 综合的任务 基本的综合流程 综合的层次 定义设计环境 Y 图 设置设计约束 2. 综合工具流程 3. 关键技术 展平 优化 时序逻辑优化 组合逻辑优化 工艺映射 RTL描述的可综合性,3,. Top-down设计流程,4,1. 综合的概念,综合( Synthesis ) 可以定义为是将设计的较高抽象层次描述转换成较低抽象层次描述的过程。 综合的任务: 由描述数字系统行为的HDL,根据系统对硬件的功能及性能要求,在一个包含众多结构

2、、功能性能均已知的逻辑元件的逻辑单元库的支持下,找出一个合适的硬件结构来实现(一般是指由EDA工具自动生成),5,1. 综合的概念,综合的层次 高层次综合(high level synthesis) 从算法级行为描述RTL结构描述 逻辑综合(design synthesis) 从RTL(Data Flow)行为级描述逻辑网表 版图综合(layout synthesis) 一般指预布局(floorplanning),6,Y 图,Behavioral,Structure,arithmetic,RTL,Data flow,Physical,Design Synthesis 逻辑综合,High lev

3、el Synthesis,7,例1. 不同RTL描述得到同一种电路结构 : 数1电路 architecture ALGORITHMIC of ONE_CNT is begin process(A) veriable NUM : INTERGER range 0 to 3; begin NUM :=0; for I in 0 to 2 loop; if A(I)=1 then NUN:=NUM+1; end if; end loop; C1 C0 case NUM is when 0 = C C C C =“11” ; end case; end process; end ALGORITHMIC

4、 ;,算法描述,真值表,- Truth Table: - - -|A2 A1 A0 | C1 C0 | - - |0 0 0 | 0 0 | - |0 0 1 | 0 1 | - |0 1 0 | 0 1 | - |0 1 1 | 1 0 | - |1 0 0 | 0 1 | - |1 0 1 | 1 0 | - |1 1 0 | 1 0 | - |1 1 1 | 1 1 | -,8,数据流模型,结构化设计层次,architecture DATA_FLOW of ONES_CNT is being C1=(A(1) and A(0) ) or (A(2) and A(0) or (A(2) a

5、nd A(1) C0=(A(2) and not A(1) and not A(0) or(not A(2) and not A(1) and not A(0) or (A(2) and A(1) and A(0) or (not A(2) and not A(1) and A(0); end DATA_FLOW;,architecture MACRO of ONE_CNT is being C(1)=MAJ3(A); C(0)=OPAR3(A); end MACRO;,ONES_CNT,MAJ3,OPAR3,AND2,OR3,AND3,INV,OR4,9,architecture MUX o

6、f ONES_CNT is begin process(A) begin case A is when 000 = C C C C null; end case; end process; end MUX; (C)MUX,MUX结构,10,C1=(A(1) and A(0) ) or (A(2) and A(0) or (A(2) and A(1) C0=(A(2) and not A(1) and not A(0) or(not A(2) and A(1) and not A(0) or (A(2) and A(1) and A(0) or (not A(2) and not A(1) an

7、d A(0); C1=(A1A0 ) + (A2A0) + (A2A1) C0=(A2 A1A0)+( A2A1A0)+ (A2A1A 0)+(A2A1A0);,11,G1,G2,G3,G4,X(0),X(1),X(0),X(2),X(1),X(2),A1,A2,A3,C1,C0,12个倒向器、 7个与非门(4个3端口)、2个或非门,12,综合后的逻辑图,VHDL Design Representation and Synthesis,Synopsys 综合工具,LSI 10k库,9个单元, 最长路径4.98ns,5个倒相器、3个4端口与或非门,13,14,例2. 不同RTL描述得到不同电路结

8、构: 4 位加法器,entity adder is port: (a,b:in integer range 0 to 3; y:out integer range 0 to 3); end; 算法级 1 Architecture behv1 of adder is begin process(a,b) begin y= a+b; end process; end behv1;,15,算法级 2,Architecture behv2 of adder is Signal S: stand_logic_vector(N downto 0); begin S= (0 end behv2; N是一个类

9、属参数,具有通用性,(p259)边,连接符,16,Motorola HDC库Synopsys综合工具。边P259VHDL设计电子线路,17,一位加法器,18,RTL (1)行波进位加法器(Ripple carry adder),architecture struc of adder is signal C: std_logic_vector(4 downto 0); begin process(a,b,cin,c) begin C(0)= Cin; for i in 0 to 3 loop Sum(i)= a(i)xor b(i) xor C(i); C(i+1)= (a(i) and b(i

10、) ) or (C(i) and (a(i) or b(i); end loop; Cout=C(4); end process; end struc ;,19,面积最小、速度最慢。边293,20,21,RTL( 2)先行进位加法器(carry look forward adder),P(i)= (A(i) B(i) ) 进位传输信号 G(i)= A(i) B(i) 进位产生信号 C1 =G1+P1 C0 C2 = G2+P2 G1+P2 P1 C0 =G2 +P2 (C1) C3 =G3 + P3 G2 + P3 P2 G1 +P3 P2 P1 ( C0) = G3 +P3 (C2) C4

11、=G4 + P4 (C3) S1=P0 C0 S2=P1 C1 S3=P2 C2 S4 =P3 C3 王永军P131,数字逻辑与数字系统,+,+,+,+,+,+,Ci = G(i) + P(i) C i-1 Si = C i-1+ P(i),22,P(i),C i-1,S(i),23,24,边292,25,速度,面积,(4),(2),(1),同一个算法级描述,可以有不同RTL描述, 综合后得到不同要求的硬件。,行波,超前,(3),先行,26,2. 综合工具流程,根据VHDL源码产生一个与实现技术无关的通用原理图(generic schematic) 根据设计要求执行优化(optimizatio

12、n)算法,化简状态和布尔方程(逻辑综合) 按半导体工艺要求,采用相应的工艺库,把优化的布尔描述映射(mapping)到实际的逻辑电路网表,27,28,综合工具,29,3. 关键技术,展平 组合逻辑元件: 如果进程对读取的所有信号都敏感(即进程的信号敏感表中包含读取的所有信号),则此进程称组合进程,Ai Bi Ci,Ci= Ai and Bi,30,展平(续),RS 触发器 Process Begin if(=1 and S=0) then Qn= 0; Qnb=1; elsif ( R=0 and S=1) then Qn=1; Qnb=0; elsif (R=0 and S=0 ) then

13、 Qn = Qn-1; end if; 不完整赋值语句 End process,31,R=1,S=1 时 ;Qn、Qn 同时为0 ,这与RS触发 器定义同时有Qn和 Qn 态相矛盾,而且当R=0,S=0 再出现时不会保持,而会发生振荡,因而不允许 R=1,S=1 情况 出现。 要在电路前端采取措施避免 这种情况产生。,s,Q,32,锁存器: 从不完整的非同步赋值语句中能够综合出锁存器。电平敏感。,y,Latch,clk,a,PROCESS(clk,a),PROCESS(clk,a),33,34,clk,a,b,35, 展平(续),时序逻辑 根据 VHDL原码 产生一个与实现技术无关的通用原理图

14、(generic schematic) 可以综合的只是VHDL的子集(尚未标准化) 其中,基本的时序元件包括: RS 触发器 锁存器-Latch 触发器-Trigger,36,触发器: 边缘敏感触发器为同步操作时序逻辑元件,其输出由输入时钟所规定时刻的数据输入确定,可想象为对数据的采样控制。 a. 每一个同步赋值的信号对应一个触发器 b. 每个进程只允许有一个时钟 c. 最基本的触发器为D触发器,其形式为带时钟 控制的简单赋值语句,且数据输出由时钟触发,37,D 触发器,architecture RTL of D Register is begin process (clk) begin if

15、 clkevent and clk=“1” then Q = D end if end process end RTL;,clk,D,38,优化,时序优化状态优化 状态减少:即寄存器个数减少,合并等价状态、删除冗余状态; 状态分配:将最小状态表中的每个状态分配一个状态变量的编码,目标是造价最低(数字逻辑理论) 组合逻辑优化面积小、速度快 面积小用与门和或门输入端数之和表示面积大小。 速度快二级逻辑与或非门速度最快,级数多则慢 往往矛盾,根据需要折衷,39,时序优化,时序电路: 输出信号out不仅依赖于输入信号in的当前值;还依赖于输入信号in的历史值。 时序电路的记忆元件若是在统一的时钟激励下发生状态转换,则称为同步时序电路。,组合逻辑电路,记忆元件,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号