从Protel 99 SE到Altium Designer

Old Content - visit altium.com/documentation

Protel 99 SE利用设计数据库或DDB来存储设计文件。Altium Designer在硬盘驱动器上存储文件,并且包括了项目的概念。通过99SE导入向导,可以控制向Altium Designer导入99SE设计数据库的过程,且能使该过程实现可视化。

设计数据库变成了一个设计工作区&项目

Protel 99 SE在一个单独的设计数据库内存储了所有的设计文档。数据库是一个存储容器,也可作为设计者用于分类项目相关设计文件的方式。

设计数据库的存储内容,以及设计文档怎样在设计数据库(DDB)文件夹内进行分类都没有硬性规定。一些设计者为每个电路板设计使用一个 单独的DDB,一些设计者会在一个单独的DDB内保存所有的设计版本,其他的设计者在一个单独的DDB内为一个产品保存所有的电路板设计。

在Altium Designer内,所有的设计文件都储存在硬盘驱动器上。在Altium Designer中创建的每个设计的基础是一个项目文件。Altium Designer环境支持多种类型的项目,包括:

  • PCB项目(PCB projects) (*.PrjPcb)
  • FPGA项目(FPGA projects)(*.PrjFpg)
  • 嵌入式项目(Embedded projects) (*.PrjEmb)
  • 核心项目(Core projects) (*.PrjCor)
  • 集成元器件库(Integrated libraries) (*.LibPkg)
  • 脚本项目(Script projects) (*.PrjScr)

除了脚本项目,一个基本的要求是每个项目都是一个单一的实现 – 例如,一个PCB项目包括了所有定义单个PCB所需的资源,而一个FPGA项目是在一个单独的FPGA上执行。项目文件本身是一个存储了项目信息的 ASCII文件,包括项目文件的链接、输出设置、编译设置、错误检查设置等。

在项目水平上,Altium Designer使用了设计工作区(Design Workspace)。设计工作区用于将相关的项目聚集在一起,所以可以把一个客户的所有项目,一个产品的所有电路板等,集中在一个设计工作区。打开设计 工作区时,所有工作区内的项目都会在项目面板上显示。

上图显示了从99 SE设计数据库到Altium Designer中等价对象的映射;工作区对应的是DDB,每个包含PCB文件的文件夹都对应一个PCB项目,每个只包含元器件库的文件夹都对应一个元器 件库包。在导入过程中可以更改几乎所有的映射,除了从DDB到工作区的映射。

虽然Altium Designer允许对任何单个原理图、PCB、HDL或其他设计文件直接编辑,但是在进行任何项目类型的操作,例如从原理图来更新电路板或者打印项目中 所有的原理图时,必须打开项目。

Protel 99 SE窗口文件系统(Protel 99 SE Windows File System)设计也能够导入,使用99 SE导入向导(99 SE Import Wizard)即可,操作方式与导入Access®数据库DDB(Access® Database DDB)相同。

导入99 SE设计数据库

为实现99 SE数据库导入,请从“File”菜单选择“File » Importer Wizard”。选择99SE DDB文件类型(99SE DDB File Type)来导入。导入过程需要关闭当前打开的所有文件、项目和设计工作区。如果未关闭,系统会提示先关闭上述程序。

向导可用于导入一个单一的DDB或者文件夹中的所有DDB。本文将重点介绍单一DDB导入。

向导按以下步骤运行:

  1. 从数据库中提取文件,将其放入硬盘驱动器上指定的文件夹内。数据库上的任何文件夹结构都将在硬盘驱动器上重新创建。数据库中的所 有文件将会被提取,无论它们是否是项目结构中的一部分。
  2. 将原理图文档转换为当前文件形式(如果此选项开启)。
  3. 向 所有原理图和PCB文件添加可识别的文件扩展名。Altium Designer使用文件扩展名来识别哪些文件可进行编辑。对于原理图,扩展名必须为Sch,SchDoc,或是原来的DOS原理图S01、S02等命名 规定。如果DDB中有些原理图没有扩展名,*.SchDoc将会添加到文件名中。请注意,这不会打破层次结构,Altium Designer编译器将会自动检测这种情况,并保持设计的层次结构和连通性。没有标准文件扩展名的非Altium文件不会自动重命名。
  4. 为每个指定的项目添加一个项目文件,类型为PrjPcb (PCB项目)或LibPkg (元器件库包),并添加相关的项目文件。
  5. 创建一个设计工作区(*.DsnWrk),并向其中添加所有已创建的项目。
  6. 打开设计工作区。当已创建的设计工作区打开时,会显示已创建的所有Altium Designer项目。上图显示了Protel 99 SE\Examples文件夹内Z80 微处理器设计(Z80 Microprocessor design)的导入结果。

