般情況下 , 我們在安裝了 Cadence 軟件之后 , 都會碰到在大鼠標情況下的拖影問題 , 這往往是由于顯卡的兼容性不夠造成的 , 通常的解決辦法是關閉 Opengl, 如果我們關閉 OPENGL 功能 , 可以使大鼠標不出現拖影 , 但是在關閉了 opengl 的情況下面 , 我們的 3D 和 PCB Flip 功能也無法正常使用 , 所以會給我們造成很多不必要的麻煩 !
鼠標拖影問題見下圖.
了解決既能消除拖影,又能使 3D 和 Flip 功能,我們需要在環境變量中加入下面一行,這樣,即便我們使用大鼠標模式,也不會出現那種拖影問題!
set infinite_cursor_bug_nt
具體操作方法如下:
在D:\Cadence\SPB_16.6\share\pcb\text(D盤是cadence的安裝目錄)下打開env文件,用寫字板打開,不要使用記事本打開。然后在這個環境變量里加入(set infinite_cursor_bug_nt),保存并關閉,此時已經解決了拖影問題。
人類工具發明的歷史,就是自身解放的歷史。面對享譽全球的Cadence公司的Allegro SPB PCB軟件,你不得不發出這樣的感慨。當人類對電子類消費產品的需求進一步朝高集成度、高速度、超小型化發展時,芯片的工作頻率以摩爾定律增加,而其尺寸反而越來越小,這勢必要求更高密度、更高速度的PCB板。而高密度、高速度的布線則帶來了諸如反射、串繞、EMI等一系列的信號完整性(SI)問題,如果不抑制這些高速問題則可能使原理無誤的電路板無法正常工作或達不到預定的工作能力。于是,信號完整性分析與設計成為了最重要的高速PCB板級和系統級分析與設計手段,在硬件電路設計中扮演著越來越重要的作用,它是整個系統是否成功的最后一個關鍵。國外對PCB的SI較早就十分關注,偉大的美國工程師以它們敏捷的思維、深厚的數學功底、崇高的敬業精神將似乎無法把握的紛繁蕪雜的SI問題抽象成系統的數學公式,使之成為一套完整的理論,并貢獻了三本偉大的書,它們是Howard W.Johnson的《High-Speed Digital Design–A Handbook of Black Magic》、Stephen H.Hall的《High-Speed Digital System Design》和BrianYang的《Digital Signal Integrity》,這三本被業界譽為經典的PCB圣經必然和它們的作者一樣,在人類的IT發展史上留下光輝一筆。而Cadence的SPB系列軟件則建立在這些完整的理論體系上,它細致嚴謹的原理圖設計工具、靈活自如的PCB布線器、完整可靠的SI仿真分析功能將PCB工程師從繁重的勞動中解放了出來,與同類軟件(protel、powerpcb等)相比,它絕對能以更短的開發周期完成更高質量的PCB設計。
當我使用Cadence公司的SPB軟件,一次次被它散射出的智慧光芒所折服,正如在研讀《High-Speed Digital Design–A Handbook of Black Magic》時被作者深邃的知識所折服一樣。SPB軟件完整而龐大,蘊含著一套完整的設計理論,學習和使用它無疑是一個相當艱難的過程,但是技術人員天性對技術的崇拜和渴求使得這種學習過程也成為一種享受,于是乎,痛并快樂著。可嘆我偉大的祖國,何時才能在科技領域劍指乾坤,傲視群雄?可嘆我智慧的中國人,充滿科研的智慧,卻沒有創造出智慧的科研!
2.原理圖
傳說中的Capture,Cadence收購自orCAD,作為本次培訓講授的原理圖設計軟件。為什么選擇培訓它而不選擇Cadence自身研發的Design Entry HDL,Cadence是聰明的。Capture本身擁有龐大的用戶群體,其設計思路和低端的protel等又十分相似,學員能更快上手。與protel相比,Capture的優勢是明顯的,它具備如下特點:
1) 快速的器件建庫能力,嚴謹的器件參數設置
如圖1所示,在建立part時,需要指定Part Reference、PCB Footprint和指定其part分成幾個部分(是同構還是異構)。也需指定其類型(即class,如圖2),類型分為IO、IC和分離元件,這里的class設置會映射到PCB仿真時指定不同類型的model。
part的pin也需指定形狀(shape)和電氣類型,如圖3所示。
反觀protel,它沒有這樣嚴謹的參數設置,所以protel繪制的工程轉化到Cadence工具中后,器件類型全為IC。
在用Capture建立part時,可以一次添加一組pin,點擊
即可。
在國際互聯網上,可以下載到許多器件的庫文件。一些大型的企業則分門別類地將器件庫存放在特定的服務器上,由專人管理。
2)繪圖靈活方便
當part已經建立并放置在某在原理圖后,若需修改該part,無需修改庫文件本身,只需要在原理圖的該器件上點擊右鍵選擇Edit Part(如圖4)。
在Capture中,可以直接copy某張原理圖到本工程的其它位置或者其它工程,器件編號的排序會在器件放入時自動增加。
Capture是與Cadence的PCB布線工具緊密聯系的,可以在原理圖中指定某一器件在PCB圖里被選中,也可以在PCB中指定某一器件在原理圖中被選中。另外,還可以在PCB中對器件按照PCB板上的擺放位置重新排序后將序號反標回原理圖中。
3.PCB
Allegro,令人驚奇的布線器,本次培訓講授的PCB設計軟件,幾乎可以用“神速”來形容。Cadence公司的資深工程師孫皖平曾經在一次吃飯時不經意間提起用Allegro兩天內可以布完一個PCB板,我抱以不信任,而這種粗淺的懷疑很快就被事實擊地粉碎。當我這個PCB水貨用不到一周時間布完了用protel四十天布完的PCB后,我知道兩天布完一個普通的PCB板絕不是神話。如果是神話,那么,Cadence創造了神話。而神話,總是被創造。今日,新興的信息技術滲透入世界的每個角落,在百年前的人類看來,這何嘗不是一個神話的世界?當神話般的科技被一次次創造的時候,又有更多的科技神話等待著人類去創造,中國人,需要有勇于創造神話的氣慨。
1) 總線布線
在Allegro,選擇一組網絡為總線,則可以一次布一組線,如圖6所示。
2) 自動推擠
有一件事令天下PCB工程師煩惱,那就是先前的線布好后,需要布后面的線時發現先前的線與當前的走線靠得太近,當前的走線無法通過DRC檢查。這時,不得不刪除先前的線,把先前的線和當前的線布密一些,都擠下。有了Allegro,再也不需要費勁的刪除和重繪。在Allegro中直接布當前走線的同時,先前的線會自動擠開,如圖7所示。
3) 消耗很小的系統資源
protel的慢是人所共知的,因為其消耗太多的系統資源,在protel的布線過程中,時時蘊藏著死機的危險。面對Allegro這個功能如此強大的布線器,必會以為其布線過程反應很慢。恰恰相反,用Allegro布線基本不需要停滯和等待。Cadence里一群可愛的美國鬼子把圖形學和數據庫技術玩到了巔峰水平。 4) 規則驅動的布線
規則驅動的布線,即布線在一組規則的監控之下,規規矩矩地走線。高速PCB設計規則通常分兩種:物理規則和電氣規則。所謂物理規則是指設計工程師指定基于物理尺寸的某些設計規則,比如線寬為4Mil,線與線之間的間距為4Mil,平行走線長度為4Mil等。而電氣規則是指有關電特性或者電性能方面的設計規則,如布線延時控制在1ns到2ns之間,某一個PCB線上的串擾總量小于70mV等等。
低端的布線器幾乎只能基于物理規則布線,也就是說這些布線器只能夠自動滿足設計工程師指定的物理尺寸方面的要求,而并不能夠直接受高速電氣規則所驅動。Allegro則可以支持電氣規則驅動布線,電氣規則驅動的高速布線器對于確保高速設計信號完整性來說非常重要,設計工程師總是最先得到電氣規則而且設計規范也是電氣規則,換句話說我們的設計最終必須滿足的是電氣規則而不是物理規則,最終的物理設計實現滿足設計的電氣規則要求才是最本質的。
4.SI
通常認為如果數字邏輯電路的頻率達到或者超過45MHZ~50MHZ,而且工作在這個頻率之上的
電路已經占到了整個電子系統一定的份量(比如說1/3),就稱為高速電路。
實際上,信號邊沿的諧波頻率比信號本身的頻率高,是信號快速變化的上升沿與下降沿(或稱信號的跳變)引發了信號傳輸的非預期結果。因此,通常約定如果線傳播延時大于1/2數字信號驅動端的上升時間,則認為此類信號是高速信號并產生傳輸線效應。
信號的傳遞發生在信號狀態改變的瞬間,如上升或下降時間。信號從驅動端到接收端經過一段固定的時間,如果傳輸時間小于1/2的上升或下降時間,那么來自接收端的反射信號將在信號改變狀態之前到達驅動端。反之,反射信號將在信號改變狀態之后到達驅動端。如果反射信號很強,疊加的波形就有可能會改變邏輯狀態。
由高速信號所導致的SI問題主要有: 傳輸線效應
PCB板上的走線可等效為圖8所示的RLC電路的多次連接。串聯電阻的典型值為0.25-0.55 ohms/foot。將寄生電阻、電容和電感加到實際的PCB連線中之后,連線上的最終阻抗稱為特征阻抗Zo。線徑越寬,距電源/地越近,或隔離層的介電常數越高,特征阻抗就越小。如果傳輸線和接收端的阻抗不匹配,那么輸出的電流信號和信號最終的穩定狀態將不同,這就引起信號在接收端產生反射,這個反射信號將傳回信號發射端并再次反射回來。隨著能量的減弱反射信號的幅度將減小,直到信號的電壓和電流達到穩定。這種效應被稱為振蕩,信號的振蕩在信號的上升沿和下降沿經??梢钥吹?。
串擾
信號之間由于電磁場的相互耦合而產生的不期望的噪聲電壓信號稱為信號串擾。串擾超出一定的值將可能引發電路誤動作從而導致系統無法正常工作。信號線距離地線越近,線間距越大,產生的串擾信號越小。異步信號和時鐘信號更容易產生串擾。因此解決串擾的方法是移開發生串擾的信號或屏蔽被嚴重干擾的信號。
電磁干擾
EMI(Electro-Magnetic Interference)即電磁干擾,產生的問題包含過量的電磁輻射及對電磁輻射的敏感性兩方面。EMI表現為當數字系統加電運行時,會對周圍環境輻射電磁波,從而干擾周圍環境中電子設備的正常工作。它產生的主要原因是電路工作頻率太高以及布局布線不合理。PCB是產生EMI的源頭,所以PCB設計直接關系到電子產品的電磁兼容性(EMC)。如果在高速PCB設計中對EMC/EMI予以重視,將有助縮短產品研發周期加快產品上市時間。EMC的三要素為輻射源,傳播途徑和受害體。傳播途徑分為空間輻射傳播和電纜傳導。所以要抑制諧波,首先看看它傳播的途徑。電源去耦是解決傳導方式傳播,此外,必要的匹配和屏蔽也是需要的。業界資深工程師李寶龍認為,濾波是解決EMC通過傳導途徑輻射的一個好辦法,除此之外,還可以從干擾源和受害體方面入手考慮。干擾源方面,如果存在反射或Overshoot、undershoot或ringing,可以考慮匹配;另外盡量避免做50%占空比的信號,因為這種信號沒有偶次諧波,高頻分量更多。受害體方面,可以考慮包地等措施。
Allegro PCB SI 的設計流程包括如下六個步驟:
1) Pre-Placement
2) Solution Space Analysis
3) Constraint-Driven Floorplanning
4) Constraint-Driven Routing
5) Post-Route DRC
6) Post-Route Analysis Pre-Placement
如圖9所示先將芯片、接插件等按照設計要求預放置在板上。
Database Setup Advisor
通過Database Setup Advisor可以設置板的層疊方式、DC網絡、芯片和接插件的仿真模型等。第一步是定義板的層疊方式,如圖10所示。板的層疊中需設置各層的材料、厚度、傳輸線的線寬、絕緣材料的介電常數、差分傳輸線的間距,這些因素決定了各層傳輸線的阻抗。整個層疊的目的是各層的阻抗要連續,而阻抗的值需控制到50-75歐姆的范圍內,最好是50歐姆。如果阻抗不連續,則需要進一步修改。
下一步定義DC網絡的電位,如圖11所示。
下一步定義分離器件和接插件,這些器件由系統創建仿真model,如圖12所示
接下來是與仿真關系最緊密的一步,即分配SI仿真模型(如圖13),要指定IC的IBIS model, 上一步定義的電阻、電容、I/O等可以由系統創建其仿真模型。
如果芯片廠商提供的IBIS model不完整,則需利用Cadence提供的Model Integrity進行修正,如圖14所示。
進行下一步的SI審計后結束Database Setup Advisor過程。
Solution Space Analysis/Constraint-Driven Floorplanning/Constraint-Driven Routing
只有完成上述的過程后,我們才可能提取網絡的拓樸,爾后進行仿真反射、串繞和定時等的仿真,圖15是我們利用SigXplorer提取的TMS320C6713數據總線中一部分的拓樸。
布線拓樸的不同對信號完整性是有一定影響的。對于一組總線(地址,數據,命令)驅動多達4、5個設備(FLASH、SDRAM等)的情況,在PCB布線時,是總線依次到達各設備,如先連到SDRAM,再到FLASH……還是總線呈星型分布,即從某處分離,分別連到各設備?布線拓撲對信號完整性的影響,主要反映在各個節點上信號到達時刻不一致,反射信號同樣到達某節點的時刻不一致,所以造成信號質量惡化。一般來講,星型拓撲結構,可以通過控制同樣長的幾個分支,使信號傳輸和反射時延一致,達到比較好的信號質量。在使用拓撲之間,要考慮到信號拓撲節點情況、實際工作原理和布線難度。不同的Buffer,對于信號的反射影響也不一致,所以星型拓撲并不能很好解決上述數據地址總線連接到FLASH和SDRAM的時延,進而無法確保信號的質量;另一方面,高速的信號一般在DSP和SDRAM之間通信,FLASH加載時的速率并不高,所以在高速仿真時只要確保實際高速信號有效工作的節點處的波形,而無需關注FLASH處波形;星型拓撲比較菊花鏈等拓撲來講,布線難度較大,尤其大量數據地址信號都采用星型拓撲時。
我們可以在SigXplorer設置不同的拓樸結構、不同的端接電阻值仿真出信號的波形質量(減緩反射),可以設置不同的平行線長度和間距來仿真獲得串繞值并將串繞限制在一定的范圍內,并由上述仿真結果獲得布線規則,如圖17所示,這些規則會自動用于指導布線。從圖17可以看出,規則的種類較多。
我們發現,整個規則管理的層次結構是跨平臺的,體現在原理圖設計到PCB布線、SI分析的整個過程中(如圖18)。
Post-Route DRC/Post-Route Analysis
在布線結束后,我們可以利用SI依次點擊菜單Analyze > SI/EMI Sim > Probe進行后分析,如圖19,這時候的傳輸線模型是真正的有損傳輸線模型,包括過孔也被賦予其仿真模型,我們仍然可以進行反射、串繞、定時等的分析看布線結果是否真的符合規則。
5.Bug
Cadence的Allegro SPB是一套Bug叢生的軟件。另一套Bug叢生的軟件是著名的“瘟酒吧”――Windows 98,然而它們都是世界上最好的軟件。我們永遠在做1+1的數學題,哪里會有Bug?但終究發現,也許最大的Bug便是沒有Bug。
沒有Bug叢生軟件的民族是悲哀的。