3.3 层次结构原理图的设计方法

基于上述设计理念,层次电路原理图设计的具体实现方法有两种,一种是自上而下的设计方式,另一种是自下而上的设计方式。

自上而下的设计方法是在绘制电路原理图之前,要求设计者对此次设计有一个整体的把握。把整个电路设计分成多个模块,确定每个模块的设计内容,然后对每一模块进行详细的设计。这种设计方法被称为自顶向下,逐步细化。该设计方法要求设计者在绘制原理图之前就对系统有比较深入的了解,且对电路模块的划分比较清楚。

自下而上的设计方法是设计者先绘制子原理图,然后根据子原理图生成原理图符号,进而生成上层原理图,最后完成整个设计。这种方法比较适用于对整个设计还不是非常熟悉的用户,也是一种适合初学者的设计方法。

3.3.1 自上而下的层次原理图设计

本节以“基于通用串行数据总线USB的数据采集系统”的电路设计为例,详细介绍自上而下的层次电路的具体设计过程。

采用层次电路的设计方法,将实际的总体电路按照电路模块的划分原则划分为4个电路模块,即CPU模块和三路传感器模块Sensor1、Sensor2、Sensor3。首先绘制层次原理图中的顶层原理图,然后再分别绘制每一电路模块的具体原理图。

自上而下绘制层次原理图的操作步骤如下。

1)启动Altium Designer 14,打开“Files(文件)”面板,在“新的”选项栏中选择“Blank Project(PCB)(空白项目文件)”选项,则在“Projects(工程)”面板中出现了新建的项目文件,另存为“USB采集系统.PrjPCB”。

2)在项目文件“USB采集系统.PrjPCB”上右击,在弹出的快捷菜单中选择“给工程添加新的”→“Schematic(原理图)”命令,在该项目文件中新建一个电路原理图文件,另存为“Mother.SchDoc”,并完成图纸相关参数的设置。

3)选择“放置”→“图表符”命令,或单击“布线”工具栏中的“放置图表符”按钮,光标将变为十字形状,并带有一个原理图符号标志。

4)移动光标到需要放置原理图符号的位置,单击确定原理图符号的一个顶点,移动光标到合适的位置再次单击确定其对角顶点,即可完成原理图符号的放置。

5)此时光标仍处于放置原理图符号的状态,重复上一步操作可以放置其他原理图符号。右击或按<Esc>键即可退出操作。

6)设置原理图符号的属性。双击需要设置属性的原理图符号或在绘制状态时按<Tab>键,系统将弹出相应的“方块符号”对话框,如图3-3所示。原理图符号属性的主要参数的含义如下。

图3-3 “方块符号”对话框

①位置:表示原理图符号在原理图上的X轴坐标和Y轴坐标,可以输入数值。

②X-Size(宽度)和Y-Size(高度):表示原理图符号的宽度和高度,可以输入数值。

③板的颜色:用于设置原理图符号边框的颜色。

④填充色:用于设置原理图符号的填充颜色。

⑤“Draw Solid(是否填充)”复选框:勾选该复选框,则原理图符号将以Fill Color(填充颜色)中的颜色填充多边形。

⑥板的宽度:用于设置原理图符号的边框粗细,有Smallest(最小)、Small(小)、Medium(中等)和Large(大)4种线宽。

⑦“标识”文本框:用于输入相应原理图符号的名称,其作用与普通电路原理图中的元器件标识符相似,是层次电路图中用来表示原理图符号的唯一标志,不同的原理图符号应该有不同的标识符。这里输入“U-Sensor1”。

⑧“文件名”文本框:用于输入原理图符号所代表的下层子原理图的文件名。这里输入“Sensor1.SchDoc”。

⑨“显示此处隐藏文本文件”复选框:用于确定显示或隐藏原理图符号的文本域。

7)在“参数”选项卡中执行添加、删除和编辑原理图符号等其他有关参数的操作,如图3-4所示。单击“添加”按钮,系统将弹出如图3-5所示的“参数属性”对话框。在该对话框中,可以设置追加的参数名称和数值等属性。

图3-4 “参数”选项卡

图3-5 “参数属性”对话框

8)在“名称”文本框中输入“Description”,在“值”文本框中输入“U-Sensor1”,勾选其下的“可见的”复选框。单击“确定”按钮,关闭该对话框。单击“图表符”对话框中的“确定”按钮,关闭该对话框。按照上述方法放置另外3个原理图符号U-Sensor2、U-Sensor3和U-Cpu,并设置好相应的属性,如图3-6所示。

