首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

DC文档学习笔记[转帖]

DC文档学习笔记[转帖]

工具栏:可以把一个toolbar上的图标拷贝到另一个toolbar上。方法是:按住CTRL和ALT,然后把图标拖到新的位置。如果按住ALT并且把图标拉到新的位置,则为移动图标。


Output显示区:


·Log标签显示window messages.


· 命令标签显示显示从工具菜单(例如Compile CDB)执行命令的执行结果。


·当Page Admin utilities中的一个被执行的时候,Page Admin标签被激活


选择东西的新方法:通过edit->Find命令,在Find dialog中选择select一项


一个错误的纠正:如果把一个网络名放到原理图上,但是没有pin或者net在光标的选择区域,会报告下面的错误提示:no close pin/net found


关于工程文件:一个工程文件管理着两种类型的设计数据:被创建的数据和被使用的数据。后者包括符号库,PDB库,配置文件等。前者包括原理图,VHDL文件,Verilog文件,真值表,Flow表等。一个工程文件包含设计和配置信息。这些信息被这个应用所使用。我们其他的工具管理设计数据。一个典型的工程文件包括下面的信息:


· 这个设计中根原理图的位置


· 中心库的位置


· 其它设计源文件的位置(schematics, state diagrams, HDLs, etc.).


· CDB的位置


· 这个设计中所使用的库的位置(symbols and PDBs if no central library is used).


· 这个设计中所使用的配置文件的位置


· PCB design的位置


· 用于PCB layout and DesignCapture集成的信息


· 用于VHDL and Design Capture集成的信息


· 用于Analog Designer and Design Capture集成的信息


扩展名对应的文件类型:


.sbk
 Schematic
 .sdg
 State Diagram
 .sfc
 Chart
 
.tbl
 Truth Table
 .v
 Verilog
 .vhd
 VHDL
 
.blk
 Block Symbol
 .wsw
 WaveBench
 
 
 


 


Design标签 (Project Settings对话框)


这个标签包含 “Absorb Instance data into flat designs or single instance blocks”选项,这个选项用来把instance 属性移动(吸收)到新打开的原理图中去。即把属性从CDB的instance部分移动到CDB的contents部分,并且覆盖任何之前存在的同一类型属性。如果一个设计是hierarchical并且包含多个instantiated blocks,那么,这些block的instance数据就不能被absorb。因为这个选项改变原理图,也改变时间戳。时间戳改变将引起Forward Annotation 以为CDB过期。


注意:建议总选择该选项。而且在Forward Annotation之前,应该重新编译CDB。当设计里有很多block时,可以把这个选项关掉以提高性能(因为对于每一个block,都要检查他是否是multiple instantiations)可能会影响速度


File Locations标签(Project Settings对话框) 


如果你的工程没有关联一个中心库,那么Text Properties configuration file就被从配置文件类型列表中移走了。你必须通过中心库的“库管理通用属性”对话框,编辑text properties。


关于block


父子block之间的连接,是通过匹配父原理图的block pin name和子原理图connector的Hierarchical Pin Name来控制的。


Symbol 命令and Device 命令


如果该原理图以后要转成PCB,要用Place->Device命令放置元件


用于旋转的命令键:


'f' or 'F' (flips about the X-axis), 'm' or 'M' (mirrors about the Y-axis), and 'r' or 'R' (rotate in 90 degree intervals clockwise).


 

51 c8051f(f020,f040) msp430 arm(2410,2510) fpga(xc3s4000) dsp(5116 dm642) keilc vc++ matlab linux protel Ten_layerPCB mpegx h.26x Rscode Turbocode ofdm VideoBroadcasting ldpc_code(now!)
Block详解:

1、A block is linked to its low-level design file using two mechanisms: the Block Name text property and the Hierarchy tab on the Properties dialog.

2、in the Place Block dialog: Click the Add button and browse to an existing block symbol. Placing a block using the Add button does not copy the block to the current project.

3、Place Block dialog中的block列表图标:The blue block symbol indicates that a .blk file already exists. The pink circle indicates that a block symbol does not exist for the design file.

4、Creating a Block from Scratch

using two different ways to creating:You can either use the block symbol wizard(File->new) or the Place Block dialog.第一种方法建完之后,就生成一个.blk文件。而第二种方法,只是在.sbk文件中放了一个block,但没有生成.blk。要生成,方法为:push到下一层,生成一个下级文件并保存。再返回上一层(block那层),用place block添加那个blcok,把原来的block删除,然后保存就自动生成一个.blk文件

5、要修改block:打开.blk文件进行修改。然后从schematic中删除原来的block,place新的block

6、To create a block from a pre-existing design using the BlockView tab(in WorkSpace)In the Project Workspace, select the design file (schematic, state diagram,flow chart, truth table, VHDL file, or Verilog file) for which you want to create a symbol block.没成功page116

7、把一个已有的文件,作成(关联成)一个block的方法:

Place Block command
Place->Block,选择一个要被做成block的design files (小图标是圆形的) ,按确定。有一个block粘在鼠标上,放好它。这时,自动生成一个.blk 文件,修改这个文件。用place->block 重新放到想放的地方就可以了

Block Symbol Wizard(file->new->block symbol)
在第二步中,选择:”generate the block symbol from a design file”。这时候会产生.blk文件。



8、从一个已经存在的block来建立一个新的block

using the Save As command
在Block Symbol Editor,把Block Name改成新名,另存为即可

using the Files Command
Project->files,找到.blk文件并检查Link File选项,确定。即可

using the Place Block Command
在Place Block dialog调用Add,选择一个.blk加入,确定即可

注意:All design files with the exception of VHDL and Verilog files have an associated block name. The block name can be assigned (or specified) when the design file is saved, or can be changed after saving via the Block Name field on the General tab on the Properties dialog.





分层设计的三种方法:

Top-Down Design Entry(简单,具体步骤略)

这个应用支持multiple instantiations of the same block 和vectored symbols and blocks. Multiple instantiations and vectored blocks的结果一样,但实现方式不一样 Multiple instantiations 是把一个block在一个schematic放多次,每次放在不同地方。A vectored block只放一次,但额外在block上放一个Vector Width属性。这个Vector的属性值表示了这个block代表的实例数

Note:Even though the same block can be instantiated multiple times, the view must be the same for all instantiations of that block. If one instantiation is changed, that change is applied to all of the instantiated blocks.

Bottom-Up Design Entry

after opening the project file,creating schematics for the lowest-level blocks. Place and connect symbols to define the block contents. Place hierarchical connectors to define externals for the block you just created. Pop into the parent level, and place and connect symbols, both from libraries and the symbols created for the lower-level blocks, to define this level. Continue moving up in the hierarchy until you have defined the top level (the design root name for the project).

Middle-Out Design Entry
You can also design from the middle out. Using the middle-out methodology, you start at any level in the hierarchy and use a combination of the top-down and bottom-up methods to fully define the current level and use the defined circuit in a higher level, respectively.



文本属性的意义:

一、packaging和pcb设计时可能用到的属性:

Instance name
每放置一个symbol,系统会自动为它指派一个,用以区别各个symbol,不能重复(注:是区别符号,所以拥有同一个block name的多个block,可能会使用同一个instance name)。最好不改,用系统生成的就可以了

Part number
生产厂家为一个device定义的号码,这个号码和公司代码相联系。在进行packaging utility的时候,在PDB中就会用part number作为index。许多有相同速度,封装,功能的part,因为是来自于不同的制造厂家,就会有不同的part number (我的理解:如sn74ls244,其中的sn是厂家)

Part name
生产厂家为一个symbol定义的号码(同一个name的多个part,可有多个相异的number)。如果一个part没有指定part number,在进行packaging utility的时候,在PDB中就会用part name作为index(我的理解:如74ls244)

Part label
和part number差不多,只不过number是对外公布的,label是公司内部使用的。Part label显得更概括一些

Pin name
对symbol上的每一个pin,用pin name来为一标识。大多数的pin name是被内置在symbol的定义中并且不可在DC中编辑。他的作用有两个:一是packager utility用它来进行pin mapping。另一个是当使用edit-》replace symbol的时候,是基于pin name来保持原来的连接关系的。

Pin number
the pin number property is the device pin number that corresponds to a pin name on a symbol pin。它在pcb设计,packager utility, replace symbol中都有用。pin number可以是字符的,并且大小写敏感

Ref Designator
用于为packager utility定义那些符号要被package 在同一个component中

Vector Width
一个原理图中有一个block,他的vector宽度为8,则这个block实际代表了八个block,相当于放了八个block在这个原理图上

Frozen Package
在packaging utility和PCB设计时会用到。他的值可以是:block(b), fix(f), blockfix(bf)。一个symbol,该属性若为fix或者blockfix,意味着如果没有被Packager Option(Repackage All Symbols)overridd,packager不能改变任何被手工封装了的symbol的封装信息。他也防止packager往package里填充没用的gates。当component被放到board上的时候,他也可以把package中的所有gates标记成fixed。若属性为block,说明在多层设计中,只有同一个block中的symbol,可以被package成同一device


二、仿真时用到的text属性:

Value
主要用在passive component上。如电阻的“100k Ohms”,一般仿真工具用

51 c8051f(f020,f040) msp430 arm(2410,2510) fpga(xc3s4000) dsp(5116 dm642) keilc vc++ matlab linux protel Ten_layerPCB mpegx h.26x Rscode Turbocode ofdm VideoBroadcasting ldpc_code(now!)
线和总线的几个设定

1、 画任意角度的线或总线:修改vbdcsys.asc配置文件中的ANY_ANGLE_WIRING关键字

2、 拷贝的时候,让网络名随同线一起被拷贝可以:修改Tool->Option

3、通过使用Bus Contents命令,你可以给一个总线分配一个网络名(例如control_bus)并且定义这个总线的Contents(例如individual signals)。另外,总线必须被分配一个网络名,这个网络名或者明确指明总线的contents作为bits形式(例如DATA<0..15>),或者作为一个所有信号名的单独列表(例如signal1, signal2, signal3, data1, clk)。

4、总线名,网络名的命名传统:

可以使用 ([ ]), (<>), ({ })作为bus符号 ,但{}和<> 不能用于state diagrams中. (..)可以用任何非数字的sequence来替换。(例如, DATA(0 to 7)).

说明:

· net[0:10] is net[0], not net0.

· net1, net2 or net1 & net2 They are two separate nets: “net1” and “net2.”

· DATA(00..7), implies nets called DATA(00)。

· DATA<0..7;2> implies four nets called DATA(0), DATA(2),DATA(4),DATA(6).

DATA<0..7>,ADDRESS<0..15>

DATA(0 7),ADDRESS(0 15) 框内行行等价

DATA[0-7]&ADDRESS[0-15]

DATA{0 to 7},ADDRESS<0..15>

DATA(0),DATA(1 to 7),ADDRESS(0 to 15)

DATA<7..0>,ADDRESS<15..0> (起始值可交换写)


·可以加后缀,如 DATA<0.7>A 表示:DATA<0>A, DATA<1>A, ... DATA<7>A.

· Net(0) is the first bit of a bus called Net 二者不同

Net0 is a net that is not a member of a bus.

· Single quotes (’) are reserved characters in back annotation files. To use single quotes in a net name, use two single quotes (“).

连通性规则

1、Bus的作用:信号的逻辑上的分组,方便查看。

2、连接Nets/Wires



在同一个sheet
推荐使用intrapage connectors。当然可以只用相同的net name来实现,但这时,Verify会给出警告

Sheets之间
用interpage connectors连接,或者net name列在globals file中。

否则,Verify会发出警告。警告提示你:have nets with the same name on different sheets, but they are treated as disjointed nets by the design compilers.

Across the Hierarchy
通过匹配上层block的pin name和下层hierarchical connector的hier pin name来实现。

Across a Design
(project->Global signal)中列出来的无论在一个design的那个地方,都视为连接在一起。如:VCC,GND一般都设置成Global的



另外,blcok上的所有pin都必须分配一个名字;且任意两个pin不能重名;block上的每一个pin,应至少有一个hierarchical connector pin with a corresponding hierarchical pin name in the schematic defining the internals of that block.

简单的网络,连接到相同pin of block和hierarchy pin的网络互相连通

当有buses时, 是否连接要看这个总线内网络的位置和顺序。



三、在Sch annotation和documentation中可能用到的属性:

Arbitrary Text
是注释用文本,它是attach to symbols的,是为了annotation or documentation目的。它只能用于symbol上,对downstream工具没有影响

Loose Text
用于注释design的,它不需要依附于任何object。对downstream工具无影响

Drawing Date
用于原理图中修改了的数据的record。通长内置于border symbol中

Drawing issue
用于record the issue of the design。通长内置于border symbol中

Auto Generate
用于向symbol中嵌入“stamps”(如time, date, and page number)。它经常被加入到drawing format symbol,并且只能在Symbol Editor中添加。当设计中存在一个带有该属性的symbol时,这个属性的值在load和save期间自动更新(stamp扩展成当前值,如time变成现在时间)

Sheet Pointer
依附于page connector。Cross Reference utility用它来指明the other pages on which the same signal name appears

Cost
用于计算一个设计产品的花费。每一个part都可以有cost属性。当进行bill of materials时,可以统计所有components的总金额。

Attachment
用于在schematic or symbol library files中放置web link。当右击一个有该属性的symbol时,可以通过popup menu来打开该属性所代表的URL
51 c8051f(f020,f040) msp430 arm(2410,2510) fpga(xc3s4000) dsp(5116 dm642) keilc vc++ matlab linux protel Ten_layerPCB mpegx h.26x Rscode Turbocode ofdm VideoBroadcasting ldpc_code(now!)
四、多层设计中用到的属性:

Hier pin name
上下层之间用上层block框里的pin name和下层的Hier pin name实现相连

Block name
Block symbol用该属性来指定自己所代表的文件



五、PCB设计的组件放置用到的属性:

Room
用于指定pcb图中每一个symbol的room。这个room值会传给Automatic Placement routines,并使之可以back annotate到application中

Cluster
PCB设计中,有同一cluster number的symbol,在Automatic placement的时候被组成一个组



六、影响到routing的属性

Route order type
该属性决定forced-order routing时的pin是source, load, or terminator。他可以override pin type对pin的指定。如:一个pin的pin type是input,它通常被看作一个load(如果没有被该属性overridden的话)

Supply rename
用于为特殊设备指派交替的supply net。通常,如果在PDB中一个devices的pin被定义为power和ground,则有冲突。这个pin不会包含在原理图中,而从PDB中extract出来。如果为这个device指定Supply rename属性,这个supply nets defined in the PDB are translated for the device。



补充:关于instance names

系统自动分配一个唯一的instance name, 对于block,是Block name+数字后缀。对于其他symbol,遵循下属规则:

· If the symbol was created with a prefix for an Instance Name text property,the prefix is appended with a unique numeric suffix to create a unique instance name.

· If the prefix of the Instance Name text property was not built into the symbol, the prefix is determined by the CCTREF_PREFIX entry in the Project Options file. This file is accessed using the File Locations tab on the Project Editor dialog.

总之:使用系统指定的instance names是最保险,最省力的。

Vectored symbol and block这部分也很复杂,但可能不常用。详见process的page131





关于bus

1、sub-bus:ripper的宽的一端要放到parent bus上,窄的一端要放到child bus上。子bus的命名要求和线一样,只不过他可以命成date[2:5]等形式罢了

2、bus-pin:bus可以连接到symbol pin上,这个pin的pin name指定了宽度。例如:如果pin name是pin[0:15],一个有16bit的bus就可以连接到这个pin上,这相当于这个symbol有16个pin

关于connector

Tool->Option,选择Connector标签,可以使popup menu列出16个user-defined connectors

Interpage Connectors

are used to connect wires with the same net names(位于 同一个schematic中的不同sheet)

Intrapage Connectors
(用于同一个sheet中,可以使这些直接连不好联的线,连接到一起)

Physical Connectors

Represent the pins of an actual board-mounted connector. 因为这些symbols代表了实际设计的input/output, 他们一般放在层次设计的top level。 Physical connectors must have a Part Name text property with a corresponding parts database entry to be packaged for physical layout.

Edge Connectors

represent design input/output signals where the I/O connection is made by exposed conductive etch at the circuit board edge instead of a mounted physical connector. 因为这些symbols代表了实际设计的input/output, 他们一般放在层次设计的top level。Edge connectors must have a Part Name text property with a corresponding parts database entry to be packaged for physical layout.





Assigning Properties to Elements

1、 在INST模式下,不能编辑修改添加pin name, net name, hie pin name, instance names等

2、Block Name不能包含空格(embedded spaces)

3、虽然Net Name on buses可以有空值,但contents are not defined for buses with a null net name.

4、Use the Auto Generate property to embed time, date, page stamps, and other information on symbols. 虽然这时这个属性可以放到任何symbol上,我们还是建议只把它放到border上

5、可以先place->text,并填好属性值后,再选择要修改的symbol。

6、Two types of text properties are supported: SINGLE and MULTIPLE.

一个属性是single类型的(defined by the Text Properties file),一个object就只能拥有一个该属性的属性值。如pin name,一个pin只允许有一个pin name。所以,若是MULTIPLE类型的,可以指定多次。如:Analog Parameter text property.

7、Two levels of text are supported: schematic (and symbol) and instance.

Schematic and symbol text is text that is attached to objects after they are placed in the schematic.

Symbol text is text that is attached to a symbol while the symbol is in the symbol editor.

Schematic text can override symbol properties in the schematic, but symbol properties can never be deleted in the schematic. If you override a symbol property and then delete it, you are actually deleting the override. The original symbol property still remains and, upon deleting the override, becomes active again.

Instance name,Text Justification,Overscoring Text详见page170-174

编辑属性

1、 拖动时可以使用右键拖动,效果和window的一样

2、 移动时不附带移动连接的线:用edit->disconnect命令先把线段断开,然后移动

3、To automatically join an unconnected wire end or symbol pin when another symbol pin or wire is moved onto it, set the Automatically Connect Overlapping Objects option using the Settings tab on the Options dialog.

3、 拷贝一个symbols时,所有attached了的文本也同时被拷贝了,

拷贝一个block时,属于这个block的the view information也同时被拷贝

51 c8051f(f020,f040) msp430 arm(2410,2510) fpga(xc3s4000) dsp(5116 dm642) keilc vc++ matlab linux protel Ten_layerPCB mpegx h.26x Rscode Turbocode ofdm VideoBroadcasting ldpc_code(now!)
返回列表