新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 片上系統(tǒng)(SOC)設計與EDA

片上系統(tǒng)(SOC)設計與EDA

作者: 時間:2011-08-22 來源:網(wǎng)絡 收藏

2 Apteq設計系統(tǒng)公司在提供他們的Verilog-A產(chǎn)品時也給用戶一些模型示例。Apteq公司還提供1個有特色的Verilog-A插入件,它可以把OVI兼容的Verilog-A HDL功能塊加入到現(xiàn)存的Spice仿真環(huán)境中。該產(chǎn)品通過1個獨特的接插件的解決方案提供了統(tǒng)一的高性能的模擬HDL接口,使其能與任何一種Spice類型的仿真器相連接,保證了可移植的HDL的編譯,并能正確地評價不同種類的仿真器性能。Verilog-A插入件的工作機制是先把模擬的行為程序通過編譯轉(zhuǎn)化為1種中間的表達,這種表達可以被Spice的硬件描述語言插座(Socket)與其他的Spice部件共同的任務(如實例抽象、參數(shù)設置、加載和評價)用來運行。該插入件可提供諸如模擬行為編碼的查錯、優(yōu)化和解剖。而且如果需要仿真、全芯片的驗證和測試,該Verilog-A插入件還有1個可選的二次編譯模式,可提供高速、本地編碼(native-code)的仿真性能。

3 Transcendent設計技術公司在其產(chǎn)品TransVerSE中提供Verilog-A/AMS的仿真能力。該產(chǎn)品的目的是仿真復雜的電子機械系統(tǒng),它針對一些不同的工業(yè)領域,其中包括汽車工業(yè)、飛機工業(yè)、航天工業(yè)和消費電子工業(yè)。TransVerSE支持Verilog-A、新出現(xiàn)的Verilog-AMS語言、Spice及其模型與子電路,還有用C語言寫的模型。

綜上所述,復雜的設計是一項系統(tǒng)工程,需要組織社會多方面的人才。10多年來,國外通過許多高技術公司與大學研究機構的互相合作和支持逐步達到了目前的水平。由于種種原因我國電子高技術芯片設計領域與國外交流比較少,國內(nèi)同行也很少聯(lián)系,水平相對落后。大學有關專業(yè)也缺少有經(jīng)驗和有能力的教師,這些都是我們與美國等先進國家的差距擴大的原因。近幾年來由于Internet的普及,國外工具的引進,許多大FPGA廠商免費贈送的開發(fā)軟件,國內(nèi)產(chǎn)品升級的需求,從國外逐步轉(zhuǎn)移過來的中小型設計項目,以及年輕的大學畢業(yè)生和研究生們的熱情,使我們有可能在比較短的時間內(nèi)在復雜數(shù)字設計領域趕上去。

四、 數(shù)字的設計——基本工具和方法

熟悉MCU開發(fā)的工程師們都知道,MCU的開發(fā)需要開發(fā)系統(tǒng)。開發(fā)系統(tǒng)通常以PC機為基礎,運用開發(fā)系統(tǒng)廠商提供的軟件和仿真器就可以針對MCU所編寫的匯編進行編譯和調(diào)試,并可以把編譯后的機器代碼下載到樣機系統(tǒng)中運行和調(diào)試。數(shù)字SOC的設計方法與此很相近,所不同的是我們在做仿真時往往用1個MCU的核來代替真正的MCU。MCU可以是運行在某種FPGA上的固核(Firm Core)或某種ASIC工藝的硬核或是用HDL語言描述的可綜合(或不可綜合)的軟核(或虛擬模塊)。調(diào)試運行在MCU上的匯編與傳統(tǒng)的調(diào)試方法沒有實質(zhì)性的差別。主要的差別在于傳統(tǒng)的方法必須把程序代碼加載到樣機系統(tǒng)中,才可以進行硬件和軟件配合的調(diào)試;而數(shù)字SOC的設計環(huán)境可以允許完全在虛擬硬件的環(huán)境下對硬件和軟件的配合進行調(diào)試。因為在這種環(huán)境下各個具體硬件模塊是基于硬件描述語言的,而編譯后的機器代碼是一些二進制磁盤文件,可以通過HDL的系統(tǒng)任務,加載到HDL模塊中的存貯器變量中。調(diào)試的過程可以完全在HDL仿真環(huán)境下進行。如果硬件需要修改,也只要重新編輯或修改個別模塊即可。待調(diào)試基本結束后,可以把整個硬件系統(tǒng)包括MCU的核加載到1個容量較大的FPGA上進行硬件、軟件聯(lián)合調(diào)試,進行實際電路結構的驗證。這樣的驗證通過以后,硬件的結構就可以確定下來。如果需要的批量比較大,就可以考慮投片,余下的投片驗證和成品率的驗證可以由后端集成電路廠家來做。對于MCU嵌入式系統(tǒng)的設計人員來說,要學會SOC的設計方法并不難,只是改變一下仿真環(huán)境和學習HDL語言。在學習HDL語言時,筆者認為先學習Verilog HDL比較好:一是容易入門;二是接受Verilog HDL代碼做后端芯片的集成電路廠家比較多,現(xiàn)成的硬核、固核和軟核比較多。在學習HDL語言時,要注意分清該語言兩種不同的應用:一種是為自動生成電路結構,另一種是為了調(diào)試正在設計的電路結構。目前,能自動生成電路結構的HDL語言子集很小,語法現(xiàn)象非常有限,程序模塊的格式也變化不大,比較好掌握。而為了調(diào)試的HDL語言包括的語法現(xiàn)象很廣,測試模塊的風格也多種多樣。有興趣的讀者如有一定的C語言編程基礎,也有一些硬件基礎知識,可以在1本好書的指導下,通過自學,在2個月內(nèi)學會,可以從簡單逐步過渡到復雜的SOC設計。

