嵌入式系統芯片的軟硬件協(xié)同仿真環(huán)境設計
摘要:針對嵌入式系統芯片SoC開(kāi)發(fā)驗證階段的需求,介紹了一種通用的SoC軟硬件協(xié)同仿真平臺。軟件仿真由C/C++和匯編語(yǔ)言編寫(xiě),硬件仿真基于VMM驗證方法學(xué)所搭建,SoC設計代碼由RTL代碼編寫(xiě)而成。將SoC設計代碼中的ARM由DSM模型替代,通過(guò)VCS編譯器將軟硬件協(xié)同起來(lái)進(jìn)行信息交互,實(shí)現一種速度快、真實(shí)性高、調試方便的通用性仿真平臺。
關(guān)鍵詞:協(xié)同仿真;DSM模型;驗證方法學(xué);片上系統
1 概述
隨著(zhù)微電子產(chǎn)業(yè)日新月異的發(fā)展,IC設計的規模越來(lái)越大,集成度越來(lái)越高,已經(jīng)足以將一套完整的系統集成到一塊小小的芯片中。在這種形勢下,SoC技術(shù)應運而生。隨著(zhù)IP核復用技術(shù)的出現,SoC芯片的設計已經(jīng)不再是很大的難題,SoC芯片的驗證已逐漸取代芯片設計成為芯片開(kāi)發(fā)階段的瓶頸?,F階段SoC芯片設計的正確性要經(jīng)過(guò)前仿真、后仿真以及FPGA驗證來(lái)保證。前仿真包括單元驗證、集成驗證和系統驗證,后仿真包括帶反標時(shí)序SDF的網(wǎng)表仿真,其中系統驗證和后仿真都需要關(guān)注SoC芯片的全局功能,這就涉及SoC的軟件仿真和硬件仿真的協(xié)同問(wèn)題。本文以DSM模型替代ARM核,以VMM驗證方法學(xué)和VCS仿真器為基礎,搭建一個(gè)可重用性高、調試和定位問(wèn)題方便、仿真真實(shí)性高、軟件和硬件能夠很好配合的協(xié)同驗證平臺。
軟硬件協(xié)同仿真架構如圖1所示,協(xié)同驗證分軟件驗證環(huán)境和硬件驗證環(huán)境兩部分。軟件代碼通常由C/C++和匯編語(yǔ)言混合編寫(xiě)而成,然后由軟件編譯器轉換成二進(jìn)制格式,最后將該二進(jìn)制文件加載到SoC芯片的存儲器中去,芯片boot啟動(dòng)時(shí)由ARM核調用軟件代碼并執行;硬件環(huán)境基于VMM驗證方法學(xué)進(jìn)行搭建,下文中會(huì )有詳細介紹。協(xié)同仿真就是通過(guò)事件和命令,使用一些機制,在這兩個(gè)環(huán)境間進(jìn)行控制。
2 DSM模型的使用
SoC芯片的CPU一般選用ARM,協(xié)同驗證平臺中ARM可以用seamless CVE模型替代,或者直接選用ARM網(wǎng)表。采用seamless CVE模型進(jìn)行仿真,雖然速度比較快,但需要替換設計中的Memory模型,且必須使用CVE自己的模型,這樣與芯片真實(shí)情況有出入;采用ARM網(wǎng)表進(jìn)行仿真,速度比較慢,調試也不方便,但是更接近實(shí)際情況。相比于這兩者,本文采用的DSM(Design Simulation Model)模型由ARM公司提供,能完全模擬ARM的接口和時(shí)序行為,具有更高的真實(shí)性,而且DSM無(wú)需更換存儲器模型和外掛仿真工具,使驗證DUT與實(shí)際芯片完全一致,即不必為了滿(mǎn)足仿真需求修改部分RTL代碼。此外,DSM環(huán)境仿真過(guò)程中輸出的LOG文件log.eis真實(shí)記錄每個(gè)周期執行的CPU代碼和操作。根據該文件能快速定位軟件問(wèn)題。CVE環(huán)境通過(guò)調用XRAY軟件調試工具,雖然可以進(jìn)行單步調試、沒(méi)置斷點(diǎn)等操作,但出現軟件問(wèn)題時(shí)定位沒(méi)有DSM環(huán)境那么直觀(guān)、方便。
評論