第11章层次原理图及其PCB设计任务描述本教材前面介绍的常规电路图设计方法,是将整个原理图绘制在一张原理图纸上,这种设计方法对于规模较小,简单的电路图的设计提供了方便的工具支持。但当设计大型、复杂系统的电路原理图时,若将整个图纸设计在一张图纸上,就会使图纸变得过分复杂不利于分析和检错,同时也难于多人参与系统设计。AltiumDesigner支持多种设计复杂电路的方法,例如层次设计、多通道设计等,在增强了设计的规范性的同时减少了设计者的劳动量,提高了设计的可靠性。本章将以电机驱动电路为例介绍层次原理图设计的方法,以多路滤波器的设计为例介绍多通道电路设计方法。它将涵盖以下主题:自上而下层次原理图设计自下而上层次原理图设计多通道电路设计电机驱动电路的PCB设计多路滤波器的PCB设计教学目的及要求:了解层次原理图、模块,设计包含子图符号的父图(方块图)、子图的含义了解“自上而下”和“自下而上”这两种层次电路设计方法熟练掌握自上而下的层次原理图设计教学重点:自上而下的层次原理图设计教学难点:自上而下的层次原理图设计复习旧课:第12章输出文件12.1输出PDF文件12.2生成Gerber文件12.2.1Gerber文件简单介绍12.2.2输出Gerber文件输出NCDrill文件12.3创建材料清单(BOM)11.1层次设计对于一个庞大和复杂的电子项目的设计系统,最好的设计方式是在设计时应尽量将其按功能分解成相对独立的模块进行设计,这样的设计方法会使电路描述的各个部分功能更加清晰。同时还可以将各独立部分分配给多个工程人员,让他们独立完成,这样可以大大缩短开发周期,提高模块电路的复用性和加快设计速度。采用这种方式后,对单个模块设计的修改可以不影响系统的整体设计,提高了系统的灵活性。为了适应电路原理图的模块化设计,AltiumDesigner提供了层次原理图设计方法。所谓层次化设计,是指将一个复杂的设计任务分派成一系列有层次结构的、相对简单的电路设计任务。把相对简单的电路设计任务定义成一个模块(或方块),顶层图纸内放置各模块(或方块),下一层图纸放置各模块(或方块)相对应的子图,子图内还可以放置模块(或方块),模块(或方块)的下一层再放置相应的子图,这样一层套一层,可以定义多层图纸设计。这样做还有一个好处,就是每张图纸不是很大,可以方便用小规格的打印机来打印图纸(如A4图纸)。AltiumDesigner支持“自上而下”和“自下而上”这两种层次电路设计方式。所谓自上而下设计,就是按照系统设计的思想,首先对系统最上层进行模块划分,设计包含子图符号的父图(方块图),标示系统最上层模块(方块图)之间的电路连接关系,接下来分别对系统模块图中的各功能模块进行详细设计,分别细化各个功能模块的电路实现(子图)。自顶向下的设计方法适用于较复杂的电路设计。与之相反,进行自下而上设计时,则预先设计各子模块(子图),接着创建一个父图(模块或方块图),将各个子模块连接起来,成为功能更强大的上层模块,完成一个层次的设计,经过多个层次的设计后,直至满足项目要求。层次电路图设计的关键在于正确地传递各层次之间的信号。在层次原理图的设计中,信号的传递主要通过电路方块图、方块图输入/输出端口、电路输入/输出端口来实现,他们之间有着密切的联系。层次电路图的所有方块图符号都必须有与该方块图符号相对应的电路图存在(该图称为子图),并且子图符号的内部也必须有子图输入输出端口。同时,在与子图符号相对应的方块图中也必须有输入/输出端口,该端口与子图符号中的输入/输出端口相对应,且必须同名。在同一项目的所有电路图中,同名的输入/输出端口(方块图与子图)之间,在电气上是相互连接的。本节将以电机驱动电路为实例,介绍使用AltiumDesigner进行层次设计的方法。图11-1是电机驱动电路的原理图(图纸的图幅是A3),虽然该电路不是很复杂,不用层次原理图设计都可以完成PCB板的设计任务。但还是以它为例,介绍层次原理图的设计方法。图11-2电机驱动电路原理图(图纸幅面A3)从图11-1可以看出,可以把整个图纸分成上、中、下三个部分,其中:中部分和下部分是相同的。我们先用子图1,子图2,练习自上而下的层次原理图设计。子图1子图2子图5子图3子图4子图611.1.1自上而下层次电路图设计自上而下的层次电路设计操作步骤如下。1.建立一个项目文件(1)启动AltiumDesigner,在主菜单中选择“File”→“New”→“Project”→“PCBProject”命令,在当前工作空间中添加一个默认名为“PCB_Project1.PrjPCB”的PCB项目文件,将它另存为“层次原理图设计.PrjPCB”的PCB项目文件。2.画一张主电路图(如:Main.SchDoc)来放置方块图(SheetSymbol)符号(1)选择“Projects”工作面板中的“层次原理图设计.PrjPCB”按鼠标右键,在弹出的菜单中选择“AddNewtoProject”→“Schematic”命令,在新建的.PrjPCB项目中添加一个默认名为“Sheet1.SchDoc”的原理图文件。(2)将原理图文件另存为“Main_top.SchDoc”,用缺省的设计图纸尺寸:A4。其它设置用默认值。(3)单击“Wiring”工具栏中的添加方块图符号工具按钮“”,或者在主菜单中选择“Place”→“SheetSymbol”命令。(4)单击键盘上的“Tab”键,打开如图11-3所示的“SheetSymbol”对话框。在“SheetSymbol”对话框的的属性(Properties)栏:designator(图纸的标号):用于设置方块图所代表的图纸的名称。Filename(图纸的文件名):用于设置方块图所代表的图纸的文件全名(包括文件的后缀),以便建立起方块图与原理图(子图)文件的直接对应关系。UniqueID(唯一的ID号):为了在整个项目中正确地识别电路原理图符号,每一个电路原理图符号在项目中都有一个唯一的标识,如果需要可以对这个标识进行重新设置。图11-3“SheetSymbol”对话框(5)在“SheetSymbol”对话框的“Designator”编辑框中输入“隔离部分”,在“Filename”编辑框内输入“隔离部分.SchDoc”,单击“OK”按钮,结束方块图符号的属性设置。(6)在原理图上合适位置单击鼠标左键,确定方块图符号的一个顶角位置,然后拖动鼠标,调整方块图符号的大小,确定后再单击鼠标左键,在原理图上插入方块图符号。(7)目前还处于放置方块图状态,按Tab键,弹出“SheetSymbol”对话框的,在“Designator”处输入“电机驱动”,在“Filename”编辑框内输入“电机驱动.SchDoc”,重复步骤(6)在原理图上插入第二个方块图(方框图)符号,如图11-4所示。图11-4放入两个方块图符号后的上层原理图3.在方块图内放置端口(1)单击工具栏中的添加方块图输入/输出端口工具按钮“”,或者在主菜单中选择“Place”→“AddSheetEntry”命令。(2)光标上“悬浮”着一个端口,把光标移入“隔离部分”的方块图内,按“Tab”键,打开如图11-5所示的“SheetEntry”对话框。图11-5“SheetEntry”对话框在该对话框内,几个英文的含义如下:端口位置(Side):用于设置端口在方块图中的位置。端口类型(Style):用来表示信号的传输方向。端口的名称(Name):是识别端口的标识。应将其设置为与对应的子电路图上对应端口的名称相一致。端口的输入/出类型(I/OType):是表示信号流向的确定参数。它们分别是:未指定的(Unspecified)、输出端口(Output)、输入端口(Input)和双向端口(Bidirectional)。(5)在“隔离部分”方块图符号右边一侧单击鼠标,布置一个名为“A_OUT”的方块图输出端口,如图11-7所示。(3)在“SheetEntry”对话框的“Name”编辑框中输入“A_OUT”,作为方块图端口的名称。(4)在“I/O”Type下拉列表中选择“Output”项,将方块图端口设为输出口(如图11-6所示),单击“OK”按钮。图11-7布置的方块图端口图11-6在“SheetEntry”对话框内设置端口A_OUT为输出端口(6)此时光标仍处于放置端口状态,单击“Tab”键,再打开的“SheetEntry”对话框,在“Name”编辑框中输入“B_OUT”,“I/OType”下拉菜单中选择“Output”项,单击“OK”按钮。(7)在“隔离部分”方块图符号靠右侧单击鼠标,再布置一个名为“B_OUT”的方块图输出端口。(8)重复步骤(6)~(7),完成C_OUT、D_OUT、VO4、VO5、S5、+5V、GND输入/输出端口的放置(如图11-8所示),各端口的类型如表11-1所示。图11-8布置完端口的方块图(9)采用步骤(1)~(4)介绍的方法,再在“电机驱动”方块图符号中添加6个输入、电源和地的端口,在电机驱动的方块图中各端口名称、端口类型(如表11-1所示)。布置完端口后的上层原理图如图11-9所示。图11-9布置完端口后的上层原理图4.方块图之间的连线(Wire)在工具栏上按“”按钮,或者在主菜单中选择“Place”→“Wire”命令,绘制连线,完成的子图1、子图2相对应的方块图隔离部分、电机驱动的上层原理图如图11-10所示。图11-10连接好的上层方块图5.由方块图生成电路原理子图(1)在主菜单中选择“Design”→“CreateSheetFromSheetSymbol”命令。(2)单击“隔离部分”方块图符号,系统自动在“层次原理图设计.PrjPCB”项目中新建一个名为“隔离部分.SchDoc”的原理图文件,置于“Main_top.SchDoc”原理图文件下层。如图11-12所示。在原理图文件“隔离部分.SchDoc”中自动布置了如图11-13所示的9个端口,该端口中的名字与方块图中的一致。图11-12系统自动创建的名为“隔离部分.SchDoc”的原理图文件图11-13在“隔离部分.SchDoc”的原理图自动生成的端口(3)在新建的“隔离部分.SchDoc”原理图中绘制如图11-14所示的原理图。该原理图即是图11-2椭圆所框的子图1。图11-14“隔离部分”方块图所对应的下一层“隔离部分.SchDoc”原理图至此,完成了上层方块图“隔离部分”与下一层“隔离部分.SchDoc”原理图之间的一一对应的联系。父层(上层)与子层(下一层)之间的联系,靠上层方块图中的输入、输出端口,与下一层的电路图中的输入、输出端口进行联系。如上层方块图中有:A_OUT等6个端口,在下层的原理图中也有A_OUT等6个端口,名字相同的端口就是一个点。现在用另一种方法来完成上层方块图“电机驱动”与下一层“电机驱动.SchDoc”的原理图之间的一一对应关系。(4)单击工作窗口上方的“Main_top.SchDoc”文件标签,将其在工作窗口中打开。(5)在原理图中的“电机驱动”方块图符号上单击鼠标右键,在弹出的如图11-15所示的右键菜单中选择“SheetSymbolActions”→“CreateSheetFromSheetSymbol”命令。(6)在“Main_top.SchDoc”文件下层新建一个名为“电机驱动.SchDoc”的原理图,如图11-16所示。(7)在“电机驱动.SchDoc”原理图文件中,自动产生了如图11-17所示的9个端口。图11-16新建的名为“电机驱动.SchDoc”的原理图图11-17在“电机驱动.SchDoc”的原理图内自动建立的9个端口(8)在“电机驱动.SchDoc”原理图文件中,完成如图11-18所示的电路原理图。图11-18“电机驱动.SchDoc”原理图(子图2)至此,完成了上层原理图中的方