可用于嵌入式軟硬件開(kāi)發(fā)和系統(tǒng)架構(gòu)的虛擬系統(tǒng)原型
出處:oldzhang 發(fā)布于:2008-08-21 17:31:32
復(fù)雜嵌入式系統(tǒng)已日益普及并成為我們?nèi)粘I畹囊徊糠?。一輛汽車平均包含80個(gè)每秒能執(zhí)行上億條指令的嵌入式處理器。以一個(gè)單獨(dú)的DSP上以軟件方式實(shí)現(xiàn)移動(dòng)調(diào)制解調(diào)器的配置為例,現(xiàn)在的手機(jī)包含2到4個(gè)處理器。
然而隨著嵌入式系統(tǒng)日益普及,設(shè)計(jì)危機(jī)也逐漸凸現(xiàn)。統(tǒng)計(jì)數(shù)據(jù)顯示,近40%的嵌入式系統(tǒng)開(kāi)發(fā)延遲,還有超過(guò)9%的開(kāi)發(fā)終被取消。
這些統(tǒng)計(jì)數(shù)據(jù)的矛頭都指向基本工程方法的失敗。在傳統(tǒng)的開(kāi)發(fā)步驟中,硬件設(shè)計(jì)要超前軟件開(kāi)發(fā),而嵌入式系統(tǒng)中軟件正日益占據(jù)關(guān)鍵地位。因而,傳統(tǒng)開(kāi)發(fā)步驟在嵌入式系統(tǒng)開(kāi)發(fā)中遭遇失敗并不讓人意外。何況一個(gè)產(chǎn)品的上市時(shí)間也越來(lái)越短(后文舉出的手機(jī)開(kāi)發(fā)的例子總開(kāi)發(fā)時(shí)間還不到一年),這又給嵌入式系統(tǒng)的開(kāi)發(fā)雪上加霜。很明顯,嵌入式設(shè)計(jì)的方法和工具需要進(jìn)行革命。
也就是說(shuō),系統(tǒng)架構(gòu)、硬件實(shí)現(xiàn)和軟件實(shí)現(xiàn)各階段之間的關(guān)系需要調(diào)整,而這種需求恰好正是目前的電子系統(tǒng)級(jí)設(shè)計(jì)(ESL)中受關(guān)注的問(wèn)題。然而,現(xiàn)有的大多數(shù)基于ESL的方法都只能提供部分解決方案。我們需要的是一套全新的設(shè)計(jì)模式,一套能夠?qū)θ到y(tǒng)建模的方法,以促進(jìn)系統(tǒng)架構(gòu)研究并實(shí)現(xiàn)軟硬件協(xié)同設(shè)計(jì),以允許設(shè)計(jì)人員從原始設(shè)計(jì)不斷改進(jìn),直到終實(shí)現(xiàn)系統(tǒng)。
至今為止,大多數(shù)將SoC系統(tǒng)級(jí)設(shè)計(jì)自動(dòng)化為RTL實(shí)現(xiàn)的嘗試都存在設(shè)計(jì)度和設(shè)計(jì)生產(chǎn)力不足的缺陷。早期那些力圖將C、C++和SystemC自動(dòng)化為硬件建模語(yǔ)言(能將順序軟件語(yǔ)義翻譯為基于狀態(tài)機(jī)的并行硬件語(yǔ)言) 的工具,不但要求開(kāi)發(fā)人員創(chuàng)建并維護(hù)功能事務(wù)級(jí)模型的多個(gè)“視角”,而且要添加定時(shí)還需要更多的“視角”。維護(hù)這些“多視角”本身就有問(wèn)題,而這些視角之間在時(shí)序和功能方面的不一致還會(huì)導(dǎo)致驗(yàn)證錯(cuò)誤。此外,終將其轉(zhuǎn)為RTL的過(guò)程主要仍是一個(gè)手工操作的過(guò)程。
要使SoC設(shè)計(jì)走出困境,很重要的一點(diǎn)就是讓設(shè)計(jì)師們能夠采用一種在系統(tǒng)架構(gòu)階段設(shè)計(jì)的定時(shí)的高性能系統(tǒng)級(jí)模型,然后隨著開(kāi)發(fā)人員從架構(gòu)階段進(jìn)入軟硬件協(xié)同開(kāi)發(fā)和驗(yàn)證階段,改進(jìn)而不是丟棄這個(gè)模型。盡管暫時(shí)還沒(méi)有一種全自動(dòng)化的工具鏈能夠?qū)崿F(xiàn)從系統(tǒng)架構(gòu)到RTL實(shí)現(xiàn)這一系列完整的設(shè)計(jì)任務(wù),但一些嵌入式設(shè)計(jì)方案供應(yīng)商已經(jīng)開(kāi)始了成功的嘗試,其中一種很有前途的技術(shù)就是虛擬系統(tǒng)原型技術(shù)。

