《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > 采用多內(nèi)核無線虛擬系統(tǒng)原型的系統(tǒng)級調(diào)試

采用多內(nèi)核無線虛擬系統(tǒng)原型的系統(tǒng)級調(diào)試

2012-04-18

        在內(nèi)核芯片制造前傳統(tǒng)的驗證與調(diào)試方法依賴于指令集仿真器(ISS)模型。不幸的是,ISS模型速度太慢,并且時序精度無法達到與系統(tǒng)硬件部分的RTL模型交互所需的要求。本文將提供一種采用虛擬系統(tǒng)原型實現(xiàn)系統(tǒng)級的多內(nèi)核系統(tǒng)調(diào)試方法,該方法允許在PC機上實時執(zhí)行一個完整系統(tǒng)的周期精確仿真,而且執(zhí)行速度比基于ISS的仿真要快得多。

        開發(fā)一個復(fù)雜的多內(nèi)核無線系統(tǒng)無疑是個艱巨的挑戰(zhàn),特別是當(dāng)內(nèi)核包含有高性能處理器和先進的數(shù)字信號處理器(DSP) 時更是如此。等待硬件原型實現(xiàn)是不能令人接受的:關(guān)鍵的軟硬件折衷應(yīng)該在芯片制造之前盡早地完成。在內(nèi)核芯片制造前傳統(tǒng)的驗證與調(diào)試方法依賴于指令集仿真 器(ISS)模型。不幸的是,ISS模型速度太慢,并且時序精度無法達到與系統(tǒng)硬件部分的RTL模型交互所需的要求。

        在多內(nèi)核環(huán)境中問題更加嚴(yán)重,因為單個獨立的模擬器工具在調(diào)試模式下通常都缺少同步機制。結(jié)果是有些軟件開發(fā)和軟硬件集成工作必須等到無線硬件原型實現(xiàn)后才能開始。在昂貴、數(shù)量又少的硬件原型基礎(chǔ)上進行開發(fā)和調(diào)試常常導(dǎo)致項目進度的延遲,并會增加芯片返工的風(fēng)險。

圖1:不同模型的速度和精度。

 

        本 文將提供一種采用虛擬系統(tǒng)原型實現(xiàn)系統(tǒng)級的多內(nèi)核系統(tǒng)調(diào)試方法,該方法允許在PC機上實時執(zhí)行一個完整系統(tǒng)的周期精確仿真,而且執(zhí)行速度比基于ISS的仿 真要快得多。該方法支持完整的系統(tǒng)級單步調(diào)試操作,其調(diào)試模式下的時序精度水平完全可以匹配實際設(shè)備指標(biāo)。另外,由于虛擬系統(tǒng)原型能讓開發(fā)人員在多系統(tǒng)環(huán) 境下快速精確地調(diào)試,因此給開發(fā)工作帶來了極大的便利。下文討論的包含二個ARM處理器和一個StarCore DSP的多內(nèi)核無線系統(tǒng)實例證明了該方法的有效性。

