資源描述:
《soc原型驗證技術的研究》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、SoC原型驗證技術的研究
2、第1 快速系統(tǒng)原型驗證的本質在于快速地實現(xiàn)SoC設計中的硬件模塊,讓軟件模塊在真正的硬件上高速運行,實現(xiàn)SoC設計的軟硬件協(xié)同驗證。該技術實現(xiàn)的基礎是強大的FPGA和有力的設計描述及編譯工具。原型驗證系統(tǒng)由三個部分組成:系統(tǒng)硬件、軟件編譯器和運行程序。系統(tǒng)硬件設計的核心部分是定制的FPGA并行系統(tǒng),用來實現(xiàn)SoC設計中的關鍵模塊如Mpeg編碼器,系統(tǒng)硬件的常規(guī)模塊可由商用芯片實現(xiàn)。軟件編譯器則把寄存器級或門級設計及其驗證環(huán)境扁平化,映射到系統(tǒng)硬件。運行程序控制原型系統(tǒng)的運行、設計調試,一般采用C-API編程,并且有開放的軟件結構,便于后期緊密集成?!?/p>
3、 快速系統(tǒng)原型驗證采用商用芯片實現(xiàn)設計中的常用模塊,只有核心模塊才用FPGA實現(xiàn),因此提高了原型系統(tǒng)的速度,減少了原型描述及其實現(xiàn)的工作量,降低了原型驗證系統(tǒng)的成本,更適合于開發(fā)出針對某個領域的驗證平臺。但目前的SoC原型的描述主要使用Verilog或者VHDL,描述的級別低、復雜度高、容易出錯,因此不能很快地實現(xiàn)SoC的原型。本文的目的就是找出一種方法,用高級語言(如C語言)來描述SoC的原型,并實現(xiàn)在設計的原型驗證硬件上?! ?SoC原型的Handel-C描述及其實現(xiàn)流程 Celoxica公司提出的軟件編譯式系統(tǒng)設計(SoftDesign,SCSD)把軟件設計技術引入硬件
4、設計,直接用Handel-C語言描述硬件設計,大大改善了硬件設計效率。SCSD的軟件工具包括集成開發(fā)環(huán)境(DK)、平臺開發(fā)工具(PDK)以及系統(tǒng)級硬件描述語言Handel-C等。DK可以編輯、模擬、調試并編譯Handel-C源代碼,生成EDIF、Verilog或VHDL代碼,并能夠與ModelSim一起協(xié)同模擬Handel-C和Verilog設計[2]。PDK由數(shù)據(jù)流管理器(DSM)、平臺抽象層(PAL)和平臺支持庫(PSL)三個層面構成[3]。通過DSM,可以很方便地在軟件和硬件之間實現(xiàn)轉移設計的功能,便于快速地劃分設計,找到最優(yōu)的劃分方案;PAL提供與API方式訪問原型電路
5、板一致的硬件資源,實現(xiàn)Handel-C設計的可移植性;PSL為DK和Handel-C設計提供與電路板、可編程器件或開發(fā)工具有關的支持,更接近驅動程序的概念?! CSD的整套軟件工具能夠把Handel-C描述的設計直接實現(xiàn)到FPGA上,因此非常適合SoC原型的描述及其實現(xiàn)。本文以SCSD為基礎,提出了SoC/IP的原型驗證流程,如圖1所示。500)this.style.ouseg(this)">圖1SoC/IP原型實現(xiàn)的基本流程及其EDA工具 在SoC原型驗證中,不同的硬件模塊用不同的方式實現(xiàn)。處理器用主機CPU或者原型硬件中的嵌入式處理器實現(xiàn);存儲器用原型硬件中與FPGA
6、直接相連的存儲器排實現(xiàn);Verilog描述的核心模塊在FPGA中實現(xiàn);各種外設模塊用原型硬件中的外設資源實現(xiàn);模塊之間的互連實現(xiàn)在FPGA和原型硬件的互連總線上。IP原型驗證需要確定它的外圍邏輯環(huán)境、驗證向量生成機制和驗證結果分析檢查策略。本文把SoC和IP驗證中所有需要描述的模塊及其互連與原型硬件的映射關系以及原型驗證的硬件支持統(tǒng)稱為設計的驗證環(huán)境。被驗證的設計用Verilog/VHDL語言描述,驗證環(huán)境用Handel-C語言描述。 Handel-C描述完成后,用模擬器ModelSim和Handel-C開發(fā)工具DK協(xié)同模擬、調試設計和驗證環(huán)境,這樣可用較少的驗證向量檢查驗證
7、環(huán)境的正確性。模擬成功后,DK把驗證環(huán)境的Handel-C描述編譯為Verilog描述。然后調用綜合工具(Synplify)對設計及其驗證環(huán)境的Verilog描述進行編譯優(yōu)化。接著調用Xilinx的布局布線工具(ISE),把優(yōu)化的Verilog描述轉換為原型系統(tǒng)硬件的配置數(shù)據(jù)。原型系統(tǒng)配置完畢后,就可以啟動系統(tǒng)執(zhí)行原型驗證了。如果模塊設計的RTL優(yōu)化已經完成,就無需調用Synplify進行優(yōu)化,直接輸入ISE即可?! ≡赟oC軟硬件協(xié)同驗證中,首先通過DK,協(xié)同模擬C/C++描述的軟件、Handel-C描述的驗證環(huán)境和Verilog描述的模塊;然后把軟件編譯成SoC處理器的目標
8、代碼,讓軟件在原型系統(tǒng)中高速運行,執(zhí)行驗證。主機PC上運行的診斷軟件與SoC的軟件模塊的描述實現(xiàn)流程基本一致,只是最終實現(xiàn)運行在主機的處理器上?! ?SoC原型驗證系統(tǒng)樣機 本文利用可配置計算電路板RC1000和SoC設計展示評估平臺RC200搭建了一個原型驗證系統(tǒng)的樣機,以充分體驗SCSD的優(yōu)缺點,為以后SoC原型驗證系統(tǒng)的設計做一些基礎性研究工作?! ≡万炞C系統(tǒng)的樣機由PC主機、RC1000和RC200構成,如圖2所示。在功能定位上,PC主機是主控子系統(tǒng),RC1000和RC200共同