Layout菌现在也可以面向对象拉线了 感谢Allegro的Symphony Team Design新功能
每次目睹程序猿们在面向对象编程,老wu都只有羡慕嫉妒恨的份儿 ? 每次遇到大项目,他们搞软件的都能充分发挥团队作战的优势,利用面向对象技术,对软件进行模块划分,并行开发,还配有程序猿鼓励师,开发进度非常快。
而苦逼的老wu,只能独自作战,这可是上万个pin的PCB呐,一个人lay到啥时候哟,结果项目开发进度最终成了下图这样
整个项目组成员都站在了老wu的身后,阴森恐怖的眼神盯着我…
我也要面向对象拉线!!!拉线鼓励师老wu就不敢奢望了,但至少给我配个妹纸一起拉线呀,哪怕是男的都行呐!!!人多力量大,多一个人来一起来拉线,项目也能早一天交付呀。
现在,感谢Cadence发布的Allegro 17.2版本,带来了Symphony Team Design团队协作Layout功能,让咱们Layout菌也能享受面向(男)对象拉线,不用再苦逼了,✌️
虽然,Allegro已经有了并行团队设计(PCB Team Design Option)的功能,可以实现多人团队布线,但老wu觉得这货还不够灵活,需要事先将PCB设计项目进行划分,分割成多个独立的子设计单元,这就需要团队成员事先沟通好,功能模块要要合理,而且这种设计不是实时在线式的,各个子设计模块都是相互独立完成,只能通过Report 、Refresh了解其他设计进展情况,对设计重新划分区域时需要导入所有的子设计, 而且数据导入导出合并操作繁琐,有时还会出错。
现在,Allegro为我们带来了「真•团队协作」Layout新体验,在17.2 QIR 2版本更新中,Cadence Allegro发布了新的并行设计解决方案Allegro PCB Symphony Team Design Option。 Allegro Symphony Team Design Option 允许用户连接到一个通用数据库,进行多人团队协作设计,每个团队成员可实时查看设计更新。
使用这种通用数据库方法,不需要以往繁琐的区域划分和数据导入、导出工作,所有的操作都是实时联网更新的,设计人员可以简单分享他们当前的设计,并邀请其他设计师加入协作,非常灵活。
Allegro PCB Symphony Team Design Option 是实时联网的,其基于TCP-Sockets通信,其网络架构如下图所示:
如上图所示,四个协作客户端连接到Symphony应用程序服务器,服务器负责Allegro数据库的操作。 每个客户端从服务器拉取数据库信息,以便开始设计工作,并将任何更改发回服务器。 然后,服务器将主数据库中的更改更新到其他客户端。
如何使用Symphony Team Design Option进行团队协作
首先,你得先装Cadence Allegro 17.2版本,这是前提,从17.2 QIR 2版本更新才发布的Symphony Team Design Option功能,没有打过更新补丁的17.2自带的叫做「Harmony Team Design」, 而打了#QIR2 补丁后(S009)更名为「Symphony Team Design」,老wu测试过没有打补丁的「Harmony Team Design」连接打过补丁的版本「Symphony Team Design」会提示版本号不匹配,建立TCP连接失败,而且这个新的团队协作程序刚出来,还在不断的完整中,老wu建议大家在安装完Allegro 17.2之后,都打上最新的补丁,最近发布的QIR 3 版本的更新又对「Symphony Team Design」进行了功能强化,大家可以关注老wu的博客这个链接 https://www.mr-wu.cn/cadence-orcad-allegro-resource-downloads/ 可以下载到最新的Cadence更新补丁。
其次,参与协作的客户端计算机上要打开OpenGL功能,以显示团队协作时锁定的元件和布线的颜色样式。
当然,你的计算机的网络防火墙要允许Allegro的连接咯,毕竟是要实时联网的。
Symphony Team Design 有两种共享模式
一种是基于专用服务器端的协助模式,另一种不设专用服务器,而是由其中一台Layout客户端发起,即作为Layout客户端也作为服务器,而其他协助客户端连接到这台服务器一起团队协作。
专用服务器端的协助模式
由专用服务器来打开和更新Allegro设计数据库文件(.brd),这台服务器对显示没有要求,甚至不需要显示任何界面。
运行Symphony server application (muserver.exe),这货在开始菜单里找不到的,得进入Cadence SPB 17.2的安装目录下运行,老wu的目录为:D:\Cadence\Cadence_SPB_17.2-2016\tools\bin\muserver.exe 具体的目录以你电脑中安装的路径为准。
点击【Open】按钮打开需要团队协作的.brd文件,然后客户端就可以连接到服务器端进行系统Layout啦。
通过菜单“File->Options…”可以进行参数的设置,比如限制client的连接数,设置自动保存,最重要的一点是,可以设置客户端的连接密码,这对设计文件的安全保密非常重要!!!
Symphony server application (muserver.exe) 还支持通过命令行运行,不需要显示任何界面,这对于搭建专用服务器通过远程连接的场合非常实用,服务器直接放在机柜里,都不需要连接显示器,直接通过远程命令行启动Symphony server application。
muserver -port 4000 -nographic Symphony_Demo.brd
具体的参数为:
- -nographic Specifies to invoke server application without user interface
- -port <# or range> Specifies port range
- -autosave_name Specifies the custom autosave base name
- -autosave_vers <#> Specifies number of autosave versions
- -autosave_int <#> Specifies autosave interval
当然,你大可不必专门去搭建一台服务器,完全可以在Layout的计算机上建立起Symphony server application,然后其他协作计算器连接到这台电脑上一起联网协同布线,大家都是Layout的电脑,不浪费资源,对于老wu所在的屌丝公司抠门的老板来说很适合,?
Allegro 17.2 打上最新的补丁,启动时勾选【Symphony Team Design】这个选项, 然后就可以通过Allegro界面中的菜单栏“File-> Symphony Connect及Start Symphony Server”启动服务和进行服务远程连接了。
下边老wu分享一下Symphony Team Design的官方演示视频
详细的Symphony Team Design使用教程大家可以参考Allegro自带的Help帮助文档,直接搜索【Symphony Team Design】就可以了,写的非常详细,当然,Symphony Team Design使用非常简单,建立起服务,然后协作的客户端输入服务端的IP就可以建立连接了,非常方便。
最后,感谢Cadence Allegro 17.2 为我们广大PCB Layout菌带来了好用的团队协作设计功能,这回我们Layout也可以像程序猿他们一样面向对象来拉线了,对于器件比较多比较复杂的PCB项目,多人协同设计,能极大的缩短我们产品上市的时间。
当然,由于老wu公司都是男Layout,老wu只能面向男对象拉线了,? 不过没关系,相聚在一起都是缘分,我们有共同的兴趣爱好,都喜欢巴萨,都喜欢打王者荣耀,我相信感情是可以慢慢培养的,您觉得呢? ?
对于公司有女Layout的朋友,工具Cadence给你提供了,方法老wu也高速你了,是否真的能面向对象拉线,就看你自己的能力了,?