【教学课件】第10章数字VLSI系统设计基础.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《【教学课件】第10章数字VLSI系统设计基础.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第10章数字VLSI系统设计基础.ppt(221页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所1/935第第10章章数字数字VLSI系统设计基础系统设计基础东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所2/93510.1HDL语言简介语言简介东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所3/93510.1.1VerilogHDL语言介绍语言介绍东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所4/935可用于算法级、门级、寄存器级、开关级建模;可用于算法级、门级、寄存器级、开关级
2、建模;可用时序建模;可用时序建模;大量的大量的Verilog仿真器;仿真器;与与C语言类似,许多结构借鉴语言类似,许多结构借鉴C语言;语言;具备扩展的建模能力;具备扩展的建模能力;语言标准为语言标准为IEEEStd1364-1995(1995年年)。Verilog的特点的特点东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所5/935模块是基本的电路描述单位,用于描述具体的设计。模块是基本的电路描述单位,用于描述具体的设计。可描述模块的外部端口,以便于模块间的通信和系统设计。可描述模块的外部端口,以便于模块间的通信和系统设计。模块间可相互调用。模块间可相互
3、调用。实例:半加器实例:半加器moduleHalfAdder(A,B,Sum,Carry);inputA,B;outputSum,Carry;assign#2Sum=AB;assign#5Carry=A&B;endmodule模块模块说明语句说明语句执行语句执行语句1.模块模块东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所6/935Verilog模块有四种描述方式:模块有四种描述方式:1)数据流描述方式数据流描述方式;2)行为描述方式行为描述方式;3)结构描述方式结构描述方式;4)混合描述方式。混合描述方式。东南大学东南大学无线电工程系无线电工程系射频
4、与光电集成电路研究所射频与光电集成电路研究所7/9352.数据流描述方式数据流描述方式moduleHalfAdder(A,B,Sum,Carry);inputA,B;outputSum,Carry;assign#2Sum=AB;assign#5Carry=A&B;endmodule基本机制:使用连续赋值语句基本机制:使用连续赋值语句以以assign为前缀的语句是连续赋值语句;为前缀的语句是连续赋值语句;连续赋值语句是并发执行的,执行顺序连续赋值语句是并发执行的,执行顺序与描述顺序无关。与描述顺序无关。例如:例如:东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路
5、研究所8/9352-4解码器电路timescale1ns/1nsmoduleDecoder2x4(A,B,EN,Z);inputA,B,EN;output 0:3 Z;wireAbar,Bbar;assign#1 Abar=A;assign#1 Bbar=B;assign#2 Z0=(Abar&Bbar&EN);assign#2 Z1=(Abar&B&EN);assign#2 Z2=(A&Bbar&EN);assign#2 Z3=(A&B&EN);endmodule东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所9/935timescale1ns/1ns
6、moduleDecoder2x4(A,B,EN,Z);inputA,B,EN;output 0:3 Z;wireAbar,Bbar;assign#1 Abar=A;assign#1 Bbar=B;assign#2 Z0=(Abar&Bbar&EN);assign#2 Z1=(Abar&B&EN);assign#2 Z2=(A&Bbar&EN);assign#2 Z3=(A&B&EN);endmodule东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所10/9353.行为描述方式行为描述方式使用下述过程语句描述:使用下述过程语句描述:1)initial语句
7、:语句:此语句只执行一次。此语句只执行一次。2)always语句:此语句总是循环执行。语句:此语句总是循环执行。initial和和always语句中被赋值的对象只能是寄存器型。语句中被赋值的对象只能是寄存器型。语句语句initial和和always在在0时刻开始并发执行。时刻开始并发执行。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所11/9351位全加器电路位全加器电路modulev3(A,B,Cin,Sum,Cout);inputA;inputB;inputCin;outputSum;outputCout;regSum,Cout;regT1,T2,
8、T3;always(AorBorCin)beginSum=(AB)Cin;T1=A&Cin;T2=B&Cin;T3=A&B;Cout=(T1|T2)|T3;endendmodule东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所12/935initial语句的实例:语句的实例:timescale1ns/1nsmoduleTest(Pop,Pid);outputPop,Pid;regPop,Pid;initialbeginPop=0;Pid=0;Pop=#51;Pid=#31;Pop=#60;Pid=#20;endendmoduleinitial语句中包含
9、一个顺序过程。语句中包含一个顺序过程。PopPid东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所13/9354.结构描述方式结构描述方式结构描述方式结构描述方式使用的结构:使用的结构:1)开关级原语)开关级原语(在晶体管级在晶体管级);2)内置门原语或用户定义的原语)内置门原语或用户定义的原语(在门级在门级);3)模块实例)模块实例(创建层次结构创建层次结构)。结构间通过使用连线来相互连接。结构间通过使用连线来相互连接。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所14/935全加器电路实例全加器电路实例mod
10、uleFA_S(A,B,Cin,Sum,Cout);inputA,B,Cin;outputSum,Cout;wireS1,T1,T2,T3;xorX1(S1,A,B),X2(Sum,S1,Cin);andA1(T3,A,B),A2(T2,B,Cin),A3(T1,A,Cin),orO1(Cout,T1,T2,T3);endmodule内置门的实例语句。内置门的实例语句。门实例由连线类型变量门实例由连线类型变量S1、T1、T2和和T3互连。互连。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所15/9355.混合描述方式混合描述方式1位全加器的实例:位全加
11、器的实例:moduleFA_M(A,B,Cin,Sum,Cout);inputA,B,Cin;outputSum,Cout;regCout,T1,T2,T3;wireS1;xorX1(S1,A,B);/门实例语句。门实例语句。always(AorBorCin)/always语句。语句。beginT1=A&Cin;T2=B&Cin;T3=A&B;Cout=(T1|T2)|T3;endassignSum=S1Cin;/连续赋值语句。连续赋值语句。endmodule结构结构行为行为数据流数据流东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所16/9356.语言
12、要素语言要素标识符、标识符、注释、注释、数值、数值、编译指令、编译指令、系统任务、系统任务、系统函数、系统函数、连线、连线、寄存器。寄存器。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所17/935标识符、注释和语言书写的格式标识符、注释和语言书写的格式标识符标识符是任意一组字母、数字、是任意一组字母、数字、$和下划线的组合和下划线的组合;标识符标识符的第一个字符必须是字母或下划线的第一个字符必须是字母或下划线;标识符标识符区分大小。区分大小。Count、COUNT、_R1_D2、R56_68、FIVE$转义符常用于打印或显示的控制,它以转义符常用于打
13、印或显示的控制,它以(反斜线反斜线)开头。开头。74007400.*.*.$.$*QQ东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所18/935关键词总是小写关键词总是小写:如如always、begin等等。等等。两种两种注释注释形式,与形式,与C+语言相同:语言相同:形式一:形式一:/*注释字符串注释字符串*/,可以扩展至多行。,可以扩展至多行。形式二:形式二:/注释字符串,在本行结束。注释字符串,在本行结束。采用自由格式书写,其语句可以跨行编写,也可在一行内编写。采用自由格式书写,其语句可以跨行编写,也可在一行内编写。moduleFAM(A,B,C
14、in,Sum,Cout);inputA,B,Cin;outputSum,Cout;regCout,T1,T2,T3;wireS1;xorX1(S1,A,B);/门实例语句。门实例语句。always(AorBorCin)/*always语句语句*/beginT1=A&Cin;T2=B&Cin;T3=A&B;Cout=T1|T2|T3;endassignSum=S1Cin;/*连续连续赋值赋值语句语句*/endmodule东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所19/9351.整数型整数型整型数有两种书写方式:整型数有两种书写方式:1)简单的十进制数
15、格式;)简单的十进制数格式;2)基数格式。)基数格式。简单的十进制数格式如:简单的十进制数格式如:32、15。基数格式的形式为:基数格式的形式为:位长位长基基值值其中,位长是可选的。其中,位长是可选的。基有:基有:o(O)(8进制进制);b(B)(2进制进制);d(D)(10进制进制);h(H)(16进制进制)。5O37/5位位8进制数进制数4D2/4位位10进制数进制数4B1x01/4位二进制数位二进制数7Hx/7位位x,即,即xxxxxxx4hZ/4位位z,即,即zzzzo721/9位八进制数位八进制数hAF/8位十六进制数位十六进制数10b10/左边添左边添0,得,得0000000010
16、10bx0 x1/左边添左边添x,得,得xxxxxxx0 x13b10010011/最左边的位被截断,最左边的位被截断,得得3b011x/z:在:在16进制值中代表进制值中代表4位位x/z,在在8进制中代表进制中代表3位位x/z,在在2进制中代表进制中代表1位位x/z。基数格式的数为无符号数。基数格式的数为无符号数。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所20/9352.实数实数实数可以用下列两种形式定义:实数可以用下列两种形式定义:1)十进制计数法;十进制计数法;2.05.67811572.120.12./非法:小数点两侧必须有非法:小数点两侧
17、必须有1位数字位数字2)科学计数法;科学计数法;23_5.1e223510.0;忽略下划线忽略下划线3.6E2360.0(e与与E相同相同)5E40.0005实数通过四舍五入被转换为最相近的整数。实数通过四舍五入被转换为最相近的整数。42.446,42.45转换为整数转换为整数4292.5,92.699转换为整数转换为整数9315.62转换为整数转换为整数1626.22转换为整数转换为整数26东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所21/9353.字符串字符串字符串用双引号给出,例如字符串用双引号给出,例如:INTERNALERROR,字符串是字
18、符串是8位位ASCII值的序列,存储值的序列,存储“INTERNALERROR”需要需要8*14位。位。reg1:112Message;Message=INTERNALERROR;反斜线反斜线()用于对确定的特殊字符转义,例如:用于对确定的特殊字符转义,例如:n换行符、换行符、t制表符、制表符、东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所22/935数据类型数据类型Verilog有两大类数据类型:有两大类数据类型:连线类型连线类型:元件间的物理连线元件间的物理连线,值由驱动元件的值决定,值由驱动元件的值决定,例如门的输出。例如门的输出。如果没有驱动元
19、件连接到连线,连线的缺省值如果没有驱动元件连接到连线,连线的缺省值为为z。寄存器类型寄存器类型:抽象的数据存储单元抽象的数据存储单元,它只能在,它只能在always语句语句和和initial语句中被赋值;语句中被赋值;寄存器中的值在两次赋值之间保持不变。寄存器中的值在两次赋值之间保持不变。寄存器类型变量缺省值为寄存器类型变量缺省值为x。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所23/9351.连线类型连线类型连线数据类型表示结构实体之间的物理连接,连线数据连线数据类型表示结构实体之间的物理连接,连线数据类型有多种:类型有多种:wiretri,可用于
20、描述多个驱动源驱动同一根线的连线类型,可用于描述多个驱动源驱动同一根线的连线类型wor,trior,wand,triand,trireg,tri1,tri0,supply0,supply1。用于连接单元的连线是最常见的连线类型,用于连接单元的连线是最常见的连线类型,wire与与tri的语法和的语法和语义一致;连线类型语义一致;连线类型wire/tri的说明语法为:的说明语法为:wire/trim:l数据数据1,数据数据2,.,数据数据N;连线中的值被解释为无符号数。连线中的值被解释为无符号数。wireR,S;/2个个1位的连线。位的连线。wire2:0A;/A是是3位向量连线。位向量连线。当有
21、多个驱动器时,当有多个驱动器时,wire/tri变量会产生不确定值。变量会产生不确定值。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所24/935多个驱动源驱动一个连线,连线的有效值如下:多个驱动源驱动一个连线,连线的有效值如下:wire3:1Cla,Pla,Sla;assignCla=Pla&Sla;.assignCla=PlaSla;Cla是一个向量,是一个向量,Cla有两个驱动源,每位的计算是有两个驱动源,每位的计算是相关的。相关的。如果第一个右侧表达式的值为如果第一个右侧表达式的值为01x,并且第二个右测表达式的值为并且第二个右测表达式的值为1
22、1z,那么那么Cla的有效值是的有效值是x1x。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所25/9352.向量和标量连线向量和标量连线定义向量定义向量连线连线时可用时可用scalared或或vectored。一个一个vectored连线连线,不允许位选择和部分选择操作,不允许位选择和部分选择操作,只能整体赋值,例如:只能整体赋值,例如:wirevectored3:1G;/不允许位选择不允许位选择G2和和/部分选择部分选择G3:2。wirescalared4:0B;/允许位选择允许位选择B2和和/部分选择部分选择B3:1。如果没有定义关键词,缺省值为
23、标量。如果没有定义关键词,缺省值为标量。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所26/9353.寄存器类型寄存器类型寄存器是数据存储单元的抽象,寄存器是数据存储单元的抽象,寄存器有多种类型:寄存器有多种类型:regintegertimerealrealtime其中,典型的是其中,典型的是reg和和memory。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所27/935(1)reg寄存器类型寄存器类型reg最常见:最常见:regmsb:lsb寄存器名寄存器名1,寄存器名寄存器名2,.寄存器名寄存器名N;ms
24、b和和lsb定义范围,均常数。定义范围,均常数。范围定义的缺省值是范围定义的缺省值是1位寄存器。位寄存器。实例:实例:reg3:0S;/S为为4位寄存器。位寄存器。regC;/1位寄存器。位寄存器。reg1:32K,P,L;寄存器可以取任意长度。寄存器可以取任意长度。寄存器中的值为无符号数寄存器中的值为无符号数,例如:例如:reg1:4C;reg1:4C;C=2;/C的值为的值为1110,1110是是2的补码。的补码。C=5;/C的值为的值为0101。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所28/935存储器是一个寄存器数组,说明语句的形式如下:
25、存储器是一个寄存器数组,说明语句的形式如下:regm:1名名1上限上限1:下限下限1,名,名2上限上限2:下限下限2,.;例如:例如:reg0:3M0:63;/M为为64个个4位寄存器的数组。位寄存器的数组。regB1:5;/B为为5个个1位寄存器的数组。位寄存器的数组。reg1:8R15:0,D;R是存储器,是是存储器,是16个个8位寄存器数组,而位寄存器数组,而D是是8位寄存器。位寄存器。东南大学东南大学无线电工程系无线电工程系射频与光电集成电路研究所射频与光电集成电路研究所29/935存储器赋值不能在一条赋值语句中完成,但是寄存器可以。存储器赋值不能在一条赋值语句中完成,但是寄存器可以。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教学课件 教学 课件 10 数字 VLSI 系统 设计 基础
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内