《微电子学》PPT课件.ppt
《《微电子学》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《微电子学》PPT课件.ppt(98页珍藏版)》请在三一办公上搜索。
1、第五章 微电子系统设计,微电子系统设计就是将算法理论、体系结构、电路物理实现自上而下的集成到一个芯片上的过程。,高级语言的行为级描述,系统仿真,逻辑综合,物理层设计(版图设计),网表提取、仿真,投片试制,流程:,电子系统芯片,微电子系统设计把电子系统集中到一个芯片,包括软件和硬件。,微电子系统中物理层设计,逻辑单元电路单元双极型集成电路单元和MOS数字电路单元,逻辑电路-完成各种逻辑运算和变换的电路组成逻辑电路的基本单元是各种门电路晶体管-晶体管逻辑电路(TTL)集成注入逻辑电路(I2L)发射极耦合逻辑电路(ECL),双极数字电路单元设计,用数字信号完成对数字量进行算术运算和逻辑运算的电路称为
2、数字电路,1、TTL电路:,基本单元:与非门,特点:扇出系数较大,典型电路:74系列集成电路(民品)54系列集成电路(军品)相同的电路结构、逻辑功能,不同的工作环境温度和电源工作允许的范围。,2、ECL电路:,基本单元:或非门、或门,特点:速度快、逻辑功能、强扇出能力大,典型电路:高速和超高速集成电路,缺点:功耗大、抗干扰能力差,3、I2L电路:,基本单元:非门,特点:集成度高、功耗低、成本低,典型电路:VLSI,缺点:速度较低,二、MOS数字电路单元设计,1、NMOS电路:,基本单元:非门,特点:功耗低、速度快,典型电路:LSI和VLSI,2、CMOS电路:,特点:输入电阻高、功耗低、速度快
3、、抗噪 声能力强,第六章 集成电路计算机辅助设计,ICCAD就是将由人为主导,根据集成电路的指标要求进行总体设计,借助计算机帮助人工迅速而准确地完成设计任务。,ICCAD系统概述,ICCAD系统的发展第一代:60年代末:版图编辑和检查第二代:80年代初:原理图输入、逻辑模拟第三代:从RTL级输入,到包括行为仿真、行为综合、逻辑综合等功能流行的CAD系统:Cadence,Mentor Graphics,Viewlogic,Compass,Panda等ICCAD系统的理想作用:实现完全的自动化设计,设计出各种各样的电路,ICCAD系统的实际作用设计信息输入:语言输入编辑工具高层次描述的图形输入工具
4、:VHDL功能图输入、逻辑图/电路图输入编辑、版图输入编辑 设计实现:综合器 设计验证:验证系统(电路)功能、性能要求及设计规则要求 模拟器进行模拟(仿真)分析 设计规则的检查,整个设计过程就是把高层次的抽象描述逐级向下进行综合、验证、实现,直到物理级的低层次描述,即掩膜版图。各设计阶段相互联系,例如,寄存器传输级描述是逻辑综合的输入,逻辑综合的输出又可以是逻辑模拟和自动版图设计的输入,版图设计的结果则是版图验证的输入。ICCAD系统介入了包括系统功能设计、逻辑和电路设计以及版图设计等在内的集成电路设计的各个环节。,系统描述与模拟:VHDL语言,VHDL语言出现背景 一种硬件描述语言(hard
5、ware description language),广义地说,描述电子实体的语言:逻辑图,电路图。大规模电路的出现:逻辑图、布尔方程不太适用,需要在更高层次上描述系统,出现多种HDL语言,为便于信息交换和维护,出现工业标准。,通常指高层次设计阶段描述硬件HDL语言的特点 抽象地进行行为描述 结构化语言:可以描述电子实体的结构 多层次混合描述 既可被模拟,又可被综合能提供VHDL模拟器的公司:Cadence、Mentor Graphics、Viewlogic、Synopsys等大型EDA公司和CLSI、Model-Technology、Vantage等专门公司,VHDL语言,基本概念:描述硬件
6、电路,可以抽象地表示电路的行为和结构(完成什么功能,怎样组成)作用:对IC设计,支持从系统级到门和器件级的电路描述,并具有在不同设计层次上的模拟验证机制可作为综合软件的输入语言,支持电路描述由高层向低层的转换,VHDL语言的建模机制,一个硬件单元在VHDL中看作一个设计实体。实体外观实体说明:实体命名,实体与外部环境的接口描述,未涉及其内部行为及结构。实体功能 在结构体中实现 结构体:实体的输入-输出关系,实体的结构和行为描述。对应一个实体说明可以有多个结构体,不同的实现方案。,ENTITY count IS-设计实体countGENERIC(tpd:Time:=10ns);PORT(cloc
7、k:IN Bit;q1,q0:OUT Bit);END ENTITY count;ARCHITECTURE arch of count IS-count实体的结构体 BEGIN count_up:PROCESS(clock)-进程体count_upVARIABLE count_value:Natural:=0;BEGIN IF clock=1 THEN Count_value:=(count_value+1)MOD 4;q1=bitVal(count_value/2)AFTER tpd;q0=bitVal(count_value MOD 2)AFTER tpd;END IF;END PROCE
8、SS count_up;END ARCHITECTURE arch;,综合,概念:从设计的高层次向低层次转换的过程,是一种自动设计的过程,一种专家系统。分类:系统级综合高级综合RTL级综合:行为综合(软件:Synopsys,Ambit)逻辑综合物理综合(逻辑图或电路图到版图,严格说应该是同级驱动),逻辑模拟,逻辑模拟的基本概念:将逻辑设计输入到计算机,用软件方法形成硬件的模型,给定输入波形,利用模型算出各节点和输出端的波形,判断正确与否主要作用:验证逻辑功能和时序的正确性分类:根据所模拟逻辑单元规模的大小 寄存器传输级模拟:总体操作正确性功能块级模拟:加法器、计数器、存储器等 门级模拟:基本逻
9、辑单元:门、触发器等开关级模拟:晶体管:后仿真,电路模拟,电路设计:根据电路性能确定电路结构和元件参数,没有自动设计软件,设计人员根据电路性能要求,初步确定电路结构和元件参数,利用电路模拟软件进行模拟分析,判断修改。电路模拟:根据电路的拓扑结构和元件参数将电路问题转换成适当的数学方程并求解,根据计算结果检验电路设计的正确性。模拟对象:元件优点:不需实际元件、可作各种模拟甚至破坏性模拟,电路模拟(续),在集成电路设计中起的作用:版图设计前的电路设计,保证电路正确(包括电路结构和元件参数)后仿真:考虑了寄生参数,由电路模拟预测电路性能典型软件:SPICE、HSPICE,EDA工具,上世纪80年代,
10、EDA还只能代替手工,画原理图和流程图,设计生产机器可以读懂的印刷电路板图。到了90年代,出现了Altera公司的Maxplus 等CPLD/FPGA工具软件,人们可以用Maxplus 在PC机上设计由众多标准逻辑芯片(如74系列等)组成的电路原理图,然后再用它直接进行波形图仿真测试,观察验证电路在各种输入情况下的输出信号波形,及内部各点波形,并得到各点的延时信息,和电路“正常”,“警告”,“出错”等信息。,最后,将经过Maxplus 将验证无误的电路写入CPLD/FPGA芯片,放入电路板中进行整机测试,如发现问题,修改原理图,波形仿真后重写CPLD/FPGA,重新进行整机测试,直至完全正确为
11、止。整机中既可以使用CPLD/FPGA也可以制成ASIC芯片(视批量大小而定)。Maxplus 的出现,使电子设计自动化(EDA)技术大大向前推进了一步。Maxplus 不仅支持原理图输入,而且还支持VHDL、Verilog HDL、以及AHDL等文本输入方式,是目前应用比较广泛的可编程逻辑器件开发软件。,到了90年代后期,由于硬件描述语言的完善,尤其是相应的编译,测试,合成,布线等电子设计自动化(EDA)工具软件的发展与完善,硬件描述语言(HDL)终于进入了成熟实用阶段。这无疑是(数字)电路设计史上最具革命性的飞跃。自此,人们实现了用简明易懂的高级编程语言设计复杂硬件电路的梦想。只要具备一定
12、的硬件专门知识,就能随心所欲地设计出功能十分强大的专用智能电路,实现了“以软代硬”。,VHDL编程实例:以真值表为依据,采用数据流描述方式编写的BCD七段显示译码器的VHDL源代码如下所示,其按总线显示方式的仿真波形如图所示。,LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder_se7v2 IS PORT(A:IN STD_LOGIC_VECTOR(3 DOWNTO 0);S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END decoder_se7v2;ARCHITECTURE behave OF decode
13、r_se7v2 IS,BEGIN PROCESS(A)BEGIN CASE A IS WHEN 0000=S S S S S S S S=1110000;,WHEN 1000=S S S S S S S S=0000000;END CASE;END PROCESS;END behave;,用VHDL编辑的七段译码器仿真波形,VHDL基础,一个完整的VHDL程序,或者说设计实体,通常要求最低能为VHDL综合器所支持,并能作为一个独立的设计单元,即元件的形式而存在的VHDL程序。在VHDL程序中,通常包含实体(ENTITY)、结构体(ARCHITECTURE)、配置(CONFIGURATION)、
14、包集合(PACKAGE)和库(LIBRARY)5个部分。其中实体和结构体这两个基本结构是必需的,他们可以构成最简单的VHDL程序。,1、实体 设计实体是VHDL语言设计的基本单元,简单的可以是一个与门,复杂的可以是一个微处理器或一个数字系统,其结构基本是一致的,都是由实体说明和结构体两部分组成。实体说明是对这个设计实体与外部电路进行接口的描述,它规定了设计单元的输入输出接口信号或引脚,是设计实体对外的一个通信界面。结构体用于描述此设计实体的逻辑结构和逻辑功能。,实体语句结构如下:ENTITY 实体名 IS GENERIC(类属表);PORT(端口表);END ENTITY 实体名;,例:ENT
15、ITY or2 IS PORT(a,b:IN STD_LOGIC;C:OUT STD_LOGIC);END ENTITY or2;,注意:实体应以语句“ENTITY 实体名 IS”开始,语句“END ENTITY 实体名;”结束。在层次化系统设计中,实体说明是整个模块或整个系统的输入输出(I/O)接口;在一个器件级的设计中,实体说明是一个芯片的输入输出(I/O)。,端口说明(PORT)端口为设计实体和其外部环境提供动态通信的通道,是对基本设计单元与外部接口的描述,其功能相当电路图符号的外部引脚。端口可以被赋值,也可以当做逻辑变量用在逻辑表达式中。其一般书写格式为:PORT(端口名:端口模式 数
16、据类型;端口名:端口模式 数据类型;);,其中端口名是设计者为实体的每一个对外通道所取的名字,通常为英文字母加数字,名字的定义有一定的惯例,如clk 表示时钟,D开头的端口名表示数据,A开头的端口名表示地址。端口模式是指这些通道上的数据流动的方式,如输入或输出等。端口模式有以下几种类型:(1)输入(IN)允许信号进入实体,主要用于时钟输入、控制输入(如load、reset、enable、clk)和单向的数据输入(如地址数据信号address)等。,(2)输出(OUT)输出模式只允许信号离开实体,常用于计数输出、单向数据输出、被设计实体产生的控制其他实体的信号等。注意:输出模式不能用于被设计实体
17、的内部反馈,因为输出端口在实体内不能看做是可读的。(3)双向模式(INOUT)双向模式允许信号双向传输(既可以进入实体,也可以离开实体),双向模式端口允许引入内部反馈。,(4)缓冲(BUFFER)缓冲模式允许信号输出到实体外部,但同时也可以在实体内部引用该端口的信号。缓冲端口既能用于输出也能用于反馈。缓冲模式用于在实体内部建立一个可读的输出端口,例如计数器输出、计数器的现态用来决定计数器的次态。端口模式可用下图说明,图中方框代表一个设计实体或模块。,在VHDL设计中,通常将输入信号端口指定为输入模式,输出信号端口指定为输出模式,而双向数据通信信号,如计算机PCI总线的地址/数据复用总线,DMA
18、控制器数据总线等纯双向的信号采用双向端口模式。从端口的名称、模式就能一目了然地指导信号的用途、性质、来源和去向。,2 结构体,结构体也叫构造体,结构体描述了基本设计单元(实体)的结构、行为、元件及内部连接关系,也就是说它定义了设计实体的功能,规定了设计实体的数据流程,制定了实体内部元件的连接关系。结构体对其基本设计单元的输入和输出关系可用以下三种方式进行描述,即行为描述(基本设计单元的数学模型描述)、寄存器传输描述(数据流描述)和结构描述(逻辑元件连接描述)。结构体是对实体功能的具体描述,因此它一定要跟在实体的后面。,结构体一般由两大部分组成:I对数据类型、常数、信号、子程序和元件等因素进行说
19、明的部分;II描述实体的逻辑行为、以各种不同的描述风格表达的功能描述语句,包括各种顺序语句和并行语句。,结构体的语句格式为:ARCHITECTURE 结构体名 OF 实体名 IS 定义语句 BEGIN 功能描述语句 END 结构体名;,(1)结构体名 结构体名由设计者自行定义,OF后面的实体名指明了该结构体所对应的是哪个实体。有些设计实体有多个结构体,这些结构体的结构体名不可相同,通常用dataflow(数据流)、behavior(行为)、structural(结构)命名。这3个名称体现了3种不同结构体的描述方式,使得阅读VHDL语言程序时,能直接了解设计者采用的描述方式。,(2)结构体信号定
20、义语句 结构体信号定义语句必须放在关键词ARCHITECTURE和BEGIN之间,用于对结构体内部将要使用的信号、常数、数据类型、元件、函数和过程加以说明。需要注意的是实体说明中定义的信号是外部信号,而结构体定义的信号为该结构体的内部信号,它只能用于这个结构体中。结构体中的信号定义和端口说明一样,应有信号名称和数据类型定义。因为它是内部连接用的信号,因此不需要方向说明。,例:结构体的信号定义实例。ARCHITECTURE rtl OF muj ISSIGNAL s1:BITSIGNAL s2,s3:STD_LOGIC_VECTOR(0 TO 3);BEGIN END rtl;,实体名,结构体名
21、,功能描述语句,结构体信号定义语句,(3)结构体功能描述语句 结构体功能描述语句位于BEGIN和END之间,具体地描述了构造体的行为及其连接关系。结构体的功能描述语句可以含有5种不同类型的并行语句,如图所示。每一语句结构内部可以使用并行语句,也可以是顺序语句。,结构体构造图:,图中5种功能描述语句的基本组成和功能分别是:块语句是由一系列并行语句构成的组合体,它的功能是将结构体中的并行语句组成一个或多个子模块。进程语句定义顺序语句模块,用以将从外部获得的信号值或内部运算数据向其他的信号进行赋值。信号赋值语句将设计实体内的处理结果向定义的信号或界面端口进行赋值。子程序调用语句可以调用进程或参数,并
22、将获得的结果赋值于信号。元件例化语句对其他的设计实体做元件调用说明,并将此元件的端口与其他元件、信号或高层实体的界面端口进行连接。,例:2选1数据选择器ENTITY mux2 ISPORT(d0,d1:IN BIT;sel:IN BIT;s:OUT BIT);END mux2;ARCHITECTURE dataflow OF mux2 IS SIGNAL sig:BIT;BEGIN Sig=(d0 AND sel)OR(NOT sel AND d1);S=sig;END dataflow;,功能描述语句,信号定义语句(内部信号,无方向),3 块、子程序和进程,(1)块语句(BLOCK)在较大规
23、模的电子系统设计中,传统的硬件电路设计通常包括一张系统总电路原理图和若干张子原理图。在VHDL程序设计中,结构体是由多个BLOCK块构成的,如果将结构体比做总电路原理图,那么,每个BLOCK块则相当于一张子原理图。,BLOCK块语句的结构:块标号:BLOCK 接口说明 类属说明 BEGIN 并行块语句 END BLOCK(块标号);,例:B1:BLOCK SIGNAL s1:BIT;BEGIN s1=a AND b;B2:BLOCK SIGNAL s2:BIT;BEGIN s2=c AND d;B3:BLOCK BEGIN Z=s2;END BLOCK B3;END BLOCK B2;y=s1
24、;END BLOCK B1;,(2)进程(PROCESS)PROCESS结构是最能体现VHDL语言特色的语句。与BLOCK语句一样,利用PROCESS语句结构可以描述一个功能独立的电路。与BLOCK语句不同之处是,在系统仿真时,PROCESS结构中的语句是按顺序逐条向下执行的,而不像BLOCK语句那样并发执行。一个结构体中可以有多个并行运行的进程结构,每一个进程内部是由一系列顺序语句来构成的。,PROCESS语句的结构进程标号 PROCESS(敏感信号表)IS进程说明语句BEGIN 顺序描述语句 END PROCESS 进程标号;,注意:在多个进程的结构体描述中,进程标号是区分各个进程的标志。
25、但是进程标号并不是必需的。单进程以PROCESS开始,以END PROCESS结束。,例:两输入或非门LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY nor2_v2 IS PORT(a,b:IN STD_LOGIC;y:OUT STD_LOGIC);END nor2_v2;ARCHITECTURE behave OF nor2_v2 ISBEGIN PROCESS(a,b)VARIABLE comb:STD_LOGIC_VECTOR(1 DOWNTO 0);,-y=NOT(a OR b);,BEGIN comb:=a,-X:不定,(3)子程序(S
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微电子学 PPT 课件
链接地址:https://www.31ppt.com/p-5508500.html