集成电路版图设计基础第三章:数字IC版.ppt_第1页
集成电路版图设计基础第三章:数字IC版.ppt_第2页
集成电路版图设计基础第三章:数字IC版.ppt_第3页
集成电路版图设计基础第三章:数字IC版.ppt_第4页
集成电路版图设计基础第三章:数字IC版.ppt_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章数字IC版图 设计过程验证电路逻辑编译网表版图设计过程平面布局布置布线预制门阵列芯片验证流程图实例 schoolofphye basicsoficlayoutdesign 1 schoolofphye basicsoficlayoutdesign 2 设计输入 VHDL硬件描述语言 HDL VerilogHDLVHDL VeryHighSpeedIntegratedCircuitsHDL于1987年成为IEEE标准在系统抽象方面略胜一筹VerilogHDL 1983年由PhilMoorby首创于1995年成为IEEE标准容易掌握 在开关电路描述方面比VHDL强很多 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 3 设计输入 HDLHDL HardwareDescriptionLanguageHDL编码的模拟验证要比晶体管级的SPICE模拟快得多 但不如真正的Si芯片快 硬件描述语言的特点 特点一 可以在不同的抽象层次对电路加以描述有 系统级 行为级 寄存器传输级 RTL级 门级 开关级 晶体管级 特点二 在每个抽象层次的描述上都可被模拟验证 节约成本 缩短开发周期 保证正确性 特点三 较高层次的HDL描述与具体的工艺实现无关 便于标准化与发展可重用技术 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 4 设计输入 HDL 从域和层次表示分层分级设计思想域 行为域 集成电路的功能结构域 集成电路的逻辑和电路组成物理域 集成电路掩膜版的几何特性和物理特性的具体实现层次 系统级 系统最高层次的抽象描述 输入输出关系行为级 侧重于模块行为功能的实现RTL级 完成信号在各级寄存器之间的传送任务门级 通过调用基本门来实现开关级 用晶体管描述 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 5 设计输入 HDL 从域和层次表示分层分级设计思想 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 6 设计输入 HDL硬件描述语言的抽象级别 行为级 有关行为和技术指标模块 容易理解RTL级 有关逻辑执行步骤的模块 较难理解门级 有关逻辑部件互相连接的模块 很难理解开关级 有关物理形状和布局参数的模块 非常难理解抽象级别和综合与仿真的关系 行为仿真 行为的验证和验证模块分割的合理性 前仿真 即RTL级仿真 检查有关模块逻辑是否正确 逻辑综合 把RTL级模块转换成门级 后仿真 用门级模型做验证 检查门的互连逻辑功能 布局布线 在门级模型的基础上加上了布线延时 布局布线后仿真 与真实的电路最接近的验证 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 7 设计输入 HDL VHDL VerilogHDLVHDL发展的较早 语法严格 而VerilogHDL是在C语言的基础上发展起来的一种硬件描述语言 简洁 高效 灵活 语法较自由 因此赢得了大多数工程师的喜爱 VHDL和VerilogHDL两者相比 VHDL的书写规则比Verilog烦琐一些 但verilog自由的语法也容易让少数初学者出错 国外电子专业很多会在本科阶段教授VHDL 在研究生阶段教授verilog 对于PLD FPGA设计者而言 两种语言可以自由选择 如果您是ASIC 专用集成电路 设计人员 则必须首先掌握verilog 因为在IC设计领域 90 以上的公司都是采用verilog进行IC设计 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 8 设计输入 HDL VHDL VerilogHDLVHDL和VerilogHDL有很多的共同点 如硬件描述与实现工艺无关 能形式化地抽象表示电路的行为和结构 具有电路仿真与验证机制以保证设计的正确性等 目前 国内外设计者使用Verilog和VHDL的情况 美国 Verilog 60 VHDL 40 台湾 Verilog 50 VHDL 50 大陆 大学 公司 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 9 设计输入 HDL VHDL VerilogHDL 设计过程 验证电路逻辑 适用抽象层次的比较 schoolofphye basicsoficlayoutdesign 10 设计输入 HDL VHDLVHDL即VHSICHDL VHSIC VeryHighSpeedIC 它起源于美国国防部 DOD DepartmentOfDefense 于80年代初提出的超高速集成电路发展计划VHSIC TheDODmandatedthatalldigitalelectroniccircuitsbedescribedinVHDL 由于ADA语言是DOD支持的程序设计语言 因而VHDL是在ADA语言的基础上发展起来的 VHDLadvantages designverificationandauto regressiontests VHDLisrecommendedforgovernmentcontracts VHDLcommercialmodelsareavailableforpurchase VHDLisadocumentationlanguage VHDLisasimulationlanguage 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 11 设计输入 HDL VHDLBASICDATATYPE BitBIT VECTOR 0TO7 STD LOGICSTD LOGIC VECTOR 15DOWNTO0 I OdirectionINOUTINOUT 输入输出双向口BUFFER 与INOUT类似 区别在于输入信号来自于实体内部产生的回读输出的信号 即允许反馈 一般不用 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 12 设计输入 HDL VHDL五大元素之 library 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 13 设计输入 HDL VHDL五大元素之 library 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 14 设计输入 HDL VHDL五大元素之 entity entity 称为实体 描述了电路器件外部情况及各信号端口的基本性质 entityentity nameisport p name port mdata type p name port mdata type endentityentity name 电路的端口及其端口信号描述语句PORT p name端口信号名port m端口模式 IN OUT INOUT BUFFERdata type数据类型 整数数据类型INTEGER布尔数据类型BOOLEAN标准逻辑位数据类型STD LOGIC位数据类型BIT 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 15 设计输入 HDL VHDL五大元素之 entity 标准逻辑位数据类型 STD LOGIC 取值 U Uninitialized X ForcingUnknown 0 Forcing0 1 Forcing1 Z HighImpedance W WeakUnknown L Weak0 H Weak1 Don tCare 位数据类型 BIT 取值 BIT数据类型的信号规定的取值范围是逻辑位 1 0 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 16 设计输入 HDL VHDL五大元素之 architecture architecture 称为结构体 结构体负责描述电路内部逻辑功能或电路结构 并行语句 可以同时存在多个 architecturearchitecture nameofentity nameisarchitecture declarations 说明语句 beginconcurrent statements 功能描述语句 end architecture architecture name 说明语句 包括在结构体中需要说明和定义的数据对象 数据类型 元件调用声明等 并非必须的 功能描述语句 必须的 给出相应的电路功能描述语句 可以是并行语句 顺序语句或他们的混合 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 17 设计输入 HDL VHDL五大元素之 process process 进程语句和顺序语句 VHDL所有合法的顺序描述语句必须放在进程语句中 如IF THEN ELSE ENDIF等 process label process sensitivity list is process declarations beginsequential statementsendprocess process label sensitivity list 敏感信号表 通常要求把进程中所有的输入信号都放在敏感信号表中 process的执行依赖于敏感信号的变化 当某一敏感信号发生跳变 就将启动此进程语句 而在执行一遍整个进程的顺序语句后 便返回进程的起始端 进入等待状态 直到下一次敏感信号中某一信号跳变才再次进入 启动 运行 状态 再执行一遍进程 一个结构体中 可以存在多个进程 它们是并行的 而任意一个进程属于顺序语句 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 18 设计输入 HDL VHDL五大元素之 configuration configuration 决定使用哪一个 architecture configuration结构 configurationconfiguration nameofentity nameisforarchitecture nameendfor endconfiguration name 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 19 设计输入 HDL package实例packagelogicis 包头说明typethree state logicIs 0 1 z constantunknown value three state logic 0 functioninvert input three state logic returnthree state logic endlogic packagebodylogicis 包体说明functioninvert input three state logic returnthree state logic begincaseinputiswhen 0 return 1 when 1 return 0 when z return z endcase endinvert endlogic 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 20 设计输入 HDL package实例uselogic three state logic logic uselogic three state logic invert entityinverterisport x inthree state logic y outthree state logic endinverter architectureinverter bodyofinverterisbeginprocess x beginy invert x 一个函数调用waitonx endprocess endinverter body 设计过程 验证电路逻辑 uselogic all schoolofphye basicsoficlayoutdesign 21 设计输入 HDL VHDL实例libraryIEEE useIEEE std logic 1164 all librarych60hp231d ponents all entityNAND2isport A instd logic B instd logic Z outstd logic endNAND2 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 22 设计输入 HDL VHDL实例architectureSTRUCTofNAND2issignalI std logic beginU0 an02d1portmap A B I U1 in01d1portmap I Z endSTRUCT 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 23 设计输入 HDL VHDL实例architectureDATAFLOWofNAND2isbeginZ AnandB endDATAFLOW architectureRTLofNAND2isbeginprocess A B beginif A 1 and B 1 thenZ 0 elseZ 1 endif endprocess endRTL 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 24 设计输入 HDL VHDL实例configurationcfg nand2ofNAND2isforRTLendfor endcfg nand2 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 25 设计输入 HDL VerilogHDLVerilogHDL是在C语言的基础上发展起来的一种硬件描述语言 它是由GDA GatewayDesignAutomation 公司的PhilMoorby在1983年首创的 最初只是设计了一个仿真与验证的工具 之后又陆续开发了相关的故障模拟与时序分析工具 1985年Moorby推出了他的第三个商用仿真器Verilog XL 并获得了巨大的成功 从而使VerilogHDL得到了推广应用 1989年Cadence公司收购了GDA 使得VerilogHDL成为了该公司的独家专利 1990年Cadence公司公开发表了VerilogHDL 并成立OVI OpenVerilogInternational 组织以促进VerilogHDL语言的发展 1995年VerilogHDL成为IEEE标准 Cadencecustomtools CadenceVLSItools VirtuosoSchematicEditorNC Verilog LDV SpectreSimulationBuildgatesVirtuosoLayoutEditorSiliconEnsemble SE Diva 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 26 设计输入 HDL VerilogHDL发展历史 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 27 设计输入 HDL VerilogHDL的应用 ASIC和FPGA设计师可用它来编写可综合的代码 描述系统的结构 做高层次的仿真 验证工程师编写各种层次的测试模块对具体电路设计工程师所设计的模块进行全面细致的验证 库模型的设计 可以用于描述ASIC和FPGA的基本单元 Cell 部件 也可以描述复杂的宏单元 MacroCell 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 28 设计输入 HDL VerilogHDL的特点 既能进行面向综合的电路设计 也能进行电路的模拟仿真 多层次上对设计系统进行描述 从开关级 门级 寄存器传输级 RTL 到行为级 设计规模任意 灵活的电路描述风格 行为 结构 数据流或混和 行为描述语句 条件 赋值 循环等 类似于软件高级语言 便于使用 内置各种基本逻辑门 and or nand etc 以及开关级元件 pmos nmos cmos 用户定义原语 UDP 组合 时序逻辑 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 29 设计输入 HDL VerilogHDL在不同抽象层次上的描述形式 设计过程 验证电路逻辑 门级modulearray buf in out en input 3 0 in output 4 0 out inputen instance bufif1array buf0 out 0 in 0 en bufif1array buf1 out 1 in 1 en bufif1array buf2 out 2 in 2 en bufif1array buf3 out 3 in 3 en endmodule RTL级modulemux out a b sel outputout inputa b sel assignout sel 0 a bendmodule 行为级 算法级sum 0 for i 0 i 7 i i 1 beginsum sum A i endsum out sum schoolofphye basicsoficlayoutdesign 30 设计输入 HDL VerilogHDL代码的基本结构VerilogHDL是由称之为module的模块组成的 一个完整的VerilogHDL模块由以下五个部分组成 设计过程 验证电路逻辑 1 模块定义行2 端口类型说明3 数据类型说明4 描述体5 结束行 schoolofphye basicsoficlayoutdesign 31 设计输入 HDL VerilogHDL代码的基本结构 设计过程 验证电路逻辑 例 上升沿D触发器的描述及对应电路 muduledff pos data clk q inputdata clk outputq regq always posedgeclk q data endmodule 模块定义行 端口类型说明 数据类型说明 描述体 结束行 schoolofphye basicsoficlayoutdesign 32 设计输入 HDL VerilogHDL代码的基本结构 设计过程 验证电路逻辑 模块描述 模块定义行端口类型说明数据类型说明描述体结束行 过程块1过程块2 过程语句 initial always 块语句 begin end fork join 过程语句 一个模块内可以包含任意多个initial和always语句 且并行执行 initial语句只执行一次 在模拟开始时执行 执行结束则模拟终止 always语句可由电平敏感事件控制 边沿触发事件控制或者二者的组合 schoolofphye basicsoficlayoutdesign 33 设计输入 HDL VerilogHDL代码的基本结构 设计过程 验证电路逻辑 块语句 顺序语句块 begin end并行语句块 fork join begin 2data 1 3data 0 4data 1 end fork 2data 1 3data 0 4data 1 join 0259 0234 schoolofphye basicsoficlayoutdesign 34 设计输入 HDL VerilogHDLalways语句 assign语句 和 元件的实例调用 如and2aa q a b 是Verilog模块中三种可以生成逻辑电路的语句 如果信号变量是在过程块 initial块或always块 中被赋值的 必须把它声明为寄存器reg类型变量 在always块的reg变量并不一定生成触发器 如 always b out1 b 只是生成了一个反相器的组合逻辑 有些Verilog硬件描述语言是不可综合的 仅仅是用于仿真验证测试的行为语言 有些不好的编码风格会导致在综合时产生不希望的逻辑 有的甚至会引起功能的紊乱 所以养成好的编码习惯是有必要的 因为这些好的编码习惯能够规避一些可能在综合以及后端的版图方面出现的不必要的麻烦 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 35 设计输入 VerilogHDL实例modulecount4 out reset clk output 3 0 out inputreset clk reg 3 0 out always posedgeclk beginif reset out 0 elseout out 1 endendmodule 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 36 模拟验证 对所设计的电路要用模拟器进行逻辑功能验证 而模拟验证的前提是要 搭建 一个测试平台 测试平台 testbench 可以对行为或者结构级的电路模块进行动态的全面测试 通过观测被测试模块的输出信号是否符合要求 可以调试和验证逻辑系统的设计和结构正确与否 发现问题并及时修改 设计过程 验证电路逻辑 测试信clk号和测试条件的控制reset counter4 被测模out块对测试信号的响应 counter4testbench schoolofphye basicsoficlayoutdesign 37 模拟验证 testbench timescale1ns 1nsinitial include count4 v beginclk 0 reset 0 modulecoun4 tb DELYreset 1 DELYreset 0 regclk reset DELY 20 finish wire 3 0 out endparameterDELY 100 initial monitor time clk dcount4mycount out reset clk reset dout d clk reset out always DELY 2 clk clk endmodule 设计过程 验证电路逻辑 以 字符开始的标识符表示系统任务或系统函数 schoolofphye basicsoficlayoutdesign 38 模拟验证 testbench 编译器指令 timescale10ns 1nsparameterd 1 57 d timescale10ns 1ns 以反引号 开始的语句是编译器指令 timescale将模块中所有时延的单位设置为10ns 时间精度为1ns parameterd 1 57 d parameter参数定义 1 57 是代表1 57个 时间单位 10ns 也就是15 7ns 可是精度只能取到1ns 四舍五入之后 d 也就是延时是16ns verilog中是没有默认timescale的 一个没有指定timescale的Verilog模块就有可能错误的继承了前面的timescale参数 所以推荐 在每个module的前面指定 timescale 或者在最后加一个 resetall来确保timescale的局部有效 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 39 模拟验证 testbench 编译器指令 define undef 用于文本替换 ifdef else endif 用于条件编译 default nettype 将那些没有被说明的连线定义线网类型 default nettypewand 定义缺省的线网为线与类型 include 嵌入内嵌文件 编译时 这一行由文件 xx v 替代 resetall 将所有的编译指令重新设置为缺省值 timescale 当一个设计中的多个模块带有自身的 timescale编译指令时将发生什么 在这种情况下 模拟器总是定位在所有模块的最小时延精度上 并且所有时延都相应地换算为最小时延精度 unconnected drivepull1 pull0 nounconnected drive 在模块实例化中 出现在这两个编译器指令间的任何未连接的输入端口或者连接到高电平或者连接到低电平 celldefine endcelldefine 用于将模块标记为单元模块 它们包含模块 module 定义 某些PLI例程使用单元模块 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 40 模拟验证 模拟仿真软件LogicDesignandVerification LDV CadenceVHDLSystemSimulator VSS VerilogCompiledSimulator VCS Modelsim MentorGraphicsQuartusII AlteraActive HDL Aldec 设计过程 验证电路逻辑 CadenceLDV5 1 Synopsys schoolofphye basicsoficlayoutdesign 41 模拟验证 模拟仿真软件2007年EDA软件前三位的是Synopsys Cadence和Mentor 从市场占有看 Cadence的强项产品为IC板图设计 Allegro系统互连设计平台 和服务 MentorGraphics的强项产品为PCB设计和深亚微米IC设计验证和测试 Synopsys的强项产品为逻辑综合 Cadence 美国加州圣何塞 全球最大的电子设计技术 ElectronicDesignTechnologies 程序方案服务和设计服务供应商 Synopsys 美国加州MountainView 2002年并购Avant 后 该公司成为提供前后端完整IC设计方案的领先EDA工具供应商 Mentor 美国俄勒冈州的Wilsonville 中文译名 明导资讯 Altera 美国加州圣何塞 可编程芯片逻辑解决方案倡导者 Aldec 美国内达华州 致力于可编程芯片逻辑的设计验证领域 设计过程 验证电路逻辑 schoolofphye basicsoficlayoutdesign 42 模拟验证 生成的 testbench 与 仿真波形 设计过程 验证电路逻辑 counter4waveform counter4testbench schoolofphye basicsoficlayoutdesign 43 Synplify Synplicity编译器 逻辑综合器 DesignCompiler SynopsysBuildgates Cadence综合网表 Netlist modulediv47 ungating reset clk sel clk47 inputreset clk sel outputclk47 wireclk4 clk5 n 2 n53 n54 div4 ungatingmydiv4 reset n54 en4 n53 clk clk clk4 clk4 div5 ungatingmydiv5 reset n54 en5 n 2 clk clk clk5 clk5 inv1a1U20 A n53 Y n 2 mx2a3U21 D0 clk5 D1 clk4 S n53 Y clk47 clk1a3U22 A sel Y n53 buf1a1U23 A reset Y n54 endmodule 设计过程 编译网表 schoolofphye basicsoficlayoutdesign 44 综合 综合是前端模块设计中的重要步骤之一 综合的过程是将行为描述的电路 RTL级的电路转换到门级的过程 综合可分为行为级综合 逻辑综合 测试综合以及物理综合等等 行为级综合 是一种高层次综合 高层次综合是连接系统行为和系统结构之间的纽带 高层次综合在算法一级接受系统的行为描述 转换成为用ALU RAM等功能单元 存储单元和互联元件 多路选择器 总线等 描述的电路结构 高层次综合是电路综合领域中最上层任务 传统高层次综合的主要任务包括调度 分配和控制电路生成三个部分 所谓调度 就是将系统行为中的操作赋给执行过程中的某一时间段 所谓分配 是将操作和变量赋给相应的硬件进行运算和存储 将数据传输通道赋给相应的硬件进行数据的传输 控制电路的生成 是在数据通路设计好之后 综合一个按调度要求驱动数据通路的控制器 目前的高层次综合的研究重点在数据通路综合上 设计过程 编译网表 schoolofphye basicsoficlayoutdesign 45 综合 物理综合 工具如Synopsys公司的PhysicalCompiler 它是解决0 18微米以下工艺技术的IC设计环境 是Synopsys物理综合流程的最基本的模块 它将综合 布局 布线集成于一体 让RTL设计者可以在最短的时间内得到性能最高的电路 通过集成综合算法 布局算法和布线算法 在RTL到GDSII的设计流程中 PhysicalCompiler向设计者提供了可以确保即使是最复杂的IC设计的性能预估性和时序收敛性 逻辑综合 Synopsys公司的DesignCompiler DC 是公认的标准 同时也是目前工业领域最流行的综合工具 它可以方便地将HDL语言描述的电路转换到基于工艺库的门级网表 设计过程 编译网表 schoolofphye basicsoficlayoutdesign 46 综合 测试综合 经过代工厂复杂的制造过程后 已经包含了若干个裸片的晶圆需要进行严格的测试然后划片 封装 经过封装后的裸片变成芯片 但此芯片仍然需要进一步进行封装后测试 若无故障 才能算真正的产品 可测性设计DFT designfortest 就是指为了使测试 制造测试 尽可能简单而有意识地在设计中加入一定附加逻辑的设计方法 DFT可分为两个范畴 设计范畴和测试模式生成范畴 设计范畴的任务是在考虑了扫描链插入的逻辑综合之后所进行的测试综合 自动测试模式生成 ATPG 的任务是根据所采用的故障模型确定一最小的激励向量集以使得设计的故障覆盖率达到期望值 扫描综合的工具 SYNOPSYS的DFTCompiler ATPG工具 SYNOPSYS的TetraMAX MENTOR的FastScan 设计过程 编译网表 schoolofphye basicsoficlayoutdesign 47 驱动强度 编译器综合生成很大的网络 所以我们试图用单个驱动源驱动多个单元 这时需要考虑单元的驱动强度或扇出 扇出数表示一个门能够驱动多少个器件 如单元库中多个不同的反相器表示成1x 2x或4x等 就表明了它们的驱动强度 设计过程 编译网表 inv 2 inv 4 inv 8 1x 2x 4x schoolofphye basicsoficlayoutdesign 48 时钟数综合 ClockTreeSynthesis CTS 如果编译器把一个大的网络分割成较小易于驱动的部分 会自动插入额外的缓冲单元来驱动每一个新形成的小网络 缓冲单元帮助驱动门和布线电容 本身并没有什么逻辑功能 作为基准的时钟 通常要连接成千上万个门 时钟网络一般都非常大 所以我们要插入缓冲器以驱动分割后的时钟网络 形成时钟树 此过程称为 时钟树综合 设计过程 编译网表 ClockTreeNetwork schoolofphye basicsoficlayoutdesign 49 版图设计工具 SiliconEnsemble CadenceAstro Synopsys1 读入网表 跟foundry提供的标准单元库和Pad库以及宏模块库进行映射 2 整体布局 规定了芯片的大致面积和管脚位置以及宏单元位置等粗略的信息 3 读入时序约束文件 设置好timingsetup菜单 为后面进行时序驱动的布局布线做准备 4 详细布局 力求使后面布线能顺利满足布线布通率100 的要求和时序的要求 5 时钟树综合 为了降低clockskew而产生由许多buffer单元组成的 时钟树 6 布线 先对电源线和时钟信号布线 然后对信号线布线 目标是最大程度地满足时序 7 为满足designrule从而foundry能成功制造出该芯片而做的修补工作 如填充一些dummy等 这七大步骤是基本的流程 其中每大步骤里面包含很多小的步骤 版图设计过程 平面布局 P Rflow schoolofphye basicsoficlayoutdesign 50 平面 整体布局 Floorplanning 平面布局工具在芯片上划出功能区域 确定这些区域间的连接关系 确定I O压焊块的位置 并反馈有关平面布局在进行布线时的难易程度 平面布局工具从编译软件产生的网表文件中获取它所需要的连接关系和门的信息 由于最终的平面布局输出文件说明了各个门的总体位置 所以平面布局工具就会知道所有导线的大致长度 把这些信息回送到数字电路模拟器中验证 以检查由于这些估计的导线影响电路时序的可能性有多大 版图设计过程 平面布局 P Rflow schoolofphye basicsoficlayoutdesign 51 布置 详细布局 Placement 布置工具固定每块 block 逻辑门的确切位置 力求使后面布线能顺利满足布线布通率100 的要求和时序的要求 布置软件从某一模块开始 寻找与这一模块相关的部件 然后根据逻辑门的连接关系和平面布局工具的输出文件来安排它们的位置 很多布置工具根据设计中信号的时序要求来确定门的布置 这一方法称为 时序驱动版图设计 I O驱动器是一些特殊的单元 它们将驱动输入信号 提供输出 并包括了ESD保护和测试电路 I O驱动器也在此时布置 版图设计过程 布置 P Rflow schoolofphye basicsoficlayoutdesign 52 CTS ClockTreeSynthesis CTS包括针对时钟树的综合和优化 另外还包括布局后优化阶段II Post CTSoptimization CTS是为了降低clockskew而产生由许多buffer单元组成的 时钟树 Routing 布线 布线是在门单元和I O引脚都确定好位置后 需要用布线工具把它们连接起来 两类高优先级的网线 电源和时钟线 必须先进行布线 因为它们是最关键的信号线 之后才对信号线布线 目标是最大程度地满足时序 版图设计过程 布线 P Rflow schoolofphye basicsoficlayoutdesign 53 ClockTreeOptimization CTO whatarethedifferentCTOoptionsandhowdotheyreduceskew skew 就是从时钟树根 clockroot 到所有的寄存器之中 最长和最短的插入延迟的相差 就是 clk1 skew clk1 max insertion delay clk1 min insertion delaythedifferentoptionsinCTOtoreduceskewaredescribedinthefollowinglist 1BufferandGateSizing2BufferandGateRelocation3LevelAdjustmen

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论