首页计算机计算机工程硬件描述语言和数字系统设计 02 第2章 Verilog硬件描述语言概述.pptx

02 第2章 Verilog硬件描述语言概述.pptx

页数:71页文件大小:1.11 MB来源: 硬件描述语言和数字系统设计ppt课件

本课件介绍复杂数字系统的现代设计方法,说明Verilog的行为级、RTL级、门级与开关级抽象层次,梳理从功能仿真到综合、布局布线、后仿真的设计流程,并以反相器为例演示版图结构与N阱、多晶硅、金属层等制造步骤。

第2章Verilog硬件描述语言概述章节封面,标示本章涵盖复杂数字系统设计方法、硬件描述语言Verilog简介、集成电路设计流程等内容
第2章主要内容,依次讲述复杂数字系统设计方法、硬件描述语言Verilog简介、集成电路设计流程等小节
复杂数字系统设计方法知识点页,列出什么是复杂数字系统设计?、为什么要进行复杂数字系统设计?、怎样进行复杂数字系统设计?等知识点
查看本课件的文字版(共 71 页,供检索与复制)

第1页:第2章Verilog硬件描述语言概述

硬件描述语言和数字系统设计

第2页:第2章主要内容

复杂数字系统设计方法2.2硬件描述语言Verilog简介2.3集成电路设计流程2.4以反相器为例说明数字电路的设计、制造流程主要内容:

第3页:复杂数字系统设计方法

2.1.1
什么是复杂数字系统设计?
2.1.2
为什么要进行复杂数字系统设计?
2.1.3
怎样进行复杂数字系统设计?

第4页:什么是复杂数字系统设计?

嵌入式微处理机系统数字信号处理系统高速并行计算逻辑高速通信协议电路高速编码/解码、加密/解密电路复杂的多功能智能接口门逻辑总数超过几万门达到几百甚至达几千万门的数字系统

第5页:几个常见数字逻辑系统基本概念数字信号处理

计算(Computing)算法和数据结构编程语言和程序体系结构硬件逻辑

第6页:数字信号处理

的基本概念现代电子系统设备中广泛使用了数字信号处理、专用集成电路。数字信号处理就是用于数字信号传输中所必需的滤波、变换、加密、解密、编码、解码、纠检错、压缩、解压缩等操作。处理工作从本质上说都是数学运算。完全可以用计算机或微处理器来完成处理工作。

第7页:算法和数据结构的基本概念数据结构

就是解决特定问题的相应的模型。算法就是解决特定问题的有序步骤。

第8页:编程语言和程序的基本概念编程语言

程序员利用一种由专家设计的既可以被人理解,也可以被计算机解释的语言来表示算法问题的求解过程。这种语言就是编程语言。程序:由编程语言所表达的算法问题的求解过程就是。常用的编程语言:C、Pascal、Fortran、Basic或汇编语言。

第9页:计算机体系结构

和硬件逻辑的基本概念计算机体系结构:是一门讨论和研究通用的计算机中央处理器如何提高运算速度性能的学问。硬件逻辑:由与门、或门、非门、触发器、多路器等基本逻辑部件造成的逻辑系统。

第10页:数字信号处理系统的分类非实时系统

信号处理的工作是可以事后进行。实时系统:信号处理的工作必须在规定的很短的时间内完成。

第11页:实时数字信号处理系统实现中存在的技术难点

算法问题
研究并行快速算法。电路实现问题:设计并研制具有并行结构的数字和计算逻辑结构和相应的接口逻辑。

第12页:An SoC Solution for

ComputereDRAM SOC solution provide high memory bandwidth/low power consumptionLCDCRTMouse/Kbd, othersServer/WebAC’97 Codec, AmpBoot ROMDSPCPU16MB or 32MB eDRAM2D GraphicsAcceleratorDisplayControllerUSB 2.0Host ControllerAudio Controller10/100Ethernet MACFlash I/F

第13页:什么是复杂数字系统设计?(续1)

练习-常见公司数字IC设计招聘题目1.你知道的集成电路设计的表达方式有哪几种?(仕兰微)

第14页:练习

答案电路实现的两个方向:

  • FPGA/cPLD;
  • ASIC:专用集成电路.ApplicationSpecificIntegratedCircuitASIC Vender:芯片制造商,开发并提供单元库

第15页:单片机、DSP、FPGA