無線SoC實例

        適合無線應(yīng)用的一個實際多內(nèi)核芯片整體架構(gòu)采用了通用CPU和專用DSP內(nèi)核來達到并行和專用處理的目的。另外該芯片還包含了用于片外通信的多層存儲器系統(tǒng)和多個外圍器件。

        這 個特殊芯片包含2個ARM926E CPU內(nèi)核,每個內(nèi)核擁有獨立的指令和數(shù)據(jù)緩存。其中一個ARM處理器運行Linux操作系統(tǒng),并提供虛擬機、圖形化環(huán)境和消息等多個普通服務(wù)。另外一個 ARM926E與DSP內(nèi)核聯(lián)系緊密,主要用于處理整個系統(tǒng)的通信和控制,需要時也能用于執(zhí)行特殊任務(wù)和應(yīng)用進程。擁有2個CPU可以完全實時地處理各種 業(yè)務(wù),從而滿足無線設(shè)備的各項關(guān)鍵要求。

        作為2個ARM內(nèi)核的重要補充,StarCore SC1200處理器可以加速多媒體數(shù)據(jù)處理,執(zhí)行無線調(diào)制解調(diào)器的處理任務(wù)以及其它DSP任務(wù)。這塊內(nèi)核內(nèi)置有2個獨立的執(zhí)行單元,每個單元都可以執(zhí)行乘 法累加(MAC)以及其它信號處理算法中常用的算術(shù)操作。DSP設(shè)計用于提供大部分的語音數(shù)據(jù)處理以及MP3、MPEG-4和H.264等多媒體數(shù)據(jù)解碼 服務(wù)。

        作為無線芯片中的典型部件,層次化總線網(wǎng)絡(luò)可以提供專用的數(shù)據(jù)通道,減少業(yè)務(wù)流量,并提供通信所需的公共存儲模塊訪 問。在頂層,六條系統(tǒng)總線通過各自專用的存儲器子系統(tǒng)和外圍器件與處理器建立互連。所有這些總線都使用AHB協(xié)議,該協(xié)議是ARM公司定義的用于ARM處 理器內(nèi)核的先進高速總線。

        專用AHB總線允許全部三個處理器同時對存儲器進行數(shù)據(jù)和指令存取,因而能夠消除多內(nèi)核設(shè)備常見的瓶頸問題。AHB系統(tǒng)級總線到更低層的總線通過橋進行鏈接。三條專用存儲器總線提供對存儲器模塊的訪問,二條低速外圍器件總線連接片外通信用的定時器、中斷控制器和串行接口。

        當(dāng)然,處理器之間也必須交換數(shù)據(jù)或控制信息。所有這類通信都是通過系統(tǒng)內(nèi)任何地方都能訪問的共享存儲器完成的。利用旗語(semaphore)和郵箱(mailbox)等現(xiàn)成技術(shù)即可提供處理器和外圍器件之間信息的安全傳送。

傳統(tǒng)的軟件建模

        在SoC 生產(chǎn)出來以后才進行驗證勢必會使最終產(chǎn)品存在大量缺陷。即使設(shè)計中嵌入了專門用于調(diào)試的訪問路徑,可觀察性也相當(dāng)有限。而在實際應(yīng)用中,為了滿足緊迫的產(chǎn) 品上市時間要求,有用的調(diào)試功能往往會被刪除掉。因此協(xié)調(diào)與同步內(nèi)含多處理器的硬件驗證測試非常困難,為了調(diào)試故障測試在處理器之間設(shè)置交叉觸發(fā)也有一定 的難度。

        以前芯片架構(gòu)師和設(shè)計師在芯片制造之前是利用基于軟件的模型進行完整的芯片驗證和調(diào)試的。最常見的方法是使用為每個處理器設(shè)計的指令集仿真器模型。這些模型執(zhí)行的二進制代碼與芯片中的實際處理器代碼完全相同,因此這些模型可以用來在SoC制造之前開發(fā)和調(diào)試軟件。

