Altium Designer 多通道設計


chenzelin2009的csdn博客:http://blog.csdn.net/chenzelin2009/article/details/5751251#

Altium Designer的多圖紙功能感覺比較方便;今天翻了下徐老師《Altium Designer 快速入門》里面關於多圖紙設計的介紹,再參考了altium 網站的一些資料,算是摸熟這個多圖紙功能。下面具體介紹其相關知識點。

 

 

一、            頁面結構

1.1 基本概念

當進行大型工程設計時,只靠一張圖紙是無法實現的,這時需要用多個圖紙進行開發設計。一個多圖紙設計工程是由邏輯塊組成的多級結構,其中的每個塊可以是原理圖或是 HDL文件,在這結構的最頂端是一個主原理圖圖紙——工程頂層圖紙。

多圖紙結構一般是通過圖表符(sheet symbol)形成,一個圖表符對應一個子圖紙;在主原理圖圖紙放置圖標符,通過圖表符與子圖紙進行連接,而子圖紙也可以通過圖表符與更底層的圖紙連接。 通過點擊“Place》Sheet Symbol”或 圖標來放置圖標符號。如圖 1

 

 

圖1

我們可以在“Designer”區域輸入標識符,若標識符包含有Repeat關鍵字的語句,還能實現多通道功能(下文有詳解)。而在“File Name”輸入想要調用的子圖紙文件名稱(不分大小寫),則可實現對子圖紙的調用。還有其他方法能生成圖表符,具體方法見下文。

當多圖紙工程編譯好后,各個圖紙間的邏輯關系被識別並建立一個樹形結構,表示各個圖紙的邏輯關系,如圖 2:

 

 

圖2

1.2 層次結構

層次結構包含如下三種:

1)        自上而下:在主原理圖圖紙下,通過“Design》Create sheet from symbol”、“Design》Create HDL file from symbol》Create VHDL file from symbol”與“Design》Create HDL file from symbol》Create Verilog file from symbol ”等命令創建子圖紙、底層VHDL文件和底層Verilog文件。

2)        自下而上:在主原理圖圖紙下,通過“Design》Create symbol from sheet or HDL ”和“Design》Create symbol from sheet or HDL ”、“Design》Create Component  from sheet ”等命令創建圖表符和頂層元件。

3)        混合原理圖/HDL文件層次:這種情況下,圖表符通過不同的文件名稱來調用HDL文件或原理圖

1.3層次結構維護

1.3.1端口與圖紙入口的同步:

當子圖紙中的端口與圖紙入口不匹配(包括名字和IO類型)時,可以通過“Design》Synchronize Sheet Entries and Ports”來同步,如圖 3:

 

 

圖3

選中不同步的端口,若想改變子圖紙的端口,使其與圖表符匹配,則選中間的圖標(第一個);相反就選第二個。

1.3.2 重命名圖表符對應的子圖紙

若想重命名一個圖表符對應的子圖紙,一般的思路是先改子圖紙的名稱,然后再改圖表符的“file name”,最后編譯工程。現在AD提供了重命名子圖紙的功能“Design》Rename Child Sheet”,出現浮動的十字光標,點中想重命名的圖表符,出現如圖 4對話框:

 

 

圖4

我們可以根據自己的需要設置相關的選項。

1.4多通道設計

在設計過程可能會重復使用某個圖紙,此時我們可通過兩個方法實現:1)通過多圖表符重復調用同一個子圖紙;2)通過具有Repeat關鍵字的圖表符。這里具體介紹下第二種方法:在圖表符的“Designator”區域輸入包含Repeat的語句,其格式如下:

Repeat(SheetSymbolDesignator, FirstInstance, LastInstance)

其中,SheetSymbolDesignator是圖表符的本名,FirstInstance和LastInstance一起定義了通道數;注意FirstInstance參數必須等於或大於1,如圖 5所示,表示了2個filter通道。

 

 

圖5

1.5 單個圖表符調用多個子圖紙

在圖表符的“File Name”區域輸入多個子圖紙文件的名稱,並用分號隔開,則能實現單個圖表符調用多個子圖紙的目的;而這些子圖紙間的相互連接可通過跨圖紙接口(off-sheet connectors)實現。

