IC设计后端流程(初学必看)_第1页
IC设计后端流程(初学必看)_第2页
IC设计后端流程(初学必看)_第3页
IC设计后端流程(初学必看)_第4页
IC设计后端流程(初学必看)_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、基本后端流程(飘雪扭曲)- 2010/7/3 - 2010/7/8本教程将使用8*8乘法器来执行从verilog代码到布局的整个过程(当然,这只是基本过程,因为真正的大规模设计不是那么容易完成的)。本教程的目的是让大家尽快了解数字集成电路设计的一般过程,为以后的学习打下基础。本教程只是我探索实验的结果,这并不意味着所有的内容都是正确的,而只是为了解释一般的过程。其中肯定有很多不完善和错误,我会在以后的学习中一个一个的改进和修改。后端流程一般包括以下内容:1.逻辑综合(逻辑综合是为什么你不用解释?(2.设计的正式验证(工具形式)形式验证是功能验证,主要验证过程中各阶段的代码功能是否一致,包括合成

2、前的RTL代码验证和合成后的网表验证。由于现在集成电路设计的规模越来越大,在门级动态模拟网表需要很长时间(如果规模很大,甚至需要几周),这对于时间要求严格(设计周期短)的asic设计来说是不可容忍的,正式验证只能在几个小时内完成。此外,因为时钟树是在布局之后合成的,所以时钟树的插入意味着输入到布局工具中的原始网表已经被修改,所以有必要验证它在逻辑上等同于原始网表。3.静态时序分析在某种程度上是专用集成电路设计中最重要的一步。黄金时间用于分析整个设计布局前的静态时序。如果没有时间冲突,继续下一步,否则,再次合成。(签署的时间序列分析也需要在公共关系之后进行)4.综合网表的自动布局和路由是利用ca

3、dence公司的soc遭遇战实现的5.在自动布局之后,特定的延迟信息(sdf文件,由寄生RC和互连RC组成)在网表上被反向标记,然后进行静态时序分析。与合成类似,静态时序分析是一个迭代过程,与芯片布局和布线密切相关。该操作通常需要执行多次,以满足时序要求。如果没有违规,继续下一步。6.APR后的门级功能模拟(如有必要)7.实施刚果民主共和国和LVS。如果通过,继续下一步。8.用抽象提取这个8*8乘数,生成一个lef文件,相当于一个硬宏。9.将此宏称为另一个顶级设计中的模块。10.设计一个新的专用集成电路。对于第二种设计,我们需要添加焊盘,因为没有焊盘,它就不是一个完整的芯片。具体操作将在下面描

4、述。11.重复步骤4至71.逻辑综合1)设计的8*8verilog代码如下模块多路复用器(clk、clr、data1、data2、data out);输入clk,clr输入7:0 data1,data2输出寄存器15:0data out;总是(posedge clk)开始如果(!clr)开始data out=0;目标其他开始dataout=data1 * data2目标目标终端模块2)在合成之前,我们应该选择库,写约束,修改启动文件synopsys_dc.setup的dc,并选择TSMC的典型db(本设计使用TSMC18库)作为目标库。(最好选择max library)Dc有很多命令,但最基本

5、的命令是相似的。此设计的约束文件命令如下:create _ clock-period 10get _ port sclk/用于创建时钟set _ clock _ latency-source-max 0.2get _ port sclk/从外部时钟到内核的clk连接延迟set _ clock _ latency-max 0.1get _ port sclk/从内核clk到寄存器clk的净连接延迟Set _ clock _不确定性-setup 2get _ port sclk/时钟延迟的不确定性,当设置违反规定时,将考虑该不确定性设置_时钟_不确定性保持1【所有_时钟】set _ input _

6、 delay-max 0.5-clock clkget _ portlistremove _ from _ collall _ inputsclk/输入延迟,外部信号到输入端的连接延迟set _ output _ delay-max 0.5-clock clkall _ outputs/输出延迟set _ driving _ cell-lib _ cell in x4all _ inputs/输入端的驱动强度set _ load-pin _ load 0.0659726all _ outputs/输出端的驱动力set _ wire _ load _ model-name TSMC 18 _ w

7、l10-库典型值/内部网的连线模型设置_焊线_加载_模式封闭式/定义建模连线负载相关模式set_max_area 0编制报告时间(_ t)报表约束(_ r)change _ name-rule verilog-hierset _ fix _ multi _ port _ net全部写格式verilog-hier-输出多路复用器。SV/输出网表,自动布局布线需要写格式ddc -hier -output mux.ddc /输出ddcwrite_sdf mux.sdf /输出延时文件,静态时序分析时需要write_sdc mux.sdc /输出约束信息,自动布局布线需要3)逻辑综合启动设计愿景。读多

8、路复用器。v输入约束文件文件-执行脚本-验证之后会产生mux.sv、mux.sdc、mux.sdf、mux.ddc等文件4)时序分析综合以后我们需要分析一下时序,看时序是否符合我们的要求,综合实际上是一个设置时间的满足过程,但是我们综合的时候,连线的负载只是库提供的(即上面的线负载),并不是实际的延时,所以一般做完综合以后,时间余量(松弛(应该为时钟的30%(经验值),以便为后面实际布局布线留下充足的延时空间。因为如果松弛的太小,甚至接近于0,虽然我们看起来是没有时序违规的,但是实际布局以后,时序肯定无法满足。使用报告时间(_ t)命令,可以查看时序分析报告:* * * * * * * * *

9、 * * * * * * * * * * * * * * * * * * * * * * * *报告:计时-路径已满-最大延迟-最大路径1-排序依据组设计:多路复用器版本: D-2010.03-SP1日期: Fri 2010年7月2日12:29336044* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *操作条件:典型库:典型(模型库(封闭式:型电线负载起始点:数据24(输入端口由clk计时(端点dataout _ reg _ 15 _(由clk计时的上升沿触发触发器(路径组: clk最大路径类型:分布式电源/集群

10、/端口有线负载模型库-mux tsmc18_wl10(典型值(线载模型及库(点增量路径-时钟clk(上升沿0.00 0.00时钟网络延迟(理想0.00 0.00输入外部延迟0.50 0.50 f数据24 (in) 0.01 0.51 fmult _ 14/b4(mux _ DW _ mult _ uns _ 0)0.00 0.51 fmult_14/U131/Y (INVX1) 0.54 1.05 rmult _ 14/U161/Y(NOR2X 1)0.14 1.18 fmult _ 14/U39/S(CMPR42X 1)0.68 1.87 fmult _ 14/U12/CO(ADDFX2)0

11、.32 2.19 fmult _ 14/U11/CO(ADDFX2)0.23 2.42 fmult _ 14/U10/CO(ADDFX2)0.23 2.65 fmult_14/U9/CO (ADDFX2) 0.23 2.88 fmult_14/U8/CO (ADDFX2) 0.23 3.10 fmult_14/U7/CO (ADDFX2) 0.23 3.33 fmult_14/U6/CO (ADDFX2) 0.23 3.56 fmult_14/U5/CO (ADDFX2) 0.23 3.79 fmult_14/U4/CO (ADDFX2) 0.23 4.02 fmult_14/U3/CO (ADDFX2) 0.23 4.25 fmult_14/U2/CO (ADDFX2) 0.22 4.47 fmult _ 14/product15(mux _ DW _ mult _ uns _ 0)0.00

温馨提示

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

评论

0/150

提交评论