《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應用 > 基于Andes Core的ESL解決方案——AndESLive
基于Andes Core的ESL解決方案——AndESLive
晶心科技
摘要: 近年來,,IC 設(shè)計正在向電子系統(tǒng)級(ESL,electronic system level)解決方案發(fā)展,。多 家 EDA 公司以及 IP 供應商都推出了各自的 ESL 開發(fā)工具,。晶心科技(Andes technology) 是亞洲首家完全自主知識產(chǎn)權(quán) 32 位嵌入式處理器 IP 核(即 Andes core)的供應商與系 統(tǒng)芯片開發(fā)平臺的設(shè)計公司,。晶心科技為基于 Andes core 進行 SoC 設(shè)計和開發(fā)的客戶提供了一套完整的 ESL 解決方案-AndESLive,。本文將介紹 AndESLive 這套 ESL 開發(fā)工具是如何幫助客戶快速確定符合市場需求的最佳體系結(jié)構(gòu),,并實現(xiàn)軟硬件并行工作以縮 減開發(fā)周期的目的。
Abstract:
Key words :

    近年來,,IC 設(shè)計正在向電子系統(tǒng)級(ESL,,electronic system level)解決方案發(fā)展。多

家 EDA 公司以及 IP 供應商都推出了各自的 ESL 開發(fā)工具,。晶心科技(Andes technology)
是亞洲首家完全自主知識產(chǎn)權(quán) 32 位嵌入式處理器 IP 核(即 Andes core)的供應商與系
統(tǒng)芯片開發(fā)平臺的設(shè)計公司,。晶心科技為基于 Andes core 進行 SoC 設(shè)計和開發(fā)的客戶提供了一套完整的 ESL 解決方案-AndESLive。本文將介紹 AndESLive 這套 ESL 開發(fā)工具是如何幫助客戶快速確定符合市場需求的最佳體系結(jié)構(gòu),,并實現(xiàn)軟硬件并行工作以縮
減開發(fā)周期的目的,。 
1.  為什么采用 ESL 設(shè)計
    隨著 SoC 設(shè)計的發(fā)展,芯片規(guī)模變得越來越大,,IP 的使用進一步增加,,復雜度和性
能的需求不斷提高。另一方面,,嵌入式軟件開發(fā)在整個設(shè)計中所占的比重也越來越大,,
整個系統(tǒng)的性能越來越取決于軟硬件協(xié)同工作所表現(xiàn)出的綜合性能。因此,,芯片在設(shè)計
階段就需要進行深入的系統(tǒng)級仿真,,以及在芯片的仿真模型上運行大量軟件以覆蓋所需
的功能。傳統(tǒng)的設(shè)計流程無法滿足這些仿真的執(zhí)行性能,,就需要采用一種新的工具來避
免由于早期設(shè)計的不確定性所帶來的影響,。 
    ESL 設(shè)計和驗證是一種在較高的抽象層次上對芯片進行描述和分析的設(shè)計方法學,
它能夠讓設(shè)計工程師快速地構(gòu)建原型平臺,,并以緊耦合的方式開發(fā),、優(yōu)化和驗證復雜系
統(tǒng)架構(gòu),從而實現(xiàn)最優(yōu)化的系統(tǒng)性能,。另外,,采用 ESL 的方法還可以使軟件設(shè)計人員
提早進入調(diào)式和驗證,大幅縮短產(chǎn)品上市時間,。因此,,采用 ESL 的設(shè)計方法已經(jīng)成為
IC 設(shè)計的必然趨勢。
2.  晶心科技的 ESL 解決方案:AndESLive 
    AndESLive 是以 ESL 設(shè)計和驗證理念為理論基礎(chǔ),,專門針對基于 Andes core IP 進
行 SoC 開發(fā)而設(shè)計的 ESL 開發(fā)工具,。它集成在 AndeSight(晶心科技基于 Andes core 的集成開發(fā)環(huán)境)中,并通過 AndeSight 提供的 GUI 界面和工程師進行交互,。
     AndESLive 為設(shè)計人員提供了一個虛擬評估平臺(VEP,,Virtual Evaluation Platform),它是一個描述真實系統(tǒng)行為的系統(tǒng)級仿真模型。VEP 的核心由兩個部分組成,,前端叫做Virtual SoC Builder,,它可以幫助設(shè)計人員快速構(gòu)建系統(tǒng)原型平臺;后端是一個系統(tǒng)級的模擬器,。工程師可以在原型平臺上,,對系統(tǒng)(包括硬件和軟件)性能進行評估和驗證,從而實現(xiàn)系統(tǒng)設(shè)計的最優(yōu)化,。
 
3. Virtual SoC Builder 
     AndESLive 中的 Virtual SoC Builder 為設(shè)計人員提供快速搭建目標系統(tǒng)原型的功能,。