二、網絡連通性

2.1 各類網絡標識符

由於我們使用到多圖紙功能,這時需要考慮圖紙間的線路連接。在單個圖紙中,我們可以通過簡單的網絡標簽“Net Label”來實現網絡的連接;而在多圖紙中,網絡連接涉及到的網絡標識符比較多,下面具體介紹:

最基本的網絡標識符是網絡標簽(net labels)。在單個圖紙內,它們可以代替導線來表示元件間的連接,在多圖紙設計中,其功能未變,只能表示單圖紙內部的連接。

端口(Port)既可以表示單圖紙內部的網絡連接(與net labels相似),也可以表示圖紙間的網絡連接。端口(Port)在多圖紙設計中,可用於縱向連接和橫向連接。橫向連接時,可以忽略多圖紙結構而把工程 中所有相同名字的端口連接成同一個網絡。縱向連接時,需和圖表符、圖紙入口相聯系——將相應的圖紙入口放到圖紙的圖表符內,這時端口就能將子圖紙和父系圖 紙連接起來。

跨圖紙接口(Off Sheet connectors)提供了介於端口和網絡標號的作用。當一個圖表符調用多個子圖紙時,這些子圖紙間的網絡連接就可以跨圖紙接口實現——在這些子圖紙中 放置跨圖紙接口,當接口匹配時就能連接起來。注意,跨圖紙接口的連接作用只限於這一組子圖紙間的連接,一般情況下不要用於其他圖紙結構的連接。

電源端口(也叫電源對象)完全忽視工程結構,並與所有的參與鏈接的圖紙上匹配的電源端口連接起來。

下面簡單列舉各類網絡標識符的區別:

 

 

 

網絡標號

Net label

一般只在單圖紙內部連接網絡;當選擇Flat范圍或Net范圍設置為Global時,會水平連接到全部的匹配網絡符號

 

端口

Port

如果它和父系圖表符的某圖紙入口匹配,或選擇了層次結構、自動范圍,則起垂直連接作用。當選擇了Flat或Ports Global范圍時,會水平連接到全部匹配的端口

 

圖紙入口

Sheet Entry

總是垂直連接到圖表符所調用的下層圖紙端口

 

跨圖紙接口

Off-sheet connector

水平連接到匹配的跨圖紙接口,但只限於被單個的、子圖紙分割的圖表符調用的圖紙組之間

 

電源端口

Power Port

全局連接到工程中所有的匹配電源端口

 

 

注:這里涉及到工程里面關於端口范圍的設置,打開設置對話框(Project->Project Option,點擊Option標簽),在“Net Identifier Scope”區域可以選擇網絡標識符的作用范圍,一般情況都是選擇“Automatic”模式即可,AD會自動判斷。其他的還有“Flat”,“Hierarchical”,“Global”模式,在特殊情況下可根據需要選擇。

如果要使網絡標識符表示反相模式,只需在命名網絡名稱的每個字符后面加一個反斜杠(如E/N/A/B/L/E);或是在Preferences對話框中的Schematic-Graphical Editing頁面內,選中“Single/Negation”復選框,之后在網絡標識符名稱之前加個反斜杠即可(如:/ENABLE)。

 

2.2 網絡連通性實例

1 :分層次設計

 

 

圖6

如圖 6,這個原理圖工程被自動識別為分層次作用域,因為其父系圖紙中的圖表符帶有圖紙入口。這時端口HP-L和HP-R通過圖紙入口連接到一起;而兩個子圖紙中的C1和C2則不能跨越圖紙連接。

2:全局端口

 

 

圖7

如圖 7,此工程只有端口,不存在圖紙入口,因此作用域被自動設置成全局端口。工程變成平行結構,此時工程上的所有匹配端口都會連接在一起,但網絡標簽仍不能跨圖紙連接。這時即使頂層圖紙移除也不會影響工程。

3:全局網絡標號

 

 

圖8

如圖 8,此工程沒有端口和圖紙入口,使得網絡標簽能夠跨越圖紙,在匹配的情況下進行全局連接;此時移除頂層圖紙工程仍能正常編譯。

4:全局網絡標號和端口

 

 

圖9

