1. 程式人生 > >自己的Allegro16.3的學習筆記,算是回報社會吧。

自己的Allegro16.3的學習筆記,算是回報社會吧。

2013-5-7更新

1.         Allegro中我設定了highlight的顏色為白色,但選中後顏色是白藍相間的,很不方便檢視。是什麼地方需要設定,哪位大蝦告訴哈我?

答:setup/user preferences/display/display_nohilitefont 這個選項打勾就行了。

2.         不小心按了Highlight Sov後部分線高亮成白色,怎樣取消?

答:這個是用來檢查跨分割的,取消的辦法是:如果是4層板的話,在電源層跟地層都鋪上地網路,然後再按Highlight Sov重新整理即可。

3.         如何更改Highlight高亮預設顏色?

答:可以在Display->Color/Visibility->Display->Temporary Highlight裡修改即可,臨時修改顏色可以點Display->Assign Color來實現。

4.         如實現Highlight高亮部分網路,而背景變暗,就像Altium Designer那樣?

答:可以在Display->Color/Visibility->Display->Shadow Mode開啟該模式,並且選中Dim active layer即可。

5.         快速切換層快捷鍵

答:可以按數字區裡的“-”或“+”來換層。

6.      OrCAD跟Allegro互動時,出現WARNING [CAP0072] Could not find component to highlight錯誤等?

答:OrCAD輸出網表,Allegro匯入網表,確保兩者對的上號,然後在Orcad選中元件,再右鍵Editor Select,即可在Allegro中選中該元件;反過來,在Allegro中要先Highlight某元件,在Orcad中變會選中該元件。

1.ORcad :首先開啟orcad和allegro分別佔1/2的視窗介面。然後orcad中 Tools/creatnetlist/PCB Editor中Create PCB Editor Netlist下的Options中設定匯出網表的路徑。然後確定匯出網表。

2.Allegro:Files/Import/Logic/ 最底下的Import directory中設定剛才匯出網表的路徑。然後匯入即可,只要不出現error即可。

3.操作互動:首先在allegro中選中高亮display/Highlight,然後到orcad中選中一個元件或者引腳哪麼對應的allegro中舊高亮顯示了。當然了選中Dehighlight就可以不高亮顯示了。

7.         關於盲孔及埋孔B/B Via的製作方法?

答:可先製作通孔Thru via,然後Setup->B/B via definitions->Define B/B via,如下圖,完成後,再在Constraint Manager->Physical->all layers->vias裡新增B/B Via即可。

8.         在用Router Editor做BGA自動扇出時,遇到提示無法找到xxx解決方法?

答:路徑裡不能有中文或者空格 。

9.         在製作封裝時,如何修改封裝引腳的PIN Number?

答:Edit->Text,然後選中PIN Number修改即可。

10.     對於一些機械安裝孔,為什麼選了pin後,選中老是刪除不了?

答:因為這些Mechanical Pin屬於某個Symbol的,在Find裡選中Symbols,再右鍵該機械孔,點Unplace Component即可。

11.     在OrCAD裡用Off Page Connector為什麼沒起到電氣連線的作用?

答:先科普下:

1.off_page connector確實是用在不同頁間比較合適,同一頁中可以選擇用連線,匯流排或者Place net alias來連通管腳,沒有見過在同一頁中用off_page connector的。

2.off_page connector在電氣特性上是沒有方向性的,但是在製圖時,為了人看方便,所以使用的雙向訊號和單向訊號的符號還是不同的,這是為了讓人知道它是輸入還是輸出。電氣特性的連線是在晶片做原理圖封裝時,對管腳定義時形成的。

原因分析:Off Page Connector用於平坦式電路圖中多頁面原理圖電氣連線(這些原理圖必須從屬於同一個Parent Sheet Symbol)。如下圖所示才算同一個Parent sheet symbol。

12.     如何將兩塊電路板合成一塊?

答:先將電路板A匯出成Sub-drawing,然後電路板B再匯入該Sub-drawing,同時原理圖也合成一個原理圖,完後建立網表Netlist,電路板B再匯入該Netlist,此時電路板B存在一些未名的器件和已名的器件,因為匯入Sub-drawing元件佈局跟連線都跟原來的保持一致,但是去掉了電路板A中元件的網表資訊的,而匯入該Netlist則匯入了網表資訊,為了利用原來的元件佈局,可用Swap->Component命令來交換元件網表資訊而保持原來的佈局不變。

