SOC_encounter使用说明

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

SOCEncounter使用说明Version7.12011.01.09概要在本篇ppt中,主要以一个32位的流水线加法器设计为例,介绍SOCEncounterV7.1版本自动布局布线工具的主要使用方法及步骤。目录以加法器为例,将综合后的结果导入SOCEncounter,生成GDSII版图分为以下几个步骤:DataPreparationImportdesignFloorplanPowerPlanningandRoutingPlaceSynthesizingClockTreesRouteExportdesignDataPreparation以一32位流水线加法器设计为例,需要的文件包括:综合后的网表netlist.v。综合后的约束文件netlist.sdc,注意需要将该文件中的端口名都改为其对应的pad端口名。在综合后的网表netlist.v基础上,写一个包含pad的顶层文件top.v。该文件中定义了所有的pad端口,将包含pad端口模块作为顶层模块,调用原设计顶层模块add_16_2。定义各个pads在设计中具体位置的文件pad.io。以上文件包含在文件夹Encounter_Calibre_ppt/Encounter中。0.18um库文件:时序库,LEF物理库,GDS文件,RC提取的电容表,噪声cdB库。以上库均包含在服务器81或82/home/lib/SMIC_0.18um_Logic_Lib路径下,下章导入设计将具体介绍文件和库的具体导入。Importdesign1.运行“encounter”命令启动软件SOCEncounter。如图:2.菜单栏DesignImportDesign,打开后如下:3.点‘load’键选中之前保存的设置文件V1_X.conf,各项按上次保存的路径加入相应的文件,加完后如下图:4.不同于3,或者直接给各项加入文件,具体如下:(1)给’Basic’各项加入具体设计:顶层module名Max,Min,Typ三种角条件下的时序库,包括标准单元和IO单元两个库文件LEF库,包括标准单元,IO单元,天线三个库文件修改过后的综合后约束文件netlist.sdcPad位置文件pad.io包含pad的设计顶层文件top.v(2)给‘Advanced’中’GDS‘项加入文件:GDS库文件,包含标准单元和数模IO单元3个文件注:若设计中含有IP核,在设置时除上述要求外,还应添加相应IP核的LEF文件和GDS文件。填入电源/地变量名(3)给’Advanced’中’Power’项填入电源/地的变量名:(4)给’Advanced’中RCExtraction选项填入如下文件:(5)给’Advanced‘中SIAnalysis项填入如下噪声库.cdB文件:上述各项填好后,点’save’将此次的设置保存成.conf文件,然后点击’OK‘键即可导入设计,如下图:Floorplan点击菜单栏FloorplanSpecifyFloorplan,如下:•指定Core/Die的面积或者Core的利用率,如本例中指定了Die的宽高分别为3200,3200um。具体的大小值可通过预估,试验几次等方法进行估算。•指定Core到IO/Die边界的距离,以给电源环留下足够的空间,本例中设定Core到IO边界上下左右的距离都为100um。如下图:点击菜单栏FloorplanConnectGlobalNets,该步骤主要是实现全局Nets的连接,如电源,地线。•“Connect”项选择’Pin‘,PinName:VDD;“Scope”项选择’ApplyAll‘;ToGlobalNet:VDD。选择好后点击“Addtolist”。•“Connect”项改为’TieHigh‘,其余不变,同上,点击“Addtolist”。•“Connect”项改为’NetBasename‘:VDD,其余不变,同上,点击“Addtolist”。同理,对VSS同样如此操作,只需将’TieHigh’改为’TieLow‘即可,操作完如下:最后点击“Apply”,将如上设置应用。PowerPlanningandRouting点击菜单栏PowerPowerPlanningAddRings,如下图:•’RingConfiguration‘选项设置电源地环所用的金属层及其宽度、间距信息。如上图,本例中环的上下左右部分分别采用Metal6,Metal6,Metal5,Metal5。因为考虑到高层金属的电阻较小,电源环通常采用较高层金属,以尽量减小电压降。金属宽度Width:都设为10um;间距Spacing;点击’update‘以更新;offset:设电源金属环位于pad和core的中间,即选’Centerinchannel‘项,如下图:电源环的具体参数需根据设计特点设定。•“Advanced”选项中’WireGroup‘选择:’Usewiregroup‘,‘Interleaving’,Numberofbits:本例中设为2,即将电源地环分为互相交叉的2条,具体形式可根据需要调节。如下图:上述设置完成后,点击’OK’,电源环生成如下图:若设计中含IP核,有时需为IP核单独设置电源环点击菜单栏RouteSpecialRoute,即连接一些特殊的连线,如电源环与对应的电源pad,标准单元的电源地线等。如下图:•‘Route’选项中,选择‘Padpins’,‘Standardcellpins’选项,即连接电源环与对应的电源pad,标准单元的电源地线,设置如下图:若设计存在Block,则需要连接Blockpins。点击‘OK’后,生成的版图如下:点击菜单栏PowerPowerPlanningAddStripes,即在设计中加入电源条Stripes,以防止整个版图中电压降过高。如下图:电源条线(powerstripes)的确定:主要包含四个参数:1.纵向电源条线的宽度:min:一般取垂直布线间距(pitch)的整数倍max:一般不超过最小2输入NAND门宽度的4倍(SMIC0.18中为1.98um)2.纵向电源条线的间距:一般100~200um3.横向电源条线的宽度:一般是标准单元高度的整数倍,1倍或2倍(SMIC0.18中为5.04um)4.横向电源条线的间距:一般100~200um•本例中设置为:‘SetConfiguration’选项中,Direction:Vertical,即垂直方向;Layer:选择与垂直的电源环同层金属,即METAL5;Width:设为7.84um,实际根据设计的功耗大小,以及电压降情况的需要来设定其宽度与所需的条数。•’SetPattern‘选项中,选择’Numberofsets‘:设为8,即设定电源条的条数为8。•‘First/LastStripe’选项中,Xfromleft/right:都设为300um,考虑到Die的宽度为3200um,8条Stripes的分布情况。上述设置如下图所示:具体的电源条参数值需根据设计特点如功耗值,设计面积等信息进行设定。设置完成后,8条垂直电源条如下分布:上述若发现存在Stripes未连接上,则点击菜单栏RouteSpecialRoute,只选择‘Stripes(unconnected)’选项,如下图:然后点击‘OK’,自动连接可能存在的未连接上的Stripes。Place点击菜单栏PlaceStandardCells,开始标准单元的布局,如下图:其中,将NumberofThreads,即允许的同时运行的CPU个数设为4,根据需要及实际硬件资源情况进行设置。点击‘OK’后运行,版图结果如下:点击菜单栏RouteTrialRoute,进行预布线,如下:预布线完成后,设计如右图:点击菜单栏TimingExtractRC,提取RC信息,如下图:点击菜单栏TimingOptimize,进行时钟树前时序优化,如下图:DesignStage:选择‘Pre-CTS’项。OptimizationType:选择右图所示项。查看显示的优化后的时序结果,若存在setup时间违规,则再进行优化,直到结果基本不再变好。如下图存在setup的违规:点击菜单栏PlaceTieHi/LoAdd,即在设计中加入TieHigh/Low单元,如下图:•点击‘Select’选择加入的Cell名,选择TIEHI和TIELO二种单元,如下图,然后点击‘OK’即可。SynthesizingClockTrees点击菜单栏ClockDesignClock,开始生成时钟树,如下图:•点击‘GenSpec’,选择进行生成时钟树所用的Buffer的cell种类,点击‘Add’,加入右边‘SelectedCells’栏,如下图所示,然后点击‘OK’即可。生成时钟树后,形成的版图如下:(本例中由于设计非常小,但是pads非常多,属于pad限制面积型,因此下图中的标准单元部分较小,core相当稀疏。)点击菜单栏TimingExtractRC,提取RC信息,如下图:点击菜单栏TimingOptimize,进行时钟树后时序优化,如下图:DesignStage:选择‘Post-CTS’项。OptimizationType:选择右图所示项。查看显示的优化后的时序结果,若存在违规,则再进行优化,直到结果已大体不再变好。本例中结果如下:如图,即存在Setup时间的违规(负值)。Route点击菜单栏RouteNanoRouteRoute,进行最终的布线,如下图:在原来默认设置基础上,作如下设置:•‘RoutingPhase’选项中,选中‘OptimizeVia’,‘OptimizeWire’选项。•‘ConcurrentRoutingFeatures’选项中,选中‘InsertDiodes’,DiodeCellName:ANTENNA,即布线时插入名为ANTENNA的二极管以修复天线效应;选中‘TimingDriving’项,Effort:向右拉到最大,即采用时序驱动的方式布线;选中‘SIDriven’项,即选择了SI驱动方式,在布线时避免信号完整性问题;选中‘LithoDriven’项,即选择了光刻驱动方式,布线时考虑了光刻问题,设置如下图所示:根据设计特点不同,这些选项可灵活调整。•点击‘Attribute’键,设置一些Net的属性,如下:选中‘NetType’,选择‘ClockNets’,即对时钟Nets的布线作一些特殊设置。SkipAntenna:选择FALSE;SkipRouing:选择FALSE;AvoidDetour:选择TRUE;SIPrevention:选择TRUE;SIPostRouteFix:选择TRUE;Weight:10;Spacing:1。设置如下,然后点击‘OK’。其中,点击‘Help’,文档中有各项设置的具体意义说明。选中‘NetType’,选择‘CriticalNets’,即关键Nets的布线作一些特殊设置。Weight:5,其余设置同上述ClockNets的设置。设置如下,然后点击‘OK’。在不同的设计中,可根据设计的特点较灵活的选择不同类型Nets的特点,以满足要求。NanoRoute布线的结果如下:点击菜单栏TimingAnalysisConditionSpecifyRCExtractionMode,指定RC提取的模式,如下图:•Mode栏选择‘Sign-off’。•‘RunMode’项,选择‘Fullchip’,设置如下,然后点击‘OK’。点击菜单栏TimingExtractRC,提取RC信息,如下图:点击菜单栏TimingOptimize,进行布线后时序优化,如下图:DesignStage:选择‘Post-Route’项。OptimizationType:选择右图所示项。•如上步骤进行优化,可多次优化,直到结果基本不变好为止。本例中结果如下:本次加法器设计中,综合后的约束文件netlist.sdc中的周期设为1.2ns,如图,最坏路径存在sl

1 / 64
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功