五、 介紹1個實用的SOC設計環(huán)境

ALTERA公司最近推出1款SOC開發(fā)工具套件(名為Excalibur Development Kits)。因為性能比較全面,故適用于數(shù)字SOC的開發(fā)。該開發(fā)套件包括SOC開發(fā)所必需的各種工具和資源軟件、可以重構的硬件電路結構驗證平臺和使用說明書??梢允褂玫能浖Y源包括供選用的多種嵌入式處理器核、 ALTERA系列FPGA開發(fā)工具(名為Quartus,可以進行HDL設計的仿真、綜合和布局、布線),還有工業(yè)標準的C/C++編譯器??芍貥嫷挠布脚_可以用來驗證設計是否正確,在表示硬件結構電路的代碼生成后,通過PC機加載,可以重構其電路,通過運行重構的電路來達到驗證的目的。開發(fā)軟件包中可嵌入的CPU核有許多種可供選擇,它們都是高性能的RISC結構CPU,其中最高的為64位結構,運行最高速度可達200 MIPS,適用的應用領域非常廣。其中有1種ALTERA公司自行開發(fā)的CPU核(名為Nios),在ALTERA公司APEX系列的FPGA上實現(xiàn)其電路結構的運行是非常容易的,也不需要付專利費。這種CPU核是1種參數(shù)化的軟核,設計人員可以根據(jù)應用的需要對CPU核本身進行優(yōu)化,還可以增加外圍電路的功能。這些工作無非是編寫一些新的HDL模塊或改寫一些現(xiàn)存的HDL模塊中的參數(shù),再編譯一下即可完成。這種CPU核只占APEX系列 FPGA芯片的 2%的資源。如果需要提高處理速度,可以用多個Nios核來并行處理,這樣的并行系統(tǒng)包括外圍電路完全可以在1塊ALTERA公司的APEX系列的FPGA上實現(xiàn)。所以,筆者認為SOC的設計并非是遙遠不可及的事情。我們可以購買1套這樣的系統(tǒng),先從FPGA的開發(fā)做起,再根據(jù)市場的需求數(shù)量,決定是否移植到ASIC上。由于我們的設計由可綜合風格的HDL模塊來描述,所以移植時也相對比較容易,所需的只是用ASIC綜合工具(如Synposys或Ambit等)做一下綜合,再用有關的外圍模型做一下帶布線延遲的門級結構仿真驗證,如果沒有問題即可交給集成電路廠家做投片試驗。

結束語

希望大家在原有工作的基礎上,盡快掌握利用HDL語言的設計方法,利用相對比較便宜的高層次FPGA開發(fā)工具,把SOC的開發(fā)工作搞起來。爭取在下一個5年中,基礎芯片的設計工作有較大的進步,這樣電子工業(yè)發(fā)展就有了較好的基礎。讓我們?yōu)閷崿F(xiàn)這個共同目標一起努力工作。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