圖2:無線SoC設(shè)計的調(diào)試要點。

 

        然 而,典型的ISS模型在仿真運行大型軟件(比如實時操作系統(tǒng)(RTOS))時速度太慢。那些具有較高性能的ISS模型在犧牲精度的條件下才能達到較快的速 度。ISS模型的主要特點僅在于精確的指令,也就是說它們能夠如實地產(chǎn)生與制造芯片中處理器相同的結(jié)果運行代碼。然而,處理器接口的逐個周期行為可能無法 匹配實際處理器內(nèi)核的行為。

        在開發(fā)多內(nèi)核無線設(shè)備時ISS模型的缺點是一個大問題。由于對緩存和存儲器的訪問不具有周期精確 性,因此無法精確測量存儲器性能,也無法進行詳細(xì)的架構(gòu)折衷。此外,針對SoC的剩余部分將ISS和硬件設(shè)計連接起來需要周期精確性,單憑指令精確性將極 大地限制可以執(zhí)行的軟硬件協(xié)同仿真的數(shù)量。而且不準(zhǔn)確的時序?qū)⒁馕吨幚砥鲀?nèi)核之間的交互操作有可能不匹配實際運行情況,從而導(dǎo)致芯片和硬件原型制造出來 以后還要做進一步的軟件開發(fā)和反復(fù)調(diào)試。

        使用獨立的ISS模型會給調(diào)試帶來很大的限制。由于單個模型之間缺少同步機制,在試 圖調(diào)試故障測試案例時很難理解處理器之間是如何交互信息的。另外,由于內(nèi)核周邊環(huán)境中而不是內(nèi)核本身內(nèi)的時序問題會導(dǎo)致許多錯誤發(fā)生(如競態(tài)條件和死 鎖),因此使用單步執(zhí)行調(diào)試根本無法捕獲這些錯誤。

        從傳統(tǒng)角度看唯一的替代方案是針對處理器內(nèi)核使用周期精確性仿真模型。這 種模型犧牲速度換取精度,由于運行速度太慢,仿真中只能執(zhí)行關(guān)鍵代碼中的一小部分。然而在單內(nèi)核芯片中,周期精確模型允許詳盡的測量,與硬件設(shè)計有更多的 交互,可提供精確調(diào)試所需的深度可觀察性。只有這些模型被鏈接進一個公共驗證環(huán)境、而且速度不重要的條件下多內(nèi)核調(diào)試才可能獲得相同的好處。

        多內(nèi)核無線設(shè)計師真正需要的解決方案需要具有很高的仿真速度、完全的周期精確以及支持不同處理器之間精確控制和交互調(diào)試的集成環(huán)境。而能夠滿足所有這些要求的唯一已知解決方案就是虛擬系統(tǒng)原型技術(shù)。

虛擬系統(tǒng)原型

        虛 擬系統(tǒng)原型是一個基于軟件仿真、時序精確的電子系統(tǒng)級(ESL)模型,首先使用于架構(gòu)級,然后在整個設(shè)計周期內(nèi)作為可執(zhí)行的黃金參考模型。虛擬系統(tǒng)原型可 以包含周期精確、所執(zhí)行的編譯鏈接目標(biāo)代碼與實際硬件相同的虛擬處理器模型,因此可以準(zhǔn)確地預(yù)測系統(tǒng)的實際行為。還可以增加總線、外圍器件和其它硬件設(shè)計 部分的周期精確模型,以便虛擬系統(tǒng)原型能夠為多內(nèi)核無線SoC的完整行為建模。

        虛擬系統(tǒng)原型通過混合和匹配硬件和軟件部分實施架構(gòu)開發(fā)。針對實際行為建模的精確測量可以幫助系統(tǒng)架構(gòu)師在開發(fā)過程早期進行精確的軟硬件折衷。當(dāng)建立最初的系統(tǒng)架構(gòu)模型后,虛擬系統(tǒng)原型就能成為可執(zhí)行的系統(tǒng)規(guī)范來進一步推進具體軟硬件實現(xiàn)的并行開發(fā)。

        圖1 給出了與其它基于軟件方法相比之下的虛擬系統(tǒng)原型中處理器模型的性能。由于可以同時提供高速和周期精確性,虛擬系統(tǒng)原型在SoC開發(fā)中扮演著非常重要的角 色。而且虛擬系統(tǒng)原型可以運行在標(biāo)準(zhǔn)PC平臺之上,因此它們能夠很容易地發(fā)布給系統(tǒng)架構(gòu)師、軟件工程師和硬件設(shè)計師,甚至在地理上分散的團隊成員。

        在 本例中,為了實現(xiàn)虛擬系統(tǒng)原型的高效仿真,VaST系統(tǒng)技術(shù)公司同時提供了模型和基礎(chǔ)架構(gòu)。VaST仿真內(nèi)核能夠在包括處理器內(nèi)核、總線和外圍器件在內(nèi)的 各個模塊間實現(xiàn)精確的同步式交互,同時還能促進與第三方調(diào)試器的透明通信。由于能夠執(zhí)行完整的系統(tǒng)級單步調(diào)試,因此能為調(diào)試提供時序精確性以匹配實際的配 置。

        多內(nèi)核調(diào)試任何多內(nèi)核SoC設(shè)計都會面臨一些常見的調(diào)試挑戰(zhàn)。由于多處理器和外圍器件之間存在復(fù)雜交互,因此有許多通信鏈接需要深層次的觀察和調(diào)試才能確保生成高質(zhì)量的軟件。

        對 于非常依賴于通過存儲器進行同步的設(shè)計來說,常見的缺陷包括不正確的存儲器訪問仲裁和不希望的數(shù)據(jù)差錯。一些其它系統(tǒng)通過專用主機端口進行直接通信,這是 管理通信的一種方便有效的方式。采用這種方法的系統(tǒng)常會發(fā)生同步問題,如果沒有仔細(xì)進行設(shè)計和驗證,可能會造成系統(tǒng)中斷甚至死鎖,這對調(diào)試來說是也是一個 艱巨的挑戰(zhàn)。

        目前的關(guān)鍵是要能精確地評估各項系統(tǒng)性能、調(diào)試所有缺陷以便通過修改架構(gòu)或?qū)崿F(xiàn)糾正這些缺陷。典型問題與總線寬度以及由于大業(yè)務(wù)量引起的時延有關(guān),這二方面問題都是語音分析和綜合類的實時應(yīng)用所特有的,因為實時應(yīng)用需要獲得性能的保證。

        總之,在無線SoC驗證期間必須調(diào)試和解決的典型問題有:


