EDA365电子论坛网
标题:
十天学会Skill之第八天
[打印本页]
作者:
deargds
时间:
2023-8-27 22:42
标题:
十天学会Skill之第八天
本帖最后由 deargds 于 2023-8-27 22:42 编辑
十天学会skill之第八天
By deargds
https://www.eda365.com
学习目的:了解常用约束规则类函数,学会读取和设置基本的约束规则
一,约束规则的开启状态获取
通过
axlCNS*ModeGet
类函数获取约束规则开启状态
axlCNSDesignModeGe
t:设计规则
axlCNSEcsetModeGet
:电气规则
axlCNSPhysicalModeGet
:物理规则
axlCNSSpacingModeGet
:间距规则
axlCNSSameNetModeGet
:同网络间距规则
以axlCNSPhysicalModeGet为例,示例代码如下:
1.获取支持的物理规则项
axlCNSPhysicalModeGet(nil)
复制代码
2.获取所有物理规则开启状态
axlCNSPhysicalModeGet('all)
复制代码
3.获取最小线宽检查项的开启状态
axlCNSPhysicalModeGet('width_min)
复制代码
约束管理器中的物理规则开启状态选项界面:
8-1.png
(47.17 KB, 下载次数: 2)
下载附件
保存到相册
2023-8-27 22:37 上传
二,约束规则的开启状态设置
通过
axlCNS*ModeSet
类函数设置约束规则开启状态
axlCNSDesignModeSet
:设计规则
axlCNSEcsetModeSet
:电气规则
axlCNSPhysicalModeSet
:物理规则
axlCNSSpacingModeSet
:间距规则
axlCNSSameNetModeSet
:同网络间距规则
以
axlCNSPhysicalModeSet
为例,示例代码如下:
1.开启所有物理
规则
检查项
axlCNSPhysicalModeSet('all 'on)
复制代码
2.开启最小线宽检查项
axlCNSPhysicalModeSet('width_min 'on)
复制代码
3.批量开启物理
规则
检查项
axlCNSPhysicalModeSet('(bbvia_stagger_max bbvia_stagger_min) 'on)
复制代码
三,约束规则的检查值获取
axlCNSDesignValueGet
:设计规则
axlCNSEcsetValueGet
:电气规则
axlCNSGetPhysical
:物理规则
axlCNSGetSpacing
:间距规则
axlCNSGetSameNet
:同网络间距规则
以
axlCNSGetPhysical
为例,示例代码如下:
1.获取"50-OHM"物理规则的TOP层最小线宽值
axlCNSGetPhysical("50-OHM" "TOP" 'width_min)
复制代码
2.获取"50_OHM"物理规则TOP层的所有检查值
axlCNSGetPhysical("50-OHM" "TOP" nil)
复制代码
四,约束规则的检查值设定
axlCNSDesignValueSet
:设计规则
axlCNSEcsetValueSet
:电气规则
axlCNSSetPhysical
:物理规则
axlCNSSetSpacing
:间距规则
axlCNSSetSameNet
:同网络间距规则
以
axlCNSGetPhysical
为例,示例代码如下:
1.将"50-OHM"物理规则的TOP层最小线宽值设置为7
axlCNSSetPhysical("50-OHM" "TOP" 'width_min 7)
复制代码
1.将"50-OHM"物理规则的所有层最小线宽值设置为6
axlCNSSetPhysical("50-OHM" nil 'width_min 6.0)
复制代码
五,其它常用约束规则函数
1.获取当前设计中定义的物理规则列表
axlCnsList('physical)
复制代码
获取的列表如下:
8-2.png
(61.74 KB, 下载次数: 3)
下载附件
保存到相册
2023-8-27 22:37 上传
2.获取当前设计中定义的间距规则列表
axlCnsList('spacing)
复制代码
3.获取当前设计中定义的电气规则列表
axlCnsList('electrical)
复制代码
4.获取当前设计中定义的SameNet间距规则列表
axlCnsList('sameNet)
复制代码
5.获取指定物理规则的VIA列表
axlCnsGetViaList("50-OHM")
复制代码
6.创建物理规则
axlCNSCreate('physical "50-OHM" nil)
复制代码
7.创建间距规则
axlCNSCreate('spacing "50-OHM" nil)
复制代码
8.创建SameNet间距规则
axlCNSCreate('sameNet "50-OHM" nil)
复制代码
9.批量更新规则设置
axlCNSMapClear()
axlCNSSetPhysical("50-OHM" nil 'width_min 6.0)
axlCNSSetPhysical("100-OHM" nil 'width_min 4.0)
;...其它规则设置操作
axlCNSMapUpdate()
复制代码
总结:以上仅对常用约束规则函数进行介绍,实际开发中还会涉及到区域规则,NET CLASS,DIFF PAIR,Match Group等操作,可以在熟悉基础操作之后再作进一步的拓展。
作者:
aarom
时间:
2023-8-27 22:54
提示:
作者被禁止或删除 内容自动屏蔽
作者:
zhang1990
时间:
2023-8-28 00:03
学习了 !!!!!!
作者:
后青春继续传说
时间:
2023-9-1 17:21
支持!写得很详细!支持原创文章!
作者:
苦咖啡
时间:
2023-9-7 10:46
感谢楼主,支持
作者:
zwzlove
时间:
2023-9-27 10:34
学习了 !!!!!!
作者:
子木_eda
时间:
2023-10-20 16:44
感谢楼主,支持
作者:
侏罗纪
时间:
2023-11-8 14:28
请问第九天和第十天的有吗
作者:
Dc2024061241a
时间:
2024-7-22 14:31
学习学习,赞
作者:
Dc2024061241a
时间:
2024-7-23 20:03
感谢分享,赞
作者:
雞翅加辣
时间:
2024-8-6 17:36
樓主請收下我的膝蓋,並期待您繼續更新!
謝謝您
作者:
式试1813
时间:
2025-4-22 14:16
期待9和10,啦啦啦啦啦啦
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2