ASIC设计的区别与联系

  • 单片机:MPU MCU微处理器将CPU和其他接口电路集成在一个芯片中冯·诺依曼(Von-Neuman)结构,指令、程序和数据统一编址单片机的内部结构一般包括:ALU、寄存器、存储器(ROM和RAM)、I/O端口、定时器/计数器和中断系统
  • DSP:一种具有特殊结构的微处理器。内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP指令,可用来快速地实现各种数字信号处理算法。DSP具有快速的指令周期特点
  • FPGA:基于半定制门阵列的设计思想,可编程逻辑块、可编程I/O模块、可编程内部连线
  • ASIC:全定制CMOS、BiCMOS工艺

第16页:为什么要进行复杂数字系统设计?

为什么要研究复杂的数字逻辑系统?随着半导体工艺的发展,IC的集成度越来越高,越来越复杂。70年代,单片IC包含的晶体管一般在几十万以内,称为中规模集成电路时代;80~90年代,单个芯片包含的晶体管数量跃升到百万甚至千万,被称为大规模和超大规模集成电路时代,也就是我们耳熟能详的VLSI时代。跨入21世纪,系统芯片SoC成为主流,Pentium IV、Playstation、手机基带电路成为市场新的霸主,单片的集成度已经到了亿级的规模。

第17页:工艺的精细度也越来越高进展到亚微米工艺

从亚微米工艺进展到深亚微米工艺,如:.6um,.5um,.35um,.25um,.18um,.13um,目前已经进入了纳米工艺时代,如90nm,65nm,45nm。工艺进步导致了线负载延时越来越大,串扰的影响越来越突出,漏电流、电势降和电迁移也成为越来越突出的问题。

第18页:IC设计策略和设计方法也在快速的发展从设

计策略来看,面积驱动变为时序驱动,然后变为时序收敛,现在又成为功耗收敛,即电势降和电迁移的收敛。从设计方法来看,从最早的晶体管级的版图设计,到门级网表的图形化输入,现在流行的寄存器传输级的VHDL/Verilog文本输入,慢慢向着更高的行为级、系统的软硬件协同设计发展。一方面设计的抽象程度越来越高,另一方面设计问题越来越复杂,设计周期要求越来越短。对设计工具的自动化和能力的需要越来越高,同时对设计人才的综合素质和专业素养提出了更高的要求和挑战。

第19页:对嵌入式系统的性能要求越来越高-通

用的微处理机不能满足要求-硬件结构是提高系统总体性能的关键-软件只能提高系统的灵活性能-军用系统的实时、高可靠、低功耗要求-系统的功能专一,但对其各种性能要求极高-降低系统的设计和制造成本

第20页:怎样进行复杂数字系统设计?

怎样设计如此复杂的系统?

  • 传统的:线路图
  • 现代的:硬件描述语言

第21页:传统的设计方法

  • -查用器件手册
  • -选用合适的微处理器和电路芯片
  • -设计面包板和线路板
  • -调试
  • -定型
  • -设计复杂的系统(几十万门以上)极其困难。

第22页:现代的设计方法

  • -选用合适的EDA仿真工具
  • -选用合适电路图输入和HDL编辑工具
  • -逐个编写可综合HDL模块
  • -逐个编写HDL测试模块
  • -逐个做Verilog HDL电路逻辑访真
  • -编写Verilog HDL总测试模块
  • -做系统电路逻辑总仿真

第23页:现代的设计方法(续前)

  • -选用合适的基本逻辑元件库和宏库-租用或购买必要的IP核
  • -选用合适的综合器
  • -进行综合得到门级电路结构
  • -布局布线,得到时延文件
  • -后仿真
  • -定型,FPGA编码或ASIC投片。

第24页:Top-Down设计思想系统级设计模块A

模块B模块C模块A1模块A3模块A2模块C1模块C3模块C2模块B2模块B1

第25页:硬件描述语言Verilog简介

2.2.1
什么是硬件描述语言HDL以及why?
2.2.2
硬件描述语言分类与Verilog简介
2.2.3
Verilog HDL的抽象级别

第26页:什么是硬件描述语言HDL以及why?

什么是硬件描述语言HDL具有特殊结构能够对硬件逻辑电路的功能进行描述的一种高级编程语言这种特殊结构能够:

  • 描述电路的连接
  • 描述电路的功能
  • 在不同抽象级上描述电路
  • 描述电路的时序
  • 表达具有并行性HDL主要有两种:Verilog和VHDL

