数字后端流程二教材Word文件下载.docx
- 文档编号:13645074
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:49
- 大小:816.35KB
数字后端流程二教材Word文件下载.docx
《数字后端流程二教材Word文件下载.docx》由会员分享,可在线阅读,更多相关《数字后端流程二教材Word文件下载.docx(49页珍藏版)》请在冰豆网上搜索。
【7】script为了布局布线修改方便常会将运行的Astro命令导出到相应的脚本文件中,CTS前布局一次为一个脚本,CTS后优化布局为一个脚本,最后布线以及check为一个脚本,存放在script文件夹中分别命名为pnr_1.scmpnr_2.scmpnr_3.scm
【8】其余的文件夹分别存放输出的报告和网表以及gds文件,其中log文件夹中为Astro运行报告,rpt中为
AstroCTSclockskew分析报告,out中为gds文件和布局布线后网表,以及WireRC参数提取文件
*spef
Antenna_rules文件是截取Antenna_rules_*lm.clf文件的一部分一般只截取dbAddAntennaLayerRule的定义设计中如下截取:
define_libId(dbGetCurrentLibId)
dbDefineAntennaRule_libId4200
dbAddAntennaLayerRule
_libId4"
VIA12"
20'
(0.2030
83.33
75)
VIA23"
VIA34"
VIA45"
VIA56"
dbAddAntennaLayerRule_libId4"
METAL1"
400'
(0.2030400.002200)dbAddAntennaLayerRule_libId4"
METAL2"
METAL3"
METAL4"
METAL5"
METAL6"
(0.20308000.0030000)
dbDefine文件是为了Astro做时钟树综合优化时作准备的,在CTS之前需调用该文件,Astro做时钟树时只对它
默认的DFF的时钟管脚做相关处理一般是定义了clock但我们设计需要对一些多扇出的复位信号scan链信号做处理就需要专门声明下这也是时钟树需要处理的信号,就在dbDefine做这样的声明,一般有同步复位、异步复位、scan_enable以及宏单元的clk信号,异步复位最常用需要做scan链才定义SE,有Memory时才定义clk,具体设置如下:
(let*(
(selectedlist(geGetSelectedSet(getEditWindow)))
)
(for-each(lambda(x)(let*(
(instName(dbFetchObjectField(geGetEditCell)x"
name"
))
(dbDefineSyncPin(geGetEditCell)instName'
(("
RN"
"
nonInvertRise"
0)("
invertRise"
0)))(dbDefineSyncPin(geGetEditCell)instName'
SN"
0)))
;
(dbDefineSyncPin(geGetEditCell)instName'
SE"
CLK"
selectedlist
tdf文件定义相关的PAD或者是PIN的位置信息,坐标描述方法基本一致设计中根据实际的需要略有不同如
下:
tdfPurgePadConstr
define
step1
5
offset
50
off
pin"
clk"
3900
"
right"
(set!
offset(+step1offset))
rstn"
scan_mode"
mic_fm_sel"
3900"
0(set!
在Astro布局布线时需要根据DC综合时设置生成的时序约束文件对相关cel(l
standardcell)进行布局优化,
通常在Place设置时考虑congestion和time因素,通常考虑关键性的时序路径,满足设计的时序约束条件,而对于非关键路径的cell可以放置的远离些,增加延时,如果将非关键路径的cell布局在关键时序路径布局区域就会对其产生影响,使其布线拥塞增加布线难度。
而对于DC生成的时序约束文件并不是直接就是导入使用,DC中估算连线延时采用wire_load_model的方
法估算,但在Astro中我们实际对cell进行布线直接提取wire连线的RC信息计算netdelay更为精确接近实际设计,同时对各个时钟的uncertainty的定义也不需要了,CTS后各个时钟负载和延时可以达到最佳平衡uncertainty只由jitter引起,虽然还是会存在skew(几乎可以忽略),latency主要有2部分组成source_latency和network_latency一般设计只考虑network_latency,Astro不需要设置network_latency,CTS后各个DFF的network_latency的基本平衡了。
具体脚本如下:
#!
/bin/bash
#echo"
Enterthefilename(<
file>
.sdc)"
filename=ADPCM_Encoder
run:
#read$(filename)
cp$(filename).sdc$(filename).sdc.bak
echo"
:
%s/set_wire_load_model/#set_wire_load_model/g"
>
$(filename).vimrcecho"
%s/-dont_scale//g"
>
$(filename).vimrc
%s/set_isolate_ports/#set_isolate_ports/g"
%s/set_clock_latency/#set_clock_latency/g"
%s/set_clock_uncertainty/#set_clock_uncertainty/g"
>
w!
$(filename).vimrcvim-e-s$(filename).sdc<
rm$(filename).vimrc
Astro布局布线主要流程
*******************************************************************************************
pnr1.scmCTS之前布局布线以及优化设置
【1】设置db库总线名称属性类型
dbSetLibBusNameStyle“lib/silterra18”“[%d]”
【2】导入相关db文件到工艺库文件
1.ChooseTools>
DataPrep2.ChooseCellLibrary>
LibraryPreparation3.ClickthePrepareLogicalLibrarybutton4.ClicktheLIB/DBbutton
gePrepLibs
setFormField"
LibraryPreparation"
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 后端 流程 教材