13.     元件封裝中的機械安裝孔Mechanical Symbol?

答:使用Allegro PCB Design XL的Package symbol模板建立一個元件封裝,對於有電氣連線性的pin將其按照實際元件的引腳編號。而對於機械安裝孔的pin,將其pin number刪除掉,表明它是一個非電氣連線性的引腳,大多數指安裝孔。比如DB9、RJ45等接外掛都具有兩個(或者以上)的機械孔。

14.     Mechanical Symbol已經存在庫中,但Place->Manually在Mechanical Symbols裡見不到?

答:在Placement裡的Advance Settings選項卡中選中Library即可。

15.     ORCAD畫原理圖時,off page connector 後加上頁碼的方法?

答:用ORCAD畫原理圖,很多ORCAD的SCH中,大多在offpage connector 加上一個頁碼。方法很簡單:Tools->annotate->action->add intersheet reference即可。

16.     佈線時,新增到約束中的所有的通孔和盲孔都可以顯示,但是所有埋孔都不能顯示,不知道為什麼。比如,L1—L2,L1--L3, L1--L8(8層板)都可以顯示,但是L2——L7,L3--L6都無法顯示?

答:在pad製作時需要把microvia點上即可。

17.     Allegro Region區域規則設定?

答:setup - constraints - constraint manager或者快捷選單中帶cm標記的,Cmgr圖示啟動constraints manager圖表窗體,在窗體中選擇object-->create-->region,此後就在表中設定一下物理或者間距規則,只不過在設定通孔時可以雙擊彈出選擇過孔窗體,非常方便。最後設定完了點選OK,此後在allegro pcb的選單中shape下有利用Rectangular建立一個矩形,然後在option中的active class 選擇Constraint Region,subclass選擇all.assgin to region選擇你剛剛在規則管理中建立的區域規則名稱,如果沒有說明你沒有儲存好,重新操作一遍以上的規則建立過程。

18.     與某個Symbol的引腳相連的Clins和Vias刪除不了?

答:可能該Symbol為fix,Unfix該Symbol即可。

19.     Allegro使用Fanout by pick功能時老是扇不出,而且停到一半卡死?

答:可能待扇出Symbol所在區域中存在Etch層的Shape,要刪掉這些Shape才行。

20.     將某個網路設定成電源網路,並設定其電壓、線寬等屬性?

答:選中該Net,然後Edit->Properties,按下圖修改其屬性即可。或者也可以依次點選Tools->Setup Advisor->Next->Next->Identify DC Nets->填入網路的Voltage即可。

21.     為什麼器件bound相互重疊了,也不顯示DRC錯誤呢?是不是哪裡設定要開啟以下?

說明: untitled.bmp
3 u# n/ O$ F1 d3 @# l. |答:有兩種,一個是pin到pin的距離約束,主要是防止短路,需要在constrain中設定smd pin 到smd pin的距離,然後在setup——constrain——modes中的spacing modes中勾選smd pin to smd pin。

另外一個是檢查兩個器件是否重疊,需要用到place bound top/bottom,至於是頂層還是底層,要更具你的器件而定,這個規則只要是兩個器件的place bound層相互重疊就會報警,同樣需要開啟檢查開關,在setup——constrain——modes中的design modes(package)中勾選package to package為on(其中on為實時監測,只要觸犯規則就報警,batch為只有點選update drc才監測報警,off是不監測,違反規則不報警)。當然,Color/Visibility中Stack-UP中相應層中的DRC顯示也要開啟。

22.     拖動時為什麼不顯示鼠線?移動鋪銅或元件時,原來與之相連的過孔和線都消失了,怎麼解決?

答:Move時要選中Ripup Etch。選中Ripup Etch時將去掉跟該Symbol引腳相連的Clines,同時顯示Rats,選中Stretch Etch時用Clines代替Rats,而什麼都不選時則保留Clines同時顯示Rats。所以移動鋪銅或元件為保留原來的過孔和線,則不能選中Ripup Etch。

