澳门百乐门娱乐场_新浪财经

集成电路设计硬件实现_集成电路设计流程

时间:2020-09-01 17:09

  grated circuit design, IC design),亦可称之为超大规模集成设计(VLSI design),是指以集成电路、超大规模集成电路为目标的设计流程。集成电路设计涉及对电子器件(例如等)、器件间互连线模型的建立。所有的器件和互连线都需安置在一块半导体衬底材料之上,这些组件通过半导体器件制造工艺(例如光刻等)安置在单一的硅衬底上,从而形成电路。

  对于不同的设计要求,工程师可以选择使用半定制设计途径,例如采用可编程逻辑器件(现场可编程逻辑门阵列等)或基于标准单元库的专用集成电路来实现硬件电路;也可以使用全定制设计,控制晶体管版图到系统结构的全部细节。

  这种设计方式要求设计人员利用版图编辑器来完成版图设计、参数提取、单元表征,然后利用这些自己设计的单元来完成电路的构建。通常,全定制设计是为了最大化优化电路性能。如果标准单元库中缺少某种所需的单元,也需要采取全定制设计的方法完成所需的单元设计。不过,这种设计方式通常需要较长的时间。

  与全定制设计相对的设计方式为半定制设计。简而言之,半定制集成电路设计是基于预先设计好的某些逻辑单元。例如,设计人员可以在标准组件库(通常可以从第三方购买)的基础上设计专用集成电路,从中选取所需的逻辑单元(例如各种基本逻辑门、触发器等)来搭建所需的电路。他们也可以使用可编程逻辑器件来完成设计,这类器件的几乎所有物理结构都已经固定在芯片之中,仅剩下某些连线可以由用户编程决定其连接方式。与这些预先设计好的逻辑单元有关的性能参数通常也由其供应商提供,以方便设计人员进行时序、功耗分析。在半定制的现场可编程逻辑门阵列(FPGA)上实现设计的优点是开发周期短、成本低。

  可编程逻辑器件通常由半导体厂家提供商品芯片,这些芯片可以通过JTAG等方式和计算机连接,因此设计人员可以用电子设计自动化工具来完成设计,然后将利用设计代码来对逻辑芯片编程。可编程逻辑阵列芯片在出厂前就提前定义了逻辑门构成的阵列,而逻辑门之间的连接线路则可以通过编程来控制连接与断开。随着技术的发展,对连接线的编程可以通过EPROM(利用较高压电编程、紫外线照射擦除)、EEPROM(利用电信号来多次编程和擦除)、SRAM、闪存等方式实现。现场可编程逻辑门阵列是一种特殊的可编程逻辑器件,它的物理基础是可配置逻辑单元,由查找表、可编程多路选择器、寄存器等结构组成。查找表可以用来实现逻辑函数,如三个输入端的查找表可以实现所有三变量的逻辑函数。

  针对特殊应用设计的专用集成电路(ASIC)的优点是面积、功耗、时序可以得到最大程度地优化。专用集成电路只能在整个集成电路设计完成之后才能开始制造,而且需要专业的半导体工厂的参与。专用集成电路可以是基于标准单元库,也可以是全定制设计。在后一种途径中,设计人员对于晶圆上组件的位置和连接有更多的控制权,而不像可编程逻辑器件途径,只能选择使用其中部分硬件资源,从而造成部分资源被浪费。专用集成电路的面积、功耗、时序特性通常可以得到更好的优化。然而,专用集成电路的设计会更加复杂,并且需要专门的工艺制造部门(或者外包给晶圆代工厂)才能将GDSII文件制造成电路。一旦专用集成电路芯片制造完成,就不能像可编程逻辑器件那样对电路的逻辑功能进行重新配置。对于单个产品,在专用集成电路上实现集成电路的经济、时间成本都比可编程逻辑器件高,因此在早期的设计与调试过程中,常用可编程逻辑器件,尤其是现场可编程逻辑门阵列;如果所设计的集成电路将要在后期大量投产,那么批量生产专用集成电路将会更经济。

  集成电路设计可以大致分为数字集成电路设计和模拟集成电路设计两大类。不过,实际的集成电路还有可能是混合信号集成电路,因此不少电路的设计同时用到这两种流程。

  集成电路设计的另一个大分支是模拟集成电路设计,这一分支通常关注电源集成电路、射频集成电路等。由于现实世界的信号是模拟的,所以,在电子产品中,模-数、数-模相互转换的集成电路也有着广泛的应用。模拟集成电路包括运算放大器、线性整流器、锁相环、振荡电路、有源滤波器等。相较数字集成电路设计,模拟集成电路设计与半导体器件的物理性质有着更大的关联,例如其增益、电路匹配、功率耗散以及阻抗等等。模拟信号的放大和滤波要求电路对信号具备一定的保真度,因此模拟集成电路比数字集成电路使用了更多的大面积器件,集成度亦相对较低。

  在微处理器和计算机辅助设计方法出现前,模拟集成电路完全采用人工设计的方法。由于人处理复杂问题的能力有限,因此当时的模拟集成电路通常是较为基本的电路,运算放大器集成电路就是一个典型的例子。在当时的情况下,这样的集成电路可能会涉及十几个晶体管以及它们之间的互连线。为了使模拟集成电路的设计能达到工业生产的级别,工程师需要采取多次迭代的方法以测试、排除故障。重复利用已经设计、验证的设计,可以进一步构成更加复杂的集成电路。1970年代之后,计算机的价格逐渐下降,越来越多的工程师可以利用这种现代的工具来辅助设计,例如,他们使用编好的计算机程序进行仿真,便可获得比之前人工计算、设计更高的精确度。SPICE是第一款针对模拟集成电路仿真的软件(事实上,数字集成电路中标准单元本身的设计,也需要用到SPICE来进行参数测试),其字面意思是“以集成电路为重点的仿真程序(英语:Simulation Program with Integrated Circuit Emphasis)” 基于计算机辅助设计的电路仿真工具能够适应更加复杂的现代集成电路,特别是专用集成电路。使用计算机进行仿真,还可以使项目设计中的一些错误在硬件制造之前就被发现,从而减少因为反复测试、排除故障造成的大量成本。此外,计算机往往能够完成一些极端复杂、繁琐,人类无法胜任的任务,使得诸如蒙地卡罗方法等成为可能。实际硬件电路会遇到的与理想情况不一致的偏差,例如温度偏差、器件中半导体掺杂浓度偏差,计算机仿真工具同样可以进行模拟和处理。总之,计算机化的电路设计、仿真能够使电路设计性能更佳,而且其可制造性可以得到更大的保障。尽管如此,相对数字集成电路,模拟集成电路的设计对工程师的经验、权衡矛盾等方面的能力要求更严格。

  粗略地说,数字集成电路可以分为以下基本步骤:系统定义、寄存器传输级设计、物理设计。而根据逻辑的抽象级别,设计又分为系统行为级、寄存器传输级、逻辑门级。设计人员需要合理地书写功能代码、设置综合工具、验证逻辑时序性能、规划物理设计策略等等。在设计过程中的特定时间点,还需要多次进行逻辑功能、时序约束、设计规则方面的检查、调试,以确保设计的最终成果合乎最初的设计收敛目标。

  系统定义是进行集成电路设计的最初规划,在此阶段设计人员需要考虑系统的宏观功能。设计人员可能会使用一些高抽象级建模语言和工具来完成硬件的描述,例如C语言、C++、SystemC、SystemVerilog等事务级建模语言,以及Simulink和MATLAB等工具对信号进行建模。尽管主流是以寄存器传输级设计为中心,但已有一些直接从系统级描述向低抽象级描述(如逻辑门级结构描述)转化的高级综合(或称行为级综合)、高级验证工具正处于发展阶段。系统定义阶段,设计人员还对芯片预期的工艺、功耗、时钟频率频率、工作温度等性能指标进行规划 。

  集成电路设计常常在寄存器传输级上进行,利用硬件描述语言来描述数字集成电路的信号储存以及信号在寄存器、存储器、组合逻辑装置和总线等逻辑单元之间传输的情况。在设计寄存器传输级代码时,设计人员会将系统定义转换为寄存器传输级的描述。设计人员在这一抽象层次最常使用的两种硬件描述语言是Verilog、VHDL,二者分别于1995年和1987年由电气电子工程师学会(IEEE)标准化。正由于有着硬件描述语言,设计人员可以把更多的精力放在功能的实现上,这比以往直接设计逻辑门级连线的方法学(使用硬件描述语言仍然可以直接设计门级网表,但是少有人如此工作)具有更高的效率。

  设计人员完成寄存器传输级设计之后,会利用测试平台、断言等方式来进行功能验证,检验项目设计是否与之前的功能定义相符,如果有误,则需要检测之前设计文件中存在的漏洞。现代超大规模集成电路的整个设计过程中,验证所需的时间和精力越来越多,甚至都超过了寄存器传输级设计本身,人们设置些专门针对验证开发了新的工具和语言。

  例如,要实现简单的加法器或者更加复杂的算术逻辑单元,或利用触发器实现有限状态机,设计人员可能会编写不同规模的硬件描述语言代码。功能验证是项复杂的任务,验证人员需要为待测设计创建一个虚拟的外部环境,为待测设计提供输入信号(这种人为添加的信号常用“激励”这个术语来表示),然后观察待测设计输出端口的功能是否合乎设计规范。

  当所设计的电路并非简单的几个输入端口、输出端口时,由于验证需要尽可能地考虑到所有的输入情况,因此对于激励信号的定义会变得更加复杂。有时工程师会使用某些脚本语言(如Perl、Tcl)来编写验证程序,借助计算机程序的高速处理来实现更大的测试覆盖率。现代的硬件验证语言可以提供一些专门针对验证的特性,例如带有约束的随机化变量、覆盖等等。作为硬件设计、验证统一语言,SystemVerilog是以Verilog为基础发展而来的,因此它同时具备了设计的特性和测试平台的特性,并引入了面向对象程序设计的思想,因此测试平台的编写更加接近软件测试。诸如通用验证方法学的标准化验证平台开发框架也得到了主流电子设计自动化软件厂商的支持。针对高级综合,关于高级验证的电子设计自动化工具也处于研究中。

  工程师设计的硬件描述语言代码一般是寄存器传输级的,在进行物理设计之前,需要使用逻辑综合工具将寄存器传输级代码转换到针对特定工艺的逻辑门级网表,并完成逻辑化简。

  和人工进行逻辑优化需要借助卡诺图等类似,电子设计自动化工具来完成逻辑综合也需要特定的算法(如奎因-麦克拉斯基算法等)来化简设计人员定义的逻辑函数。输入到自动综合工具中的文件包括寄存器传输级硬件描述语言代码、工艺库(可以由第三方晶圆代工服务机构提供)、设计约束文件三大类,这些文件在不同的电子设计自动化工具包系统中的格式可能不尽相同。逻辑综合工具会产生一个优化后的门级网表,但是这个网表仍然是基于硬件描述语言的,这个网表在半导体芯片中的走线将在物理设计中来完成。

  选择不同器件(如专用集成电路或者现场可编程门阵列等)对应的工艺库来进行逻辑综合,或者在综合时设置了不同的约束策略,将产生不同的综合结果。寄存器传输级代码对于设计项目的逻计划分、语言结构风格等因素会影响综合后网表的效率。大多数成熟的综合工具大多数是基于寄存器传输级描述的,而基于系统级描述的高级综合工具还处在发展阶段。

  为了比较门级网表和寄存器传输级的等效性,可以通过生成诸如不二可满足性、二元决策图等途径来完成形式等效性检查(形式验证)。实际上,等效性检查还可以检查两个寄存器传输级设计之间,或者两个门级网表之间的逻辑等效性。

  现代集成电路的时钟频率已经到达了兆赫兹级别,而大量模块内、模块之间的时序关系极其复杂,因此,除了需要验证电路的逻辑功能,还需要进行时序分析,即对信号在传输路径上的延迟进行检查,判断其是否匹配时序收敛要求。时序分析所需的逻辑门标准延迟格式信息可以由标准单元库(或从用户自己设计的单元从提取的时序信息)提供。随着电路特征尺寸不断减小,互连线延迟在实际的总延时中所占的比例愈加显著,因此在物理设计完成之后,把互连线的延迟纳入考虑,才能够精准地进行时序分析。

  逻辑综合完成之后,通过引入器件制造公司提供的工艺信息,前面完成的设计将进入布图规划、布局、布线阶段,工程人员需要根据延迟、功耗、面积等方面的约束信息,合理设置物理设计工具的参数,不断调试,以获取最佳的配置,从而决定组件在晶圆上的物理位置。如果是全定制设计,工程师还需要精心绘制单元的集成电路版图,调整晶体管尺寸,从而降低功耗、延时。

  随着现代集成电路的特征尺寸不断下降,超大规模集成电路已经进入深亚微米级阶段,互连线延迟对电路性能的影响已经达到甚至超过逻辑门延迟的影响。这时,需要考虑的因素包括线网的电容效应和线网电感效应,芯片内部电源线上大电流在线网电阻上造成的电压降也会影响集成电路的稳定性。为了解决这些问题,同时缓解时钟偏移、时钟树寄生参数的负面影响,合理的布局布线和逻辑设计、功能验证等过程同等重要。随着移动设备的发展,低功耗设计在集成电路设计中的地位愈加显著。在物理设计阶段,设计可以转化成几何图形的表示方法,工业界有若干标准化的文件格式(如GDSII)予以规范。

  值得注意的是,电路实现的功能在之前的寄存器传输级设计中就已经确定。在物理设计阶段,工程师不仅不能够让之前设计好的逻辑、时序功能在该阶段的设计中被损坏,还要进一步优化芯片按照正确运行时的延迟时间、功耗、面积等方面的性能。在物理设计产生了初步版图文件之后,工程师需要再次对集成电路进行功能、时序、设计规则、信号完整性等方面的验证,以确保物理设计产生正确的硬件版图文件。

  导读在与E课网学员们的学习交流过程中,E课网的讲师们发现很多人对数字电路设计的基本理论概念缺乏了解,而且对实际工程项目的

  集成电路设计涉及对电子器件(例如晶体管du、电阻器、电容器等)、器件间互连线模型的建立。所有的器件和....

  中国大学哪些本科的集成电路设计与集成系统专业跻身2018世界一流、世界高水平、中国顶尖和中国一流专业....

  为减小来自噪声模块及周边模拟部分的干扰,各电路模块在板上的布局是重要的。应总是将敏感的模块( RF部....

  LED电源的工程师经常提及“恒流”驱动,其实,在很多电子设备中,有许多用电设备要求供给的电流(而不是....

  众所周知,在集成电路设计中其中的一种重要的运行模式Fabless,它是Fabrication(制造)....

  尖峰电流的形成: 输出电压如右图(a)所示,理论上电源电流的波形如右图(b),而实际的电源电流保险如右图(c)。由...

  虽然在FPGA中,利用综合工具来可以将VHDL或者Verilog代码转化成电路。但是作为FPGA工程....

  我想设计一个数字电路,但不清楚应该怎么做仿真,题目如下: 有A、B、C、D四台电动机,A必须开启,其...

  作为一名电子技术从业人员,你学过单片机吗?你会运用单片机吗?我想你一定学过,但不一定会运用。因为学习....

  磁珠的等效电路相当于带阻限波器,只对某个频点的噪声有显著抑制作用,使用时需要预先估计噪点频率,以便选....

  网上有一个数字电路和模拟电路联合仿真的例子 但是按照网上的步骤做完之后波形图上没有任何显示 而且运行一遍之后自动...

  现如今,百乐门娱乐场。汽车通常都会搭载高级驾驶辅助系统(ADAS)(包括车载摄像头、超声波传感器、激光雷达和雷达)....

  基础理论知识包括模拟电路、数字电路和C语言知识。模拟电路和数字电路属于抽象学科,要把它学好还得费点精....

  `timescale 1ps / 1ps// Company: // // Design Name: // Project Name: // Tool Versions: // // // Revisio...

  最近在看逻辑电路,刚刚看到编码器,发现二进制编码器是高电平输入有效,而优先编码器是低电平输入有效,于....

  你知道模拟示波器与数字示波器的不同点吗?归根结底说到示波器与数字示波器无非是测量时使用的仪器而已,说....

  做嵌入式系统开发,经常要接触硬件。做嵌入式开发对数字电路和模拟电路要有一定的了解。这样才能深入的研究下去。下面...

  提高敏感器件的抗干扰性能是指从敏感器件这边考虑尽量减少对干扰噪声 的拾取,以及从不正常状态尽快恢复的....

  一个采用CD4069数字集成电路制作而成触摸式延迟灯,它也采用二线制接线方法,可以直接取代普通照明开....

  之所以说晶振是数字电路的心脏,就是因为所有的数字电路都需要一个稳定的工作时钟信号,最常见的就是用晶振....

  在同一块印制电路板上,模拟电路和数字电路的地线网络应该严格分开。同样的,参考电压通常对于地电平的波动....

  在这样一个对数字电路处理有利的世界中,仿照技术更多地用来处理对它们晦气的进程。但这个现象或许正在改动....

  我要给寄存器送数,希望第一个时钟脉冲送入输入的数据,后面的时钟脉冲都送入另一个寄存器里的数据。问了下老师说用D...

  Heide博士解释说,耗时的测试过程不适用于批量生产。“我们不能接受一个花费半分钟或一分钟的测试。我....

  信号在FPGA器件中通过逻辑单元连线时,一定存在延时。延时的大小不仅和连线的长短和逻辑单元的数目有关....

  中间地层分割处理后,Top layer 和 Bottom layer作敷铜处理的必要性就降低了;如果....

  目前国内的智能门锁,主要可以划分为哪几类? 智能门锁的分类 智能锁:所谓的智能锁,就是将电子技术、集....

  数字电路要运行稳定可靠,电源一定要”干净“,并且能量补充一定要及时,也就是滤波去耦一定要好。

  ECC的英文全称是“ Error Checking and Correcting”(错误检查和纠正)....

  尽管对数字设计的重视带来了电子产品的重大发展,但仍然存在,而且还会一直存在一部分与模拟或现实环境接口....

  在这样一个对数字电路处理有利的世界中,模拟技术更多地用来处理对它们不利的过程。但这个现象可能正在改变....

  早在20世纪80年代初期,就有人预言模拟电路即将消失。当时,数字信号处理算法的功能日益增强,而VLS....

  在模拟布线设计中,旁路电容通常用于旁路电源上的高频信号,如果不加旁路电容,这些高频信号可能通过电源引....

  在每个PCB设计中,电路的噪声部分和“安静”部分(非噪声部分)要分隔开。一般来说,数字电路“富含”噪....

  如果模拟电路(射频) 和数字电路(微控制器) 单独工作可能各自工作良好,但是一旦将两者放在同一块电路....

  设计工程师聊到模拟电路,第一反应就是设计部分让人头大。尽管数字电路和模拟电路不断的跟随科技的步伐发展....

  在数字电路中,出于应用的需要,我们可以使用无符号数,即包括0及整数的集合;也可以使用有符号数,即包括....

  芯片生产由于太过复杂,完全交由代工厂完成,封装亦是;对于测试,大部分公司都是租借第三方测试基台由自己....

  最近几年芯片领域似乎有个必然的发展趋势,就是走向数字化。由于数字技术的高度灵活性,许多信号的处理越来....

  单片射频器件大大方便了一定范围内无线通信领域的应用,采用合适的微控制器和天线并结合此收发器件即可构成....

  在石英晶体的两个电极上施加电场会使晶体产生机械变形,反之,如果在晶体两侧施加机械压力就会在晶体上产生....

  单片射频器件大大方便了一定范围内无线通信领域的应用,采用合适的微控制器和天线并结合此收发器件即可构成....

  第二章主要介绍了利用FPGA来实现第一章学习的AZPR SoC,不仅仅要动手完成FPGA与AZPR ....

  对于电源的回流来说,地线和铺铜相连,能让电源最大限度的找到一个最短的回流路径,从而减小电源回路面积,....