在 AndESLive 中,,已經(jīng)預定義了 Andes 各個系列 CPU 的 IP,以及各種周邊設(shè)備控制器
的 IP,,包括高速設(shè)備(Memory,、DMA、LCD,、Ethernet 等),、低速設(shè)備(Uart、GPIO,、SSP 等)和 BUS(AHB,、APB)。另外,,工程師還可以添加用戶自定義的 IP 模塊來實現(xiàn)一些特殊的功能需求,。
     圖 1 為 Virtual SoC Builder 在 AndESLive 中的基本 UI 界面。界面上方的區(qū)域是設(shè)計
人員構(gòu)建虛擬 SoC 系統(tǒng)模型的編輯區(qū),,工程師根據(jù)需要通過選擇右側(cè) IP 庫中的 IP 模型,,并將它們之間的端口(主從端口和讀寫端口)進行連接,就可以很快的架設(shè)起初步的
SoC 原型,。工程師可以通過 Virtual SoC  Builder 界面下方的 Properties 視窗對單個 IP 模塊的屬性進行配置,,例如修改 CPU 的 I/D Cache、MMU,、I/D Local memory 等參數(shù),。還可以通過其他一些視窗對整個 SoC 系統(tǒng)進行設(shè)定,例如配置內(nèi)存映射,、配置中斷和設(shè)置時鐘等,。
圖 1 Virtual SoC Builder 操作界面
 
4. AndESLive 中的模擬器
4.1 基于 SID 的模擬器
     AndESLive 采用 SID 作為 VEP 的后端模擬器來實現(xiàn)系統(tǒng)級仿真的功能。SID 是一個
用于構(gòu)建計算機系統(tǒng)仿真的框架,,是一個松耦合模擬組件的集合,。VEP 中的各種 IP 模
塊都是 SID 的組件,SID 通過標準的 API(定義管腳,、總線,、屬性和關(guān)系)掛載組件,
并通過 SID 配置文件實現(xiàn)組件間的連接和交互,,從而達到模擬物理硬件行為的目的,。
AndESLive 中的模擬器具有很高的仿真效能,其執(zhí)行是基于機器周期或是機器指令
的,。工程師不僅可以在 VEP 上實現(xiàn)應用程序的快速執(zhí)行,,還可以進行可視化的程序調(diào)
試和分析(profiling)。另外,,模擬器提供了多種模擬 I/O 設(shè)備,,例如 LCD,、Uart、GPIO,、
RTC 等,,這使得工程師在 VEP 上運行應用程序時可以進行模擬的輸入或者得到與真實
硬件平臺一樣的輸出結(jié)果。
4.2 VEP 中的 IP 模型
    事物處理級模型(TLM)用于建??蓤?zhí)行平臺,通常只描述系統(tǒng)各個功能單元之間的
抽象操作,,一般來說即指各個功能單元之間交換的整個數(shù)據(jù)結(jié)構(gòu)(或?qū)ο螅┥献x取/寫
入或發(fā)送/接收操作,。
      AndESLive 的 VEP 功能就是基于事務級建模方法,采用事物處理級模型,。VEP 中
虛擬 IP 模型的實現(xiàn)由兩部分組成,,內(nèi)部是標準的 SID 組件,外部是符合 VEP 建模標準
的組件描述符,,如圖 2 所示,。組件描述符定義了 IP 功能模塊在 AndESLive 中需要展現(xiàn)
的特性,例如總線,、管腳以及事件,、時序等各種屬性,通過這層包裝 SID 組件便可以加
入到 VEP 中,。對于 AndESLive 中已經(jīng)預定義好的 IP 模塊,,工程師只要通過修改這些 IP
模塊的描述符,改變模塊的參數(shù)和屬性,,便可以使之具備所需要的新的特性,。
圖 2 VEP 模型結(jié)構(gòu)圖
 
    如果需要添加新的 VEP 模塊,工程師需要進行 VEP 模型的建模,。建模有兩種方式,,如果 SID 組件是由 C/C++語言來描述,那組件外部需要一層 XML 語言實現(xiàn)的描述符來進行包裝,;如果工程師希望用 SystemC 實現(xiàn)模塊,,則需要實現(xiàn)一個 SID-SystemC 橋文件,用 來 完 成 SID 與 SystemC 接 口  之  間 的 通 信  功  能 ,。 對 于  編  寫 組 件 描  述  符 文 件 或  者SID-SystemC 橋文件,,晶心科技會提供完整的培訓和技術(shù)資源,幫助客戶快速實現(xiàn)建模工作,。
 
5.使用 AndESLive 進行設(shè)計和開發(fā)
5.1 探索最優(yōu)化的系統(tǒng)架構(gòu)
    隨著 SoC 芯片規(guī)模擴大,、工藝的提升, IP 的使用將進一步增加,,芯片可能包含多
個可編程部件(CPU 或 DSP),。為 了 SoC 設(shè)計的成功,,在設(shè)計的初期探索和驗證符合市場需求的最優(yōu)化系統(tǒng)架構(gòu)變得越來越重要。
     AndESLive 為設(shè)計者提供了創(chuàng)建基于 TLM 的虛擬原型平臺功能,。工程師可以通過
