“通常來說 KiCad 更建議使用層次化的設計,因為這樣結構更清晰,也方便設計復用。對于簡單的系統,扁平化設計也很容易實現;但將復雜的系統設計成扁平化卻并不那么容易。”
標簽類型及優先級?
KiCad有3種類型的標簽。生成的網絡名稱將由它們的優先級決定。
全局標簽優先級最高(如網絡為+5V)。
電源符號和隱藏的電源引腳是全局標簽。
層次化標簽排第二。所產生的網絡會顯示標簽名稱,并以 “/” 前綴加以區別(如 /Red_in)。
本地標簽的優先級最低。所產生的網絡不僅會顯示標簽名稱,而且會顯示當前圖紙的名稱(如/graphics/Red_in)。
如果在同一圖紙中有相同名稱的標簽,那么這些標簽就會被連接起來,即使它們的類型不同。
全局和層次化標簽有不同的圖形類型(輸入、輸出、雙向、三態和被動),圖形風格只影響標簽的外觀,不影響它的連接方式,ERC也不檢查。
為什么層次設計中盡量不要使用全局標簽?
層次化設計的是為了把設計結構、模塊清晰地抽象出來。這種抽象是為了幫助工程師把當前模塊的內容與系統中的其他內容分開。任何形式的全局標簽都需要了解系統中所有模塊的信息,以確保不會創建一個錯誤的網絡連接(同樣名稱的全局標簽會在網表中連接)?;蛘哒f,使用全局標簽之前必須要了解不同圖紙模塊中是否存在同名的標簽,以免發生誤連的情況。 這不僅涉及到信號的網絡標簽,也包括電源連接。如果電源使用全局標簽,那么每個子系統的設計者都需要了解整個系統的電源情況,而不是只知道當前圖紙的需求,不然就會發生意外的電源連接。
選擇全局標簽也限制了圖紙的復用性。例如,一旦你在某一張原理圖中使用了GND符號,如果在整個系統中復用了這張圖紙,其他圖紙與地相連也只能使用GND,而無法使用其他的符號,如AGND。。
為什么有時仍然要在層次化設計中使用全局標簽?
嚴格遵循設計方法并不總是一個好主意。在有些情況下,它只會增加不必要的工作量,或者使電路更難讀懂(特別是對于那些對這種設計方法沒有太多經驗的人)。 一個典型的例子是想要區分電源符號的時候。很多設計者已經習慣了電源符號的不同形狀。因此,看到一個基于文本的標簽而不是這樣一個符號可能會對可讀性產生負面影響。 遺憾的是,目前還沒有辦法將電源符號限制在一張圖紙上(關于電源符號如何工作,特別是如何區分全局或局部的電源符號,有許多開放的討論)。
另一個問題與ERC有關。在KiCad中電源符號被設為電源輸入引腳,ERC認為必須要有外部的電源驅動與之相連,否則就會報錯。如果使用層次化標簽,就不會有這種問題。然而,在大多數電路中,會有一些IC或類似的元件需要ERC判斷是否存在電源驅動。在某些情況下,需要使用PWR_FLAG符號避免ERC報錯。
結論是應由設計者來選擇如何嚴格遵循純層次化設計的方法。
審核編輯 黃宇
-
電源
+關注
關注
184文章
17594瀏覽量
249517 -
KiCAD
+關注
關注
4文章
112瀏覽量
8711
發布評論請先 登錄
相關推薦
評論