图3-6 设置好的4个原理图符号

9)选择“放置”→“添加图纸入口”命令,或单击“布线”工具栏中的“放置图纸入口”按钮,光标将变为十字形状。

10)移动光标到原理图符号内部,选择放置电路端口的位置并单击,会出现一个随光标移动的电路端口,但只其能在原理图符号内部的边框上移动,在适当的位置再次单击即可完成电路端口的放置。此时,光标仍处于放置电路端口的状态,重复上述步骤可以继续放置其他电路端口。右击或按<Esc>键即可退出操作。

11)设置电路端口的属性。根据层次电路图的设计要求,在顶层原理图中,每一个原理图符号上的所有电路端口都应与其所代表的子原理图上的一个电路输入/输出端口相对应,包括端口名称及接口形式等。因此,需要对电路端口的属性加以设置。双击需要设置属性的电路端口或在绘制状态时按<Tab>键,系统将弹出相应的“方块入口”对话框,如图3-7所示。

图3-7 “方块入口”对话框

电路端口属性的主要参数的含义如下。

①填充色:设置电路端口内部的填充颜色。

②文本颜色:设置电路端口标注文本的颜色。

③板的颜色:设置电路端口边框的颜色。

④边:设置电路端口在原理图符号中的大致方位,有Top(顶部)、Left(左侧)、Bottom(底部)和Right(右侧)4个选项。

⑤类型:设置电路端口的形状,这里设置为“Right”。

⑥“I/O类型”下拉列表框:用于设置电路的端口属性,有Unspecified(未指明)、Output(输出)、Input(输入)和Bidirectional(双向)4个选项。“I/O类型”下拉列表框通常与电路端口外形的设置一一对应,这样有利于直观理解。端口的属性由I/O类型决定,这是电路端口最重要的属性之一。这里将端口属性设置为“Output”。

⑦“名称”下拉列表框:设置电路端口的名称,应该与层次原理图子图中的端口名称对应,只有这样才能完成层次原理图的电气连接。这里设置为“Port1”。

⑧“位置”文本框:设置电路端口的位置。该文本框中的内容将根据端口移动而自动设置,用户无需更改。

属性设置完毕后单击“确定”按钮关闭该对话框。

12)使用同样的方法,把所有的电路端口均放在合适的位置处,并一一完成属性设置。

13)使用导线或总线把每一个原理图符号上的相应电路端口连接起来,并放置接地符号,完成顶层原理图的绘制,如图3-8所示。

图3-8 顶层原理图

下面根据顶层原理图中的原理图符号,把与之相对应的子原理图分别绘制出来,这一过程就是使用原理图符号来建立子原理图的过程。

14)选择“设计”→“产生图纸”命令,此时光标变为十字形状。移动光标到原理图符号“U-Cpu”的内部,单击,系统自动生成一个新的原理图文件,名称为“Cpu.SchDoc”,与相应的原理图符号所代表的子原理图文件名一致,如图3-9所示。此时可以看到,在该原理图中已经自动放置好了与4个电路端口方向一致的输入端口和输出端口。

图3-9 由原理图符号“U-Cpu”建立的子原理图

15)使用普通电路原理图的绘制方法,放置各种所需的元器件并进行电气连接,完成“Cpu”子原理图的绘制,如图3-10所示。

图3-10 子原理图“Cpu.SchDoc”

16)使用同样的方法,用顶层原理图中的另外3个原理图符号“U-Sensor1”“U-Sensor2”和“U-Sensor3”建立与其相对应的3个子原理图“Sensor1.SchDoc”“Sensor2.SchDoc”和“Sensor3.SchDoc”,并且分别绘制出来。

至此,采用自上而下的层次电路图设计方法,完成了整个USB数据采集系统的电路原理图绘制。

3.3.2 自下而上的层次原理图设计

对于一个功能明确、结构清晰的电路系统来说,采用层次电路设计方法,使用自上而下的设计流程,能够清晰地表达出设计者的设计理念。但在有些情况下,特别是在电路的模块化设计过程中,不同电路模块的不同组合会形成功能完全不同的电路系统。用户可以根据具体的设计需要,选择若干个已有的电路模块,组合产生一个符合设计要求的完整电路系统。此时,该电路系统可以使用自下而上的层次电路设计流程来完成。

下面还是以“基于通用串行数据总线USB的数据采集系统”的电路设计为例,介绍自下而上的层次电路的具体设计过程。

自下而上绘制层次原理图的操作步骤如下。