選擇Project->Project Option,點擊Option標簽,在“Net Identifier Scope”區域可以選擇網絡標識符范圍模式:Global(Netlabels and ports global);如圖 9示,這時網絡標簽與端口為全局,它們都以水平方式,在全局范圍內連接到匹配對象。

5:跨圖紙接口

 

 

圖10

如圖 10示,此工程有四個子圖紙,圖表符“Group A”調用了兩個子圖紙“A1.schdoc”和“A2.schdoc”,“Group B”調用了子圖紙“B1.schdoc”和“B2.schdoc”。此時圖紙“A1.schdoc”內部的C1、C2能夠和圖紙“A2.schdoc”中 的C1、C2相連接,同理圖紙“B1.schdoc”和“B2.schdoc”也能夠實現網絡的連接,但這兩個組間不會進行網絡連接(如圖紙 A1.schdoc的C1不會連接到B1.schdoc的C1)。這就是跨圖紙接口的作用,能增大圖表符的圖紙范圍。

三、設計實例

3.1 設計思路

現在要設計一個2.0低音功放,此時假設有一個現成的有源低通音頻濾波器原理圖(filter.SchDoc),一個雙通道功率放大器原理圖 (Amplifier.SchDoc);我們可以直接使用這兩個原理圖來實現此設計功能:創建一個PCB工程和原理圖,將現成的兩個文件添加到此工程中, 然后在新建的原理圖中創建兩個圖表符,其中一個圖表符調用雙通道功放,另一個通過多通道功能調用兩次濾波器,之后就可以進行連線,最后編譯工程。

注:filter.SchDoc原理圖中要用到的信號有輸入(IN),輸出(OUT);Amplifier.SchDoc原理圖中要用到的信號有左 輸入(IN_L),右輸入(IN_R),左輸出(OUT_L),右輸出(OUT_R)。設計前可先創建好工程的文件夾,將這兩個原理圖文件復制到工程文件 夾中。

3.2具體步驟

1)        創建PCB工程,給新工程添加新原理圖toplevel.SchDoc,並將兩個現成的原理圖添加到工程中,之后save all。

2)        打開原理圖filter.SchDoc,添加兩個端口IN和OUT(分別與信號IN和OUT相連接);打開原理圖Amplifier.SchDoc,添加 四個端口IN_L, IN_R, OUT_L和OUT_R(分別與信號IN_L, IN_R, OUT_L和OUT_R相連接)。如圖 11示:

 

 

圖11

3)        打開原理圖toplevel.SchDoc,點擊“Design->Creat Sheet Symbol From Sheet or HDL file”,在彈出的窗口中選擇“Amplifier.SchDoc”文件,然后點擊OK。這時軟件會生成一個帶有四個圖紙入口的圖表符,將其放置在原理 圖中,重命名“Designator”為“Am”,並排列好相應的圖紙入口,如圖 12。

 

 

圖12

4)        同理,點擊Design->Creat Sheet Symbol From Sheet or HDL file”,在彈出的窗口中選擇“filter.SchDoc”文件;之后重命名“Designator”為“repeat(FI,1,2)”,表示調用 兩次filter.SchDoc圖紙。注意,所有子圖紙的公共網絡是按照正常的方式連接的,此時圖表符的圖紙入口名稱不用修改;而子圖紙都有的但又是各自 獨立的網絡則是以總線方式引出,總線中的每一條線連接一個子圖紙,此時圖表符的圖紙入口需修改為Repeat(端口名),如本例中的輸入需改為 Repeat(IN)。如下圖示。網絡是以在導線上放置總線名的方式(而不是以總線范圍的方式)來表示。當設計被編譯時,總線就會被分解為每個通道帶有一 個標識的獨立的網絡(從IN1到IN2),IN1連接到FI_1子圖紙,IN2連接到FI_2子圖紙。如圖 13示。

 

 

圖13

5)        放置其他元件,連接好線路,如圖 14,然后編譯工程。

 

 

圖14

編譯好之后,可以看左邊的面板,發現工程變長樹形結構,如圖 15。

 

 

圖15

3.3 關於多通道設計的幾點說明

3.3.1 設置ROOM和標識符格式

