1-1第一章ImportingLogic本章的主要內容介紹Allegro如何載入Netlist,進而認識新式轉法和舊式轉法有何不同及優缺點的分析,透過本章學習可以對Allegro和Capture之間的互動關係,同時也能體驗出Allegro和Capture同步變更屬性等強大功能。本章由A~F共六節.A.基本概念Netlist是連接線路圖和AllegroLayout圖檔的橋樑。在這裏所介紹的Netlist資料的轉入動作只是針對由Capture(線路圖部分)產生的Netlist轉入Allegro(Layout部分)。1.在OrCADCapture中設計好線路圖。2.然後由OrCADCapture產生Netlist(annotate是在進行線路圖根據第五步產生的資料進行編改)。3.把產生的Netlist轉入Allegro(layout工作系統)。4.在Allegro中進行PCB的layout。5.把在Allegro中產生的backannotate(Logic)轉出(在實際layout時可能對原有的Netlist有改動過),並轉入OrCADCapture裏進行回編。1-2Netin的兩種常用的方式:第一種(Other):在Capture裏輸出netlist時在主選單中選取Tools下拉式功能表中的CreateNetlist,然後,選取Other頁面,再選Allegro.dll的方式;Allegro中轉入的時候選Other(本方式簡稱舊轉法)。第二種(Cadence):在Capture裏輸出netlist時選Allegro的方式;在AllegroPCB中轉入Netlist的時候選取選Capture(本方式簡稱新轉法)。1-3B.ImportLogic–Other(舊轉法)舊轉法相對於新轉法的優缺點比較如下:・優點:在Capture中定義可以相對簡單・缺點:導入netlist和回編線路圖要備齊相關檔案,導入時需要Devicefile,回編時需要提供Swapfile・ExportNetlist(舊轉法)在Capture裏輸出netlist時選Other1.滑鼠點選要產生Netlist的線路圖的圖檔。2.點選功能表中的ToolCreateNetlist後就進入CreateNetlist的對話方塊了。1-43.在對話方塊中選擇Other的產生方式。在用這中方法(other)導netlist時要注意的是:在OrCAD9.2以後的版本中的ALLEGRO.DLL已經被取消了,所以在用這種方法轉出netlist時必須將OrCAD9.2以前版本中的ALLEGRO.DLL複製過來並至於您所使用Capture軟體安裝路徑下的NETforms資料夾裏。例如:C:\cadence\SPB16.6\capture\NETforms。當使用!{PCBFootprint}方式所產生之Netlist中,會帶有三種資料,其格式為!Device!【Value】;Reference其中!{PCBFootprint}的{}括弧符號中的資料是變數,輸出netlist會把該元件的相應值帶出。在填寫PCBFootprint時一定要在”{“前面一定要加一個驚嘆號”!“。1-5原因:Allegro載入netlist的欄位格式Allegro載入netlist需要的昀基本欄位元是Device和Reference,其中PCBFootprint會在Device中包含所以也可以省略,上面的!{PCBFootprint}中的PCBFootprint就是Device,因為通常Device的名字會和PCBFootprint一樣,而一般用戶會在Capture中定義PCBFootprint而省略Device。添加“!”後,系統就認為!前面還有內容,而把Device當第二項,如下面效果。(其中【】中的內容是可以省略)【PCBFootprint】!Device!【Value】!【Tolerance】;Reference@!Device!【Value】;Reference因為在用第二種的方法(舊轉法)轉Netlist時,需要Device這個檔。一般我們的PCBFootprint,和Device是使用相同名稱,故Pcbfootprint,Device只要留一個即可。所以通常我們會將可被忽略的PCBFootprint前加個!,的用意是代表,前面的【PCBFootprint】是被省略的。其輸出格式則簡化為!Device!【Value】!Reference,輸出內容如下:!Device!【Value】!Reference,1-6Note:Device的介紹Device是包括PSM,Value和定義腳位的對應PACKAGE:這就是PSM的定義。CLASS:定義它的類型。PINCOUNT:零件的腳數。PACKAGEPROPTOL:誤差值。PACKAGEPROPVALUE:數值我們還可以在Device中加入定義可以Swap的參數,請參考第二章內容DeviceFile一定要有的項目是:1.PACKAGE2.PINCOUNT3.END有了這三項就是基本的DeviceFile了,其他的項目可以根據零件而再加以詳細定義。1-7・ImportNetlistinAllegro(舊轉法)如果Netlist是從Capture中Other的方法轉出的Netlist的話(舊轉法),在Allegro進行Netin時也要使用other的規範轉入。1.執行Allegro這個程式。2.打開一塊準備要轉入Netlist的新PCB。(FileOpen)3.點選FileImportLogic(進入Netlist轉入的準備介面),出現如下對話視窗。4.選擇Other頁面進行參數設定。5.在Importnetlist的欄位中選好netlist的文件。(可以透過點選進行檔案流覽和選取。)6.按ImportOther的即可轉入您所選取的Netlist檔按。Note:在netlist轉入新板時下列選項是不用勾選的(第一次Netlist轉入),在netlist轉入已有netlist的板子(第一次以後Netlist轉入)時您可以在這裏一些您想要的參數設定。・Syntaxcheckonly:只檢查Netlist的語法,而不進行Netlist的轉入。・Supersedealllogicaldata:取代舊Netlist。・Appenddevicefilelog:把新DeviceLog的資料直接加入舊的Log・AllowetchremovalduringEco:再次netlist時,是否允許把原來沒用的銅箔資料(ETCH)刪除。・IgnoreFIXEDproperty:當Property有被設定為Fixed時,是否可以直接忽略,打勾表示fixed屬性可以被忽略。・Placechangedcomponent:是針對第二次轉入netlist時,零件放置參數設定。-Always:全部放置在原先的位置上。-Never:把原來放置的零件全部拿掉,轉入netlist後重新再擺放一次零件。-Ifsamesymbol:當新舊零件包裝相同時可以做替換,而且位置相同。1-8C.ImportLogic–Cadence(新轉法)・ExportNetlist在Capture裏輸出netlist時選Allegro的方式1.用滑鼠點選要產生Netlist的線路圖的圖檔。2.點選功能表中的ToolCreateNetlist後就進入CreateNetlist的對話方塊了。CCaaddeenncceeAAlllleeggrrooOOrrccaaddCCaappttuurreeOOrrccaaddCCaappttuurreeCCIISSSScchheemmaattiiccPPCCBBllaayyoouuttCreatenetlist(CaptureAllegro)ImportLogic(CadenceCapture).brdCreateupdateAllegroboardNNeettlliissttffiilleeddiirreeccttoorryyPst*.datfilesBackAnnotate(Allegro)新轉法相對於舊轉法的優缺點比較如下:・優點:Capture可以順利跟Allegro做雙向的溝通・缺點:有條件規範Capture與Allegro的Lib1-93.在對話方塊中選擇PCBEditor的產生方式。就看到了下面的對話方塊了。這個對話方塊分為兩部分。第一部分是CreateAllegroNetlist:只是產生netlist的檔。(在第一次導netlist時要先在Setup裏進行一個路徑的設定,以便順利抓取allegro.cfg這個檔。)Allegro.cfg可設定哪些屬性是否傳遞1-10第二部分是CreateorUpdateAllegroBoard:產生netlist的檔並開啟Allegro將Netlist載入Allegro。(netlist要完整無誤)Note:對話方塊中參數設定的介紹。・AllowetchremovalduringEco:再次netin時,是否允許把原來沒用的ETCH刪掉。・PlacechangedComponent:是針對第二次轉入netlist時,零件放置參數設定。-Always:全部放置在原先的位置上。-Ifsamesymbol:當新舊零件包裝相同時可以做替換,而且位置相同。-Never:把原來放置的零件全部拿掉,轉入netlist後重新擺放零件。・BoardLaunchingOption:在這裏選擇在那種PCBlayout工作介面來開啟PCB。(選擇None的話就只是產生netlist,而不會直接進入layout軟體的工作介面。一般是選取AllegroPCBEditor,在Allegro的介面打開)。・ImportNetlistinAllegro1.執行Allegro這個程式。2.打開一塊準備要轉入Netlist的新PCB。(FileOpen)3.點選FileImportLogic(進入Netlist轉入的準備介面。)1-114.選擇Cadencenetlist參數設定介面。5.在Importdirectory的欄位中選好netlist的文件。(可以透過點選進行瀏覽和選擇。)6.執行ImportCadence的按鍵即可進行Netlist的轉入動作。Note:・Importlogictype:其中,DesignentryHDL、DesignentryCIS、SCALD是三種畫線路圖的軟體,我們對其選擇是看我們的netlistfile是從那種軟體轉出的,若是OrCAD就選擇DesignentryCIS。・Placechangedcomponent:是針對第二次轉入netlist時,零件放置參數設定。-Always:全部放置在原先的位置上。-Never:把原來放置的零件全部拿掉,netlist後重新再擺放一次零件。-Ifsamesymbol:當新舊零件包裝相同時可以做替換,而且位置相同。・HDLConstraintManagerEnabledflowoptions:在這裏設定要怎樣把在線路圖中設定的Constraint帶入Allegro。(只針對Cadence自帶的HDL線路圖設計軟體。)-ImportChangesOnly:系統會保留板子中現有的constraints,然後再帶入在線路圖中被修改的constraints。-Overwritecurrentconstraints:系統會刪除板子中現有的constraints,然後再帶入線路圖中所有的constraints。・AllowetchremovalduringECO:再次netlist轉入時,是否允許把原來沒用的ETCH刪掉。・IgnoreFIXEDproperty:當有Fixed這個Property,是否可以直接Pass,打勾表示fixed可以被忽略。・Createuser-definedproperties:勾選表示允許帶入使用者自訂之properties。・CreatePCBXMLf