《构造体的三种描述方式.ppt》由会员分享,可在线阅读,更多相关《构造体的三种描述方式.ppt(18页珍藏版)》请在三一办公上搜索。
1、大规模数字集成电路设计第三章构造体的三种描述方式,本章要点,进一步认识构造体在VHDL中的作用。构造体的三种描述方式:行为描述RTL描述结构描述深入理解三种描述各自的特点。,3.1综合(Synthesis),逻辑综合(Logic Synthesis),是EDA设计一个重要内容,它是一个把高层次的与工艺无关的描述转换为一个低层次的与特定工艺相关的逻辑电路的过程。,c=a+b;z=x*y;t=c+x;out=t+u;(a)描述,3.2 VHDL 构造体的描述方式,行为(Behavioral)描述方式(一般不可综合)寄存器传输(RTL)或数据流(Data-Flow)描述方式(可综合)结构化(Stru
2、ctural)描述方式(可综合)多层次的设计 直接用门电路单元搭建,3.2.1 行为(Behavioral)描述方式,基于系统数学模型或系统工作原理 抽象程度高,不一定能进行逻辑综合 在复杂的或新的电子系统设计中,作为验证设计思想的有效手段,3.2.1 行为(Behavioral)描述方式【例3-1】一个五端口电路如图3-2所示。我们希望它具有如表3-1所示的功能,问如何通过行为级描述来得到它的输入输出波形。x sum y cin cout 图3-2 五端口电路,3.2.1 行为(Behavioral)描述方式,输出信号sum和cout的值与输入信号中“1”的数目有关,表3-1逻辑功能表,EN
3、TITY five_ports_circuit IS PORT(x,y,cin:IN BIT;sum,cout:OUT BIT);END five_ports_circuit;ARCHITECTOR behavioral_view OF five_ports_circuit IS BEGIN PROCESS VARIABLE n:INTEGER;CONSTANT sum_vector:BIT_VECTOR(0 TO 3):=“0101”;CONSTANT carry_vector:BIT_VECTOR(0 TO 3):=“0011”;BEGIN WAIT ON x,y,cin;n:=0;IF
4、x=1 THEN n:=n+1;END IF;IF y=1 THEN n:=n+1;END IF;IF cin=1 THEN n:=n+1;END IF;sum=sum_vector(n);cout=carry_vector(n);END PROCESS;END behavioral_view;,变量赋值符号:=,进程语句描述一个进程(process)进程中的所有语句顺序执行(step by step),行为级描述:借助变量n描述了一个逻辑电路的外部行为,3.2.1 行为(Behavioral)描述方式,3.2.1 行为级(Behavioral)描述方式仿真波形如下,3.2.2 寄存器级RTL
5、描述方式,RTL描述方式,也被称为数据流描述方式,是一种明确规定积存器的描述方法,在RTL描述中可采用积存器硬件一一对应的直接描述,也可采用积存器之间功能描述的方法。,3.2.2 寄存器级RTL描述方式,即:sum=xycin cout=(xy)cin+xy,(3-1)式,【例3-2】五端电路的RTL描述,五端电路的真值表,3.2.2 寄存器级RTL描述方式,s=xy sum=scin cout=scin+xy(3-2)式描绘出了全加器中从输入端到输出端的数据流 据此可写出全加器的RTL构造,【例3-2】五端电路的RTL描述,(3-2)式,【例3-2】全加器的RTL级描述(数据流)ARCHIT
6、ECTURE RTL_view OF full_adder IS SIGNAL s:BIT;BEGIN s=x XOR y;sum=s XOR cin;cout=(s AND cin)OR(x AND y);END RTL_view;,信号赋值符号=,3.2.2 寄存器级RTL描述方式,就是在多层次的设计中,高层次的设计模块调用低层次的设计模块,或者直接用门电路设计单元来构建一个复杂的逻辑电路的描述方式,3.2.3 结构级(Structural)描述方式,【例3-3】五端电路的优化逻辑s=xy sum=scin cout=scin+xy观察,我们可以看出该全加器由两个半加器(half_adde
7、r)和一个“或”门(or_gate)组成,u1 半加器 half_adder,u2 半加器 half_adder,u3 或门or_gate,x,y,cin,a,b,sum,cout,c,3.2.3 结构级(Structural)描述方式,ARCHITETURE structure_view OF Full_adder IS COMPONENT half_adder PORT(a,b:IN BIT;s,c:OUT BIT);END COMPONENT;COMPONENT or_gate PORT(in1,in2:IN BIT;out1:OUT BIT);END COMPONENT;SIGNAL a,b,c:BIT;BEGIN u1:half_adder PORT MAP(x,y,a,b);u2:half_adder PORT MAP(a,cin,sum,c);u3:or_gate PORT MAP(b,c,cout);END structure_view;,SIGNAL:内部信号连线,3.2.3 结构级(Structural)描述方式,行为级描述一般难于综合对于RTL描述加以不同综合库、ASIC工艺库或约束条件(延时、面积、功耗等条件),其综合结果也会有所不同构造级描述硬件特征已经确定,综合出的电路与描述中的连接关系完全相同,3.2.4 构造体三种描述的对比,作 业,