* 共享存儲器應(yīng)用


  。數(shù)據(jù)混亂


  。竟態(tài)條件


* 直接通信鏈路


  。死鎖


  。中斷


  。缺輸入


* 處理器性能


  。緩存


  。管線中斷


  。缺輸入


* 系統(tǒng)總線性能


  。擁塞


* 外圍器件性能


  。時延

        通 過提供綜合的驗證環(huán)境以及能夠快速執(zhí)行實際代碼的一致性處理器模型,虛擬系統(tǒng)原型能使所有這些問題的調(diào)試變得更加容易。與其它基于軟件的方法相比,虛擬系 統(tǒng)原型能夠更加容易地設(shè)置復(fù)雜的測試方案,而且由于能夠鏈接到第三方調(diào)試器,在單步執(zhí)行中能夠更加容易地全面觀察設(shè)計內(nèi)部細(xì)節(jié)。利用虛擬系統(tǒng)原型調(diào)試這些 問題的最關(guān)鍵點如圖2所示。

結(jié)論

        設(shè)計、驗證和調(diào)試一個復(fù)雜的多內(nèi)核無線SoC不 是一件簡單的事情。調(diào)試器只能提供較差的硬件內(nèi)部可見性,再加上成本和進度的壓力都要求使用基于軟件的方法。不幸的是,傳統(tǒng)的軟件技術(shù)存在速度和精度問 題,極大地限制了其測試和調(diào)試與處理器間同步、共享資源競爭以及性能有關(guān)的常見問題的能力。

        利用虛擬系統(tǒng)原型能夠盡早實施軟 件開發(fā)和調(diào)試,并具有更好的可觀察性能。從上述帶2個ARM CPU內(nèi)核和1個StarCore處理器內(nèi)核的設(shè)計實例可以看出,控制、測量和調(diào)試復(fù)雜多內(nèi)核交互操作的能力是項目成功的關(guān)鍵。實現(xiàn)這種解決方案的回報是 巨大的:高效的架構(gòu)開發(fā),并行的軟硬件開發(fā),產(chǎn)品化芯片首次流片成功帶來的巨大商業(yè)機會等等。

