我們在日常畫板子的時候,有時會出現一個比較尷尬的問題:同一個工程下不同原理圖之間的相同網絡標號導入到PCB文件之后,pin沒有連接在一起;編譯是還會出現報錯,error:Duplicate Net Names。可以直接忽略,但存在報錯實在讓人難受。
解決這個問題,就要先了解網絡標識符的幾種方式。查找了相關的一些資料和大家分享下:
網絡標識符有Automatic、Flat、Global、hierarchical四種方式;
四種方式的用法分別為:
①Flat方式:不同頁之間只有Port(端口)具有全局屬性,即在不同的sheet之間進行同名端口的連接;缺點是難于追蹤。
②Global方式:不同頁之間Port和netlabel都具有全局屬性,缺點也是難于追蹤。
③Hierarchical方式:這種適合于分等級的原理圖設計中,必須有頂層和底層(每一頁),頂層和底層之間是只通過SheetEntry(頁入口)和各頁的Ports建立對應關系,這種方式適合多頁分等級的設計,各頁之間的關系比較明晰,也容易追蹤。
④為Automatic方式:根據判據自動判斷選擇上述三種方式中的一種進行設置;
具體是這樣:當檢查到原理圖中具有頁符號采用Sheet Entry和/或Ports連接子圖,則自動選擇HIerarchical方式;若沒有Sheet Entry則判斷有沒有Ports,如果有Ports,則采用Flat方式進行設置作用域范圍;如果沒有Ports,則自動設置為Global方式。也就是說,若采用Automatic方式,當電路圖中有SheetEntry時采用Hierarchical方式;當電路圖中有Ports(不管不同頁之間有沒有同名的netlabel)時采用Flat方式;當電路圖中僅有Netlabel時才采用Global方式。
出現編譯錯誤的原因也就在于Automatic方式時軟件采用的判據,如果電路中沒有SheetEntry,既有natlabel又有Ports,當設置為Automatic時會按照④所述的判據自動設置為Flat方式,由①可知是Flat方式只有Port在不同頁之間具有全局屬性,所以軟件不認為不同頁之間的同名netlabel是連接在一起的,進而出現了“Duplicate Net Names Wire XXX”的錯誤提示,這里邊字面意思是網絡名重名,個人認為出現這種錯誤時,是設計Altium Designer的人人為設定的,不然的話設計軟件的難度太大,需要檢測有沒有netlabel和port,一共有四種情況,況且每一種情況具有包含與被包含的關系。
所以解決的辦法有:
采用層次原理圖設計,頂層的SheetEntry僅僅和子頁的Port之間建立連接關系。
將不同頁之間同名netlabel修改為port,然后通過port建立連接關系,作用域設置為Flat或者Global或Hierarchical。 (注意:當將出現上述錯誤信息的原理圖工程作用域設置為Hierarchical時,盡管很多錯誤都消失了,但是會有一個“Multiple Top Level Documents”的錯誤,即多個頂層文檔。)
最簡單但比較懶惰的方式,將作用域設置為Global方式;Project-》Project options中的Options選項下設置了一下Net Identifier Scope(網絡標識符作用范圍),由原來的Automatic改為Global。
-
編譯
+關注
關注
0文章
654瀏覽量
32810 -
flatpac
+關注
關注
0文章
2瀏覽量
4787 -
PCB
+關注
關注
1文章
1777瀏覽量
13204
發布評論請先 登錄
相關推薦
評論