圖1:每個(gè)公司一年里啟動(dòng)的項(xiàng)目提前完成,推遲完成,按時(shí)完成和取消所占的百分比(平均每個(gè)公司啟動(dòng)項(xiàng)目所占百分比)。
虛擬系統(tǒng)原型(VSP)是一種基于軟件仿真的電子系統(tǒng)模型,其中可以包含一個(gè)或多個(gè)處理器、總線、硬件外設(shè),甚至可以包含作為整個(gè)系統(tǒng)一部分的機(jī)械或模擬子系統(tǒng)模型。但重要的是,VSP運(yùn)行的是與真實(shí)硬件相同的經(jīng)過(guò)編譯和鏈接的目標(biāo)代碼,因而能夠準(zhǔn)確預(yù)測(cè)系統(tǒng)在實(shí)際情況下的表現(xiàn)。此外,VSP還是一種周期(cycle-accurate)的模型,因此,被設(shè)計(jì)的系統(tǒng)可以根據(jù)對(duì)實(shí)時(shí)性的要求建模。
一旦模型建立,硬件和軟件開(kāi)發(fā)就可以同時(shí)啟動(dòng),這樣一來(lái),既減少了開(kāi)發(fā)所用的總資源,也縮短了開(kāi)發(fā)周期。
傳統(tǒng)的“丟棄式”系統(tǒng)級(jí)模型在硬件和軟件實(shí)現(xiàn)階段就過(guò)時(shí)了,而VSP仍可繼續(xù)用于硬件驗(yàn)證。由于這一的模型是周期(cycle-accurate)的,因而RTL實(shí)現(xiàn)可以在任何時(shí)候換入 (swap in) 。而且,在RTL模型換入后, 為了進(jìn)行性能分析或者更快地運(yùn)行更大的軟件實(shí)體,還可以用原來(lái)的VSP模型將RTL模型換出。系統(tǒng)級(jí)測(cè)試范例是作為可執(zhí)行系統(tǒng)規(guī)范的一部分生成的,然后,隨著軟硬件開(kāi)發(fā)過(guò)程的進(jìn)展,再由上至下地生成結(jié)構(gòu)、模塊和單元測(cè)試。
一點(diǎn),VSP的升級(jí)和分發(fā)也很容易。對(duì)那些在地域上分布較零散的開(kāi)發(fā)團(tuán)隊(duì)而言,通過(guò)網(wǎng)絡(luò)發(fā)送軟件模型也比運(yùn)送電路板更簡(jiǎn)單。這樣一來(lái),工程師只有在的集成階段才需要真實(shí)的硬件和芯片。而且,由于軟硬件開(kāi)發(fā)采用的是同一個(gè)虛擬系統(tǒng)原型,因此集成起來(lái)也更快和更容易。
虛擬系統(tǒng)原型在無(wú)線設(shè)計(jì)中的應(yīng)用舉例
在單芯片系統(tǒng)的開(kāi)發(fā)中,無(wú)線系統(tǒng)設(shè)計(jì)是復(fù)雜也是競(jìng)爭(zhēng)激烈的領(lǐng)域。越來(lái)越多的無(wú)線設(shè)計(jì)公司開(kāi)始利用虛擬系統(tǒng)原型技術(shù)提高設(shè)計(jì)生產(chǎn)力、縮短上市時(shí)間,并降低風(fēng)險(xiǎn)。以下介紹的無(wú)線設(shè)計(jì)在一塊芯片中容納了兩個(gè)處理器內(nèi)核、一個(gè)DSP、多級(jí)存儲(chǔ)器、6種復(fù)雜的多層總線結(jié)構(gòu)、一個(gè)實(shí)時(shí)操作系統(tǒng)、超過(guò)30個(gè)外設(shè),外加超過(guò)兩百萬(wàn)行代碼。這款手機(jī)的SoC具備GSM控制功能、多媒體功能、二維和三維圖形處理功能、相機(jī)接口,以及一系列諸如WiFi和USB之類的其他接口。