第27页:电路的逻辑功能容易理解

电路的逻辑功能容易理解;

  • 把逻辑设计与具体电路的实现分成两个独立的阶段来操作;
  • 逻辑设计与实现的工艺无关;
  • 逻辑设计的资源积累可以重复利用;可以由多人共同更好更快地设计非常复杂的逻辑电路(几十万门以上的逻辑系统)。为什么要用硬件描述语言来设计?

第28页:硬件描述语言分类与Verilog简介

有哪几种硬件描述语言?各有什么特点?

  • VHDL-比VerilogHDL早几年成为IEEE标准;-语法/结构比较严格,因而编写出的模块风格比较清晰;-比较适合由较多的设计人员合作完成的特大型项目(一百万门以上)。
  • VerilogHDL

第29页:Verilog HDL发展历史

Verilog的历史Verilog HDL是在1983年由GDA(GateWay Design Automation)公司的Phil Moorby所创。Phi Moorby后来成为Verilog-XL的主要设计者和Cadence公司的第一个合伙人。在1984~1985年间,Moorby设计出了第一个Verilog-XL的仿真器。1986年,Moorby提出了用于快速门级仿真的XL算法。1990年,Cadence公司收购了GDA公司1991年,Cadence公司公开发表Verilog语言,成立了OVI(OpenVerilog International)组织来负责Verilog HDL语言的发展。1995年制定了Verilog HDL的IEEE标准,即IEEE1364。

第30页:Verilog HDL的应用方面

Verilog HDL的应用方面

  • ASIC和FPGA设计师可用它来编写可综合的代码。
  • 描述系统的结构,做高层次的仿真。
  • 验证工程师编写各种层次的测试模块,对具体电路设计工程师所设计的模块进行全面细致的验证。
  • 库模型的设计:可以用于描述ASIC和FPGA的基本单元(Cell)部件,也可以描述复杂的宏单元(MacroCell)。

第31页:Verilog HDL的抽象级别

VerilogHDL的抽象级别语言本身提供了各种层次抽象的表述,可以用详细程度有很大差别的的多层次模块组合来描述一个电路系统。

  • 行为级:技术指标和算法的Verilog描述
  • RTL级:逻辑功能的Verilog描述
  • 门级:逻辑结构的Verilog描述
  • 开关级:具体的晶体管物理器件的描述

第32页:行为级:有关

  • 行为和技术指标模块,逻辑容易理解;
  • RTL级:有关逻辑执行步骤的模块,逻辑较难理解;
  • 门级:有关逻辑部件互相连接的模块。逻辑很难理解;
  • 开关级:有关物理形状和布局参数的模块,逻辑非常难理解。

第33页:抽象级

(Levels of Abstraction)在抽象级上需要进行折衷系统说明-设计文档/算术描述RTL/功能级-Verilog门级/结构级-Verilog版图/物理级-几何图形详细程度低高输入/仿真速度高低

第34页:抽象级(续1)

抽象级(Levels of Abstraction)Verilog可以在三种抽象级上进行描述

  • 行为级用功能块之间的数据流对系统进行描述在需要时在函数块之间进行调度赋值。
  • RTL级/功能级用功能块内部或功能块之间的数据流和控制信号描述系统基于一个已定义的时钟的周期来定义系统模型
  • 结构级/门级用基本单元(primitive)或低层元件(component)的连接来描述系统以得到更高的精确性,特别是时序方面。在综合时用特定工艺和低层元件将RTL描述映射到门级网表。

第35页:抽象级(续2)

抽象级(Levels of Abstraction)设计工程师在不同的设计阶段采用不同的抽象级

  • 首先在行为级描述各功能块,以降低描述难度,提高仿真速度。
  • 在综合前将各功能模块进行RTL级描述。
  • 用于综合的库中的大多数单元采用结构级描述。在本教程中的结构级描述部分将对结构级(门级)描述进行更详细的说明。Verilog还有一定的晶体管级描述能力及算法级描述能力

第36页:module muxtwo 代码示例

例子:RTL级(即逻辑描述)-方法1两路MUX的逻辑描述为:只要信号a或b或sel发生变化,如果sel为0则选择a输出;否则选择b输出。modulemuxtwo (out, a, b, sel); input a, b, sel; output out; wire out; assign out=(sel)?b:a; endmodule;

