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