创建Altium Designer项目

在导入向导的众多页面之一,“设置导入选项(Set Import Options)”页面中,可以设置是否需要如下选项:

  • 为每个DDB创建一个Altium Designer项目 – 如果用户通常为每个电路板设计使用单个DDB,请选择这一选项。
  • 为每个DDB文件夹创建一个Altium Designer项目 – 如果DDB包含了一个以上的电路板设计,请选择这一选项。
  • 选择最符合个人DDB操作习惯的选项。之后还有机会调整向导的“审查项目创建(Review Project Creation)”页面。

如上图所示,在“审查项目创建(Review Project Creation)”页面上,可以看到向导做出的假设,即它如何基于DDB内容来创建项目。花一点时间来配置这些选项,以确保在导入过程中能够得到最好的 结果。

在项目中手动添加和删除文件

如上图所示,一旦向导配置完成,Altium Designer将会显示项目及其文档。请注意,原理图项目的层次结构将不会显示,直到项目第一次编译;这部分会在文章的后面部分涉及。

如果在导入后发现一些文档未正确分配到项目中,请使用以下方法来清理:

  • 通过单击和拖放,将一个文件从一个项目移动到另一个项目中,或者在单击和拖放的同时按住CTRL键,把文件同时括入两个项目中。
  • 通过鼠标右键单击并从弹出菜单中选择“从项目中删除(Remove from Project)”,来删除项目中的文档。
  • 从弹出菜单中鼠标右键单击项目文件并选择“添加现有内容至项目(Add Existing to Project)”,将一个丢失的文件添加到项目中。请记住,该文档必须有一个合适的扩展名,以便被识别为Altium Designer文件。
  • 添加一个新文件至项目,从弹出菜单中鼠标右键单击项目名称并选择“添加新内容至项目(Add New to Project)”。

文件格式更改

原理图、原理图库、PCB和PCB库的 文件格式与其在Protel 99 SE中使用的格式不同。在Altium Designer中可以直接打开并使用99 SE格式的原理图和原理图库文件,但是每次保存它们时,系统会询问是否希望对其进行格式转换。99 SE的PCB文件必须转化为Altium Designer文件格式后才能进行编辑。无论何时打开旧格式的PCB,PCB导入向导(PCB Import Wizard)都会启动并指导进行这一过程。 

下面的主题涵盖了对象间的各种差异和必须了解的设计方法。

元器件

在DXP版本中,元器件功能已得到了极大的增强。它们现在可以支持无限的元器件参数,并拥有改进的模型定义和连接系统,例如能够直观地 浏览PCB封装。
双击来编辑一个元器件,可以发现所有的99 SE文本字段和部件字段已经被转化为参数。99 SE中每个元器件支持多达8个文本字段和16个部件字段,Altium Designer对可添加的参数数目没有限制。

在一个Altium Designer设计中,参数可以用于任何目的。它们也可以使用DbLink文档连接到公司数据库。参数可以包含在项目生成的报告中。添加一个 OutJob文档至项目,并配置报表引擎,这样便能够按要求的输出格式生成报告。参数还可以用于连接数据表,或网站网址(web URL)。

链接和唯一ID

在99 SE和 Altium Designer中,即使对应的元器件标号已在编辑器中修改,唯一ID(UID)值也允许原理图和PCB对象保持互连。

然而,导入一个99 SE设计时,原理图和PCB元器件的所有链接都将被删除。重新建立一个UID链接很容易,但必须基于元器件标号才能实现。

首先,在原理图端,通过在原理图编辑器菜单中选择“Tools » Convert » Reset Component Unique IDs”来重设所有唯一ID的值。接着,在PCB 端,在元器件链接对话框(在PCB编辑器菜单中选择“Project » Component Links”)中将元器件和封装配对。一个完全同步的99 SE数据库只需两次单击即可完成该过程。先通过匹配元器件标号(默认关系)添加配对,再执行更新。