多通道設計多次調用同一個子圖紙,在編譯之后,會為各個通道分配好標識符,進而映射到PCB文件中;點擊“Project->Project Option”,在打開的對話框中單擊“Multi-Channel”標簽,如圖 16示,在這里可以設置到通道(ROOM)和元件的命名方式。

 

 

圖16

(1) 通道(ROOM)的命名

在Room Naming區域,選擇Room Naming Style 下拉列表的選項設置ROOM的命名方式。命名方式包括了2種平行化和3種層次化類型,可根據具體情況選擇;在有多級room的情況下,其命名結構為(通道 前綴+通道索引)。我們可以隨便選擇一種命名方式,其命名情況如上圖;該圖片給出了一個2*2的通道設計例子,共有6個通道,每個Bank一個,4個較低 層次通道各一個。且層次化命名類型還支持通過“Level Separator for Paths”來修改分割路徑信息的符號。

(2) 元件命名

元件命名一般包括通道名稱。元件命名類型有8種,在“Designator Format”下拉列表可以選擇具體的命名方式。用戶還可以直接在對話框里輸入自定義的元件標識符命名方式,其中可能會用到一些關鍵詞。如表 1

 

Keyword

Definition 

$RoomName

name of the associated room, as determined by the style chosen in the Room Naming Style field

$Component

component logical designator

$ComponentPrefix

component logical designator prefix (e.g. U for U1) 

$ComponentIndex

component logical designator index (e.g. 1 for U1) 

$ChannelPrefix

logical sheet symbol designator 

$ChannelIndex

channel index 

$ChannelAlpha

channel index expressed as an alpha character. This format is only useful if your design contains less than 26 channels in total, or if you are using a hierarchical designator format. 

 

表 1

3.3.2 關於PCB

工程被編譯后,我們可以在被多次調用的子圖紙界面下方看到多了一些標簽,如圖 17示。我們可以單擊相應的標簽查看里面元件標識符的分配情況。之后給工程添加一個PCB文件,通過“Design->Update PCB”將元件導入到PCB文件中;轉換過程會自動為每個子圖紙建立一組元件中,每組元件有一個room並將元件都置於room之中。對一個通道布局布線 后,可通過“Design->Rooms->Copy Room Formats”來復制該通道的布局與走線到另一通道中。

 

 

圖17

3.3.3查看通道標識符分配情況

單擊“Project->View Channel”即可調出“Project Components”對話框,其中顯示了每個原理圖中元件標識符的分配情況,如圖 18示。之后點擊“Component Report”,彈出“Report Preview”窗口,此時可以點擊“Export”按鈕導出Excel格式表格(.xls文件),或是點擊“Print”按鈕進行打印。

 

 

圖18

 

3.3.4 使用Signal Harness使多圖紙設計更方便。

AD提供的Signal Harness功能,支持將多個導線、總線包裹在一起進行連接。在導線、總線連接較多且復雜的原理圖中,我們可以使用Signal Harness將這些線路匯集在一起,結合各種網絡標識符進行圖紙內或跨圖紙連接。一般Signal Harness系統包含有四塊:Signal Harness(連線),Harness Connector(連接器),Harness Entry(入口)和Harness Definition File(定義文件)。前三者在畫原理圖時需用到,最后的定義文件則會自動生成(前提是使用了Harness Connector)。其原理圖如圖 19。

 

 

 

圖 19

下面簡單介紹下Signal Harness的使用:

點擊“Place->Harness-> Harness Connector”,在放置前按“TAB”鍵,在“Harness Type”輸入連接器的類型(本例使用“TEST”),之后點擊OK放置。

點擊“Place->Harness-> Harness Entry”,放置接口,並根據實際重命名。

放置端口“AUDIO”和其他的網絡標簽,之后進行連線;其中AUDIO需用Signal Harness連接。

編譯工程,在左邊工程面板的工程目錄下的“Setting->Harness Definition Files”可以看到(*.Harness)的文件,雙擊打開,可以看到里面就一個語句“TEST=WCLK,BCLK,DOUT,DIN,MCLK”, 表示TEST由多個連接線組成。

之后可以在圖紙內其他需要連接的地方再建一個Signal Harness,通過端口連接起來;如果需要連接的電路在其他圖紙內,同樣可以通過端口(port)將電路連接起來。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM