Cadence OrCAD:Net Group 使用 软件版本:16.6-S062,装过一个Hotfix,因为早期版本中文显示有重叠的问题。
先看一个从来没用过的功能:NetGroup。据说是16.6之后的版本才有? 总而言之,是总线的一种扩展,可以把任意名称的网络放进去的一种:单个信号、总线、其他NG。给我的感觉是类似c语言的结构体,可以装进去各种类型的变量,也可以装其他结构体。NG的特点是可以组合各种不同名称的网络,而不必像总线一样要求名称像Data[0..31]一样保持一致。
2023.5.12 更新: 找到一个demo板的原理图使用了net group,可以参考:BRD4001a
例子
随便准备了一个原理图来展示。
输入:电源,一个4pin接口
LED[1…2]控制板子上的两个LEDSCL/SDA是某条I2C总线,只是路过这个板子。 输出:I2C总线从另一个2pin接口引出。 然后把这两部分内容放在两页原理图中,如下:
NetGroup的建立
上方菜单place-NetGroup-add NetGroup
建立NetGroup
输入NetGroup名称,applyadd,添加需要组合在一起的网络名称,注意选择正确的类型。
NetGroup和跨页符
有了NetGroup,可以使用单个跨页符,来连接两页中的多个信号。
新建一个跨页符,注意勾选NetGroup Offpage。 第一页的跨页符 第二页的跨页符
按上图操作,两个图的4个信号就通过1个跨页符连通了。注意几点:
跨页符后面的连线使用bus。网络要加入NetGroup,需要使用bus entry,并且按照规定的设置别名,NetGroup名称.NetGroup中定义过的信号名
比如,NetGroup名称为NG1,则SCL的名称为NG1.SCL
学会了吗,是不是很麻烦呢?
NetGroup的别名
NetGroup名字太长?也可以再设置别名,如下图。
比如下图中,给NetGroup重新取名为Q[0..3],后面网络就都用Q.xx,实际效果不变。这个和普通网络的跨页符+别名类似。
其他
在扁平设计中,相关的信号组成NetGroup,只需要一个跨页符,就能与其他页面上的信号相连。在层次设计中,相关的信号可以组成一个NetGroup Port,从而减少端口数量,简化上一层的连线。比如可以把主控和DDR之间的信号都汇总成一个NetGroup端口——但操作上其实还是挺麻烦的。
简单测试命名错误的情况
下图这种情况就是连不上的(Q.SCL错写为Q.CLK)。
最近重新开始画原理图,对于OrCAD这个工具,虽然也用了挺长时间,但是发现其实一点都不熟悉,以前会的操作,一段时间不用,就又忘了。另外,之前一直画扁平的图,用跨页符互联,复杂原理图可能需要用到的层次化设计等等,以前也都没接触过。新开一栏记录一下熟悉和陌生的各种操作。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删