Altium Designer 和 99 SE的一个根本区别是建立链接并不是同步的先决条件。例如,跳过了上述顺序,只想要简单地在一个从99 SE导入的Altium Designer 的PCB设计中运行更新/导入命令,用户将会被告知,虽然通过唯一ID的同步失败了,但是仍可以继续匹配元器件标号。这样做不会对设计中的Unique ID字段带来任何的影响,这意味着如果重复这个步骤,将会出现同样的情况。给原理图元器件和PCB封装分配相同的唯一ID,是在它们之间创建持久链接的唯 一方法。

网络识别范围

为原理图项目分配一个特定的网络标识范围是很合理的。默认情况下,在项目选项(Options for Project)对话框中的这个设置是Automatic (Based upon design contents)。这也就意味着,如果设计中包括了任何带有图表入口的图表符,网络范围将会设置为Hierarchical(sheet entry <-> port connections)。如果项目包含了端口但不包含图表入口,那么范围将会设置为Flat(only ports global)。如果项目既不包含图表入口也不包含端口,那么网络标签范围将会成为global。

如果不使用自动检测,那么不论项目内容是什么,都可以为项目分配一个独立的范围。对于端口和网络标签都是全局范围有效的99 SE项目,我们推荐这种方法,因为这种范围无法通过Altium Designer的自动检测实现。

请注意Altium Designer也支持不使用顶层图纸的扁平项目。要探究这一选项,可以尝试从扁平项目中删除顶层图纸并重新编译。Altium Designer导航器面板将会显示设计中的连接结构,可以在其中查看设计的连通性。

PCB导入向导

在Altium Designer中第一次打开旧版本的电路板时,导入向导(Import Wizard)将会打开,来辅助分配板框外形,分割平面和特定规则转换。

板框外形

Altium Designer中的所有PCB设计都需要一个板框外形。因为在之前版本的Protel中不存在板框外形,所以必须将其添加到从之前版本导入的电路板中。

导入向导提供了两个选项:一个是长方形,其中包含了设计中的所有对象;另一种是基于设计中检测到的形状,由此创建的更精确的电路板轮 廓。如果选择后 者,禁止布线层和机械层将会进行形状分析,并据此为PCB生成板框。无论选择什么选项,预览窗格都会显示系统推荐的板框外形。如果这些都出现了错误,那么 就选择长方形选项,并在Altium Designer中使用“Design » Board Shape”菜单选项,来配置电路板形状。

板框外形定义了板的物理范围,比如,为内电层的内缩走线(Pullback)提供了轮廓。因为内电层是负片显示,内缩走线在板边缘和内 电层之间创造 了一个细小的无铜区域(blowout zone),防止制造板边缘的短路。这些内缩走线在内电层上无法直接编辑,但是在Altium Designer中板框外形可以在任何时候进行重新定义,内缩走线也会据此重新排布。层堆栈管理器允许用户改变最初在导入向导中设置的内缩距离。

分割平面

Altium Designer已经更改了分割平面的定义方式。之前,每个分割平面区域都是放置在内电层内的一个封闭区域(本质上是空白多边形)。相反地,在 Altium Designer中将平面分割为多个分离区域是通过放置直线、圆弧、填充平面来定义铜箔熔断(blowout)区域的过程。每次在平面层内中止放置过程, 平面都会分析并且检测出所有孤立的区域。在区域内双击并将其分配给一个网络。熔断区域不属于任何分割区域;Altium Designer设计不再需要重叠或沿分割平面完全对齐走线。Altium Designer中还可以定义嵌套的分割区域。

这里有一个例外 – 导入向导允许在旧版本的分割平面模式下进行操作。建议只在设计平面导入遇到困难时选择这种模式,或是当旧版本PCB包括了需要进一步编辑的分割平面时选择 这种模式。之后,可以将设计转换到Altium Designer平面模式;同时,新的分割平面必须在内电层内放置为封闭的边界,而不是从铜箔熔断来推定。

将设计转换到新版本时,能够简化分割平面定义。但是这并非必需,因为当旧版本的分割平面在Altium Designer中工作时,它们可能包括了多余的线条,使电路板更加复杂。在Altium Designer中更新99 SE分割平面定义的最简单方法是添加一个新的平面层,然后将现有的区域复制到新平面上。做了这一步之后,就可以选择旧平面层上所有的对象并将它们删除。当 分配到该层的网络断开后,可以从层栈堆中将其删除。最后,检查每个分割区域的网络分配是否正确,可以双击每个区域,也可以使用PCB面板中的“分割平面编 辑器(Split Plane Editor)”。

From Tos