另外:定製Allegro環境

  Find(選取)
      Design Object Find Filter選項:
        Groups(將1個或多個元件設定為同一組群)
        Comps(帶有元件序號的Allegro元件)
        Symbols(所有電路板中的Allegro元件)
        Functions(一組元件中的一個元件)
        Nets(一條導線)
        Pins(元件的管腳)
        Vias(過孔或貫穿孔)
        Clines(具有電氣特性的線段:導線到導線;導線到過孔;過孔到過孔)
        Lines(具有電氣特性的線段:如元件外框)
        Shapes(任意多邊形)
        Voids(任意多邊形的挖空部分)
        Cline Segs(在clines中一條沒有拐彎的導線)
        Other Segs(在line中一條沒有拐彎的導線)
        Figures(圖形符號)
        DRC errors(違反設計規則的位置及相關資訊)
        Text(文字)
        Ratsnets(飛線)
        Rat Ts(T型飛線)


    檔案型別:
      .brd(普通的電路板檔案)
      .dra(Symbols或Pad的可編輯儲存檔案)
      .pad(Padstack檔案,在做symbol時可以直接呼叫)
      .psm(Library檔案,儲存一般元件)
      .osm(Library檔案,儲存由圖框及圖檔案說明組成的元件)
      .bsm(Library檔案,儲存由板外框及螺絲孔組成的元件)  
      .fsm(Library檔案,儲存特殊圖形元件,僅用於建立Padstack的Thermal Relief)
      .ssm(Library檔案,儲存特殊外形元件,僅用於建立特殊外形的Padstack)
      .mdd(Library檔案,儲存module definition)
      .tap(輸出的包含NC drill資料的檔案)
      .scr(Script和macro檔案)
      .art(輸出底片檔案)
      .log(輸出的一些臨時資訊檔案)
      .color(view層面切換檔案)
      .jrl(記錄操作Allegro的事件的檔案)
    設定Drawing Size(setup\Drawing size....)
    設定Drawing Options(setup\Drawing option....)
      status:on-line DRC(隨時執行DRC)
        Default symbol height  
      Display:
        Enhanced Display Mode:
          Display drill holes:顯示鑽孔的實際大小
          Filled pads:將via 和pin由中空改為填滿
          Cline endcaps:導線拐彎處的平滑
          Thermal pads:顯示Negative Layer的pin/via的散熱十字孔
    設定Text Size(setup\Text Size....)
    設定格子(setup \grids...)
      Grids on:顯示格子
      Non-Etch:非走線層
      All Etch:走線層
      Top:頂層
      Bottom:底層
    設定Subclasses選項(setup\subclasses...)
      新增\刪除 Layer
        New Subclass..
    設定B/Bvia(setup\Vias\Define B/Bvia...)    

      Ripup etch:移動時顯示飛線
      Stretch etch:移動時不顯示飛線
  
訊號線的基本操作:
    更改訊號線的寬度(Edit\Change\Find\Clines)option\linewidth  
    刪除訊號線(Edit\Delete)
    改變訊號線的拐角(Edit\Vertex)
    刪除訊號線的拐角(Edit\Delete Vertex)

23.     如何修改某個Shape或Polygon的網路屬性以及邊界?

答:Shape->Select Shape or void->單擊選中該Shape->在右邊Option欄Assign net name中將Dummy Net修改成自己想要的網路,當滑鼠游標停留在邊界時可以拖動游標修改邊界。

24.     如何只刪除某一層裡的東西?

答:很簡單,Display->Color/Visibility->單獨顯示要想刪除的那一層,OK後刪除即可。

25.     如何替換某個過孔?如何不在佈線狀態下快速新增過孔?

答:Tools->PadStack->Replace,然後必須選上Single via replace mode,最後選上要想替換的過孔即可;利用copy來快速新增大量過孔即可。

26.     如何在allegro中取消Thermal relief花焊盤(十字焊盤)

答:set up->design parameter ->shape->edit global dynamic shape parameters->Thermal relief connects ->Thru pins ,Smd pins -> full contact

27.     在等長走線時,如何更改target目標線?