未來SoC測試面臨的挑戰(zhàn)

        SOC 內(nèi)部晶體管集成度的增長遠遠高于芯片引腳的增長,有限的管腳資源使得外部數(shù)據(jù)帶寬和內(nèi)部數(shù)據(jù)帶寬之間的差異越來越大。這種差異不僅降低了內(nèi)部模塊的可測 性,還加大了間接復(fù)用方案中測試生成的難度。同時,具有一定故障覆蓋率的測試數(shù)據(jù)會隨著電路集成度和規(guī)模的增加而增加,大量的測試數(shù)據(jù)會對直接復(fù)用方案中 的測試訪問的頻率和帶寬提出要求。

        SOC嵌入了類型豐富的IP模塊,一些公司已將模擬電路、數(shù)字電路、嵌入式DRAM等不同 形式的模塊集成到芯片中。隨著技術(shù)的發(fā)展,將有更多的電路類型被集成到SOC中,如嵌入式的FPGA、Flash、射頻發(fā)生器等。混合信號測試在SOC測 試中占有重要地位,現(xiàn)有的復(fù)用方案還未解決該問題。

        迄今為止,還沒有一個貫穿IP模塊和SOC設(shè)計始終的完整的SOC測試解 決方案,因為這不僅需要盡快訂立相關(guān)的國際標(biāo)準(zhǔn),還需要進行一些關(guān)于復(fù)用方法上的研究,例如,如何在進行IP模塊的測試開發(fā)中引入可復(fù)用的因素,使得模塊 級的測試信息對被集成環(huán)境具有更好的適應(yīng)性,能被更高層電路模塊的測試開發(fā)高效率地復(fù)用;研究基于復(fù)用的測試集成和優(yōu)化技術(shù),利用已有模塊測試信息,集成 出更高層模塊的測試并保證其可復(fù)用性等。

作者:Stefano Angioni


StarCore LLC公司

Gabe Ahn


