登錄 注冊
購物車0
TOP
Imgs 技術中心

0

Cadence布局布線常見問題詳解_高都電子PCB技術中心_pcb學

2019-08-27 19:19:59

1. 怎樣建立自己的元件庫?

 

建立了一個新的project后,畫原理圖的第一步就是先建立自己所需要的庫,所采用的工具就是part developer. 首先在建立一個存放元件庫的目錄(如mylib),然后用寫字板打開cds.lib,定義: Define mylib d:boardmylib(目錄所在路徑). 這樣就建立了自己的庫。在Concept_HDL的component->add,點擊search stack,可以加入該庫。

 

2. 保存時Save view和Save all view 以及選擇Change directory 和不選擇的區(qū)別?

 

建立好一個元件庫時,首先要先保存,保存盡量選擇 save 
view。在concept-HDL中,我們用鼠標左鍵直接點擊器件后,便可以對器件的外形尺寸進行修改,這時如果你再進入part
developer做一些修改后,如果選擇save all view會回到原來的外形尺寸,而選save view

 

會保留改動后的外形。

 

3. 如何建part庫,怎么改變symbol中pin腳的位置?

 

在project manager中tools/part developer可建立,選擇庫并定義part name,在symbol中add 
symbol,package中add package/addpin,依次輸入pin:

 

package中:

 

a, Name : pin’s logical name不能重復

 

b, pin : pin的標號,原理圖中backannotate后相應的標號

 

c, pin type: pin腳的類型(input,output等,暫可忽略)

 

d, active:pin的觸發(fā)類型 high(高電平),low(低電平)

 

e, nc:填入空腳的標號

 

f, total:此類型的所有pin腳數(shù)

 

g, 以下暫略

 

symbol中:

 

a, logical name:對應package中的name

 

b, type:對應package中的type

 

c, position:pin腳在器件中位置(left , right , top , bottom)

 

d, pintext:pin在器件中顯示的name(對應package中的pin,但可重復,比如package中

 

的gnd1和gnd2都可設為gnd)

 

e, active:對應package中的active

 

修改:用part developer打開要修改的器件,*選擇edit/restrict 
changes(若不選擇,則器件被保護,修改后存盤無效),一般修改:

 

a, package中相應pin的標號和name

 

b, pin的active類型

 

c, symbol中各pin腳的順序(pin腳的順序在第一次存盤后再次打開會被改變,對于較多

 

pin腳的器件,如232pins,修改較繁瑣,故盡力保證的一次的成功率。pin腳在器件中的排列順序是根據(jù)symbol中的順序而定,故symbol中pin腳的順序一定要正確,若有錯需修改,選中pin按ctrl鍵配合上下鍵標可移動pin腳位置。

 

4. 畫電原理圖時為什么Save及打包會出錯?

 

當保存時出錯,主要原因可能是:所畫的信號線可能與元件的pin腳重合,或信號線自身重合;信號線重復命名;信號線可能沒有命名;在高版本中( 版本14.0以上)中,自己所創(chuàng)建的庫不能與系統(tǒng)本身帶有的庫名字相同;建庫時,封裝原件的管腳個數(shù)與原件庫的管腳個數(shù)不同。打包時會出錯的原因則有可能是所做的封裝類型與元件不匹配(如pin腳的個數(shù),封裝的類型名等。

 

5. 在電原理圖中怎樣修改器件屬性及封裝類型?

 

在菜單Text下拉菜單中選擇Attribute特性,然后點擊器件,則彈出一Attribute 窗口,點擊Add按鈕,則可以加入name ,value,JEDEC_TYPE (封裝類型) 等屬性。

 

6. 如何在Pad Design中定義Pad/via?及如何調用*.pad?

 

在pad design中,建立pad 時,type選single類型,應該定義下面幾層的尺寸:begin layer(有時是end layer), soldermask和 pastemask 。建立Via時,type一般選through,定義drill hole 的尺寸 和所有的layer層(注意定義thermal relief和anti pad)以及soldermask。一般Pastemask和Regular一樣大,soldmask比layer的尺寸大幾個Mil,而thermal 
relief和anti pad比regular pad的尺寸大10Mil以上。

 

7. 做封裝庫要注意些什么?

 

做封裝既可以在Allegro中File->New->package symbol,也可以使用Wizard(自動向導)功能。在這個過程中,最關鍵的是確定pad與pad的距離(包括相鄰和對應的pad之間),以確保后期封裝過程中元器件的Pin腳能完全的無偏差的粘貼在Pad上。如果只知道Pin的尺寸,在設計pad的尺寸時應該比Pin稍大,一般width大1.2~1.5倍,length長0.45mm左右。除了pad的尺寸需特別重視外,還要添加一些層,比如SilkScreen_top和Bottom,因為在以后做光繪文件時需要(金手指可以不要),Ref Des也最好標注在Silkscreen層上,同時注意絲印層不要畫在Pad上。還應標志1號pin腳的位置,有一些特殊的封裝,比如金手指,還可以加上一層Via keep out,或者route keep out等等,這些都可以根據(jù)自己的要求來添加。操作上要注意的是建好封裝后,一定不要忘了點擊Create symbol,不然沒有生成*.psm文件,在Allegro就無法調用。

 

8.為什么無法Import網(wǎng)表?

 

在Allegro中File選項中選Import―――>logic,在import logic type選HDL-concept,注意在Import from欄確認是工作路徑下的packaged目錄,系統(tǒng)有可能自動默認為是physical目錄。

 

9.怎么在Allegro中定義自己的快捷鍵?

 

在allegro下面的空白框內,緊接著command>提示符,打入alias F4(快捷鍵) room out(命令)?;蛘咴贑adence 安裝目錄/share/pcb/text里有個env文件,用寫字板打開,找到Alias定義的部分,進行手動修改既可。

 

10.怎么進行疊層定義?在布線完成之后如何改變疊層設置?

 

在Allegro中,選Setup-?Cross-section。如果想添加層,在Edit欄選Insert,刪除為del,材料型號,絕緣層一般為FR-4,Etch層為Copper,層的類型,布線層選Conductor,鋪銅層為Plane,絕緣層為Dielectric,Etch Subclass Name分別為Top,Gnd,S1,S2,Vcc,Bottom。

 

Film 
Type一般選擇Positive,plane層選擇Negative。如果布線完成之后,發(fā)現(xiàn)疊層設置需要改動。比如原來設置的為3,4層是plane層,現(xiàn)在需要改為2,5層,不能簡單的通過重命名來改變,可先在2,5層處添加兩層plane層,然后將原來的plane層刪除。

 

11.為什么在Allegro布局中元器件在列表中不顯示或者顯示而調不出來?

 

首先確定Psmpath,padpath的路徑有沒有設置,如果沒有設置可以在Partdevelop里設置,或者在env文件中手動添加。也有可能器件在列表中存在,但是無法調出,可檢查該器件所用到的*.pad文件及封裝庫文件*.dra,*.psm是否存在于你的工作目錄×××/physical里。另外還有一種可能就是頁面太小,不夠擺放器件,可以在setup-?draw size中調整。

 

12.為什么器件位置擺放不準確,偏移太大?

 

主要是因為Grids設置的問題,可在setup-grids中將每一層的Etch及Non-etch的grids的X、Y的spacing間隔調小。對于一些對位置要求比較嚴格的器件,比如插槽,金手指等用于接口的元器件,則應該嚴格按照設計者給定的位置尺寸,在命令行里用坐標指令進行定位。如:x 1200 3000 。

 

13.怎樣做一個Mechanical symbol,以及如何調用?

 

Allegro中File-?new,在drawing type中選擇Mechanical symbol。主要是為了生成PCB板的外框模型,在這里面雖然也可以添加pad,但是沒有管腳對應關系。Mechanical symbol 
完成以后,生成*.dra文件。在Allgro中調用時,選擇by symbol―>mechanical。注意右下角的library前面的勾打上。

 

14.在布局后如何得到一個整理后的所有元件的庫?

 

如果嫌physical目錄下各類文件過分繁冗,想刪除一些無用的文件,或者只有一個*.brd文件,想獲取所有的元件及pad封裝庫的信息,可以采用這種辦法:將*.brd另存在一個新的目錄下,在File->選export->libraries,點中所有選項,然后export,即可在你的新目錄下生成所有的*.pad,*.psm,*.dra文件。

 

15.如何定義線與線之間距離的Rule?

 

我們以定義CLK線與其它信號線之間的距離為例:

 

在Allegro中:setup->constraints,在spacing rule set中點set values。首先add一個constraint set name,比如我們取名為CLOCK_NET,然后就在下面定義具體需要遵守的規(guī)則。

 

比如line to line 我們定義為10 mil。接著在allegro主窗口的edit菜單下選擇properties,會跳出你的Control工具欄,在find by name 中選擇net,在右下角點擊more。在新彈出的窗口的列表中選擇你所想規(guī)定的CLK線,如CK0、CK1、CK2等等,確定右邊的selected objects中以選中所有的線,點Apply。又會出現(xiàn)一個新窗口,在左邊的available properties中選擇NET_SPACING_TYPE,在左邊給它賦值(名字隨意),比如CLK?;氐絪etup->constraints,

 

在剛才set values的下面點擊Assignment table,即可將所定義的規(guī)則賦給所選用的net。

 

在Specctra中,可先選中所要定義間距的信號線(select —>nets->by list),然后在rules中選selected net->clearance,在該窗口可定義一系列的布線規(guī)則,比如要定義線與線之間的間距,可在wire-wire欄定義,注意,當點Apply或者OK之后,該欄仍然顯示-1(意思是無限制),只要看屏幕下方的空白欄,是否有定義過的信息提示。

 

16.為什么在Allegro中畫線不能走45度角?

 

在control控制欄的line lock中,可將90改為45,如果想畫弧線,可以將line改為Arc。

 

17.如何在CCT中定義走線最大最小距離?

 

同上面定義間距的方法類似,在選中所要定義的線之后,rules->selected net->timing,則可以在minimum length和maximum length中定義走線的最長最短長度限制,也可以用時間延遲為限制來定義。還有一種方法就是在Specctra Quest中提取某一根信號線的拓補結構作為模型,在里面定義各段導線的長度限制,然后生成rule文件,可以約束相同類型信號線的走線。

 

18.在CCT中如何進行一些保存讀盤操作(顏色設置、規(guī)則保存)?

 

在Specctra里,可用file->write->session來保存當前布線,用file->write->rules did files來保存規(guī)則文件,調用時均使用file->execute do file,然后打需要調用的存盤文件,如Initial.ses或rules.rul 。在color palette中使用write colormap和來load colormap來保存和讀取顏色設置。

 

19.在CCT中怎么大致定義自動打孔的位置,怎么打一排過孔及定義其排列形狀?

 

CCT中有自動打過孔的功能,在Autoroute->Pre Route->Fanout ??梢灾付ㄟ^孔的方向,比如想把過孔都打在Pad的內部,則可以在location中選inside。其中也可以定義一些其他限制。另外有時我們可以選擇一組線進行平行走線,這時就可能同時打一排過孔,右擊鼠標選擇set via pattern,可選擇其排列形狀。在窗口的右下方也有快捷按鈕可以選擇。

 

20.為什么提示的最大最小距離不隨走線的長度變化而改變?

 

我們在定義了最長最短走線的規(guī)則之后,在布線時會有數(shù)字顯示,隨時告訴你如果按當前走向布線會離所定義的規(guī)則有多大的偏差。一般在規(guī)則長度以內的用綠色字體顯示,超過了或長度不夠會有紅色字體顯示,并用+/—提示偏差量。但是這個提示的偏差量并不是簡單的隨你走線的長度變化而變化。它是根據(jù)你的布線方向,軟件自動計算按此方向走線的長度與規(guī)定長度的比較,如果變換走線方向,它也會重新計算。

 

21.怎么鋪設Plane層?鋪好后怎么修改?

 

鋪銅這一步驟一定要在Allegro中進行,Add->shapes->Solid Fill,同時注意在Control工具欄中Active Class選Etch,Subclass選所要鋪設的Plane層,如VCC或者GND。然后即可畫外框,注意離outline有20 Mil左右的間距。Done之后會進入鋪銅的操作界面,選Edit->Change net(by name)給Plane層命名。在shape—>parameters確定是否使用了Anti Pad和Thermal relief,接著選Void->Auto,軟件會自動檢測Thermal relief,完成之后會有l(wèi)og匯報,如果沒有任何錯誤既可鋪設shape,shape->Fill 。如果鋪好之后又有過孔的改動,需要重新鋪銅,則應選Edit->shape,點在shape上,然后右擊鼠標選done,這樣就會自動將連接在shape上的Thermal relief刪除,不能硬刪鋪銅的shape層,否則那些Thermal relief將遺留在Plane層上。

 

22.怎么定義thermal-relief 中過孔與shape連線的線寬?

 

在Allegro的Setup->constraints里的set standard values中可定義每一層走線的寬度,比如,可以定義VCC和GND的線寬為10 Mil。在鋪銅時注意shape->parameters里一些線寬的定義是否設置成DRC Value。

 

23.如何優(yōu)化布線而且不改變布線的總體形狀?

 

布線完成之后,需要對其進行優(yōu)化,一般采用系統(tǒng)自動優(yōu)化,主要是將直角變?yōu)?5度,以及線條的光滑性。Route->gloss->parameters,在出現(xiàn)的列表中,選Line smoothing,進行Gloss即可,但有時布線中為了保證走線距離相等,故意走成一些彎曲的線,優(yōu)化時,點擊Line Smoothing左邊的方塊,只選擇convert 90’s to 45’s ,把其他的勾都去掉,這樣進行優(yōu)化時就不會將設計者故意彎曲的走線拉直或變形。

 

24.如何添加淚滴形焊盤以及加了之后如何刪除?

 

在優(yōu)化的parameters選項中只選擇倒數(shù)第二個,Pad And T Connection Fillet ,并去掉其中的Pin選項,進行優(yōu)化即可。想要刪除的話,則只選Line smoothing中的dangling 
Lines進行優(yōu)化。注意:如無特殊要求,現(xiàn)在我們不再進行此項優(yōu)化。

 

25.布線完成之后如果需要改動封裝庫該如何處理?

 

在器件擺放結束后,如果封裝庫有改動,可以Place->update symbols,如果是pad有變化,注意要在update symbol padstacks前打勾。布線完成之后盡量避免封裝庫的改動,因為如果update,連接在Pin上的連線會隨Symbol一起移動,從而導致許多連線的丟失,具體解決辦法有待于研究。

 

26.為什么*.brd 無法存盤?

 

遇到這種情況注意看屏幕下方的空白欄的提示,有可能是硬盤空間不夠,還有一種可能是因為數(shù)據(jù)庫出錯,軟件會自動存盤為*.SAV文件,這時可以重新進入Cadence(可能需要重起動),打開*.SAV,再另存為*.brd ?;蛟贒os下運行DBFix .SAV,會自動將其轉換為*.brd文件,然后即可調用。

 

27.Allegro有哪些在Dos下的數(shù)據(jù)庫修正命令?

 

有時Allegro會出現(xiàn)一些非法超作,導致一些數(shù)據(jù)出錯,我們可以在Dos方式下,在工作目錄下(即physical目錄下),運行一些修正命令,如Dbcheck 
*.brd , 或Dbfix *.brd 。不過實際中這些命令好像效果不大。

 

28.如何生成*.DML模型庫?

 

在dos模式,工作目錄下,敲入brd2dml *.brd 命令,這樣在該目錄下會生成對應brd文件的模型庫dml文件。

 

29.如何在Specctra Quest里使用IBIS模型進行仿真?

 

首先將IBIS模型轉化為*.dml文件。在Specctra Quest SI expert中Analyze->Si/EMI SI->library,在出現(xiàn)的新窗口的右下角,點擊translate->ibis2signoise,然后在browse里選擇*.ibs文件,將其轉化為*.dml文件。然后在Analyze->SI/EMI SI->model Assign中將所有的器件加載對應的模型。然后就可以用probe提取信號線進行仿真了。

 

30.生成Gerber file要哪些文件?如何產生?

 

在PCB 布線完成以后,所做的最后一項工作就是產生生產廠家所需要的光繪文件,具體步驟在Allegro工具下完成。在Manufacture 菜單下點擊Artwork 選項, 則出現(xiàn)一個artwork control form窗口。所提供的光繪文件除了包括已產生的TOP, GND, S1, S2, VCC, BOTTOM6層,還應包括silkscreen_top, silkscreen_botom, soldermask_top, soldermask_bottom, pastemask_top, pastemask_bottom, drill drawing file, 及drill hole。我們以制作Silkscreen的top層為例。

 

1) 在Allegro窗口中,點擊color 圖標,在產生的窗口中,global visibility 選擇all invisibility, 關掉所有的顯示。

 

2) 在group 選擇Geometry. 然后選中所有的subclass(Board_Geometry , packageGeometry)下的silkscreen_top 。

 

3) 同樣在Group/ manufacture 中選擇Autosilk_top 。 在Group/components ,subclass REF DES 中選擇 silkscreen。

 

4) 選擇OK按鈕 ,則在Allegro窗口中出現(xiàn) silkscreen_top層 。

 

5) 在artwork control form 窗口,右鍵點擊Bottom ,在下拉菜單中選擇add , 則在出現(xiàn)的窗口中輸入:silkscreen_top, 點擊O.K , 則在avilibity films 中出現(xiàn)了新加的silkscreen_top。

 

注意:在FILM opition選中Use Aperure Rotation, 在Underined line width 中填寫5(或10) ,來定義還沒有線寬尺寸的線的寬度。

 

按照上面的步驟,產生silkscreen_bottom層。soldermask_top和 soldermask_bottom 層分別在 : Gemoetry 組和 Stackup 組(選擇PIN 和VIA子集);Pastemask_top 和Pastemask_bottom 分別在Stackup組(選擇PIN 和VIA子集);DrillDraw 包括Group組/Board Geometry中的outline、Dimension 和Manufacturing 中的 Ncdrill_Legend。這樣,按照上面的步驟,分別添加上述各層。然后在 Artwork control form 窗口中 ,點擊Select All 選中所有層 , 再點擊 Apertures….按鈕, 出現(xiàn)一新的窗口EditAperture Wheels, 點擊EDIT, 在新出現(xiàn)的窗口中點擊AUTO>按鈕,選擇with rotation, 則自動產生一些Aperture文件。然后點擊O.K。在 Artwork control form 中點擊 Creatartwork , 則產生了13個art文件。 回到 Allegro 窗口, 在 Manufacture 菜單下點擊NC 選項中的Drill tape 菜單 ,產生一個*.tap 文件。到此,就產生了所有的14個光繪文件。

 

31.如何調看光繪文件?及如何制作Negtive的Plane層光繪文件?

 

新建一個空白layout文件,F(xiàn)ile->import->Artwork,然后就可以在browse中選擇*.art文件,Manual中選gerber 6×00。注意不要點OK,點擊Load File。在調用Soldermask 時要在display pad targets前打勾。 調用silkscreen層時,可能會發(fā)現(xiàn)沒有器件名標志。這是因為在上面制作光繪文件時,Underined line width沒有定義寬度,而在以前制作封裝庫時,silk_screen層時標注的Ref也沒有定義寬度,則在調用時會不顯示。另外如果想制作Negtive的光繪文件。在制作光繪文件時,Gnd和Vcc層的Plot mode選為Negative就行。

 

高都電子,為客戶創(chuàng)造價值!

雙面板免費加費,四層板加急打樣,厚銅電路板打樣

Xcm