在99 SE特定焊盘之间定义的From-Tos(连线列表框)必须在Altium Designer中重新定义,可以将Altium Designer的PCB面板切换到“From-To Editor”模式来实现此功能。

特定的规则转换

一些旧版本的Protel不允许焊盘设置常用阻焊层扩展规则,这意味着一些旧的设计可能有针对单个焊盘的助焊层或阻焊层扩展规则。导入 向导将会在设 计中检测这些规则,并主动将它们转换至焊盘设置,因此简化了设计规则设置。另一方面,导入向导会主动创建一个新的规则来断开过孔和平面的连接,因为一些旧 的Protel版本不允许过孔和平面的连接。

仿真模型参考和配置 

在99 SE元器件中为仿真数据保留了一些特殊的字段。当这些字段包含仿真数据时,Altium Designer会将元器件的值转换为仿真模型连接(Model linkage)。

在99 SE中,所有的仿真模型都包含在安装时提供的SimulationModels.ddb中。另一方面,Altium Designer允许将模型包括在项目中,或者,如果想要把仿真模型放在中心区域,就为项目定义一个搜索路径。但是,还有一种方法是建立集成元器件库,将 仿真模型连同符号、封装以及与此元器件链接的其他模型一起编译到集成元器件库文件。

因为所有的99 SE元器件使用了一个定义的模型路径将原理图元器件链接到仿真模型,所以使99 SE仿真在Altium Designer中工作的最简单方法是从99 SE仿真模型数据库导出所有的文件夹和模型,并将其导入Altium Designer 安装目录的Library\Sim文件夹中。

Altium Designer支持参考使用完整路径的模型。当一个包含仿真模型元器件的99 SE原理图被导入时,仿真模型链接就自动转化到了Altium Designer的Full Path Model Location字段。Altium Designer包含了内部搜索,使得在搜索完全路径模型地址时总是包含了Altium Designer安装时的元器件库文件夹,来确保一旦仿真模型位于新地址时,99 SE设计就会进行仿真。

在99 SE中,“分析设置(Analysis Setup)”对话框内的设置将会存储在数据库中的配置文件(*.cfg)内。当Altium Designer第一次仿真设计时,如果没有配置特定的仿真设置参数,它将会寻找并使用该*.cfg文件。当保存了新的Altium Designer项目,仿真设置将会被写到项目文件中,这样旧的*.cfg文件就会变得多余了。

多通道设计

也许,最需要注意的PCB项目是多通道设计。

在99 SE中,多通道设计就是复制子图纸的过程,然后对其进行重新注释,并被独立的图表符引用。既然Altium Designer可以真正重复地引用一个子图纸,用户首先需要修正原理图。首先,保留一个子图纸副本,并从项目中删除其他所有复制的子图纸。然后,用不同 的名称更新对应的图表符,这些图表符都引用了之前保留的子图纸。

然而,更明智的方法是,保留一个图表符并从每个通道中删除其他所有的图表符,并用一个合适的重复命令取代它的名称字段。用这种方法,通 道的数目可以 在之后任何时间进行更改。重复命令也能够应用到网络上;可以在Multi-Channel Mixer.PrjPcb中查看示例。

多通道设计有很多功能特性,其中一个功能是,将“通道”信息转移到PCB布局,对一个通道实现布局布线,然后通过软件为其他通道复制布 局布线。

设计输出

99 SE CAM管理器(*.cam)和打印配置(*.ppc)文件并不能被Altium Designer识别,所以为了导入设计,所有输出需要重新配置。

在Altium Designer中,配置输出有两种方法:定义在原理图和PCB编辑器菜单的设置将会存储在项目文件中,或者在项目中添加一个输出作业文件 (*.OutJob)。想要了解更多有关设计输出的内容,请参阅“从设计到制造”。

将设计转换到99 SE

原理图和PCB编辑器都支持以V4(99 SE)格式保存原理图、原理图库、PCB和PCB库文件。不能转换到99 SE的数据包括:

  • 新的原理图设计对象,包括注释(note)、编译屏蔽(compile mask)、参数设置对象(parameter set object)和表外连接器(offsheet connector)。
  • 新的PCB设计对象,包括区域(region)、实心敷铜(旧的网格敷铜可以被转换)、板框外形、尺寸和复合焊盘 (complex padstack)。
  • 不能映射回99 SE设计规则的设计规则。
  • 分割平面定义(Altium Designer基于平面层对象来计算分割区域;不使用空的多边形来定义分割区域)。
You are reporting an issue with the following selected text and/or image within the active document: