EDA是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在20世紀(jì)60年代中期從計算機輔助設(shè)計(CAD)、計算機輔助制造(CAM)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發(fā)展而來的。
1、簡介
20世紀(jì)90年代,國際上電子和計算機技術(shù)較為先進的國家,一直在積極探索新的電子電路設(shè)計方法,并在設(shè)計方法、工具等方面進行了徹底的變革,取得了巨大成功。在電子技術(shù)設(shè)計領(lǐng)域,可編程邏輯器件(如CPLD、FPGA)的應(yīng)用,已得到廣泛的普及,這些器件為數(shù)字系統(tǒng)的設(shè)計帶來了極大的靈活性。這些器件可以通過軟件編程而對其硬件結(jié)構(gòu)和工作方式進行重構(gòu),從而使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷。這一切極大地改變了傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計方法、設(shè)計過程和設(shè)計觀念,促進了EDA技術(shù)的迅速發(fā)展。
EDA技術(shù)就是以計算機為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可操作性,減輕了設(shè)計者的勞動強度。
2、歷史與發(fā)展
在電子設(shè)計自動化(英語:Electronic design automation,縮寫:EDA)出現(xiàn)之前,設(shè)計人員必須手工完成集成電路的設(shè)計、布線等工作,這是因為當(dāng)時所謂集成電路的復(fù)雜程度遠(yuǎn)不及現(xiàn)在。工業(yè)界開始使用幾何學(xué)方法來制造用于電路光繪(photoplotter)的膠帶。到了1970年代中期,開發(fā)人應(yīng)嘗試將整個設(shè)計過程自動化,而不僅僅滿足于自動完成掩膜草圖。第一個電路布線、布局工具研發(fā)成功。設(shè)計自動化會議(Design Automation Conference)在這一時期被創(chuàng)立,旨在促進電子設(shè)計自動化的發(fā)展。
電子設(shè)計自動化發(fā)展的下一個重要階段以卡弗爾·米德(Carver Mead)和琳·康維于1980年發(fā)表的論文《超大規(guī)模集成電路系統(tǒng)導(dǎo)論》(Introduction to VLSI Systems)為標(biāo)志。這一篇具有重大意義的論文提出了通過編程語言來進行芯片設(shè)計的新思想。如果這一想法得到實現(xiàn),芯片設(shè)計的復(fù)雜程度可以得到顯著提升。這主要得益于用來進行集成電路邏輯仿真、功能驗證的工具的性能得到相當(dāng)?shù)母纳?。隨著計算機仿真技術(shù)的發(fā)展,設(shè)計項目可以在構(gòu)建實際硬件電路之前進行仿真,芯片布線布局對人工設(shè)計的要求降低,而且軟件錯誤率不斷降低。直至今日,盡管所用的語言和工具仍然不斷在發(fā)展,但是通過編程語言來設(shè)計、驗證電路預(yù)期行為,利用工具軟件綜合得到低抽象級物理設(shè)計的這種途徑,仍然是數(shù)字集成電路設(shè)計的基礎(chǔ)。
從1981年開始,電子設(shè)計自動化逐漸開始商業(yè)化。1984年的設(shè)計自動化會議(Design Automation Conference)上還舉辦了第一個以電子設(shè)計自動化為主題的銷售展覽。Gateway設(shè)計自動化在1986年推出了一種硬件描述語言Verilog,這種語言在現(xiàn)在是最流行的高級抽象設(shè)計語言。1987年,在美國國防部的資助下,另一種硬件描述語言VHDL被創(chuàng)造出來?,F(xiàn)代的電子設(shè)計自動化設(shè)計工具可以識別、讀取不同類型的硬件描述。根據(jù)這些語言規(guī)范產(chǎn)生的各種仿真系統(tǒng)迅速被推出,使得設(shè)計人員可對設(shè)計的芯片進行直接仿真。后來,技術(shù)的發(fā)展更側(cè)重于邏輯綜合。
目前的數(shù)字集成電路的設(shè)計都比較模塊化(參見集成電路設(shè)計、設(shè)計收斂(Design closure)和設(shè)計流(Design flow (EDA)))。半導(dǎo)體器件制造工藝需要標(biāo)準(zhǔn)化的設(shè)計描述,高抽象級的描述將被編譯為信息單元(cell)的形式。設(shè)計人員在進行邏輯設(shè)計時尚無需考慮信息單元的具體硬件工藝。利用特定的集成電路制造工藝來實現(xiàn)硬件電路,信息單元就會實施預(yù)定義的邏輯或其他電子功能。半導(dǎo)體硬件廠商大多會為它們制造的元件提供“元件庫”,并提供相應(yīng)的標(biāo)準(zhǔn)化仿真模型。相比數(shù)字的電子設(shè)計自動化工具,模擬系統(tǒng)的電子設(shè)計自動化工具大多并非模塊化的,這是因為模擬電路的功能更加復(fù)雜,而且不同部分的相互影響較強,而且作用規(guī)律復(fù)雜,電子元件大多沒有那么理想。Verilog AMS就是一種用于模擬電子設(shè)計的硬件描述語言。此文,設(shè)計人員可以使用硬件驗證語言來完成項目的驗證工作目前最新的發(fā)展趨勢是將集描述語言、驗證語言集成為一體,典型的例子有SystemVerilog。
隨著集成電路規(guī)模的擴大、半導(dǎo)體技術(shù)的發(fā)展,電子設(shè)計自動化的重要性急劇增加。這些工具的使用者包括半導(dǎo)體器件制造中心的硬件技術(shù)人員,他們的工作是操作半導(dǎo)體器件制造設(shè)備并管理整個工作車間。一些以設(shè)計為主要業(yè)務(wù)的公司,也會使用電子設(shè)計自動化軟件來評估制造部門是否能夠適應(yīng)新的設(shè)計任務(wù)。電子設(shè)計自動化工具還被用來將設(shè)計的功能導(dǎo)入到類似現(xiàn)場可編程邏輯門陣列的半定制可編程邏輯器件,或者生產(chǎn)全定制的專用集成電路。
概念
EDA技術(shù)的概念
EDA技術(shù)是指以計算機為工作平臺,融合了應(yīng)用電子技術(shù)、計算機技術(shù)、信息處理及智能化技術(shù)的最新成果,進行電子產(chǎn)品的自動設(shè)計。
利用EDA工具,電子設(shè)計師可以從概念、算法、協(xié)議等開始設(shè)計電子系統(tǒng),大量工作可以通過計算機完成,并可以將電子產(chǎn)品從電路設(shè)計、性能分析到設(shè)計出IC版圖或PCB版圖的整個過程的計算機上自動處理完成。
應(yīng)用
現(xiàn)在對EDA的概念或范疇用得很寬。包括在機械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個領(lǐng)域,都有EDA的應(yīng)用。目前EDA技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門廣泛使用。例如在飛機制造過程中,從設(shè)計、性能測試及特性分析直到飛行模擬,都可能涉及到EDA技術(shù)。本文所指的EDA技術(shù),主要針對電子電路設(shè)計、PCB設(shè)計和IC設(shè)計。
EDA設(shè)計可分為系統(tǒng)級、電路級和物理實現(xiàn)級。
3、設(shè)計方法
方法
(1) 前端設(shè)計(系統(tǒng)建模RTL 級描述)后端設(shè)計(FPGAASIC)系統(tǒng)建模。
(2)IP復(fù)用。
(3) 前端設(shè)計。
(4) 系統(tǒng)描述:建立系統(tǒng)的數(shù)學(xué)模型。
(5) 功能描述:描述系統(tǒng)的行為或各子模塊之間的數(shù)據(jù)流圖。
(6)邏輯設(shè)計:將系統(tǒng)功能結(jié)構(gòu)化,通常以文本、原理圖、邏輯圖、布爾表達式來表示設(shè)計結(jié)果。
(7) 仿真:包括功能仿真和時序仿真,主要驗證系統(tǒng)功能的正確性及時序特性。
4、設(shè)計技巧
?。?)密碼鎖輸入電路KEYB 0ARD.VHD中對各種分頻信號/信號序列的設(shè)計有獨到之處。該設(shè)計中,利用一個自由計數(shù)器來產(chǎn)生各種需要的頻率,也就是先建立一個N位計數(shù)器,N的大小根據(jù)電路的需求決定。N的值越大,電路可以除頻的次數(shù)就越多,這樣就可以獲得更大的頻率變化,以便提供多種不同頻率的時鐘信號。若輸入時鐘為CLK,N位計數(shù)器的輸出為Q[N-1,0],則Q(0)為CLK的2分頻脈沖信號,Q(1)為CLK的4分頻脈沖信號,Q(2)為CLK的6分頻脈沖信號,……Q(N-1)為CLK的2N分頻脈沖信號;Q(5 DOWNT04)取得的是一個脈沖波形序列,其值是依00、01、10、11、00、01周期性變化的,其變化頻率為CLK的25分頻,也就是32分頻。我們利用以上規(guī)律即可得到各種我們所需要頻率的信號或信號序列。
?。?)鍵盤輸入去抖電路的設(shè)計程序DEBOUNCING.VHD在實際系統(tǒng)的開發(fā)中有較好的參考價值。
?。?)密碼鎖控制電路CTRL,VHD中對于數(shù)據(jù)的更新及移位方法比較好。程序中使用語句“ACC <=ACC(11 DOWNT0 0)&DATA_N”非常簡潔地同時實現(xiàn)了ACC中的低4位用DATA_N進行更新,而高12位用ACC中的原來的低12位左移而來的處理。
?。?)在密碼鎖輸入電路等模塊的程序的設(shè)計和仿真中,為了便于觀察一些中間結(jié)果,在程序中增加了一些觀測輸出點。這一設(shè)計技巧,對于較大的程序或多進程程序的設(shè)計非常重要。同時在仿真時,為了便于觀測全局結(jié)果,降低了分頻常數(shù)。同理,在進行程序仿真時,對于程序中數(shù)目較大的分頻/計數(shù)/計時常數(shù)的修改是非常必要的。
內(nèi)容來自百科網(wǎng)