第37页:module muxtwo(续1)

例子:RTL级(即逻辑描述)-方法2两路MUX的逻辑描述为:只要信号a或b或sel发生变化,如果sel为0则选择a输出;否则选择b输出。modulemuxtwo (out, a, b, sel); input a, b, sel; output out; reg out; always @( sel or a or b)if (! sel) out = a; else out = b; endmodule;

第38页:例子:结构级(即门级)描述下面是MUX

的门级描述,采用Verilog基本单元(门)描述。综合工具产生的结果网表是门级的。用户可以用门级描述粘接(glue)逻辑。moduletwomux (out, a, b, sl);input a, b, sl;output out;not u1 (nsl, sl );and u2 (sela, a, nsl);and u3 (selb, b, sl);or u4 (out, sela, selb);endmodule

第39页:集成电路设计流程

集成电路设计流程

第40页:集成电路设计流程图

Functional simulationLogic synthesisDFT synthesisNETLISTATPGPre-layoutsimulationSTAFormal verificationPlace& RoutePost SimulationSign-offVCS或者modelsimDesign CompileDFT CompilePrimetimeFormalityASTROVCS或modelsimRTL Coding

第41页:综合器的作用综合工具把Verilog模块

描述的逻辑按照设计工程师的面积、功耗、延时等约束要求转变为用门级结构描述的模块。门级结构描述的模块也是得到Verilog仿真器支持的,模块逻辑正确与否可以通过仿真验证。

第42页:抽象级别和综合与仿真的关系行

为仿真
行为的验证和验证模块分割的合理性。前仿真:即RTL级仿真,检查有关模块逻辑执行步骤是否正确。逻辑综合:把RTL级模块或符合综合风格的行为模块转换成门级。后仿真:用门级模型做验证,检查由门的互连构成的逻辑其功能是否正确。布局布线:在门级模型的基础上加上了布线延时。布局布线后仿真:与真实的电路最接近的验证。

第43页:Verilog HDL

PLI和SDF三要素Verilog HDL是一种描述电子设计的硬件描述语言*.v是Verilog源码文件;编程语言接口(PLI)是Verilog仿真器和一种编程语言如C语言之间路径和数据结构的接口;标准延时格式(SDF)是模型反标延时信息用的文件格式;*.Edf网表文件,或者*.v*.vc(由设计者在综合时自己定义输出网表文件后缀)。

第44页:练习-常见公司数字IC设计招聘题目1.描

述你对集成电路设计流程的认识。(仕兰微)2.简述FPGA等可编程逻辑器件设计流程。(仕兰微)3. IC设计前端到后端的流程和EDA工具。4.从RTL synthesis到tape out之间的设计flow,并列出其中各步使用的tool.5.Asic的design flow。(威盛VIA)

第45页:请简述一下设计后端的整个流程

.请简述一下设计后端的整个流程?(仕兰微)7.是否接触过自动布局布线?请说出一两种工具软件。自动布局布线需要哪些基本元素?(仕兰微)(synopsys的)ASTRO

第46页:IC设计前端到后端的流程和eda工具

.IC设计前端到后端的流程和eda工具。2.从RTL synthesis到tape out之间的设计flow,并列出其中各步使用的tool.3.写出asic前期设计的流程和相应的工具。(威盛)4.集成电路前端设计流程,写出相关的工具。(扬智电子)5.请描述一下你对集成电路的认识,列举一些与集成电路相关的内容(如讲清楚模拟、数字、双极型、CMOS、MCU、RISC、CISC、DSP、ASIC、FPGA等的概念)。(仕兰微)

第47页:module inverter 代码示例

module inverter (A,Y); input A; output Y; assign Y =~A; endmodule反相器RTL级(逻辑描述)方法12.4以反相器为例说明数字电路的设计、制造流程;

第48页:module inverter(续1)

module inverter (A,Y); input A; output Y; reg Y;always @( A )Y =~A; endmodule反相器RTL级(逻辑描述)方法2;

第49页:module inverter(续2)

module inverter (A,Y); input A; output Y; notu1(Y, A); endmodule综合后网表文件中的门级描述;

第50页:Inverter版图(俯视图)

Inverter版图(俯视图)

第51页:反向器版图(剖面图)NMOS晶体管一般利

用P型衬底;对于PMOS晶体管需要在N阱里制造

