gEDA电路图绘制软件
当六年前工程师Ales Hvezda决定编写自己的EDA软件时,他肯定没有预见到现在的结果:它已经成为一个活跃的开放源代码项目,拥有大量外部贡献者、数百名用户以及一套适合中低等复杂度PCB设计的工具。
这正是遵循GNU公共许可协议(GPL)的EDA项目,简称为gEDA,它博得了那些更喜欢以自己的方式工作而不愿依靠商业工具的工程师的欢心。它不会取代商业软件包,但确实提供了另一种设计途径。
该项目的支持者表示,gEDA工具最吸引人的地方并不是免费,而在于它提供了一个开放式的设计系统,包括总是可读的文件、随手可得的源代码,而且它没有许可证问题。但EDA供应商迅速指出开放源代码工具没有后续技术支持,并且缺少商业软件包具有的很多功能。
Hvezda的目标: 针对PCB的开放设计流程。 |
gEDA项目包括由Hvezda维护的一整套“核心”工具,如gschem原理图捕获工具、gnetlist网表生成工具、一个符号库和许多实用程序。此外,它还有一些由其它组织或个人维护的“相关”工具,如Icarus Verilog模拟器和ngspice电路模拟器。许多gEDA的参与者使用一个名为PCB的独立开放源码包进行电路版图设计。
目前,Hvezda是Cognex公司的一位实时软件开发员,他的日常工作既不需要设计电路板也不需要使用EDA工具。他称gEDA是有趣的业余项目,一周为此花费大约5到10小时。但事实上,它有一个严肃的使命。
“我的目标是提供一个完整的开放设计流程工具套件,”Hvezda说,“这组套件最吸引人的地方不只是免费,而且它所有的文件都是ASCII格式,所有源码都开放。此外,你很容易向该设计流程增加新的元素。”
gEDA的用户包括狂热的爱好者、学生以及一些小型企业或咨询公司的工程师。在大型公司,它也被“非正式”地用于快速构建原型,Hvezda表示。
Hvezda说,他并不清楚现在究竟有多少gEDA用户,但他强调去年11月份单gschem的下载次数就接近800,而且大多数gEDA用户从其它非gEDA官方网站的渠道获得此软件。
作为gEDA的积极用户和贡献者之一,Stuart Brorson是MKS仪器公司在线产品部的一名电气工程师。“我认为数年后gEDA将成为事实上的低端、甚至中端EDA环境,”他说,“如果我能下载 gEDA套件并马上投入设计,那么何必要为一套OrCAD而等经理批准价值数千美元的购买定单呢?”
“对于板级原理图设计,gschem易于使用且功能强大。”一家大型半导体公司的高级技术员Dan McMahill说,“我把它与我以往使用过的大多数商业工具列为同一等级的产品。”McMahill使用gEDA来设计评估板和特征板,但他表示,他可 能使用商业套件来完成带有1千个元件的产品板。
“与商业工具相比,gEDA工具还存在一些小问题,”仪器制造商MRA Tek LLC的总裁Steve Meier表示。尽管如此,他还是能使用开放源代码的gEDA和PCB工具包完成所有板级设计。他还使用Icarus Verilog模拟器进行FPGA设计。
灵感源于机器人项目
据Hvezda透露,他是因为一项个人机器人项目需要EDA软件,才开始开发gEDA工具的。“我调查了现有的产品,发现没有工具与我喜欢 的工作方式类似,因此我尝试编写一些东西,并在此基础上进行开发。”他说,“起初我并没有打算发布这套软件,但随着时间的推移和工作的进展,这看起来是个 好主意。”
因此,Hvezda在1998年建立了gEDA网站,并将他的软件置于GNU公共许可协议之下,该协议允许用户下载源代码,并利用这些代码做任何想做的事情。但如果有人想把它作为商业软件销售,那么必须满足某些基本原则。其中一条是,他们必须公开源代码。
几乎立刻开始有人为gEDA提供补丁,Hvezda表示。大约三年前,更大的贡献开始出现,其中包含一个gschem到PCB的网表分析 器,以及其它20多个针对商业电路板设计和仿真工具的网表分析器。McMahill为gEDA编写了几个网表后端工具,而Meier的新贡献将是为 gschem添加分层总线支持。
开放源代码EDA工具目录 |
Brorson贡献了一个名为gattrib的属性编辑器,能读取原理图文件,并允许用户管理面积值和供应商器件编号等属性。Brorson还为gnetlist编写了Scheme后端工具,可以输出Spice网表,同时他也为ngspice程序提供了一些补丁。
Hvezda负责发布和管理gEDA软件的贡献部分。来自业界的支持将通过电子邮件来发布,目前在邮件列表上大约有600位订户。
Hvezda表示,最大的用户群是小型公司或单人咨询工作室的工程师。“对于这些只想快些做事、而不想麻烦商业产品的工程师而言,gEDA正是他们需要的工具。”他说。
工程师们了解gEDA的途径各不相同。McMahill说,他是在网络浏览时碰巧发现gEDA的,后来当他被要求在一周内设计出一块电路板 时又想起了它。“我的进度表不允许我花时间去申请购买一个商业工具,因此,我觉得gEDA值得一试,”他说,“我的最初经验非常成功。我从计算机还没有装 gEDA的时候开始到定购PCB板,大约只花了36个小时。”
现在,McMahill利用gEDA和PCB进行所有的电路板设计,尽管PCB被限制在8层以内。“许可证问题不再让我头疼,”他说。
类似地,Meier表示他接触gEDA以及Icarus和PCB,多多少少也是因为数年前的一次巧遇。gEDA最吸引他的是“可编译”的输出文件、模型的源代码以及进入软件内部查看算法的能力。当需要设计8层以上的PCB时,他希望能找到时间对PCB程序进行修改。
Brorson是在2003年的咨询工作中认识gEDA的,此后他使用gschem和ngspice设计了一个500MHz的模拟光接收 器。他认为,gschem的功能与商业原理图输入工具一样强大,而且使用更容易,缺陷更少。他还指出了gEDA的许多优点,如没有许可证问题,开放源代码 程序采用文档性很强的ASCII文件格式,而且它们可以运行在Linux环境中。
此外,这些工具是免费的。“在每分钱都斤斤计较的经济环境下,开放源代码EDA工具将变得越来越有吸引力,”他说。
商业工具供应商的反应
然而,商业EDA工具供应商和分销商们认为开放源代码软件对他们几乎不构成威胁。“在大多数情况下,开放源代码软件不会成为主流,”分销 OrCAD工具的EMA设计自动化公司行销总监Greg Roberts表示,“我们的大多数用户只是工具的使用者。他们不想成为EDA软件的开发者。他们还是希望使用有技术支持和质量保证的工具来帮助他们完成 工作。”
“gEDA软件是一个非常有趣的项目,但并不专业化,”Electronics Workbench公司负责销售和行销的副总裁Ian Suttie指出,“虽然gEDA工具有许多基本功能,但它不能提供专业工程师们所需的简洁、优化的用户接口,也不能提供某些对专业用途而言很关键的功 能。”
Hvezda从未想过用gEDA替代商业工具。“当然,商业工具包都是非常优秀的,而且在它们背后有着公司的强大支持,”他说,“商业工具永远都会有自己的市场。”
但他确实希望传递一个信息,使人们关注开放设计流程的价值。“那才是我的真正目的:使人们意识到摆脱专有、封闭格式的价值,从而使工具更容易协同工作。”他说。