1)启动Altium Designer 14,新建项目文件。打开“Files(文件)”面板,在“新的”选项栏中选择“Blank Project(PCB)(空白项目文件)”选项,则在“Projects(工程)”面板中出现了新建的项目文件,另存为“USB采集系统.PrjPCB”。

2)新建原理图文件作为子原理图。在项目文件“USB采集系统.PrjPCB”上右击,在弹出的快捷菜单中单击“给工程添加新的”→“Schematic(原理图)”命令,在该项目文件中新建原理图文件,另存为“Cpu.SchDoc”,并完成图纸相关参数的设置。采用同样的方法建立原理图文件“Sensor1.SchDoc”“Sensor2.SchDoc”和“Sensor3.SchDoc”。

3)绘制各个子原理图。根据每一模块的具体功能要求,绘制电路原理图。例如,CPU模块主要完成主机与采集到的传感器信号之间的USB接口通信,这里使用带有USB接口的单片机C8051F320来完成。而三路传感器模块Sensor1、Sensor2、Sensor3则主要完成三路传感器信号的放大和调制,具体绘制过程这里不再赘述。

4)放置各子原理图中的输入端口和输出端口。子原理图中的输入端口和输出端口是子原理图与顶层原理图之间进行电气连接的重要通道,应根据具体的设计要求进行放置。

例如,在原理图“Cpu.SchDoc”中,三路传感器信号分别通过单片机P2口的3个引脚(P2.1、P2.2、P2.3)输入到单片机中,是原理图“Cpu.SchDoc”与其他3个原理图之间的信号传递通道,所以在这3个引脚处放置了3个输入端口,名称分别为“Port1”“Port2”和“Port3”。除此之外,还放置了一个共同的接地端口“GND”。放置了输入/输出电路端口的电路原理图“Cpu.SchDoc”与图3-10完全相同。

同样,在子原理图“Sensor1.SchDoc”的信号输出端放置一个输出端口“Port1”,在子原理图“Sensor2.SchDoc”的信号输出端放置一个输出端口“Port2”,在子原理图“Sensor3.SchDoc”的信号输出端放置一个输出端口“Port3”,分别与子原理图“Cpu.SchDoc”中的3个输入端口对应,并且都放置了共同的接地端口。移动光标到需要放置原理图符号的位置,单击确定原理图符号的一个顶点,移动光标到合适的位置再一次单击确定其对角顶点,即可完成原理图符号的放置。放置了输入/输出电路端口的3个子原理图“Sensor1.SchDoc”“Sensor2.SchDoc”和“Sensor3.SchDoc”分别如图3-11~图3-13所示。

图3-11 子原理图“Sensor1.SchDoc”

图3-13 子原理图“Sensor3.SchDoc”

图3-12 子原理图“Sensor2.SchDoc”

5)在项目“USB采集系统.PrjPCB”中新建一个原理图文件“Mother1.PrjPCB”,以便进行顶层原理图的绘制。

6)打开原理图文件“Mother1.PrjPCB”,选择“设计”→“HDL文件或原理图生成图纸符”命令,系统将弹出如图3-14所示的“Choose Document to Place(选择文件放置)”对话框。

图3-14 “Choose Document to Place(选择文件放置)”对话框

在该对话框中,系统列出了同一项目中除当前原理图外的所有原理图文件,用户可以选择其中的任何一个原理图来建立原理图符号。这里选中“Cpu.SchDoc”,单击“OK”按钮关闭该对话框。

7)此时光标变成十字形状,并带有一个原理图符号的虚影。选择适当的位置,将该原理图符号放置在顶层原理图中,如图3-15所示,该原理图符号的标识符为“U-Cpu”,边缘已经放置了4个电路端口,方向与相应的子原理图中的输入/输出端口一致。

图3-15 放置U_Cpu原理图符号

8)使用同样的操作方法,由3个子原理图“Sensor1.SchDoc”“Sensor2.SchDoc”和“Sensor3.SchDoc”可以在顶层原理图中分别建立3个原理图符号“U-Sensor1”“U-Sensor2”和“U-Sensor3”,如图3-16所示。

图3-16 顶层原理图符号

9)设置原理图符号和电路端口的属性。由系统自动生成的原理图符号不一定完全符合设计要求,很多时候还需要再次进行编辑,如原理图符号的形状、大小和电路端口的位置及属性等。

10)用导线或总线将原理图符号通过电路端口连接起来,并放置接地符号,完成顶层原理图的绘制,结果与图3-8完全一致。