(电路与系统专业论文)eda原理图自动审查中的专用数据结构研究.pdf_第1页
(电路与系统专业论文)eda原理图自动审查中的专用数据结构研究.pdf_第2页
(电路与系统专业论文)eda原理图自动审查中的专用数据结构研究.pdf_第3页
(电路与系统专业论文)eda原理图自动审查中的专用数据结构研究.pdf_第4页
(电路与系统专业论文)eda原理图自动审查中的专用数据结构研究.pdf_第5页
已阅读5页,还剩85页未读 继续免费阅读

(电路与系统专业论文)eda原理图自动审查中的专用数据结构研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 随着e d a 工具在电子产品设计中的广泛使用,各种各样e d a 工具 提供的d r c 和e r c 功能往往不能够满足企业进行产品设计的规范性和 准确性的需求,也不能保证企业设计经验能够很好地继承和交流。正是 如此,对e d a 工具进行二次开发逐渐为各企业所重视。为了保证企业设 计规范和设计要求的实施,使设计经验得到有效继承和交流,并减少设 计中的人工审查任务,加大自动审查的比例,从而进一步缩短产品研发 周期,提高设计效率,降低研发成本。按照企业自身的设计规范和设计 要求,定制开发e d a 工具审查软件的工作已经列入日程。同时由于设计 人员使用的e d a 工具众多,企业提出了开发通用审查软件的需求。 本文正是根据对e d a 工具的审查模块进行二次开发以及开发通用 审查软件的需求下,通过对几种主流e d a 工具原理图模块的数据结构和 现有审查方法进行研究分析的基础上,总结提炼出基于专用原理图公共 数据结构的审查方法,并同时对e d a 工具开发中的数据结构、数据库, 编译方法及a d d i n 等关键技术进行研究探索,最后通过实现深圳华为公 司企业平台上的a v p ( a u t o m a t i cv e r i f y i n gp l a t f o r mo fs c h e m a t i c si n v i e w d r a w ) 系统,对e d a 原理图审查工具开发中的技术进行了验证, 取得了重大的突破。现在,a v p 系统正在该企业的产品设计中大规模推 广使用,极大地提高了产品设计的效率和质量。在设计人员中受到广泛 的欢迎。同时为企业e d a 工具的二次开发奠定了基础。 关键词:e d a 工具开发 数据结构审查方法数据库a v p 系统 a b s t r a c t a l o n gw i t ht h ee x t e n s i v eu s a g eo fe d at o o la te l e c t r o n i c sp r o d u c t d e s i g ni n s i d e ,e a c hk i n do fe d at o o lp r o v i d e st h ef u n c t i o n so fe r ca n d d r ct h a td o n tm e e tt h en e e do ft h ea c c u r a t ea n ds t a n d a r d i z a t i o ni np r o d u c t d e s i g no fe n t e r p r i s e o nt h eo t h e rh a n di tc a n tg u a r a n t e et h ee n t e r p r i s e s d e s i g ne x p e r i e n c et ob en i c e l yi n h e r i t e d j u s ts o ,t h ed e v e l o p i n gv e r i f y i n g s o f t w a r eb a s e do ne d at o o l sb e c o m em o r ea n dm o r ei m p o r t a n t a c c o r d i n g t ot h ed e s i g ns t a n d a r do fe a c h e n t e r p r i s eo n e s e l lw eh a v ed e v e l o p e d v e r i f y i n gs o f t w a r eo ft h ee d at 0 0 1 t h ev e r i f y i n gs o f t w a r ei su s e df o r g u a r a n t e e i n gt h e e n t e r p r i s e sd e s i g n s t a n d a r da n d d e s i g nr e q u e s t , a c c u m u l a t i n gd e s i g ne x p e r i e n c e ,a n dr e d u c i n gt a s ko fv e r i f y i n gb ym a n u a l w o r k ,i n c r e a s e i n gt h ep r o p o r t i o no ft h ea u t o m a t i cv e r i f y i n g s oe n t e r p r i s e c a nf u r t h e rs h o r t e nt h ep e r i o do fp r o d u c t s d e v e l o p i n g ,a n dl o w e rt o d e v e l o p i n gc o s t t h i sp a p e re x a c t l yd e d i c a t e dt ot h en e e do fe n t e r p r i s e w ea n a l y s e d s e v e r a lm a i ne d at o o l s sd a t as t r u c t u r ea n dv e r i f y i n gm e t h o d ,t h e n p r o p o s e d t h e v e r i f y i n g m e t h o db a s e ds p e c i a ls c h e m a t i c p u b l i cd a t a s t r u c t u r e a n da tt h es a m et i m ew ei n v e s t i g a t e dt h e s ek e yt e c h n i q u e si n e d at o o l s sd e v e l o p i n g ,s u c ha sd a t as t r u c t u r e ,d a t ab a s e ,c o m p i l e ,a d d i n t e c h n i q u ea n ds oo n f i n a l l y ,o nt h eb a s i so fp u b l i cd a t as t r u c t u r ew e i m p l e m e n t e da v ps y s t e mo fae n t e r p r i s ei ns h e n z h e n n o wa v ps y s t e mi s g r e a t l ys a t i s f i e dt od e s i g n e r i ti st a k i n gi m p o r t a n te f f e c to np r o d u c td e s i g n o ft h ee n t e r p r i s e ,i m p r o v i n gt h ee f f i c i e n c ya n dq u a l i t yo fp r o d u c td e s i g n , a n de s t a b l i s h i n gt h ef o u n d a t i o no fe d at o o ld e v e l o p i n go ft h ee n t e r p r i s e k e y w o r d :e d at o o ld e v e l o p i n g d a t as t r u c t u r e v e r i f y i n ga l g o r i t h m i c d a t ab a s ea v p s y s t e m 独创性( 或创新煎) 声明 本文声明所呈交的论文是我个人在导师的攒导下进行的研究工馋劣 取得的毛毋究成果。尽我所知,除了文中特剃加以标注和致谢中所罗列彰 内容外,论文不包含其他人醴经发表线撰写过的研究成果;也不包含蔓 获褥西安电子科技大学葳其他教育机构的学位或 芷书而使用过的材料。 与我圜工作过的固志对本研究所作的任何贡献均已在论文中傲了明弼 的说明并表示了谢意。 本人签名:芝鑫! 鸳! 丝 因期: 翌竺墨:丛:笪 关于论文使用授权的声明 本人完全了解西安电子科技大学有关僳鹭和使用学位论文的艘定, 邵:学校有权保留送交论文的复印佟,允许查阅和诺阅论文;学校可豁 公布论文的全部或部分内容,可以采用影印、绒印或其他复制手段保存 论文( 保密论文解帮后遵守此规定) 。鏊i 壅迨塞趁丕尘殛塞照璺曩童 逯型垡益撞鲞盔匿公盈簦辽道西玺趁鬣壅金围! 压丝奎逢塞数握蜜理麴 丛握童途塞蕴始后鲢遁生囱直邀。 本人签名:蠡! 蛩i 塾 导蜉签名: 日期: 塑1 2 :笠 日期:翌墨:! ! :! 受 绪论 目前在硬件设计中用于电路原理图设计的e d a ( e l e c t r o n i cd e s i g n a u t o m a t i c ,电子设计自动化) 工具种类非常多,这些工具的原理图都有 各自的数据组织方式和原理图文件格式。随着企业中原理图设计规范化 程度的提高和设计经验的积累,各企业对原理图设计都制定了自己的设 计要求和设计规范。因此需要通过对新设计的原理图进行审查以保证这 些设计要求和规范的实施。 虽然少数的e d a 工具原理图审查模块支持用户自定义审查规则来 实现本工具的原理图审查,但很大程度上不能满足企业的审查需求。各 企业一方面继续依赖于大量的人工审查保证设计的准确性和规范性,另 一方面开始通过自己开发的原理图审查软件扩充e d a 工具的d r c ( 设 计规则检查) 和e r c ( 电气规则检查) 的功能来保证这些要求和规范的 实施。但是针对不同的e d a 工具,这些规范和要求需要不同的审查软件 来实现。同时当e d a 工具升级或者更换新的e d a 工具后,原有的审查 软件也要更新或重新开发才能适应新的原理图设计。不能具有很好的继 承性,这就造成了开发成本的浪费。 此外,原理图设计人员使用的e d a 工具种类多,生成的原理图文件 格式也不相同,使用不同e d a 工具设计的原理图之间不能很好地进行数 据交换,审查人员不能共享审查经验,加重了人工审查的负担。 在设计经验积累方面,虽然有些e d a 工具支持用户自定义设计规 则,但这些规则和e d a 工具有很强的依赖关系,脱离该e d a 工具后, 规则就无法使用。也就是说,这些设计经验是定义在各种e d a 工具自己 的数据结构上的,不能在各种e d a 工具之间很好地得到继承交流。同时 e d a 工具对用户自定义设计规则的支持也是很有限的,很大程度上不能 够满足企业具有自身特性的审查需求。 企业目前开发审查软件的方案有如下几种:方案一是根据自身的需 求对于不同的e d a 工具开发不同的原理图审查软件:方案二是通过指定 某一特定的e d a 工具,在该e d a 工具的基础上开发原理图审查软件, 其他e d a 原理图均转换为该e d a 原理图文件格式后再进行审查。这样 虽然在一定程度上减少了人工审查任务,但由于各e d a 工具自身的特性 和局限性,不能l o o 地囊括所有e d a 工具的原理图信息。其实际上没 有完全解决审查经验共享和设计经验继承的问题,同样也没满足审查通 e d a 原理图自动审查中的专用数据结构研究 用性的需求。 因此本文重点分析研究了e d a 工具原理图审查软件开发中必须涉 及的核心内容一一原理图数据结构,设计了一套专用于e d a 工具原理图 审查的公共数据结构,以适应原理图通用审查软件开发的需求。同时对 其他相关技术做了简单介绍。 论文共分为四章: 第一章:简述基于专用原理图公共数据结构的审查方法。 第二章:对e d a 工具本身的原理图数据结构进行研究,并提出专用 于原理图审查工具的原理图公共数据结构。 第三章:对原理图审查工具开发中与原理图公共数据结构紧密相关 的几种关键技术进行了说明。 第四章:介绍了基于专用原理图公共数据结构的审查方法而实现的 a v p 系统,详细论述了由v i e w d r a w 原理图到专用公共数据结构进行转 换的实现方案。 第一章基于通用数据结构的匾堡国皇查查鎏 第一章基于公共数据结构的原理图审查方法 在e d a 工具已经广泛应用的今天,e d a 工具极大地提高了产品设 计的效率,缩短了产品开发周期和节约了成本。但是为了保证设计的正 确性,规范性和可继承性,各企业对原理图设计都制定了自己的设计要 求和设计规范。因此需要通过对原理图进行审查以保证这些设计要求和 规范的实施。 我们对具有代表性的几种e d a 工具的原理图绘制模块( c a d e n c e 的 c o n c e p t h d l ,i n n o v e d a 的v i e w d r a w 7 5 ,o r c a d 的c a p t u r e ) 的数 据结构,数据组织方式及其原理图e r c 和d r c 方法进行了深入研究, 同时分析了e d i f 2 0 0 ( 电子设计中间交换格式) 标准。并对所有这些研 究成果进行了对比分析,综合提炼,提出了基于专用的原理图公共数据 结构的审查方案,设计出了专用的原理图公共数据结构,并在深圳华为 公司a v p 系统平台的开发中进行了验证。 1 1 基于公共数据结构的原理图审查方法的提出 由于各种e d a 工具的原理图犹如一个个的信息孤岛,它们之问不能 很好地进行数据交换,使用各种e d a 工具的工程师之间也不能够很好地 进行设计经验的交流。而随着企业电子产品设计规范化程度的提高以及 设计经验及设计规则的不断积累,同时为了减少产品设计中的人工审查 任务,加大自动审查的比例以进一步缩短产品的研发周期,降低企业研 发成本,企业急需开发一套适用于各种e d a 工具原理图的通用审查软 件,以确保企业的设计规范和设计要求得到严格实施,设计经验能够很 好地得到继承,设计效率能够进一步提高。 本文基于专用原理图公共数据结构的审查方法正是适应企业这种需 求的一种e d a 工具原理图审查软件的开发方案,它是我们通过研究了 e d a 工具原理图的相关对象属性及原理图相关信息的基础上,分析了多 种e d a 工具原理图数据结构的特点、共性及e r c 、d r c 方法而提出的。 该方案的重点是设计能够兼容所有e d a 工具原理图信息的专用原 理图公共数据结构,研究原理图信息的提取方案,同时研究设计按企业 定制的原理图审查软件的审查算法。 本文主要研究的是v i e w d r a w 原理图的数据组织方式和数据结构。 e d a 原理图自动审查中的专用数据结构研究 它是专用原理图公共数据结构设计的重要研究内容之一,同参考文献 2 6 、2 7 、2 8 中研究的c o n c e p t 、c a p t u r e ,e d i f 等原理图信息的数据组 织方式和数据结构一起为专用原理图公共数据结构的设计奠定了基础。 1 1 1 基于专用原理图公共数据结构的审查方法的可行性 通过对几种主流e d a 工具原理图绘制模块的研究,同时分析了 e d i f 2 0 0 的数据组织方式,我们得出的结论是绝大多数e d a 工具的原理 图文件格式都可以转换为本文设计的原理图公共数据结构,即使不能直 接转换( 当e d a 工具的原理图信息不可从底层文件提取时) ,也可以通 过转换成e d i f 文件来间接实现,从而保证了专用原理图公共数据结构 的稳定性和兼容性。 信息的完备性方面,公共数据结构中包含了所有的原理图原始信息; 同时,按照逻辑关系建立了展平的数据结构( 去掉了分层分页信息) ,这 就是将原理图后处理软件才能生成的网表信息也相应地包含于本公共数 据结构当中,为审查提供了完备的信息,可以非常方便地实现审查。 此外原理图审查( 审查规则描述、审查规则执行、结果输出等) 与 e d a 工具无关,审查方法建立在公共的数据结构基础上,只要数据结构 不发生变化,审查规则和审查软件就可以继续应用。这样原理图设计的 标准化、典型电路应用的规范性等原理图设计经验就可以不断在一个平 台上积累,大大提高了原理图设计和原理图审查经验的共享和重用,提 高了原理图审查的效率。 因此,如图l _ 1 所示,我们只要开发各种e d a 工具到原理图公共数 据结构的接口和针对公共数据结构的审查软件便可满足企业的多e d a 工具而单审查软件的需要。实现一对多的需求。同时极大程度地简化原 理图审查软件的开发,保证了审查软件的通用性,使审查不再依赖于特 定的e d a 工具。此外设计及审查经验也能够得到不断的积累和很好的继 承,提高了设计效率和方便了硬件工程师之间的交流合作。 本文最后将要论述的接口软件是v i e w d r a w 7 5 原理图底层文件信息 到公共数据结构的接口软件v d 2 a v p 。另外针对公共数据结构的审查软 件实现在参考文献2 2 中进行了详细的论述。 第一章基于通用数据结构的原理图审查方法 图1 1 基于专用原理图公共数据结构的审查方法示意图 1 1 2 现有审查方法和本文审查方法的比较 虽然e d a 工具在电路原理图级都提供了e r c ( e l e c t r i c a lr u l ec h e c k 一一电气规则检查) 或d r c ( d e s i g n r u l e c h e c k 一一设计规则检查) 功 能,它们主要是对电路原理图的电气连接和简单的通用规则进行审查的。 很大程度上不能满足各企业的各种审查需求和实现设计经验的继承性。 使用e d a 工具审查功能模块和各企业现有的一些原理图审查软件 有如下的一些缺点: 各种e d a 工具提供的原理图审查功能,都是基于自己的数据结构或 者文件格式的,不具备通用性。 e d a 工具审查功能模块不能够满足企业自身的审查需求。 各企业针对不同的e d a 工具开发的审查软件也不具备通用性,在 e d a 工具升级后审查软件也要重新开发,极大地增加了开发成本和 难度,降低了软件的可维护性。 设计经验无法有效继承,只能用文档描述,人工查阅,传递效率低, 增加了企业设计经验的共享难度。 为了解决现有e d a 工具原理图审查方法的缺点,我们提出了基于专 用原理图公共数据结构的审查方法。该方法实现的是: 使原理图审查软件不再依赖于任何e d a 工具的原理图文件格式或其 数据结构,仅依赖于专用原理图公共数据结构,保证通用审查软件的 通用性和可维护性。 e d a 原理图自动审查中的专用数据结构研究 设计专用原理图公共数据结构,兼容了各个e d a 工具生成的原理图 之间的差异,完整地描述出不同e d a 工具原理图的信息,可在各原 理图“信息孤岛”之间方便地实现原理图信息的数据交换。 使原理图设计经验不再依赖于特定的e d a 工具,可以得到有效的积 累,减少了人工依赖性。例如:对原理图设计的标准化要求、对某些 典型电路的规范性要求等等,这些设计经验和规范,可以通过脚本语 言描述出来,通过解释器,在原理图公共数据结构上进行审查,而不 依赖于某个e d a 工具,从而使设计经验能有效继承,实现审查规则 的积累。同时满足了原理图设计人员间方便地进行设计经验交流和合 作的需要。 1 2 基于公共数据结构的原理图审查方法简介 如前所述,从图1 1 可以清楚地看到:不同的e d a 工具( v i e w d r a w 、 c o n c e p t 、c a p t u r e 等) ,都有自己的原理图格式,将这些格式转化成为原 理图公共数据结构,从而使审查规则和设计经验的描述都基于这个原理 图公共数据结构,排除了审查软件对e d a 工具的依赖性。 基于专用原理图公共数据结构的原理图审查方法有如下的研究开发 内容: 首先需要设计一个能完整描述不同e d a 工具的原理图信息的专用 于原理图审查的公共数据结构,当然包含了原理图公共数据结构中对数 据进行处理的算法; 其次是开发对于不同e d a 原理图格式到公共数据结构的转换接口, 这同时要研究各种e d a 工具的原理图信息格式及提取方案; 最后是开发基于原理图公共数据结构的原理图审查软件,这一步的 关键核心便是根据企业的审查需求定制设计基于原理图公共数据结构的 审查算法。 这些内容中,最为核心的是原理图公共数据结构,它直接关系着整 个审查软件开发的难易程度,影响着原理图审查软件的运行效率和系统 的性能。 1 2 i 基于公共数据结构的原理图审查方法流程介绍 对每种e d a 工具而言,当要对一个新设计的原理图工程进行审查 时,基本上都是进行收集信息,获取规则,匹配审查,输出报表等几个 第一章基于通用数据结构的原理图审查方法 步骤。具体实现过程如图1 2 所示。 图1 - 2 基于公共数据结构的原理图审查方法实现过程 本文介绍的基于专用原理图公共数据结构的开发的审查工具也按照 这些步骤运行。那就是: 1 、首先审查软件会将提取该原理图的原始信息( 包括原理图级和网表级 信息) 以转换为原理图公共数据结构; 2 、当用户指定审查需求时,审查软件将会确定是否访问规则数据库获取 规则。若需访问数据库时,建立和规则数据库的连接。 3 、访问数据库调出相应的规则和设计经验进行待审查原理图公共数据结 构的匹配审查或调用固化了的审查模块进行原理图公共数据结构的固 有规则匹配审查。 4 、最后输出报告。 举例如下: 用户选择了原理图比较功能,审查软件将先将待比较的原理图转换 e d a 原理图自动审查中的专用数据结构研究 为两个公共数据结构,然后调用原理图比较模块对公共数据结构进行匹 配,最后输出报告。 若用户选择了审查原理图的管脚悬空情况,同样审查软件将先将待 审查的原理图转换为公共数据结构,调用固化模块获取元件管脚判断其 连接关系,最后输出报告。 若用户选择了标准电路审查,审查软件将先将待审查的原理图转换 为公共数据结构,然后建立和规则数据库的连接,以从数据库中下载规 则( 以公用数据结构的方式存储) ,最后调用标准电路审查模块通过匹配 标准电路的核心器件,特征器件以及所有的特征网络对原理图公共数据 结构进行审查,最后给出报告。 1 2 2 基于公共数据结构的原理图审查算法理论 算法( 审查方法) 是原理图审查软件的研究开发中的关键内容之一, 算法设计是审查软件的核心。在e d a 工具原理图审查软件的开发中算法 直接关系着审查软件功能的实现和原理图审查软件审查的效率和成功覆 盖率。 根据e d a 工具原理图的特点和其拓扑结构,我们利用了图数据结构 的概念设计了专用原理图公共数据结构,当然也运用图数据结构的算法 来设计原理图审查软件的算法。 图的算法有一个共同的特点,就是它们都能系统地访问图数据结构 中所有的结点( 顶点) 。也就是图的各种算法都要遍历图这种数据结构, 并在每一个顶点处执行某种操作。这种过程称为图的遍历( g r a p h t r a v e r s a l ) 。 由于图结构本身的复杂性,所以图的遍历操作也较复杂,主要表现 在以下三个方面。 首先,在图结构中,没有一个“自然”的首结点,图中任意一个顶 点都可作为第一个被访问的结点。对于非连通图,从一个顶点出发,只 能够访问它所在的连通分量上的所有顶点,因此还需考虑如何在选取了 下一个出发点后访问图中其余的连通分量。 其次,在图结构中,如果有回路存在,那么一个顶点被访问过后, 有可能沿回路又回到该顶点。 最后,在图结构中,一个顶点可以和其他多个顶点相连,当某个顶 点访问过后,存在着如何选取下一个要访问的顶点的问题。 需要注意的是,这里我们所说的图的遍历不是只按其存储结构中各 第一章基于通用数据结构的原理图审查方法 顶点的存储顺序访问各顶点,而是考虑到图本身的结构特点,按照图的 结构访问图中的各顶点。 图的遍历算法通常有两种方式,深度优先搜索和广度优先搜索,下 面分别进行介绍。 深度优先搜索算法遍历图的规则是:首先访问指定的起始顶点j o , 从j o 出发,访问j o 的一个末被访问过的邻接顶点j l ,再从j l 出发,访 问j l 的一个未被访问过的邻接顶点j 2 、,然后从j 2 出发,访问j 2 的一个 未被访问过的邻接顶点j 3 如此下去直到到达一个所有邻接点都被 访问过的顶点为比。然后依次回退到尚有邻接点未被访问过的顶点,重 复上述过程,直到图中所有和j o 有路径相通的顶点都被访问过。此时, 若图中还存在未被访问过的顶点则从其中一个未被访问过的顶点出 发重复上述过程,直到图中的全部顶点都被访问过为止。深度优先搜 索从递归的角度实现便是:从指定的顶点j o 出发,访问该顶点j o ,然后 从j o 的一个未被访问过的邻接点出发,进行深度优先搜索,直到图中与 j o 有路径相通的顶点都被访问过。此时,若图中还存在未被访问过的顶 点则从其中一个未被访问的顶点出发,重复上述过程,直到图中的全 部顶点都被访问过为止。 广度优先搜索算法是对图进行遍历的另一种常用方法。它的规则是: 首先访问指定的起始顶点j o ,从j o 出发,访问j o 的所有未被访问过的邻 接顶点j l ,j 2 ,j k ,然后再依次从j l ,j 2 ,j k 出发,访问它们的 所有未被访问过的邻接顶点如此下去,直到图中所有被访问过的顶 点的邻接顶点都被访问过为止。若此时图中还有未被访问过的顶点,则 从一个未被访问过的顶点出发,重复上述过程,直到图中所有的顶点都 被访问过为止。可以看出,广度优先搜索法实质上是从指定顶点出发, 按照到该顶点路径长度由短到长的顺序访问图中其余的所有顶点。 在基于专用原理图公共数据结构的原理图审查软件的开发中,我们 用两种遍历方法来进行了审查算法的设计。相应地在本公共数据结构中 每个结点处的操作便是提取对象的属性或其连接关系。 基于专用原理图公共数据结构的审查方法,就是将规则( 通用规则 和标准电路规则) 转换为审查软件对公共数据结构的匹配处理。 对于通用规则,由于其都是固化了的规则,只需要由待审查原理图 信息生成图数据结构,然后对该数据结构中的顶点进行相应的匹配审查 即可。 对于标准电路规则审查,使用了深度优先遍历的算法。由于标准电 路可以是一个相互有效关联( 非电源、非地网络) 的独立电路原理图或 1 0 e d a 原理图自动审查中的专用数据结构研究 由几个独立模块组成的电路原理图,因此在提取信息将其转抉为基准图 数据结构时,最为关键的就是根据电路原理图的拓扑结构,选择最为核 心的元件和与其相连接的特征网络,以便确定图数据结构中的顶点和需 要进行完全匹配的最少信息。这对审查软件审查原理图公共数据结构各 节点的遍历速度和审查结果有着直接的影响。 对于原理图匹配审查( 即原理图比较审查) ,需要的是对每一个节点 进行完整的匹配,当有差异时便要记录并决定是否终止审查,所以更适 合于使用广度优先遍历算法。 审查算法的详细实现在参考文献3 0 、3 1 中有进一步的论述。本文不 再对其作讨论。 1 2 3 专用原理图公共数据结构简介 目前只有e d i f ( e l e c t r o n i cd e s i g n i n t e r c h a n g ef o r m a t ) 电子设 计中间交换格式是广泛应用于电子自动化设计和制造过程中的设计转换 格式标准( 原理图级和p c b 级) 。每种e d a 工具原理图都提供了e d i f 格式文件输出的功能。如果能通过对e d i f 文件进行原理图审查,那将 大大减少接口软件的开发。 经过分析研究,一种e d a 工具生成的原理图标准交换格式e d i f 文 件被该工具本身使用时,通过该工具反向读入接口,绝大部分原理图信 息是可以恢复的,但是被另一e d a 工具使用时不能完整地恢复出原始原 理图信息,信息丢失比较严重。另外由于e d i f 文件内容非常庞大( 一 般都有几兆以上) ,格式复杂,本身的数据组织结构也不便于进行原理图 审查。所以开发基于e d i f 文件的原理图通用审查软件的思路是不可取 的。 此外我们曾经以v i e w d r a w 的底层文件格式作为中间数据格式,开 发了从p r o t e l 9 8 到v i e w d r a w ,m i e r o s i m 的p s p i c e 8 0 到v i e w d r a w 的转 换接口,但是由于v i e w d r a w 本身的局限性,它同样不能兼容所以的e d a 原理图信息,满足通用性审查软件的需求。 因此本文所提出的专用原理图公共数据结构是在几种主要e d a 原 理图工具数据结构的基础之上,并参考了e d i f 的数据组织方式而设计 出来的。本专用原理图公共数据结构完整描述一个原理图设计工程的信 息所使用的是元件( 器件) 的四级实现方式,这对于各种e d a 工具都适 用,如图1 3 所示。 第一章基于通用数据结构的原理图审查方法 1 1 卦甜删一斟辛冁型川瓶八 、 原理图设计一设计模块分页 符号 、;、,j j 7 、设计模块实例一基本辏块原型一设计模块7 图1 3 原理图公共数据结构元件四级实现方式简图 这种四级实现方式,借鉴了e d i f 组织数据的方式,它以层次化方 式将可重用的设计元件原型( 基本元件原型和设计模块原型) 封装到库 中,对于设计模块分页描述其底层各页中的设计元件及其网络连接关系, 在整个展平工程中描述所有的工程元件( 即设计元件实例和设计模块实 例) 及信号( 完全展平的网络) 信息。这种方式虽层次较多,但能最大 程度地共享各种共有信息,以最少的存储体现最大的信息量,便于工程 的展平处理,同时此实现方式符合模块化设计的思想,易于数据的组织 和管理。 本专用原理图公共数据结构可以完整地保存原理图的所有原始信 息,并建立展平的信号网络和元件,为后续处理程序提供了相应的接口 函数,可以方便地用于原理图的自动审查。 所谓展平是指经过分析处理,将原理图的分页、分层( 引用) 关系 消除,在一个最顶层的数据结构中,完整描述各种器件具体对象的属性 和网络连接关系,简单说就是完成原理图网表生成工具所作的工作。本 文的原理图公共数据结构的完备性的体现之一便是包含了展平的网表信 息。 第二章将对专用原理图公共数据结构的设计做详细的说明。 为了说明对于各个e d a 工具原理图信息都能完整地体现在公共数 据结构中,下面先对比说明原理图设计过程中使用的对象和本文的原理 图公共数据结构中相应的各个对象的关系: 1 、准备设计库:进行原理图设计时,我们首先需要的是各种元件符号库 或自定义符号。由于对于一个元件可以由不同的符号来描述( 诸如常 规符号,国标符号,a n s i 符号等) ,因此原理图公共数据结构中的设 计库将存放的是设计元件原型,设计元件原型中包含了符号映射表存 储了它可以使用的所有符号,同时符号具有符号管脚,存放的是设计 元件管脚的公有信息。对于自定义符号,我们将其封装到称之为 u s e r l i b r a r y 的设计库中。 e d a 原理图自动审查中的专用数据结构研究 2 、准备设计模块原型:对于设计模块原型,因它是将一定功能的原理图 页封装起来的设计元件原型,所以将会有一个底层设计页的集合。 3 、准备单页原理图:这将调用设计元件原型到原理图中成为设计元件, 同时绘制它们的连接关系。符号管脚此时便成为设计元件管脚,网络 存放了设计元件管脚来体现连接关系。 4 、生成原理图设计:当数据结构中对每一个原理图页都建立相应的对象 以后,由于实际的设计中每一原理图页可能被多次使用,因此对页中 的对象我们再提高一个层次成为各种实例,同时从顶层开始将所有连 通的网络合并为信号,信号存放的是实例管脚对象来体现连接关系。 到此原理图设计的公共数据结构生成。 此外所有的原理图设计对象将会有属性集合记录其属性信息。符号 和设计页将会有图形集合记录图形信息。 表1 1 给出了图1 3 在原理图设计过程中的设计步骤和在原理图公 共数据结构中的实现方式的对应关系,空白表示不进行操作。对于针对 不同e d a 原理图格式开发的公共数据结构转换工具都应遵循表1 - l 的设 计步骤。 表1 1 原理图设计步骤和转换工具实现方式 设计步骤元件四级实现 创建设计库创建设计库对象,存放基本元件原型和设计模块原型 创建基本元件符号创建符号,同时创建基本元件原型存放符号 创建设计模块符号创建符号,同时创建设计模块原型存放符号和其底层设计 页 绘制设计模块底层页 创建设计模块的底层设计分页 调用基本器件符号创建基本元件实例,和库中的基本元件原型对应 调用设计模块符号创建设计模块实例,和库中的设计模块原型对应 绘制连接关系创建网络连接关系,存放管脚 绘制顶层页创建原理图设计和顶层页 从顶层向底层延伸 顶层页 顶层设计模块 创建设计模块实例,和设计页中的设计模块建立联系 顶层基本器件创建基本元件实例,和设计页中的基本元件建立联系 顶层网络创建信号,存放管脚实例 底层页 底层设计模块刨建设计模块实例,和设计页中的设计模块建立联系 底层基本器件 创建基本元件实例,和设计页中的基本元件建立联系 第一章基于通用数据结构的原理图审查方法 1 3 底层网络创建信号,存放设计管脚实例 在设计了原理图公共数据结构和开发了不同e d a 工具原理图接口 转换工具后,再辅以原理图审查软件开发中的其他诸如数据库,编译方 法等技术就可以开发实现基于原理图公共数据结构的原理图审查软件 了。 1 4 e d a 原理图自动审查中的专用数据结构研究 第二章专用原理图公共数据结构 数据结构( d a t as t r u c t u r e ) 是在整个计算机科学与技术领域上广泛被 使用的术语。它是用来反映一个数据的内部构成,即一个数据由那些成 分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据 结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的 逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排。 简单说来数据结构就是相互之间存在一种或多种特定关系的数据元 素的集合,也就是说数据结构是数据存在的形式。它是软件开发中最为 核心的内容,它直接影响到软件开发的效率和系统的性能及功能。本文 论述的专用原理图公共数据结构是逻辑意义上的数据结构。 数据结构的一个重要内容就是其中数据的运算,也就是指对数据施 加的操作,它是定义在数据的逻辑结构上的,但运算的具体实现要在物 理结构上进行。在我们设计的专用原理国公共数据结构中,对数据的运 算大部分都是按照面向对象的设计方法封装到类中的,通过成员函数的 方式提供给外界使用。 每种e d a 工具都有其本身的数据组织方式和自身的数据结构。为了 归纳提炼各种e d a 工具原理图模块的数据组织方式和数据结构,设计出 我们所需要的专用原理图公共数据结构,我们选择了三种国内外比较流 行的e d a 工具原理图绘制模块v i e w d r a w 、c o n c e p t h d l 和c a p t u r e , 对其原理图信息和工具本身的数据结构进行了深入细致的研究,同时对 e d i f 2 0 0 的原理图文件及网表文件格式进行了对比分析。 本文主要研究的是v i e w l o g i c 公司的v i e w d r a w 原理图绘制模块的数 据结构及数据组织方式。在综合了另外两种工具的研究成果,同时参考 了e d i f 2 0 0 的数据组织方式的基础上,根据原理图对象信息的特点及原 理图的拓扑关系,本文将原理图设计对象划分为符号、元件、符号管脚、 元件管脚、网络( 电气连线) 、总线;辅助原理图对象划分为注释文本、 点、线、矩形、圆、圆弧等,并在专用原理图公共数据结构中设计了相 应于这些对象的类。 下面将在介绍v i e w d r a w 的数据组织方式和数据结构的基础上,详 细阐述专用原理图公共数据结构的设计。 第二章e d a 工具中的原理图数据结构 2 1v i e w d r a w 原理图数据组织方式 所谓原理图模块的数据组织方式也就是原理图的底层文件组织结 构。分析清楚了底层文件的组织结构,我们就可以分类出原理图信息, 搞清楚原理图信息问的结构关系和依赖关系。 使用v i e w d r a w 7 5 创建一个新的工程,将会产生四个目录和两个文 件。原理图底层文件结构如图2 一l 所示。目录分别是p k t 、s c h 、s y m 、 w i r :文件是v i e w d r a w i n i 初始化配置文件和后缀为v p j 的工程文件,如 本文中所使用的f o r m a t s t u d y v p j 。f o r m a t s t u d y v p j 文件描述的是工程 路径它以二进制形式进行存储;v i e w d r a w i n i 描述的是工程设置和原理 图对象缺省配置信息。 图2 1 新工程下的文件结构 新建工程后的四个目录均为空目录;当对原理图进行设计时,不同 的信息将自动存储于不同的目录下。其中b a c 目录是系统自动备份文件 的目录,s a c 是提供给用户的备份目录。 当设计一个新的原理图( s c h e m a t i c ) 使用s a v e 存盘以后将在s c h 目 录下产生s c h 文件+ 1 、+ 2 、+ 3 等等,并同时产生l o c k 目录,若使用了 o a t 选项还会产生o a t 文件;若使用s a v e + c h e c k 存盘以后还会在w i r 目 录下w i r 文件+ 1 、+ 2 、+ t 3 等等,并同时产生l o c k 目录。 当设计一个新的符号( s y m b 0 1 ) 使用s a v e 存盘以后将在s y m 目录 1 6 e d a 原理图自动审查中的专用数据结构研究 下产生s y m 文件1 、 2 、+ 3 等等,并同时产生l o c k 目录;l o c k 目录 是为了保护正在编辑的原理图而产生的。 此外v i e w l o g i c 的器件库由四部分组成,包括a n a l o g 、s i m m o d s 、 s y m s e t s 、f p g a 四类库。其中a n a l o g 库为模拟库,s i m m o d s 库为数字库 ( 包含仿真信息) ,s y m s e t s 和s i m m o d s 的库中符号一样,只是不包括仿 真定时信息,f p g a 是各个厂商的模型库。 每个库都是存储于一个独立的目录下的,该目录下一般有5 到7 个 文件,分别为l i b c f g 、s y m 1 i b 、s y m t b l 、s c h 1 i b 、s c h t b l ,或再加上w i r 1 i b 和w i r t b l 文件。l i b c f g 是库的配置文件。s y m 1 i b 是符号库描述文件, s y m t b l 是符号库查找表文件,s c h 1 i b 是原理图库描述文件,s c h t b l 是原 理图库查找表文件,w i r ,l i b 是w i r 库描述文件,w i r t b l 是w i r 库查找表 文件。 所有相关的文件格式研究是本文介绍的v d 2 a v p 接口软件开发的基 础,同时也是专用原理图公共数据结构设计的基础之一。它们均在参考 文献2 5 中进行了详细说明。限于篇幅,本文仅介绍o a t 文件格式。 v i e w d r a w 原理图的o a t 文件是对元件,网络和管脚属性具体取值的 描述,它是用户指定使用o a t 属性后才会产生的对于p c b 设计极为重要 的文件。 下面以f o r m a ts t u d y 工程s c h 耳录下的t e s t 1 原理图产生的t e s t o a t 文件为例进行格式说明,o a t 文件最常用的是描述元件的r e f d e s 属性 和管脚的存属性,这些都是元件的重要属性,是同p c b 直接相关的。在 o a t 文件中,关键字c 表示元件,p 表示管脚,n 表示网络,a 表示o a t 属性。同时o a t 文件的文件名即是顶层原理图名。下面是源文件及参数 说明。 文件开始 vl s ns y m l s o $ 1 1 1 6 s ns y m 2 s o $ 1 1 6 8 b a c $ 1 1 1 6 、$ 1 1 1 ar e f d e s = r l c $ 1 1 1 6 、$ 1 1 1 av a l u e = 2 k 声明部分开始 ,声明部分结束 属性描述部分开始标志 第二章e d a 工具中的原理图数据结构 1 7 p $ 1 1 1 6 、$ 1 1 1 b at e s t = p i n l c $ 1 1 6 8 $ 1 1 1 ar e f d e s = r 3 c $ 1 1 6 8 $ 1 1 2 ar e f d e s = r 4 c $ 1 1 5 4 ar e f d e s = x 1 c $ 1 1 5 4 a p k g t y p e 2 d i p 16 c $ 1 1 5 3 av a l u e = 2 k nv d d l s $ 1 n 5 9 ac a p a c i t a n c e = l :5 0 0 :2 :5 0 0 c $ 1 1 1 6 ar e f d e s = u 1 a b属性描述部分结束标志 文件结束 详细格式介绍如下 l 、v1 版本描述。 2 、s ns y m l 一对于分层符号的符号名称进行声明:s n 示关键字( 即 s y m b o ln a m e ) ,s y m l 是符号名。 3 、s o $ 1 1 1 6 一对于分层符号的实例化:s o 是关键字( 即s y m b o l o c c u r r e n c e ) ,$ 1 1 1 6 是实例后的符号u i d 。 注:只是对于c o m p o s i t e 类型的符号,其底层原理图对象( 元件、网络 和管脚具有o a t 属性时) 才使用s n 和s o 字

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论