答:繞等長有兩種:一種是設在一定範圍內繞沒有基準,就是說在一組BUS裡必須繞到這個範圍內才會變綠,這個我一般不用,因為BUS裡少繞一根不到這個範圍就不會變綠。另一種就是設在一定範圍內有基準的,也許就是你表達的這種,ElectricalConstraint Set-->Net-->Routing-->Relative Propagation-->relative Delay-->Delta:Tolerance下你想設做基準的Net,點滑鼠右鍵,在下拉選單選擇set as target。

28.     如何分割電源層?

答:使用Anti Etch來分割平面

使用Add->line命令,並且設定Active Class為Anti Etch,設定好線寬,並且在外框畫好RoutKeepin,然後在已經建立Shape的平面上,畫出想要分隔的範圍,再用Edit->Split Plane->Create。

29.    畫了line型線,如何修改?

答:Edit->Vertex(頂點)命令來修改。

30.  通孔式焊盤做得比較大,且排列的較密集,怕連錫怎麼辦?

答:焊盤間畫絲印做隔離。

說明: http://download.21dianyuan.com/bbs/attachments/jpg/2010/10/17/12873014864cbaa96e90dff.jpg

31.  allegro對齊的問題 

答:1.首先右鍵application mode切換到模式placement edit;

2.框選需要對齊的元件;

3.關鍵的一步,在你要對齊的基準元件上右鍵,選擇align components;OK

4.allegro只能實現這個中心點對齊,至於更高階的要使用skill了

32.  修改了元器件封裝,如何更新到PCB?

答:Place->Update Symbols->Package Symbols->找到該封裝->點選Refresh即可。

33.  Allegro如何新增機械孔?

答:孔徑為NPTH(None Plated Through Hole),焊盤為NULL,THERMAL RELIEF和ANTI PAD需比孔徑大20MIL左右.然後把它當做via來用就可以了,當然也可以做成Symbol來新增。

34.  畫封裝時如何將元件參考點設在中間?

答:畫好封裝後,Setup->designer parameters->Move Orign即可。

35.     在Allegro中如何更改字型和大小(絲印,位號等)

配置字型:
allegro 15.2:
setup->text sizes
text blk:字型編號
photo width: 配置線寬
width,height:配置字型大小
改變字型大小:edit->change,然後在右邊控制面板find tab裡只選text(只改變字型)
然後在右邊控制面板options tab裡line width添線的寬度和text block裡選字型的大小。
最後選你準備改變的TEXT。
框住要修改的所有TEXT可以批量修改

allegro 16.0: setup->design->parameter->text->setup text size
text blk:字型編號
photo width: 配置線寬
width,height:配置字型大小
改變字型大小:
edit->change,然後在右邊控制面板find tab裡只選text(只改變字型)
然後在右邊控制面板options tab裡line width添線的寬度和text block裡選字型的大小。
class->ref des->new sub class->silkscreen_top

最後選你準備改變的TEXT,框住要修改的所有TEXT可以批量修改,
注意:
如果修改頂層絲印要先關掉底部絲印層,silkscreen_bottom和display_bottom

--------------------------------------------------------------------

在建封裝的時候可以設定

36.  Allegro靜態鋪銅時,當用Shape void Element來手動避讓時,有些區域明明很寬但老是進不去以致導致出現孤島?

答:在用Shape Void Element命令時,選中Shape,右鍵Parameter,Void Controls->Creat Pin voids,將In-Line改為Individually即可。

37.  重疊元件,如何切換選中它們?

答:選中該最上面元件,按Tab逐層切換選中。

38.  畫封裝的時候,明明已經在某些層上有定義,如Rout Keepout等,但是呼叫元件到板上卻老是找不到該層?

答:可能有兩個原因:1、PCB板上沒顯示該層;2、畫封裝的時候,如Top層定義成“Top_Cond”,但PCB上卻定義成“TOP”,所以顯示不出來。

39.  動態鋪銅時,Update to Smooth但還是存在Out of date shapes,什麼原因?

答:可能存在一些dummy net 的shapes,可以通過在Report裡執行Shape dynamic state來找到這些shapes,又因為dummy net的shapes可能不會就這樣顯示出來,可以stack-up裡boundary那欄開啟,用shape select來選中它來刪除。

40.  Package Geometry 裡的Silkscreen畫的是封裝的外框,Component Geometry裡的Silkscreen是器件的編號文字如R1等。

41.  Place_Bound_Top

Used to ensure you don’t place components on top of each without getting a DRC.  This boundary normally defines the component area which may or may not include pins of surface mount devices. This boundary can also be assigned a component high to be verified at the board level and checked to the Package_Keepout_Top boundaries or any other special component clearances.  If this boundary does not exist than it will be automatically created based on the Assembly_Top outline and the outer extents of the component pins. This boundary can only be defined at the symbol level (.dra).
 
Dfa_Bound_Top
Used by the Real Time Design for Assembly (DFA) Analysis to check clearances between components driven by a Spreadsheet based matrix of components.  This boundary normally or can be different then the traditional Place_Bound_Top boundary and it may include pins of surface mount devices. If this boundary does not exist than the DFA checks default to using the Place_Bound_Top boundary.  This boundary can only be defined at the symbol level (.dra).

Package_Keepout_Top
Used to ensure you don’t violate placement keepout areas or high restricted area in a design. This boundary can only be defined at the board level (.brd) and cannot be added to the symbol level (.dra) unless it is part of a Mechanical Symbol (.bsm)

42.  allegro匯出庫時,no library dependencies選項有什麼用?

答:選中該選項,匯出庫時會連同焊盤一起匯出去。

43.  Constraints manager裡無法建立pin pair?

答:有可能是雖然已經給電阻、電容等器件建立Espice模型了,但是IC的pin腳IO屬性沒定義。可以編輯pin腳的屬性,找到pinuse項,在裡面更改即可。

  1. SI模擬時,提示can’t open xx/xx/xx/cycle.msm是怎麼回事?

答:肯定是.brd檔案的路徑或檔名本身有空格。

  1. SI模擬時,提示“part with invalid parameter values exist in the topology”怎麼解決?

答:可能是TL的velocity引數沒新增上。

  1. Allegro佈線時,等長走線很慢、很卡?

答:肯定是開了constraints manager,關掉即可。

  1. Orcad使用層次原理圖作圖時,對於頂層原理圖中的block跟其所對應的子原理圖中port修改後如何快速同步?

答:當修改了原理圖中的port時,回到頂層原理圖,找到其所對應的block,右鍵選擇synchronize up(向上同步),即可將port更新到block。Synchronize down則剛好相反。

  1. Constraints Manager裡等長佈線時,Relative Propagation Delay裡沒有顯示走線長度及誤差資訊?

答:可以試試開啟Online DRC,並且Update DRC.

  1. 如何檢視Packetage使用了哪幾個pad?

答:在allegro裡找到Tools->Quick Reports->PadStack Usage Report,在裡面搜尋即可。

  1. orcad/pspice安裝報runtime error r6034錯誤或缺少.dll檔案的解決方法  

答: Microsoft Visual C++ Runtime library
Runtime Error!
Program :D:\Cadence\SPB_15.7\tools\capture\capture.exe
R6034
An application has made an attempt to load the C runtime library incorrectly.
Please ccontact the application's support team for more information!

解決方法:

1.在"我的電腦"上右鍵,選擇屬性,然後選擇“高階”,再點選進入“環境變數”

2.在"系統變數"中找到"PATH"項,我的PATH鍵值如下:

原來的:

E:\MentorGraphics\9.3PADS\SDD_HOME\common\win32\bin;E:\MentorGraphics\9.3PADS\SDD_HOME\common\win32\lib;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%QUARTUS_ROOTDIR%\bin;e:\MENTOR~1\LICENS~1;%MGC_HOME%/bin;%MGC_HOME%/lib;%MGC_HOMEBS%\bin;%MGC_HOMEBS%\lib;%CDSROOT%\tools\bin;%CDSROOT%\tools\libutil\bin;%CDSROOT%\tools\fet\bin;%CDSROOT%\tools\pcb\bin;%CDSROOT%\tools\specctra\bin;%CDSROOT%\tools\PSpice;%CDSROOT%\tools\PSpice\Library;%CDSROOT%\tools\Capture;%CDSROOT%\OpenAccess\bin\win32\opt

修改後的:

%CDSROOT%\tools\bin;%CDSROOT%\tools\libutil\bin;%CDSROOT%\tools\fet\bin;%CDSROOT%\tools\pcb\bin;%CDSROOT%\tools\specctra\bin;%CDSROOT%\tools\PSpice;%CDSROOT%\tools\PSpice\Library;%CDSROOT%\tools\Capture;%CDSROOT%\OpenAccess\bin\win32\opt;E:\MentorGraphics\9.3PADS\SDD_HOME\common\win32\bin;E:\MentorGraphics\9.3PADS\SDD_HOME\common\win32\lib;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%QUARTUS_ROOTDIR%\bin;e:\MENTOR~1\LICENS~1;%MGC_HOME%/bin;%MGC_HOME%/lib;%MGC_HOMEBS%\bin;%MGC_HOMEBS%\lib

也就是把所有cadence的變數全部放到前面就行了。

  1. orCAD裡面怎樣批量修改器件的屬性?

答:在project頁面裡選中”xxx.dsn”,右鍵選擇Edit Object Properties,進去後再右鍵選擇pivot可切換列表佈局。

  1. LP Wizard做PCB庫的時候為什麼做出來的庫沒有焊盤的?

答:肯定是沒設定allegro裡Pad的路徑了,導致LP Wizard用skill呼叫allegro時找不到焊盤。

  1. 做PCB庫時,一般需要在哪些層做處理?

答:

無電氣層外框     (Packetage Geometry->Place_Bound_Top)

器件高度         (Setup->Areas->Package Height)

裝配層外框       (Packetage Geometry->Assembly_top)

元件絲印層外框   (Packetage Geometry->Silkscreen_top)

參考編號在絲印層(Ref Des->Silkscreen_top)和裝配層(Ref Des->Assembly_top)

元器件型別       (Device Type->Assembly_Top)可選

  1. 做PCB庫時,如果修改了焊盤,那怎樣將封裝庫裡焊盤更新到最新狀態?

答:開啟.dra,Tools->Padstack->Refresh即可。

  1. 快速切換act層跟alt層?

答:在env裡設定快捷鍵新增以下文字即可用F2鍵快速切換了。

alias F2 pop swap

  1. 用Allegro SI模擬的時候,DDR3跑的是800MHz,所以我CLK設的是400MHz,您所在Stimulus Edit中的Switch At選BOTH,這樣跑出來的才是正確的。開啟switch at的方法是:在Stimulus State欄中選Custom選項,Stimulus Type裡面選擇SYNC,在下面的Stimulus Editing欄就可以看到Switch At選項。
  2. 當使用層次式設計時,匯出物料清單要選中use occurrences(preferred) ,而不是use instances(使用當前屬性)。否則可能出現器件編號不對的狀況。
  3. 當back annotation反標失敗的時候,可再重新對整個design來一次annotation,甚至是先復位所有編號,再無條件編號,平鋪式選instances跟occurrences沒關係,層次式必須選擇occurrences。然後brd匯出logic,orcad再反標一次即可。
  4. 鋪靜態銅完成後最好fix下,否則split planes時可能會導致之前的覆銅丟失。
  5. Allegro老是提示dynamic shapes裡有out of date shapes怎麼辦?

答:肯定是用畫anti etch線的方法分割電源層,但分割得太碎,導致一些外面的dummy net的shapes被自動刪掉而留下一些boundaries,沒分割一次,boundary就增多,所以可以看到out of date shapes會增多。這時單純刪除shape是不行的,要在color/visibility裡將bound.這一欄顯示才行。

  1. 不小心將所有覆銅刪掉後,導致之前打的接到低上的過孔全都變成dummy net了,有沒有辦法可以批量修改這些過孔的網路接到地呢?

答:

  1. 先鋪上GND屬性的dynamic copper;
  2. 選中所有過孔,然後移動到板外面,不要選中rip up,最好用ix 命令,方便待會兒移回到原來的位置;
  3. 然後再用ix命令移回到原來的位置,此時剛才的無網路連線屬性的過孔將會自動打上網路屬性。