1 概 述
隨著集成電路工藝技術的發(fā)展和EDA設計水平的迅速提高,基于知識產(chǎn)權IP(Intellectual Property)核進行系統(tǒng)芯片SOC(System on Chip)設計的能力和技術得到了大大提高。利用該技術,可以將整個系統(tǒng)包括微處理器、ASIC、內(nèi)存和外設等集成到一個芯片中。在進行SoC 芯片設計過程中,由于8051系列單片機的廣泛使用和成熟的技術,許多SoC芯片的設計者在選用8位處理器做內(nèi)核時常采用8051。SoC芯片的設計是十分復雜的,不僅要考慮芯片IP核的系統(tǒng)構成、軟硬件協(xié)同設計、不同工藝的綜合等問題,還要考慮在設計過程中,如何實現(xiàn)對芯片的模擬驗證以及設計成功后針對該芯片仿真裝置的實現(xiàn),從而促進所設計系統(tǒng)芯片的迅速推廣。
2 SoC芯片的設計技術
2.1 軟硬件協(xié)同設計流程
SoC芯片是一種以可重用IP核為基礎,以軟硬件協(xié)同設計為主要設計方法的芯片設計技術[1]。參考文獻[2]提出的SoC設計流程如圖1所示。
系統(tǒng)芯片經(jīng)軟硬件劃分后,設計基本分為兩部分:芯片硬件設計和軟件協(xié)同設計。芯片硬件設計包括硬件描述、時序設計、驗證等;軟件協(xié)同設計要考慮指令集、指令編譯系統(tǒng)、開發(fā)集成環(huán)境、模擬仿真設備等。為達到盡快上市的目的,要求這兩方面并行展開,甚至要求在芯片上市之前,相應的開發(fā)裝置和仿真環(huán)境就應該建立起來。對于需要進行程序掩模的芯片,這種要求就更加迫切。
2.2 應用于固網(wǎng)短消息電話的SoC設計
該芯片是根據(jù)中國電信對于固網(wǎng)短消息話機的要求而設計的系統(tǒng)芯片,可以廣泛應用于來電顯示電話(CID:Calling Identify Delivery)和固網(wǎng)短消息電話等。
該系統(tǒng)芯片將CPU和多個模擬功能模塊(CID部分)集成到一個芯片內(nèi),采用8051為CPU核,指令集與標準8051完全兼容;CID部分由FSK調(diào)制解調(diào)器、DTMF(雙音多頻)撥號、CAS(CPE Alerting Signal)信號檢測、振鈴檢測等IP核組成。這是一個數(shù)?;旌喜⒕邆渫暾娫捁δ艿南到y(tǒng)芯片。系統(tǒng)結(jié)構如圖2所示。
設計中,8051核與各功能IP核通過寄存器和數(shù)據(jù)總線實現(xiàn)數(shù)據(jù)交換。
8051內(nèi)部有256字節(jié) RAM,其中后128字節(jié)為特殊功能寄存器。我們在該芯片設計中將CID部分電路所用寄存器(共12個)定義在該區(qū)間內(nèi)。
該芯片工作流程如下:振鈴檢測模塊在檢測到振鈴信號后,置位RING_F寄存器中相應位,產(chǎn)生中斷或經(jīng)CPU輪循檢測;軟件響應該信號后置位FSK_F中FSK使能寄存器,F(xiàn)SK解調(diào)器工作,F(xiàn)SK在接收到數(shù)據(jù)后,置位FSK_F中數(shù)據(jù)準備好寄存器,產(chǎn)生中斷或CPU輪循檢測,軟件通過數(shù)據(jù)總線讀出該數(shù)據(jù);CAS模塊根據(jù)CAS_F中CAS捕獲時間寄存器檢測,收到CAS信號后,置位CAS_F中相應寄存器,產(chǎn)生中斷;DTMF信號產(chǎn)生模塊根據(jù)DTMF_F寄存器內(nèi)容發(fā)出DTMF信號。
3 系統(tǒng)芯片驗證和仿真器設計方案
3.1 系統(tǒng)芯片的驗證問題
系統(tǒng)芯片在硬件設計和軟件設計結(jié)束后,按流程要求進行系統(tǒng)驗證,這就需要構建一個驗證平臺。對于數(shù)字電路來說,采用FPGA基本可以實現(xiàn)對芯片設計的完全驗證;而對于數(shù)?;旌想娐废到y(tǒng)芯片來說,驗證則十分復雜。在本設計中,由于各外圍模擬IP核在市場上均有相應模塊,因此,可以考慮將FPGA和這些模擬芯片有機地組合起來,實現(xiàn)對該系統(tǒng)芯片的驗證。
3.2 仿真器的設計目標
一個8051仿真器系統(tǒng)包括仿真器、編譯器、集成開發(fā)和調(diào)試仿真環(huán)境等。在進行基于8051核設計SoC芯片時,為達到加快研發(fā)速度、縮短上市時間、減少開發(fā)費用等目的,考慮采用市場上成熟的并為眾多用戶所使用的集成開發(fā)環(huán)境和開發(fā)裝置,如KEIL等。
3.3 芯片驗證和仿真器設計方案
在前面描述中可以看到,在該芯片設計中由于采用標準的8051核,其指令系統(tǒng)和體系結(jié)構基本沒有改變,但其中一些特殊寄存器與外圍模塊之間建立了映射關系,中斷源也得到了擴充。因此,驗證和仿真器的設計關鍵在于能否正確反映這些寄存器的狀態(tài)或通過寄存器控制這 些外圍模塊的工作。
在系統(tǒng)芯片設計流程中,仿真器的設計與芯片設計同步甚至要提前,因此沒有現(xiàn)成的CPU芯片作仿真器核心;而簡單地將CPU與FSK、DTMF、CAS等功能芯片組合起來替代該CPU芯片,不能實現(xiàn)完全仿真和模擬,特別是無法獲得外圍模擬模塊的狀態(tài)。
在這里,我們采用FPGA和FSK、DTMF、CAS等功能芯片組合成模擬CPU來替代所設計的系統(tǒng)芯片,系統(tǒng)結(jié)構可參照圖3。圖3中,8051核及數(shù)字接口部分由FPGA實現(xiàn);CID部分中,F(xiàn)SK、DTMF、CAS、振鈴檢測等模塊則由相應硬件模塊實現(xiàn)。
FSK、DTMF、CAS、振鈴檢測等模塊通過接口與FPGA中8051相應寄存器對應,這樣在這些外圍模塊動作的同時,在8051寄存器中都能正確映射;反之,F(xiàn)PGA中相應寄存器的改變,也會引起這些外圍模塊的動作。
圖3是建立在通用8051仿真器上的短消息系統(tǒng)芯片仿真方案。模擬CPU模塊集成了FPGA和CID部分芯片和電路,該模塊采用與8051定義一致的引腳與仿真板相連。對于仿真板來說,該模塊的命令和操作
◇完全兼容
現(xiàn)有集成開發(fā)和仿真環(huán)境;
◇簡化了數(shù)?;旌显O計的驗證問題;
◇經(jīng)過改進,可以利用通用仿真器仿真和調(diào)試硬件、軟件;
◇由于FPGA可以隨著芯片的改進而重新編程,因此增大了設計和驗證的靈活性;
◇縮短了開發(fā)時間,加快芯片上市時間。
4 結(jié) 論
利用該方案構成的系統(tǒng)芯片驗證和仿真方案已經(jīng)在我們的設計中得到了應用。事實上,利用該方案的思想不僅可以實現(xiàn)基于8051核系統(tǒng)芯片的驗證和仿真,其它系統(tǒng)芯片的驗證和仿真也是可以借鑒的。
參考文獻
1 李志堅,周潤德. VLSI器件電路與系統(tǒng). 北京:科學出版社,2000
2 Cadence. CC2.1 Production Documentation與標準8051是一致的,因此通用的仿真和集成環(huán)境