VaST系統(tǒng)技術(shù)公司

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
午夜国产精品视频| 91久久久在线| 亚洲福利国产精品| 国产在线播放一区二区三区| 国产精品美女久久久久av超清 | 午夜亚洲福利| 亚洲综合日韩中文字幕v在线| 一本色道综合亚洲| 亚洲亚洲精品在线观看| 亚洲一区二区3| 亚洲欧美综合精品久久成人| 亚洲永久网站| 欧美一区二区成人6969| 欧美呦呦网站| 久久久久国产精品www| 久久久久久欧美| 久久综合狠狠综合久久综合88| 久久亚洲欧美| 欧美国产日韩精品免费观看| 欧美激情一区二区三区四区| 欧美人与禽性xxxxx杂性| 欧美美女bb生活片| 欧美日韩国产区一| 国产精品久久久久久久久久免费 | 国产综合视频| 尤物在线观看一区| 亚洲二区视频| 亚洲精品护士| 亚洲一级电影| 欧美在线视频不卡| 亚洲国产99精品国自产| 亚洲美女诱惑| 亚洲性感美女99在线| 亚洲欧美日韩一区在线| 久久久久久穴| 欧美—级在线免费片| 国产精品r级在线| 国产日韩欧美综合一区| 在线观看不卡av| 99爱精品视频| 午夜一区在线| 亚洲精品之草原avav久久| 亚洲网址在线| 久久久久国产精品www| 欧美国产视频在线观看| 欧美午夜不卡在线观看免费 | 国产一区二区三区丝袜 | 午夜视频在线观看一区二区| 亚洲国产欧美一区二区三区久久 | 亚洲欧美经典视频| 久久久久久夜| 欧美日本在线看| 国产乱人伦精品一区二区| 在线观看视频一区| 中文日韩在线视频| 亚洲国产精品电影| 亚洲女女女同性video| 鲁大师成人一区二区三区| 欧美午夜理伦三级在线观看| 黑人极品videos精品欧美裸| 99国产精品视频免费观看| 久久黄色小说| 亚洲一二三区精品| 美日韩精品视频免费看| 国产精品国产三级国产a| 在线电影国产精品| 亚洲一区精品视频| 亚洲精品视频啊美女在线直播| 亚洲欧美视频在线观看| 欧美xx视频| 国产精品一页| 亚洲美女少妇无套啪啪呻吟| 欧美一区二区三区电影在线观看| 亚洲最新视频在线播放| 久久九九久精品国产免费直播| 欧美日韩中文| 亚洲第一在线综合在线| 欧美一区二区高清| 亚洲免费视频网站| 欧美精品在线视频观看| 激情五月婷婷综合| 亚洲欧美清纯在线制服| 亚洲私人黄色宅男| 欧美激情精品久久久久久久变态| 国内视频一区| 亚洲欧美一区二区精品久久久| 一区二区三区 在线观看视| 老司机午夜免费精品视频| 国产精品亚洲综合| aa日韩免费精品视频一| 最新高清无码专区| 久久精品夜色噜噜亚洲a∨| 国产精品日韩精品欧美在线| 日韩视频精品| 日韩一级免费| 欧美国产日本韩| 亚洲电影网站| 亚洲电影免费观看高清| 久久国产主播精品| 国产精品日韩久久久| 宅男噜噜噜66国产日韩在线观看| 亚洲精选视频免费看| 久久综合伊人77777麻豆| 国产一区在线看| 午夜精品久久久久久久99水蜜桃 | 欧美图区在线视频| 亚洲精品欧美专区| 亚洲精品综合在线| 欧美国产精品专区| 亚洲日本视频| 日韩一级片网址| 欧美激情精品| 亚洲欧洲日韩综合二区| 亚洲美女视频| 欧美日产国产成人免费图片| 亚洲欧洲一区二区天堂久久 | 国产午夜精品一区理论片飘花| 亚洲伊人久久综合| 午夜精品在线| 国产精品在线看| 亚洲欧美在线aaa| 久久久99爱| 伊人男人综合视频网| 亚洲经典三级| 欧美激情精品| 夜夜嗨一区二区| 亚洲欧美综合v| 国产欧美一区二区精品秋霞影院| 亚洲欧美制服中文字幕| 久久精品一区二区三区不卡牛牛| 国产视频亚洲精品| 亚洲第一色中文字幕| 欧美69wwwcom| 亚洲精品资源| 亚洲欧美精品在线| 国产欧美日韩视频| 亚洲高清在线播放| 欧美精品系列| 亚洲亚洲精品三区日韩精品在线视频| 欧美一区二粉嫩精品国产一线天| 国产亚洲精品久久久久久| 亚洲大胆视频| 欧美伦理91i| 在线亚洲成人| 久久精品视频亚洲| 亚洲观看高清完整版在线观看| 99视频一区| 国产精品理论片在线观看| 羞羞视频在线观看欧美| 老色鬼久久亚洲一区二区| 亚洲精品欧美日韩| 先锋影音网一区二区| 精品69视频一区二区三区| 日韩一级网站| 国产乱人伦精品一区二区| 久久成人精品视频| 欧美激情综合网| 亚洲欧美视频| 欧美寡妇偷汉性猛交| 亚洲视频精品| 久久视频一区二区| 亚洲最新在线| 久久久久久久综合狠狠综合| 亚洲人体影院| 久久激情中文| 亚洲精品一区二区三| 羞羞色国产精品| 亚洲激情六月丁香| 香蕉久久a毛片| 亚洲狠狠丁香婷婷综合久久久| 亚洲综合色在线| 亚洲电影av在线| 欧美亚洲综合久久| 亚洲国产成人精品女人久久久| 亚洲免费在线视频| 亚洲第一色在线| 欧美亚洲网站| 亚洲三级免费观看| 久久久久网站| 亚洲视频每日更新| 欧美国产亚洲另类动漫| 欧美一区二区国产| 欧美午夜宅男影院在线观看| 欧美三级网址| 一区二区在线视频观看| 最新中文字幕亚洲| 国产精品一区二区a| 99热精品在线观看| 激情综合色丁香一区二区| 亚洲一区在线直播| 亚洲国产精品电影在线观看| 欧美一级淫片播放口| 亚洲全部视频| 鲁大师影院一区二区三区| 午夜精品久久久久久久99黑人| 欧美日韩福利在线观看| 亚洲国产精品成人综合| 国产区亚洲区欧美区| 亚洲视频在线观看网站| 亚洲激情偷拍|