DC中的TCL
DC逻辑综合
变量的设定:设置的变量在DC启动时读入,便于综合的处理,同时有些DC的 变量必须在设置文件中输入。如可以设定命令的简写,保存多少条命令等: alias cud current_design alias rpt report_timing history keep 300
11
综合脚本实例(.synopsys_dc.setup)
✓ 符号库(symbol_library): 定义了单元显示的图形库,当用design_vision来查看图形的时候使用。
✓ 综合库(synthetic_library): 是由Synopsys公司提供的DesignWare库,包含了许多IP核及运算单元,用于 实现verilog描述的运算符,为电路的优化起着重要的作用。
set_operating_conditions -max slow -max_library slow -min fast -min_library fast
可以用set_min_library指定best和worst两种库,在设计中所用到的 库都可以指定。如: # 为综合用的sram库指定最佳情况可最坏情况
。
8
目标库和初始环境的设置
DC启动时会先启动.synopsys_dc.setup文件,它里面设定了综合所需要的工 艺库的信息以及一些对于工具的设定命令。
启动时,DC会以下述顺序搜索并装载相应目录下的启动文件: 1)、DC的安装目录; 2)、用户的home目录; 3)、当前启动目录。 注意:后装载的启动文件中的设置将覆盖先装载的启动文件中的相同设置。
由于时钟一般是高扇出(high fanout)的,DC不会对高扇出的连线做设计 规则(DRC)的检查和优化。DC默认的时钟网络是理想的。在综合时不对时 钟的高扇出做处理,而是留在后续的布局布线中做时钟树综合(CTS)。
TCL的企业文化
TCL的企业文化TCL集团是一家全球率先的消费电子产品创造商和供应商,总部位于中国深圳。
作为一家具有悠久历史和卓越业绩的企业,TCL向来致力于打造一种独特且有活力的企业文化,以推动企业的发展和员工的成长。
1. 使命和愿景:TCL的使命是通过创新科技和卓越服务,为全球消费者提供高品质的电子产品和解决方案,成为全球率先的科技品牌。
公司的愿景是成为一个受人恭敬的企业,为员工、股东和社会创造价值。
2. 核心价值观:TCL坚持以客户为中心,追求卓越品质和创新,注重员工发展和社会责任。
公司的核心价值观包括:- 客户至上:始终以满足客户需求为首要任务,提供优质产品和服务,与客户建立长期合作关系。
- 创新驱动:不断推动技术创新和产品研发,满足市场需求,引领行业发展。
- 团队合作:鼓励员工之间的合作与交流,共同努力实现个人和团队的目标。
- 诚信朴重:始终遵循商业道德和法律法规,以诚信和透明的方式开展业务。
- 社会责任:关注环境保护和社会福利,积极参预公益事业,为社会做出贡献。
3. 企业文化建设:TCL注重企业文化的建设,通过以下方式营造积极向上的工作氛围和员工价值观:- 员工培训和发展:投资培训项目,提供丰富多样的学习机会,匡助员工提升技能和职业发展。
- 激励和奖励机制:设立激励和奖励机制,鼓励员工积极工作,激发创造力和团队合作精神。
- 沟通和反馈渠道:建立开放的沟通渠道,鼓励员工提出意见和建议,促进信息流通和问题解决。
- 文化活动和庆典:组织各种文化活动和庆典,加强员工之间的交流和凝结力,营造团队合作和积极向上的氛围。
4. 成果和影响:TCL的企业文化建设取得了显著的成果和积极的影响:- 品牌声誉提升:TCL以其卓越的产品质量和出色的服务赢得了全球消费者的信赖和好评,成为全球知名的品牌之一。
- 员工满意度提高:通过提供良好的工作环境和发展机会,TCL吸引了一批优秀的员工,并提高了员工的工作满意度和忠诚度。
- 社会责任履行:TCL积极参预社会公益事业,关注环境保护和社会福利,为社会做出了积极的贡献。
DC使用说明
Design Compiler(DC)使用1.建立逻辑综合环境,熟悉DC命令建立逻辑综合环境的命令是:new_dc [文件名],例如new_dc mydesign,就是在当前目录下新建一个名为mydesign的DC综合环境。
环境如图1 环境实例所示。
图1 环境实例在mydesign目录下,Readme文件给了我们怎么使用工具的提示;filelist.tcl文件是给出需要综合代码的路径和文件名。
在synopsys.sdc文件中我们设置设计约束和设置工作环境,比如建立时钟,设置输入延时和输出延时等等。
在top.tcl文件中设置顶层模块名,设置库文件名,以及读入设置好的clock和输入、输出约束的文件,以及分析并报告结果。
.synopsys_dc.setup文件是DC工具的设置文件。
2.以加法器Adder_Array为例说明具体使用步骤。
Adder_Array共有5个设计文件,分别为顶层模块Adder_Array.v,状态机模块FSM.v,数据通过模块Data_Path.v,加法器模块adder_21.v,减法器模块Add_Sub_21.v。
Adder_Array 综合的步骤如下:(1)Adder_Array的设计文件添加到filelist.tcl中。
如图2 文件列表图2 文件列表(2)在top.tcl中将顶层模块设置为Adder_Array。
如图3修改顶层模块名图3 修改顶层模块名(3)修改synopsys.sdc实现以下设计约束:时钟周期1.2ns,input_delay设置为0.5ns,output_delay设置为0.5ns。
如果使用者想增加其他的设计约束可以在此文件中增添。
(4)进入刚才建好的综合环境,在终端中执行run命令,调用Design Compiler执行逻辑综合。
打开终端:cd [建好的环境路径],进入后输入run,即可。
(5)等逻辑综合执行完毕后,查看123.log,对其中的error和warning进行确认,如果有问题修改设计或综合脚本后重新综合,直至没有问题。
TCL液晶电视标准单元电路原理(图)
TCL液晶电视标准单元电路原理(图)前言:TCL公司近几年来研发的机器,细心的同事肯定也会发现,其实各个不同型号之间的很多单元电路都是一样的。
这种做法,能增加机器的稳定性也节省研发成本,相应也提升了我们日常维修工作的容易度,这就是研发采用标准化电路的优点。
一、5V-1.2V DC-DC电路用途及功能:用于给IC 内核供电的低压大电流供电电路。
电路原理介绍:此电路是一个DC转DC的控制电路,它具有大电流、低干扰,采用元器件最优化,能完全满足数字板1.2V电路的需要。
电路中C1、C2是波波电路;R2、R3、R4组成的电路是取样电路,从这里取样的电压输入到IC的1脚,从而对输出电压的调整。
二、24V→5.1V DC-DC 电路用途及功能:用于将24V 电压降压成5.1V,给下一级DC-DC 电路、USB 或者LDO 供电。
电路原理介绍:U1:RT8110是一个DC-DC 的电源IC,以前已在其他机芯上大量使用,一个同步BUCK 降压的模式,通过R1,R2,R3分压来设定输出电压值,U1的8脚接收到反馈信号后调节PIN2 和PIN4输出方波的占空比,控制Q2,Q1 的两个MOS 管的导通时间,从而达到稳压的目的MS58机芯的-U801(12V-5V)参考测试点三、24V→12V DC-DC 电路用途及功能:用于将24V 电压降压成12V,给PANEL 供电或者给下一级DC-DC 电路或者LDO 供电。
电路原理介绍:24V 转12V,使用的MP1593,这个IC 在其他机型上大量使用,是一个BUCK 降压型,通过电阻分压取样来设置输出电压,第八脚为软启动,第七脚为使能脚,正常工作为高电平,第六脚为补偿,第五脚为FB 反馈电压,正常工作为1.22V 左右,第一脚为自举升压脚,接一个电容到续流二极管的负端。
第三脚为内部MOS 推挽输出接到续流二极管的负端同储能电感相连。
内部MOS 管导通期间向电感储能同时向负载提供供电,内部MOS 管关断时电感释放能量通过二极管续流,来达到降压的目的。
TCL液晶电视逻辑板的原理与维修方案——图解
TCL液晶电视逻辑板的原理与维修方案——图解一、逻辑板概述T-CON板,即我们常说的逻辑板,它的结构框图如图1所示,它又被称为中控板、解压板、解码板,是液晶屏显示视频图像信号的关键部件,英语为Timer-Control(时序控制器),缩写为T-CON。
液晶屏驱动电路的供电系统,主要产生四路驱动电路所需的电压,见图1所示。
(1 )VDD:一般为3.3V,用于逻辑板集成块的供电;(2 )VGL:屏TFT薄膜开关MOS管的关断电压,一般为一5V、VGL电压产生电路原理图如图2所示;(3)VGH:屏TFT的开通电压,一般为20V~35V、VGH电压产生电路原理图如图3所示;(4)VDA:屏数据驱动电压,一般为14V~20V,由伽马校正电路产生灰阶电压,灰阶电压约有14路不同的阶梯电压;(5)Vcom:屏公共电极电压(伽马校正电压最大值的1/2)。
不同的屏VGL、VGH电压值不同,它们的产生电路如图4所示(VGL的产生电路为UP1的⑧、⑩、14脚,VGH的产生电路为UP1的11、13、24脚)。
以上任一电压出现问题,都会出现不同的图像故障,是故障多发部位。
逻辑板的工作条件如下:(1)从数字板传输过来的LVDS信号(包括:RGB基色信号、行同步信号、场同步信号、使能信号、时钟信号);(2)格式脚,控制电压符号是:SELLVDS或LVDS OPTION、格式控制电压为高、低电平;(3)屏供电多为12V或5V,现在屏多数是12V,如是全高清屏全部是12V供电。
逻辑板的作用:把主板电路送来的LVDS信号转换为供液晶屏显示的栅极驱动信号及源极驱动信号,完成LVDS到MINILVDS的转换输出,同时输出Source/Gate Drive:所需的各种控制时序。
具体就是把主板送来的LVDS信号经过转换,产生向“栅极驱动电路”及“源极驱动电路”提供为进一步转换需要的各种控制信号(STV、CKV、STH、CKH、POL)及图像数据信号(RSDS)。
DC逻辑综合(DC课件整理)
A D SET Q
这些变量必须准确指定,否则可能产生意外的结果,灵活的使用这些变量可 以可以大大减少工作量例如:你可以指定了一个标准单元库作为一个目标库 (target_library),然后在 link_1ibrary 列表中指定压焊点工艺库以及所有其 它的宏模块(RAMS、ROMs、etc.),这意味着用户将能够利用标准单元库出现的 单元综合设计,然后再在设计中连接 pads 和宏模块的实例,如果压焊点工艺库 被包含在 target_1ibrary 列表中,那么 DC 可能使用 pads 综合内核的逻辑。 target_1ibrary 名也应该被包含在 link_1ibrary 列表中,这很重要,因为如果 link_library 中没有 target_library 的内容,那么当把门级网表读入 DC 中时, DC 将不能解析在网表中映射的单元,这种情况下 DC 产生警告信息,它不能解析
关键变量的介绍:
1、target_1ibrary变量:是DC中保留的变量,这个变量指定的库是DC用来构建
一个电路的。DC进行映射的几个步骤:设置它让它指向你的生产商提供的库文件。
使用厂家提供的工艺库中的时序数据计算这些门的时序。从target_1ibrary指定
的库中选择功能正确的门。设定目标库使用如下语句: set target _1ibrary
详细布线
版图设计后进 行STA
时序满足将要求吗
DC的基本操作流程
DC的基本操作流程design compiler 废了九⽜⼆虎之⼒装上了虚拟机。
1.可以在任何路径下打开 gui 界⾯。
输⼊dv&不⾏(安装时候初始化是这样的),直接⽤命令design_vision 就会出现gui界⾯。
2,setup,可以tcl进⾏配置,奈何命令学的不精,只能⼿动进选择。
刚开始配置时总会出现Could not read the following target libraries:。
重新建了⼀个prj>decoder>libraray .把晶圆⼚给的⼯艺 IO_std 下的 smic18.sdb(符号库⽂件)和typical.db(⽬标⼯艺库⽂件)⽂件复制到libraray下⾯。
然后加载到setup下⾯。
可以完成library的读取。
该系列实验⽤的是13的guide和lab,均可以在eetop上找到!Lab1:实验流程:1、打开 common_setup.tcl ⽂件,修改包含逻辑库、设计、脚本的路径:set ADDITIONAL_SEARCH_PAT,逻辑⼯艺库⽂件:set TARGET_LIBRARY_FILES,符号库⽂件:set SYMBOL_LIBRARY_FILES,⽤户定义的 Milkyway 设计库名称:set MW_DESIGN_LI,Milkyway所参考的库⽬录:set MW_REFERENCE_LIB_DIRS;2、键⼊命令 dc_shell 打开 dc 命令⾏模式,键⼊命令 printvar search_path、printvar target_library、printvar link_library 查看库搜索路径、⽬标库和链接库:在这⾥插⼊图⽚描述输⼊ alisa 查看命令的对应⾃定义缩写,check_library 除了检查逻辑库和物理库的完整性,还可以查看最⼩时间、电容、功耗、电流单位:在这⾥插⼊图⽚描述3、读⼊设计 v ⽂件并与逻辑库相连接read_file -format verilog ./rtl/TOP.v、 current_design TOP、link查看设计⽂件名和与之连接的逻辑库等库的名字:list_designs、list_libs在这⾥插⼊图⽚描述4、读⼊约束⽂件 source TOP.concompile_ultra 完成编译在这⾥插⼊图⽚描述AREA 表⽰设计电路的总⾯积,WORST NEG SLACK 表⽰最坏的路径裕度(负值)。
DC基本概念了解(市中)
有库存 有主料 位、有 副料位
无库存 无主料 位、无 副料位 无库存 无主料 位无副 料位 无库存 无主料 位、无 副料位
分店利用DC-OPL 报表向DC订货
此类商品在做促销大 量配货时会采用 FLOW 订货方式,正 常时依DC-OPL配货
此类商品做促销或分 店有紧急需求时采用 FLOW 订货方式
按品项显示订购 量(一单可多品 项)
HOST系统、分店系统的概念及联结
定义
总公司系统(HOST):总公司使用之系统DC存控是在总公司系统作业,分店 可通过特定设置连线总公司做查询或输入 分店系统(ST):分店使用之系统 仓库系统(WMS):仓库内部作业使用之系统
不同系统的连接关系
每日22:00日结
总公司
每日18:00日结
分店系统 仓库系统
说明:1、总公司系统与分店系统日结时间为每日22:00营业结束 2、总公司系统与仓库系统每日日结为18:00日结时间约为1小时,在此期间存控无法下单 Keyin小组无法做系统维护,仓库系统无法登记作业 3、分店系统与仓库系统无法连接关系,需通过总公司系统
DSP商品与DC商品的转换流程
DSP商品转为DC商品
只有PO单的总 量(一单最多10 个品项或4000 箱)
按品项至 DC交货
DC收货完成后按 各店的SO单量做 分配,再配至分 店
DC收货完成后按 各店的SO单量做 分配,针对PO大 于SO的量由料架 课上架
按品 项清 点数 量
按品 项清 点数 量
SD154
5
此类商品做促销或分 店有紧急需求时采用 FLOW 订货方式,或 用DC大仓库存分配
DC配送中心(Distribution Center)
DC综合中的时序约束、时序分析
DC综合中的时序约束、时序分析A时序约束的概念和基本策略时序约束主要包括周期约束(FFS到FFS,即触发器到触发器)和偏移约束(IPAD到FFS、FFS到OPAD)以及静态路径约束(IPAD到OPAD)等3种。
通过附加约束条件可以使综合布线工具调整映射和布局布线过程,使设计达到时序要求。
例如用OFFSET_IN_BEFORE约束可以告诉综合布线工具输入信号在时钟之前什么时候准备好,综合布线工具就可以根据这个约束调整与IPAD相连的Logic Circuitry的综合实现过程,使结果满足FFS的建立时间要求。
附加时序约束的一般策略是先附加全局约束,然后对快速和慢速例外路径附加专门约束。
附加全局约束时,首先定义设计的所有时钟,对各时钟域内的同步元件进行分组,对分组附加周期约束,然后对FPGA/CPLD输入输出PAD附加偏移约束、对全组合逻辑的PAD TO PAD路径附加约束。
附加专门约束时,首先约束分组之间的路径,然后约束快、慢速例外路径和多周期路径,以及其他特殊路径。
附加约束的基本作用提高设计的工作频率对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。
通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。
获得正确的时序分析报告几乎所有的前端设计平台都包含静态时序分析工具,利用这类工具可以获得映射或布局布线后的时序分析报告,从而对设计的性能做出评估。
静态时序分析工具以约束作为判断时序是否满足设计要求的标准,因此要求设计者正确输入约束,以便静态时序分析工具输出正确的时序分析报告。
周期(PERIOD)的含义周期的含义是时序中最简单也是最重要的含义,其它很多时序概念会因为软件商不同略有差异,而周期的概念确是最通用的,周期的概念是FPGA/ASIC时序定义的基础概念。
后面要讲到的其它时序约束都是建立在周期约束的基础上的,很多其它时序公式,可以用周期公式推导。
Tcl与DesignCompiler(三)——DC综合的流程
Tcl与DesignCompiler(三)——DC综合的流程1、基本流程概述⾸先给三个图,⼀个图是⾼层次设计的流程图:下⾯是我对这张图的理解: ①设计之前,准备好库、HDL代码的思想、约束⽣成;然后根据设计思想⽤ RTL 源码详细地、完整地为设计建⽴模型、定义设计中寄存器结构和数⽬、定义设计中的组合电路功能、定义设计中寄存器时钟等等的设计规格和实现。
②完成 RTL 源码设计之后,应让设计开发与功能仿真并⾏进⾏: ·在设计开发阶段,我们使⽤ DC 来实现特定的设计⽬标(设计规则和优化约束),以及执⾏默认选项的初步综合. ·如果设计开发结果未能在 10%的偏差范围内满⾜时序⽬标,则需要修正 HDL 代码,然后重复设计开发和功能验证的过程. ·在功能仿真中,通过特定的⼯具来确定设计是否能按如所需的功能⼯作. ·如果设计未能满⾜功能要求, 我们必须修改设计代码以及重复设计开发和功能仿真. 继续设计开发和功能仿真直⾄设计功能正确及满⾜⼩于 10%偏差的时序⽬标. ③使⽤ DC 完成设计的综合并满⾜设计⽬标.这个过程包括三个步骤,即综合=转化+逻辑优化+映射,⾸先将 RTL 源代码转化为通⽤的布尔等式,然后设计的约束对电路进⾏逻辑综合和优化,使电路能满⾜设计的⽬标或者约束,最后使⽤⽬标⼯艺库的逻辑单元映射成门级⽹表,在将设计综合成门级⽹表之后,要验证此时的设计是否满⾜设计⽬标.如果不能满⾜设计⽬标,此时需要产⽣及分析报告确定问题及解决问题 ④当设计满⾜功能、时序以及其他的设计⽬标的时候,需要执⾏物理层设计最后分析物理层设计的性能,也就是使⽤DC的拓扑模式,加⼊floorplan的物理信息后进⾏综合分析设计的性能。
如果结果未能满⾜设计⽬标,应返回第三步.如果满⾜设计⽬标,则本部分设计周期完成. ⼀个图是DC在设计流程中的位置: 这个图将上⾯的流程图细化,着重与DC的部分,描述了使⽤DC进⾏逻辑综合时要做的事,同时,也是对前⾯的流程图解说的图形概述。
DC-Tcl教程
用“\”引用一些特殊符号,例如: set x 7 set y \$x 注:这里 y 的值是$x,而不是 7。
命令嵌套和引用: “ ”表示弱引用,其内包含的嵌套命令和变量替代仍旧有效,例如: set a 5 set s “temp = data[$a]” 注:s 的值为 temp = data[5] { }表示强制引用,其内的所有字符包括$符号都作为字符付给变量,例如: set a 5 set s {temp = data[$a]} 注:s 的值为 temp = data[$a]
通配符: ?表示一个字符(PrimeTime only) * 表示任意多个(包括 0 个)字符
特殊字符: $ 获得变量的值,比如$sum 返回变量 sum 的值 [ ] 执行其内包含的命令,并返回命令执行的值 “” 内容作为一个整体,其内支持$与[ ]符号的作用,如支持变量替代 {} 内容作为一个整体,但其内不支持$、[ ]以及转义字符\的作用 \ 转义符 ( )用于访问 array 的元素,e.g., $env(HOME) ; 命令行结束,可有可无
集合(Collection): 以下是在 DC-Tcl 中生成集合的一部分命令: get_cells get_clocks get_designs get_libs get_nets get_pins get_ports all_clocks all_designs all_inputs all_outputs all_registers 举例说明: # Constrain a design for timing, using a time budget set CLK_PER 10.0; # clock period (ns) set time_budget 40.0; # percentage of clock period allowed for input/output logic # calculate intermediate variables set IO_DELAY [expr ( (1-$time_budget/100.0) * $CLK_PER)] set all_except_clk [remove_from_collection [all_inputs] [get_ports Clk] ] # constrain the design for timing create_clock –period $CLK_PER –name MY_CLOCK [get_ports Clk] set_input_delay $IO_DELAY –max –clock MY_CLOCK $all_except_clk set_output_delay $IO_DELAY –max clock MY_CLOCK [all_outputs]
EDA技术_Synopsys公司逻辑综合工具DC 介绍 part2
2013-7-9
21
Synopsys工艺库—功能、时序等 属性信息
2013-7-9
22
Synopsys工艺库——逻辑库
EDA技术实验
延时计算 Synopsys支持的延迟模型有:
CMOS通用的延迟模型 CMOS分段的线性延迟模型 非线性的查找表延迟模型
DSM的设计,前两种延迟模型不常用, 非线性延迟模型以输入的跃迁时间和输出 的容性负载为参变量计算延迟的时间值, 其结果以表格的形式列出供DC查找。
2013-7-9
12
Design Compiler Interfaces
EDA技术实验
1) dc_shell-t(DC-Tcl)
2) dc_shell(DCSH)
3) Design Analyzer
4) Design vision
in 2000.11 release
2013-7-9
13
CONTENTS
2013-7-9
18
Synopsys工艺库——逻辑库
EDA技术实验
环境描述:用于对PVT的偏差建模。
工作条件(operating conditions) 线负载模型(WLM, wire load model) 时序范围模型
2013-7-9
19
Synopsys工艺库——逻辑库
EDA技术实验
工作条件(operating conditions):指 定了工艺、温度、电压以及RC树模型, 用于设计的综合和时序分析。例如:
2013-7-9 23
Synopsys工艺库——逻辑库
EDA技术实验
设计人员了解工艺库,在于正确使用和 理解逻辑库,而不在于与库设计者相关的 细节上。
DC综合UPF的学习这周主要是学习DC综合的一些常用的TCL命令...
DC综合UPF的学习
这周主要是学习DC综合的一些常用的TCL命令,了解库的运用,查看了TSMC的库的内容,并将低功耗的库添加到实例程序中进行综合。
1、在学习DC时,沿用前面学习UPF的一个实例,有UPF完整描述的工程,读取UPF 脚本后查看电源管理方案,可以得到如下对工程的电源管理的描述
图 1 电源管理方案的结构图
2、在加入电源管路的方案后,DC综合将不同电压域的模块区别开来,可以用DC中的图形模式design vision看到设计综合后的结果。
图 2 工程的外部端口
图 3 顶层结构
下图为电源管理方案的隔离方案的实现情况,该方案的实现是通过与门和或门实现的。
图 4 隔离方案的与门
图 5 隔离方案的或门。
特克达TCL-DC系列工业级DC DC转换器说明书
Industrial DC/DC-ConverterTCL-DC Series, 24 to 60 WattFeatures◆ Ultra-wide input voltage range ◆ Output voltage adjustable◆ Overload and short circuit protection ◆ Low ripple and noise ◆ I/O isolation 1500 VDC ◆ Compact, slim plastic case◆ Reliable snap-on mount on DIN-rail ◆ Bracket for wall mount included ◆ 3-year product warrantyIn the TCL range of DIN-rail power supplies are 6 models for DC input voltage avail-able. The wide input ranges of 9.5–18 VDC resp. 18–75 VDC means these models can be operated from all popular DC supply voltage systems.With tightly regulated output voltage these DC/DC converters provide a reliable power source for sensitive loads in industrial process controls, factory automation and other equipment exposed to a critical industrial environment. Further applica-tions for these converters are isolation of a specific load or refreshing the 24 V bus voltage. Easy installation is provided with snap-on mounting on DIN-rails and detachable screw terminal block.UL 508C BSchemeInput power at no load 1.0 Watt max.Start-up voltage/under voltage shut down TCL 012 model:8.4 VDC / 7.6 VDCTCL 024 & TCL 060 models:17.2 VDC / 15.7 VDCReverse polarity protection by internal fuseEfficiency 86 % typ.Output voltage adj. range 5 VDC model: 5.0 – 5.25 VDC12 VDC models: 12.0 – 15.0 VDC24 VDC models: 24.0 – 28.0 VDCRegulation – Input variation Vin min. to Vin max.0.5 % max– Load variation 0...100%0.5 % maxRipple and noise (20 MHz bandwidth)<50 mV pk-pkElectronic short circuit protection current limitation at 110 % typ.(constant current, automatic recovery) Overvoltage protection, trigger point 5 VDC model: <6.5 V12 VDC models:<24 V24 VDC models: <42 VTemperature ranges – Operating–25°C to +70°C max.– Storage (non operating)–25°C to +85°CTemperature derating TCL 012 & TCL 024 models: 1.5 %/K above +50°CTCL 060 models: 2.0 %/K above +40°CHumidity (non condensing)95 % rel. H max.Temperature coefficient 0.02 %/KSwitching frequency 55 – 180 kHz depending on load(frequency modulation)Isolation voltage (60 sec.)– Input/Output 1500 VDCReliability, calculated MTBF at +25°C (according to IEC 61709)>2.5 Mio hSafety standards – Information technology equipment IEC 60950-1, EN 60950-1 (output SELV),UL Std. 60950-1 (2nd Edition) +Am1:2011,CAN/CSA-C22.2 No. 60950-1-07 +Am1:2011 – Industrial control equipment UL 508– Electronic equipment for power installation EN 50178– Electrical equipment for machines EN 60204Safety approvals – UL approval -> certificationsUL 508C listed, CSA C22.2 No.14 File e210002 Electromagnetic compatibility (EMC), emissions EN 61000-6-3– Conducted RI suppression on input EN 55022 class B– Radiated RI suppression EN 55022 class BElectromagnetic compatibility (EMC), immunity EN 61000-6-2– Electrostatic discharge (ESD)EN 61000-4-2 4 kV / 8 kV– Radiated RF field immunity EN 61000-4-3 10 V/m– Electrical fast transient / burst immunity EN 61000-4-4 Level 3– Surge immunity EN 61000-4-5 Level 3– Immunity to conducted RF disturbances EN 61000-4-6 10 VrmsEnvironmental compliance – Reach /info/reach-declaration.pdf – RoHS RoHS directive 2011/65/EUCase protection IP 20 (IEC 60529)Enclosure material plastic UL 94V-0 ratedMounting DIN-rails as per EN 50022-35x15/7.5(snap-on with self-locking spring)bracket for wall/chassis mount included Installation instructions /overview/tcl-dcAll specifications valid at nominal input voltage, full load and +25 °C after warm-up time unless otherwise stated.Rev. April 9, 2019Page 3 of 3adjustDimensions in [mm], () = InchTolerances: ±0.5 (±0.02)Case DimensionsWall Mounting BracketInstead on a DIN-rail, the modules can be also mounted on a chassis or wall with help of a mounting bracket which is supplied as standardwith each ConverterDC-ON LEDadjustTCL 012 and TCL 024 modelsTCL 060 model。
DC综合全过程及使用的命令
DC综合全过程及使用的命令DC的初始化文件.synopsys.dc.setup,该文件是隐藏文件,需要用ls –a显示读取文件DC支持多种硬件描述格式,.db .v .vhd等对于dcsh工作模式来说,读取不同的文件格式需要不同的参数Read -format Verilog[db\vhdl ect] file //dcsh工作模式对于tcl工作模式来说,读取不同文件格式使用不同的命令。
Read_db file.db //tcl工作模式读取db格式Read_verilog file.v //tcl工作模式读取verilog格式Read_vhdl file.v //tcl工作模式读取vhdl格式读取源程序的另外一种方式是配合使用analyzer命令和elaborate命令;Analyzer是分析HDL的源程序并将分析产生的中间文件存于work(用户可以自己指定)的目录下Elaborate则在产生的中间文件中生成verilog的模块或者VHDL的实体缺省情况下,elaborate读取的是work目录中的文件当读取完所要综合的模块后,需要使用link命令将读到DC存储区中的模块或实体连接起来注意:如果在使用link命令后,出现unresolved design reference的警告信息,需要重新读取该模块,或者在.synopsys_dc.setup 文件中添加link_library,告诉DC到库中去找这些模块,同时还要注意search_path中的路径是否指向该模块或单元电路所在的目录Link命令执行后,DC就将模块按照RTL级或者门级的描述将电路连接起来,之后的各种限制条件就可以对该电路的顶层模块施加DC限制条件施加的对象针对以下电路成分:输入输出端口、模块、子模块的实例化、单元电路、连线及电路的引脚。
在使用DC命令的时候,不要使用模糊的对象,例如,如下面的电路:Set_load 3 Clk由于在电路中含有名称为CLK的pin、port和net,因此,DC无法知道该处的load是施加在哪个对象上,注意到一般连线会驱动负载,该命令就改为:Set_load 3 [get_nets Clk] TCL modeSet_load 3 find(net,”Clk”)dc_shell mode路径的划分与合法路径DC综合的时候是基于路径的优化,对于DC来说,合法的路径必须满足以下条件路径的起点为输入端口或者是触发器的数据端路径终点为输出端口或者是触发器的时钟端DC设定的限制条件的值都是无单位的,这些单位都是由工艺库中给定的可以用report_lib lib_name来查看所有在工艺库中设定的各个参数的单位定义电路的工作环境和综合环境1.Set_operating_conditions不同的工作环境对应的单元电路的延迟不相同温度升高、电压降低、电路的特征线宽增大都会使得单元电路的延迟增大电路的工作环境一般在工艺库中都有给定命令格式:set_operating_conditions [–min min_condition] [–max max_condition] [-min_library min_lib] [–max_library max_lib]命令使用说明指定DC进行优化时使用的工作环境,其中工作环境的指定必须在库中指定,或者在link_library中的其中一个库中指定,如果不指定operating_conditions,DC自动搜索link_library中的第一个库的工作环境作为优化时使用的工作环境可以用get_attributes语句取得库中缺省的工作环境-max选项指定电路最大延迟分析(分析电路是否满足触发器建立时间set up的要求)的工作环境-min选项用于指定电路最小延迟分析(分析电路是否满足触发器保持时间hold time的要求)的工作环境,该选项不能单独使用,必须与-max同时使用如果不指定用于分析最小延迟的库,则只使用-max中指定的库用于电路的延迟分析-min_library选项指定用于电路最大延迟分析的工艺库-max_library选项指定用于电路最小延迟分析的工艺库2.set_min_libraryVendor可能提供多个不同的工艺库,用于分析电路的时序,不同工艺库定义了不同的工作环境、不同的线负载模型、不同的单元延迟时间,这是可以将这些苦都指定用于分析电路的延迟命令格式:set_min_library max_library –min_version min_library | -none命令的使用说明:该命令指定max_library用于分析电路的最大延迟,min_library用于分析电路的最小延迟。
DC综合教程
启动dc的三种方法:DCSH:dc_shellTCL:dc_shell-t //注意:-t前没有空格图形化界面:design_visiontip1. 综合主要包括三个阶段:转换(translation)、优化(optimization)与映射(mapping)。
1. 转换阶段:综合工具将高层语言描述的电路用门级的逻辑来实现,对于Synopsys 的综合工具DC 来说,就是使用gtech.db库中的门级单元来组成HDL 语言描述的电路,从而构成初始的未优化的电路。
2. 优化与映射:是综合工具对已有的初始电路进行分析,去掉电路中的冗余单元,并对不满足限制条件的路径进行优化,然后将优化之后的电路映射到由制造商提供的工艺库上。
tip2DesignWare 是集成在DC综合环境中的可重用电路的集合DesignWare 分为DesignWare Basic 与DesignWare Foundation,DesignWare Basic 提供基本的电路,DesignWare Foundation提供性能较高的电路结构。
如果需要Foundation的DesignWare,需要在综合的时候设置synthetic_library3。
tip3 日志文件Design Analyzer 在启动时自动在启动目录下面创建两个日志文件:command.log 和view_command.log,用于记录用户在使用Design Compiler 时所执行的命令以及设置的参数,在运行过程中同时还产生filenames.log的文件,用于记录design compiler访问过的目录,包括库、源文件等,filenames.log文件在退出design compiler 时会被自动删除。
启动dc_shell时则只产生command.log 的日志文件。
tip4Propagation Delay传播延时Transition Time转变延时Setup Time建立时间The setup time for a sequential cell is theminimumlength of time the data-inputsignal must remain stable before the active edge of the clockHold Time保持时间The hold time for a sequential cell is the minimum length of time the data-inputsignal must remain stable after the active edge of the clock脚本:################################# Read design file #//read –format verilog[db、vhdl] file //dcsh的工作模式read_db file.db //TCL工作模式读取DB格式read_verilog file.v //TCL工作模式读取verilog格式read_vhdl file.vhd //TCL工作模式读取VHDL格式//设定时钟create_clock -name "clock" -period 20 -waveform { 0.000 10.000 } { clk }//输出文件write -f verilog -out output/count.v //输出网表write -f ddc -out output/count.ddc//综合数据文件write_sdf mapped/count.sdf //标准延时文件//综合compile -map_effort medium -incremental_mappingtip6设置设计环境Define the Design Environment1. Defining the Operating Conditions设置操作环境查看有哪些操作环境dc_shell> read_file my_lib.dbdc_shell> report_lib my_lib指定操作环境dc_shell> set_operating_conditions WCCOM -lib my_lib2.设置线负载模型set_wire_load_mode Top/Enclosed/Segmentedset_wire_load_model "10x10"3. Modeling the System Interface设置系统接口The set_drive and set_input_transition Commands:dc_shell> current_design top_level_designdc_shell> set_drive 1.5 {I1 I2}dc_shell> current_design sub_design2dc_shell> set_driving_cell -lib_cell IV {I3}dc_shell> set_driving_cell -lib_cell AN2 -pin Z -from_pin B {I4} Defining Loads on Input and Output PortsDefining Fanout Loads on Output Ports4. Setting Logic Constraints on Portsset_equal port1 port2set_oppositeset_logic_dcset_logic_oneset_logic_zeroset_unconnectedtip7设定设计约束When Design Compiler optimizes your design, it uses two types of constraints:Design rule constraintsOptimization constraints用于组成逻辑1. Maximum Transition Timedc_shell> set_max_transition 5 [current design]2. Maximum FanoutYou can set a maximum fanout constraint on every driving pin and input port as follows:dc_shell> set_max_fanout 8 [get_designs ADDER]计算Fanout值:Maximum Fanout>=Total Fanout Load注意:取出某些约束用:dc_shell> remove_attribute [get_designs adder] max_transitiondc_shell> remove_attribute [get_ports port_name] max_fanoutdc_shell> remove_attribute [get_designs design_name]max_fanoutdc_shell> remove_attribute port_name fanout_load3. The set_fanout_load command sets the expected fanout load value for listed output ports.To find the fanout load on the input pin of library cell AND2 in library libA, enterdc_shell> get_attribute "libA/AND2/i" fanout_loadTo find the default fanout load set on technology library libA, enterdc_shell> get_attribute libA default_fanout_load用于综合出可以驱动的最大扇出的引脚4. Maximum CapacitanceMaximum capacitance is a design rule constraint. It is set as a pin-level attribute that definesthe maximum total capacitive load that an output pin can drive. That is, the pin cannot connect to a net that has a total capacitance greater than or equal to the maximum capacitance defined at the pin.dc_shell> set_max_capacitance 3 [get_designs adder]5. Minimum CapacitanceThe min_capacitance design rule specifies the minimum load a cell can drive.设计规则的优先权1. Minimum capacitance2. Maximum transition3. Maximum fanout4. Maximum capacitance5. Cell degradationtip8设定优化约束Optimization ConstraintsTiming Constraints对于同步pashscreate_clockset_input_delayset_output_delay对于异步pashsset_max_delayset_min_delayMaximum Areadc_shell> set_max_area 0.0dc_shell> set_max_area 14.0Managing Constraint Prioritiesset_cost_priority [-default] [-delay] cost_listReporting Constraints:dc_shell >report_constraint写脚本tip9:在终端中启动DC用脚本综合dc_shell-t -f ./scripts/seg_drive.tcl > 1将报告写入1文件tip10:设计中有多个模块时,如果用top_down策略,则在脚本中得把所有的模块读入:set active_design seg_drive //注意:相等于一个宏定义,用active_design代替seg_drive read_verilog {encode_seg.v number_mod.v scan.v seg_drive.v} //read_file也可以,它可以读多种格式文件,包括.db#analyze -format verilog {encode_seg.v number_mod.v scan.v seg_drive.v}#elaborate $active_design //注意这里是$active_designcurrent_design $active_design //将顶层设置成当前设计link//read_verilog命令与后面的analyze、elaborate功能相同,可以选择其中一个;参看《ASIC综合与DC使用》:set_svf ./mapped/svf/$active_design.svf //没查###############################################1# Define the Design Environment#1###############################################113Modeling the SystemInterface设置系统接口21)set_operating_conditions slow //设定一个库的环境,库内包含使用温度、电压、电路特征线宽等2)set_wire_load_model –name model_name –lib_name library –max –min//设定线负载模型set_wire_load_model -name tsmc090_wl40 -library slow //表示使用库slow里的tsmc090_wl40线模型如果没有 wire_load_model,可以将 auto_wire_load_selection 参数设置为 true,则 DC自动根据综合之后的面积来选择一个统计的线负载模型用于估计连线延迟。
DC介绍
1DC 概论之一setup time与hold time(1)ic代码的综合过程可以说就是时序分析过程,dc会将设计打散成一个个路经,这些路经上有cell延迟和net延迟,然后dc会根据你加的约束,来映射库中符合这种延迟以及驱动的器件。
从而达到综合的目的。
dc的所有时序约束基础差不多就是setup time 和hold time。
可以用下面的图片说明:所谓setup time即建立时间,也就说数据在时钟到来之前保持稳定所需要的时间,hold time 即保持时间,也就是说在时钟到来之后数据需要保持稳定的时间。
在深入建立时间和保持时间之前。
先了解下dc中的路经以及start point ,end point。
所谓start point 就是:1. input port(顶层设计的输入端口)2.clock pin of sequential cell(触发器的clock pin)所谓的end point 就是:1 output port(顶层设计的输出端口)2.data pin of sequential cell(触发器的data pin)了解start point 和end point,就可以方便的了解dc是如何将设计打散成路经,一个设计中基本的路经分为4种,如下图:path1:input port to data pin of sequential cellpath2:input port to output portpath3:clock pin to data pin of next sequential cellpath4:clock pin to output port所有的设计也就这四种类型的路径。
另外一种就是带反馈的,也就是本身的clock pin to data pin 。
有了路径的概念之后,我们可以分析更复杂的setup time 和hold time 。
dc中对于建立时间的分析是基于路径的最大延迟;而对于保持时间的分析是基于路径的最小延迟。
TCL的企业文化
TCL的企业文化TCL集团是一家全球领先的消费电子企业,总部位于中国深圳。
作为一家具有悠久历史和丰富经验的公司,TCL一直致力于打造一个积极向上、创新发展的企业文化。
下面将详细介绍TCL的企业文化。
1. 使命和愿景:TCL的使命是通过创新科技和卓越服务,让每个人都能享受到高品质的生活体验。
公司的愿景是成为全球消费电子行业的领导者,并为全球用户提供创新、可靠和高性价比的产品。
2. 核心价值观:TCL坚持以下核心价值观:- 创新:TCL致力于不断推动科技进步,通过创新的产品和解决方案来满足用户的需求。
- 协作:TCL鼓励员工之间的合作和团队精神,通过共同努力实现公司的目标。
- 诚信:TCL以诚信为基础,建立和维护与客户、合作伙伴和员工之间的信任关系。
- 持续改进:TCL不断追求卓越,通过不断改进和学习来提高产品和服务质量。
3. 员工关怀:TCL重视员工的发展和幸福感,致力于为员工创造一个积极、健康和有成就感的工作环境。
公司提供广阔的发展空间和培训机会,鼓励员工持续学习和提升自己的技能。
此外,TCL还注重员工的生活质量,提供灵活的工作安排和丰富的福利待遇,以满足员工的个人需求和平衡工作与生活的要求。
4. 社会责任:作为一家有社会责任感的企业,TCL积极参与公益事业,关注环境保护和社会发展。
公司致力于推动可持续发展,通过减少环境影响和推广绿色技术来保护地球资源。
此外,TCL还积极参与社区活动,支持教育、健康和扶贫等社会公益事业。
5. 创新驱动:TCL坚信创新是企业发展的重要动力。
公司设立了专门的研发团队,不断投入资源和精力来推动技术创新和产品升级。
TCL注重与全球合作伙伴的合作,共同研发和推广创新产品,以满足全球用户的需求。
6. 全球化战略:TCL积极推进全球化战略,不断拓展海外市场。
公司在全球范围内建立了广泛的销售网络和服务体系,为全球用户提供优质的产品和服务。
TCL注重本土化运营,深入了解当地市场需求,并与当地合作伙伴紧密合作,共同发展。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Tcl的全称是Tool Command Language,它是当今EDA软件系统中普遍采用的一种脚本语言,如Synopsys DC中的dc_shell-t>和Synopsys PrimeTime中的pt_shell>就是基于这种脚本的,实际上它已经成为了一种工业标准。
以DC为例,使用Tcl比dc_shell具有以下一些优点:有更多的在线帮助;支持lists和arrays;用户可以定义procedures;case结构、string的操纵与比较、文件操纵;等等。
Synopsys中使用Tcl的工具有:Design Compiler, Formality, PrimeTime, Physical Compiler, Chip Architect等等。
一、Tcl语法Tcl是基于字符串的命令语言。
每一个Tcl脚本被看作是一系列命令的组合,用换行符或分号来分隔。
每一条命令语句由一个命令和一系列参数组成。
注释:用#表示这一行后面的内容为注释,例如:# Same line comment.通配符:?表示一个字符(PrimeTime only)* 表示任意多个(包括0个)字符变量:给一个变量附值的set命令,例如:set x 27删除一个变量的unset命令,例如:unset x用$符号对一个变量取值,例如:set x 27set y $x用“\”引用一些特殊符号,例如:set x 7set y \$x注:这里y的值是$x,而不是7。
命令嵌套和引用:“”表示弱引用,嵌套命令和变量替代仍旧有效,例如:set a 5set s “temp = data[$a]”注:s的值为temp = data[5]{ }表示强制引用,其间没有任何替代,例如:set a 5set s {temp = data[$a]}注:s的值为temp = data[$a]用expr进行算术运算,例如:dc_shell-t> set period 10.010.0dc_shell-t> set freq [expr (1 / $period)]0.1dc_shell-t> echo “freq = [expr $f req* 1000] MHz”freq = 100.0 MHzdc_shell-t> set_load [expr [load_of cba_core/and2a0/A] * 5] \[all_output]注:这里的“\”表示续行。
二、Lists的用法Lists是Tcl的一个重要部分。
Lists用来表示不同对象的分组。
Lists元素可以包含strings 或其它lists。
下面表格列出了相关的命令:现举例说明:dc_shell-t> set L1 {el1 el2 el3}el1 el2 el3dc_shell-t>echo $L1el1 el2 el3dc_shell-t>set Num_of_List_Elements [llength $L1] 3还可以这样用:dc_shell-t> set a 55dc_shell-t> set b {c d $a [list $a z]}c d $a [list $a z]dc_shell-t> set b [list c d $a [list $a z]]c d 5 {5 z}在DC中可以这样配置link_library:dc_shell-t> set link_library {*}*dc_shell-t> lappend link_library tc6a.db opcon.db* tc6a.db opcon.dbdc_shell-t> echo $link_library* tc6a.db opcon.db三、控制流(Control Flow)命令的使用:if语句,例如:if {$x ==0} {echo “Equal”} elseif {$x > 0} {echo “Greater”} else {echo “Less”}while语句,例如:set p 0while {$p <= 10} {echo “$p squared is: [expr $p*$p]”incr p }循环语句,例如:for {set p 0} {$p <= 10} {incr p} {echo “$p squared is: [expr $p * $p]”}foreach语句,例如:set i 1foreach value {1 3 5 2} {set i [expr $i * $value]}echo $i30四、过程(Procedures)用户通过过程可以扩充Tcl的命令,并且可以有不同的参数。
语法为:proc name arguments bodyname:过程名arguments:过程的参数,可以为空body:过程的脚本例如:dc_shell-t> proc plus {a b} { return [expr $a + $b]}dc_shell-t> plus 5 611五、DC中的一些Tcl说明在UNIX提示符下启动DC的Tcl模式:UNIX% dc_shell –tcl_mode每个设计中都有以下一些目标对象(objects):designs, cells, references, ports, pins, clocks, nets其中每个目标对象都有其相应的属性,例如:ports拥有的属性有:direction, driving_cell, max_capacitance, others…designs拥有的属性有:area, operating_conditions_max, max_area, others…在标准的Tcl中则没有这些内容。
集合(Collection):以下是在DC-Tcl中生成集合的一部分命令:get_cellsget_clocksget_designsget_libsget_netsget_pinsget_portsall_clocksall_designsall_inputsall_outputsall_registers举例说明:# Constrain a design for timing, using a time budgetset CLK_PER 10.0; # clock period (ns)set time_budget 40.0; # percentage of clock period allowed for input/output logic # calculate intermediate variablesset IO_DELAY [expr ( (1-$time_budget/100.0) * $CLK_PER)]set all_except_clk [remove_from_collection [all_inputs] [get_ports Clk] ]# constrain the design for timingcreate_clock –period $CLK_PER –name MY_CLOCK [get_ports Clk]set_input_delay $IO_DELAY –max –clock MY_CLOCK $all_except_clkset_output_delay $IO_DELAY –max clock MY_CLOCK [all_outputs]集合过滤(Filtering Collections):用filter_collection命令,例如:filter_collection [get_cells] “ref_name == AN2”;注:从cell集合中去除名字为AN2的cell六、RISC_CORE 的Tcl脚本runit.tcl文件:#set_min_library core_slow.db -min_version core_fast.db# Directory Structureset source_dir unmappedset script_dir scriptsset mapped_dir mappedset reports_dir reports# List of designs to be compiledset designs_to_build {RISC_CORE}foreach module $designs_to_build {set fname $source_dir/$module.dbread_db $fnameset current_design $modulelinksource scripts/top_level.tcluniquifycompileset fname $mapped_dir/$module.dbwrite -hierarchy -output $fnameset fname $reports_dir/$module.rptreport_constraint -all_violators > $fnamereport_timing > reports/default_timing.rptreport_timing -input_pins > reports/pins_timing.rptreport_timing -nets > reports/nets_timing.rptreport_timing -delay min > reports/min_timng.rpt}top_level.tcl文件:## Create user defined variablesset clk_port [get_ports Clk]set clk_period 4.0set clk_skew 0.3set drive_cell buf1a3set drive_pin "Y"set max_input_load [load_of ssc_core_slow/buf1a2/A]set clk_to_q 1.5set output_delay 1.5set all_ins_ex_clk [remove_from_collection [all_inputs] [get_ports Clk]]# Reset the designreset_design# Operating Environmentcreate_clock -period $clk_period -name my_clock $clk_portset_clock_uncertainty 0.3 [get_clocks my_clock]set_dont_touch_network [get_clocks my_clock]# Time budgetset_input_delay $clk_to_q -max -clock my_clock $all_ins_ex_clkset_output_delay $output_delay -max -clock my_clock [all_outputs]# Load Budget (Assumes output ports will only fan out to 3 other designs) set_driving_cell -lib_cell $drive_cell -pin $drive_pin $all_ins_ex_clk#set_max_capacitance $max_input_load $all_ins_ex_clkset_load $max_input_load [all_outputs]。