Virtual SoC Builder 快速組裝基于 Andes core 的虛擬原型,;通過模擬器仿真驗證系統(tǒng)結(jié)
構(gòu)方案功能的完整性;通過分析功能(profiling)不斷調(diào)正原型平臺中各個模塊的特性,,在
性能,、功耗和芯片制造成本之間尋求最佳平衡點。
      圖三為使用 AndESLive 實現(xiàn)系統(tǒng)性能最優(yōu)化設(shè)計的示意圖,。設(shè)計者首先在 Virtual 
SoC Builder 中建立目標 SoC 原型(圖右側(cè)上方白色框所示),,然后在 VEP 的模擬器上
運行測試程序驗證系統(tǒng)性能。如果測試結(jié)果未滿足規(guī)格要求,,工程師可以借助模擬器產(chǎn)
生的分析報告(圖右側(cè)下方白色框所示)快速定位系統(tǒng)瓶頸,,并對 CPU 速度、Cache
大小,、總線利用率,、Memory 大小等多方面進行調(diào)整后再測試,直到結(jié)果符合設(shè)計規(guī)格
的要求,。此時,,設(shè)計者便獲得了最佳的系統(tǒng)架構(gòu)方案。
       AndESLive 的 VEP 功能就是基于事務級建模方法,,采用事物處理級模型,。VEP 中
虛擬 IP 模型的實現(xiàn)由兩部分組成,內(nèi)部是標準的 SID 組件,,外部是符合 VEP 建模標準
的組件描述符,,如圖 2 所示。組件描述符定義了 IP 功能模塊在 AndESLive 中需要展現(xiàn)
的特性,,例如總線,、管腳以及事件、時序等各種屬性,,通過這層包裝 SID 組件便可以加
入到 VEP 中,。對于 AndESLive 中已經(jīng)預定義好的 IP 模塊,工程師只要通過修改這些 IP
模塊的描述符,,改變模塊的參數(shù)和屬性,,便可以使之具備所需要的新的特性。
        圖 2 VEP 模型結(jié)構(gòu)圖如果需要添加新的 VEP 模塊,,工程師需要進行 VEP 模型的建模,。建模有兩種方式,
圖 3  用 AndESLive 探索最優(yōu)化的系統(tǒng)架構(gòu)
5.2 大幅度縮短開發(fā)周期
在 SoC 設(shè)計中,系統(tǒng)性能不僅取決于芯片硬件,,還取決于運行在芯片上的嵌入式軟
件,。采用傳統(tǒng)設(shè)計流程,設(shè)計者無法準確估算軟件性能,,因此就無法確定整個系統(tǒng)的最
終規(guī)格,,只能憑借工程師的經(jīng)驗設(shè)計。此外,,軟件的設(shè)計,、開發(fā)也只能在芯片的硬件原
型已經(jīng)提供后才能執(zhí)行,這使得軟/硬件整合時間被推遲,,于是整個系統(tǒng)開發(fā)周期就變
長了,。
圖 4  傳統(tǒng)設(shè)計流程與基于 VEP 的設(shè)計流程
    采用基于 AndESLive VEP 的開發(fā)流程與傳統(tǒng)開發(fā)流程相比(圖 4 所示),軟/硬件開發(fā)可以同時進行,,因此系統(tǒng)的設(shè)計、開發(fā)和驗證過程更加快速,,這不僅使得產(chǎn)品可以更早的
進入市場,,而且各種開發(fā)資源也得到了更大的使用效率,從而進一步降低了成本,。
 
6.  結(jié)語
     晶心科技(Andes)是一家致力于32位嵌入式處理器IP的授權(quán)公司,,面對不同應用層級的32位處理器市場,推出了Andes core:N9(50-200MHz),、N10(50-240MHz),、N12(50-660MHz)三個系列的低功耗高性價比的32位處理器軟、硬核IP,。AndESLive是晶心科技為基于Andes core進行SoC開發(fā)而設(shè)計的ESL開發(fā)工具,。AndESLive幫助客戶找到最優(yōu)化的系統(tǒng)架構(gòu)方案,使產(chǎn)品更有效的滿足市場需求,;基于VEP的設(shè)計流程,,大幅縮
減了芯片開發(fā)周期,使產(chǎn)品在市場中具備更強的競爭力,。
      AndESLive 提供了事物處理級的虛擬原型平臺,,即 VEP。有了和實際硬件一致的模
型,,軟件工程師就可以和硬件設(shè)計人員并行工作,,進行代碼編寫并在虛擬原型上進行測
試。VEP 中的 TLM 模型比同等的 RTL 模型運行速度快 100 至 1000 倍,,這個速度足以
運行相當大的應用程序,,例如像 Linux 這樣的操作系統(tǒng)。另外,軟件開發(fā)人員的提早介
入,,使軟/硬件的集成和驗證變得更加容易,。這樣,在芯片硬件開發(fā)完成后,,大部分或
者全部軟件都已經(jīng)準備好并經(jīng)過驗證,,從而縮短了最后的硬件和軟件集成的時間。
此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。