圖3:傳統(tǒng)的手機(jī)設(shè)計(jì)流程和利用虛擬系統(tǒng)原型的手機(jī)設(shè)計(jì)流程的比較
以前的項(xiàng)目結(jié)束后,這個(gè)設(shè)計(jì)小組決定必須改變傳統(tǒng)的“先硬件后軟件”的設(shè)計(jì)方法才能滿足日益縮短的上市時(shí)間需求。
采用VSP的結(jié)果
他們選擇了VaST Systems提供的虛擬系統(tǒng)原型方案,這不但是一個(gè)高性能的方案,而且絲毫無(wú)損設(shè)計(jì)。從系統(tǒng)架構(gòu)階段直到軟硬件協(xié)同開(kāi)發(fā)和驗(yàn)證階段都可以采用同一個(gè)VaST處理器模型(虛擬系統(tǒng)原型的)。
根據(jù)配置的不同,VaST處理器模型在仿真單處理器時(shí),在保持原有的周期、寄存器和定時(shí)的同時(shí),速度在50到200MIPS之間;在仿真帶分層存儲(chǔ)器結(jié)構(gòu)和多級(jí)總線的多內(nèi)核系統(tǒng)時(shí),在保持周期的同時(shí)速度可達(dá)10到100MIPS。
首先,系統(tǒng)架構(gòu)師利用VSP進(jìn)行系統(tǒng)架構(gòu)研究和分析。VSP能夠運(yùn)行基于應(yīng)用的軟件,因此設(shè)計(jì)師可以據(jù)此考慮緩存的大小、處理器的處理能力等性能問(wèn)題,同時(shí)還可以檢查出系統(tǒng)中潛在的資源共享、同步和總線帶寬問(wèn)題。此外,利用VSP,設(shè)計(jì)小組還可以在真實(shí)系統(tǒng)的環(huán)境下檢查第三方IP。
有了VSP,軟件開(kāi)發(fā)人員可以提前幾個(gè)月開(kāi)始編寫(xiě)系統(tǒng)中的關(guān)鍵函數(shù)(例如系統(tǒng)初始化程序、硬件抽象層、RTOS/OS及其相關(guān)的設(shè)備驅(qū)動(dòng)程序、中間件軟件,甚至是嵌入式應(yīng)用的代碼),然后再進(jìn)入傳統(tǒng)的硬件、軟件開(kāi)發(fā)流程。
在使用VSP之后,這家公司發(fā)現(xiàn)他們的競(jìng)爭(zhēng)優(yōu)勢(shì)得到了很大提升,于是決定繼續(xù)將VSP技術(shù)作為其設(shè)計(jì)方法。
本文小結(jié)
嵌入式系統(tǒng)不論從數(shù)量還是從復(fù)雜度來(lái)說(shuō)都在飛速地發(fā)展,而且在嵌入式系統(tǒng)中,通過(guò)軟件實(shí)現(xiàn)的功能越來(lái)越多。
傳統(tǒng)的先硬件后軟件的設(shè)計(jì)方法對(duì)這種復(fù)雜的嵌入式系統(tǒng)開(kāi)發(fā)已不再適用。因?yàn)椴坏珡馁|(zhì)量還是從生產(chǎn)力的角度說(shuō),軟件和硬件都必須同時(shí)開(kāi)發(fā)和驗(yàn)證。
人們?cè)缙谒鞯挠密浖?lái)建模硬件系統(tǒng)的嘗試存在很多問(wèn)題,包括要求設(shè)計(jì)師創(chuàng)建并維護(hù)模型的多個(gè)“角度”。要解決這些問(wèn)題,硬件系統(tǒng)的軟件模型必需同時(shí)具備快速和準(zhǔn)確兩個(gè)特點(diǎn)。具備了這兩個(gè)特點(diǎn)的模型就有可能既適用于系統(tǒng)架構(gòu)階段,又能成為出色的軟硬件協(xié)同開(kāi)發(fā)參考模型。
VaST Systems提供的技術(shù)和方法能夠在不損失速度和的前提下提供快速準(zhǔn)確的虛擬處理器模型(嵌入式系統(tǒng)的)。已經(jīng)有設(shè)計(jì)團(tuán)隊(duì)采用了我們的系統(tǒng)原型,根據(jù)配置的不同,該模型在單處理器內(nèi)核系統(tǒng)中的仿真速度可達(dá)50到 200 MIPS,在帶分層存儲(chǔ)器結(jié)構(gòu)和多級(jí)總線的多內(nèi)核系統(tǒng)中可達(dá)10到 100 MIPS。

圖2:利用VSP技術(shù),軟件開(kāi)發(fā)可以在硬件就緒前9個(gè)月甚至更早開(kāi)始。
一家的手機(jī)嵌入式系統(tǒng)供應(yīng)商采用了虛擬系統(tǒng)原型 技術(shù),并在硬件就緒之前9個(gè)月就開(kāi)始了軟件開(kāi)發(fā)。用他們的話說(shuō),采用虛擬系統(tǒng)原型 技術(shù)可謂“用更少的成本和更短的開(kāi)發(fā)時(shí)間設(shè)計(jì)出更好的產(chǎn)品”。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- ARM技術(shù)架構(gòu)與應(yīng)用開(kāi)發(fā)實(shí)踐指南2026/1/6 10:40:19
- 嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)選型與移植技術(shù)指南2025/12/31 10:42:31
- 工業(yè)嵌入式系統(tǒng):通信接口技術(shù)選型與抗干擾設(shè)計(jì)實(shí)踐2025/12/15 14:36:53
- 深入解析嵌入式 OPENAMP 框架:開(kāi)啟異核通信新時(shí)代2025/7/22 16:27:29
- 一文快速了解OPENWRT基礎(chǔ)知識(shí)2025/7/14 16:59:04
- PCB焊盤與過(guò)孔設(shè)計(jì)核心實(shí)操規(guī)范(含可焊性與可靠性保障)
- 汽車電子常用電子元器件選型指南
- MOSFET驅(qū)動(dòng)與隔離方案設(shè)計(jì)
- 高溫環(huán)境下電源IC選型建議
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測(cè)試方法