第52页:反向器版图

(剖面图cont .)阱与衬底P衬底必须连接到GND或更低电位;N阱连VDD或更高电位;

第53页:制造过程一:如何做N阱?

制造步骤从空的晶圆开始由底向上制作反相器第一步将形成N阱-用SiO2保护层覆盖晶圆-除去N阱需要制作的地方的保护层-掺杂或扩散N型杂质到暴露的晶圆上-去掉SiO2

第54页:用氧化炉氧化整个晶片

制造过程
用氧化炉氧化整个晶片氧化在Si晶圆上面生长SiO2-利用H2O或O2在900~12000C的熔炉中氧化

第55页:整个晶片涂上光刻胶

制造过程
整个晶片涂上光刻胶光刻胶图上光刻胶-光刻胶是光敏感有机聚合物-暴露在光线中的部分融化

第56页:平版印刷,并在做N阱

制造过程
平版印刷,并在做N阱的位置用N阱掩模(mask)曝光光刻胶,然后去掉被曝光的光刻胶光刻通过N阱掩膜曝光光刻胶除去暴露的光刻胶

第57页:用氢氟酸蚀刻N阱位置的氧化物刻蚀利用HF

制造过程
用氢氟酸蚀刻N阱位置的氧化物刻蚀利用HF酸刻蚀氧化层

第58页:剥去其他部分的光刻胶

制造过程
剥去其他部分的光刻胶剥去光刻胶剥掉留下的光刻胶

第59页:进行N型材料(五价)掺杂N阱

制造过程
进行N型材料(五价)掺杂N阱N阱通过扩散或者离子注入形成扩散-把晶圆放在砷气的熔炉中-加热直到As原子扩散到暴露的Si中离子注入-利用As离子束冲击晶圆-离子被SiO2阻止,仅进入暴露的硅

第60页:去掉其他部分的氧化层

制造过程
去掉其他部分的氧化层去掉氧化层利用HF酸去掉余留的氧化层回到N阱裸晶圆紧接着的步骤相似与之前相似

第61页:制造过程二:如何做多晶硅

?(先沉淀一层薄的氧化层,然后进行硅的化学蒸气沉积CVD,形成导电性能好的多晶硅)多晶硅沉淀很薄的栅氧化层:-小于20A(6-7个原子层)Si层的化学气沉淀:-把晶圆放置在SiH4的熔炉中-形成许多多晶硅-重掺杂得到优良的半导体

第62页:同样采用平版印刷工艺进行多晶硅(栅级)形

制造过程
同样采用平版印刷工艺进行多晶硅(栅级)形状印刷定制多晶硅布线利用同样的光刻工艺制作多晶硅

第63页:然后进行自对准

制造过程
然后进行自对准自对准工艺利用氧化物和掩膜曝光n+杂质区N扩散形成NMOS源漏和N阱接触

第64页:对要做nMOS管源、漏级

制造过程
对要做nMOS管源、漏级,N阱接触孔的地方进行高浓度N型物质掺杂N扩散制作氧化物并形成n+区利用自对准工艺在栅极区扩散对于自对准栅来说,多晶硅比金属好,因为在后面的工艺中没有溶解

第65页:对要做pMOS管源、漏级

制造过程
对要做pMOS管源、漏级,P衬底接触孔的地方进行高浓度P型物质掺杂P扩散相似的步骤可以形成pMOS源漏衬接触的p+扩散区

第66页:制作接触孔

制造过程
制作接触孔(芯片表面上有一层氧化层,在需要做接触孔的地方腐蚀掉氧化物)接触孔现在需要把器件连接在一起用厚场氧化物覆盖芯片刻蚀接触孔处的氧化物

第67页:金属层的制造(向wafer晶片涂上铝

制造过程
金属层的制造(向wafer晶片涂上铝,定型后,然后去掉多余的金属)金属层在整个晶圆上溅射Al除去多余的金属,留下连线

第68页:练习1:该版图上逻辑是

练习1
该版图上逻辑是什么?

第69页:练习1:答案三输入与非Y=

练习1
答案三输入与非Y= A B C

第70页:O3AI版图绘制练习

Example
O3AI绘制O3AI的条形版图并且估计面积无法显示该图片。无法显示该图片。

第71页:O3AI版图绘制练习(续1)

Example
O3AI绘制O3AI的条形版图并且估计面积
顶部目录