色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

集成嵌入式平臺加速了SoC和嵌入式系統(tǒng)的軟件調(diào)試和啟動

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Colin Walls ? 2022-06-28 15:31 ? 次閱讀

在硬件準(zhǔn)備就緒時(shí)開始嵌入式軟件開發(fā)的日子已經(jīng)一去不復(fù)返了。軟件的規(guī)模和復(fù)雜性不斷增加,因此需要更早的開始日期才能有機(jī)會按時(shí)發(fā)貨。考慮到與軟件開發(fā)相關(guān)的投資和風(fēng)險(xiǎn),公司必須確保在硅流片之前進(jìn)行適當(dāng)?shù)能浖?。不斷縮短的上市時(shí)間窗口進(jìn)一步加劇了這些挑戰(zhàn)。

唯一的解決方案是尋找執(zhí)行方法,因此在最終目標(biāo)硬件可用之前測試和調(diào)試軟件。甚至在硬件設(shè)計(jì)最終確定之前,開發(fā)通常就必須認(rèn)真開始。改進(jìn)硬件設(shè)計(jì)和驗(yàn)證以及加速軟件啟動的一種方法是將應(yīng)用程序部署在虛擬或仿真硬件上。

虛擬原型

“虛擬原型”一詞沒有單一、精確的定義。就本文而言,該術(shù)語將用于描述可以運(yùn)行嵌入式代碼的任何環(huán)境,從而在實(shí)際目標(biāo)系統(tǒng)可用之前實(shí)現(xiàn)有用的開發(fā)。讓我們仔細(xì)看看這些可能性。

在 PC 上運(yùn)行的本機(jī)代碼

這顯然是在 PC 上編譯和運(yùn)行代碼的第一步。工具很容易獲得、便宜,甚至是免費(fèi)的,而且 PC 提供了高級別的功能。這個(gè)環(huán)境非常適合測試算法和基本邏輯。與實(shí)際目標(biāo)相比,代碼在 PC 上的運(yùn)行速度可能會更快,因?yàn)?PC 的 CPU 可能比嵌入式處理器更強(qiáng)大。

除了時(shí)鐘速度之外,代碼時(shí)序沒有用處,因?yàn)?x86 處理器上的指令組合與大多數(shù)嵌入式設(shè)備非常不同。一旦代碼需要與硬件或?qū)崟r(shí)操作系統(tǒng) (RTOS) 交互,這個(gè)執(zhí)行環(huán)境就不再有用了。

本機(jī)代碼與外圍/系統(tǒng)模型一起運(yùn)行

大多數(shù) RTOS 制造商都提供了一個(gè)主機(jī)執(zhí)行環(huán)境,可以運(yùn)行特殊版本的 RTOS 或在 Windows 下模擬其功能。這與提供外圍設(shè)備功能模型的方法一起,可以取得進(jìn)一步的進(jìn)展。然而,時(shí)機(jī)仍然具有誤導(dǎo)性。

在評估板上執(zhí)行

大多數(shù)半導(dǎo)體供應(yīng)商都提供低成本評估板,以促進(jìn)其 CPU 的快速部署。商業(yè) RTOS 產(chǎn)品,如 Mentor Embedded 的 Nucleus RTOS 可以為此類電路板預(yù)配置,從而實(shí)現(xiàn)快速生產(chǎn)。

這種執(zhí)行環(huán)境很有吸引力,因?yàn)?CPU 速度和指令組合可能非常接近最終目標(biāo),這使得時(shí)間敏感代碼的測試變得可行。這種環(huán)境的準(zhǔn)確性取決于外圍設(shè)備與目標(biāo)設(shè)備的相似性。

使用指令集模擬器

盡管執(zhí)行真實(shí)芯片的代碼看起來很有吸引力,但它的缺點(diǎn)是需要添加代碼才能獲得某些軟件功能的可見性。這稱為“檢測”代碼。另一種方法是使用指令集模擬器 (ISS),它在逐條指令的基礎(chǔ)上模擬代碼執(zhí)行。ISS 可以以接近實(shí)時(shí)的速度運(yùn)行,并提供精確、高度可見的代碼執(zhí)行。實(shí)際上,當(dāng) ISS 跟蹤仿真期間消耗的時(shí)鐘周期時(shí),可以停止實(shí)時(shí)。

大多數(shù) ISS 產(chǎn)品允許某種功能外圍建模,這使得軟件開發(fā)取得重大進(jìn)展。

具有外圍設(shè)備硬件描述語言模型的 ISS(協(xié)同仿真)

硬件是使用硬件描述語言 (HDL) 設(shè)計(jì)的,例如 VHDL 或 Verilog。設(shè)計(jì)人員經(jīng)常使用仿真器來驗(yàn)證他們的 HDL 設(shè)計(jì),并且當(dāng)今的許多開發(fā)工具將 ISS 與 HDL 仿真器相結(jié)合。這使代碼能夠在與看似真實(shí)的硬件交互的準(zhǔn)確 CPU 環(huán)境中執(zhí)行。軟件開發(fā)人員可以使用最終目標(biāo)系統(tǒng)的 HDL 模型來開發(fā)與硬件密切交互的驅(qū)動程序和引導(dǎo)代碼等軟件組件。

協(xié)同仿真的缺點(diǎn)是更高的精度是以降低執(zhí)行速度為代價(jià)的。

完整系統(tǒng)的 HDL 模型,包括 CPU

最準(zhǔn)確的虛擬原型應(yīng)該是整個(gè)系統(tǒng)的 HDL 模型,包括 CPU 和外圍設(shè)備,這似乎是合乎邏輯的。三個(gè)原因解釋了為什么情況并非如此:

這種模型上的代碼執(zhí)行速度將非常緩慢。完成任何有用的事情都不夠快。

CPU 的 HDL 不太可能可用。

由于國際空間站很可能經(jīng)過精心設(shè)計(jì),因此使用它沒有任何缺點(diǎn),但確實(shí)將性能提高到了有用的水平。

具有 SystemC 外設(shè)模型的 ISS

為了允許可以適應(yīng)軟件執(zhí)行的適當(dāng)仿真速度,可以使用諸如 SystemC(C/C++ 類庫)之類的更高抽象語言對系統(tǒng)進(jìn)行建模。更高抽象級別的建模使用松散或近似的時(shí)序。這種時(shí)序適用于軟件執(zhí)行和性能分析。

硬件仿真

到目前為止討論的虛擬原型技術(shù)可以繪制在代碼執(zhí)行速度與精度的關(guān)系圖上,并且基本上會產(chǎn)生一條直線(參見圖 1)。開發(fā)人員可以從一系列可能性中進(jìn)行選擇:一個(gè)極端是快速、抽象的模擬,另一個(gè)是緩慢、精確的模擬。然而,另一種技術(shù)逆勢而上,偏離了直線。

圖 1:除仿真外,虛擬原型環(huán)境在代碼執(zhí)行速度與精度的關(guān)系圖中形成一條直線。

pYYBAGK6rmiABh2rAAR1XZNcj1A941.png

盡管只需使用功能強(qiáng)大的臺式計(jì)算機(jī)就可以降低 HDL 仿真的速度限制,但這也有限制,設(shè)計(jì)人員總是想要更多。電子設(shè)計(jì)自動化 (EDA) 社區(qū)的回應(yīng)是開發(fā)仿真。仿真器是一種專門的硬件,實(shí)際上提供了運(yùn)行 HDL 仿真的專用環(huán)境。這通常使用 FPGA 來實(shí)現(xiàn)。

使用 ISS、SystemC 模型和模擬一些外圍硬件的仿真器構(gòu)建的集成平臺打破常規(guī),提供精確、高性能的執(zhí)行環(huán)境。運(yùn)行虛擬目標(biāo)和仿真可以更深入地了解硬件和軟件執(zhí)行線程,并實(shí)現(xiàn)更高效的調(diào)試和系統(tǒng)性能分析。

超越調(diào)試

嵌入式軟件開發(fā)人員傳統(tǒng)上專注于讓他們的代碼正常運(yùn)行。在最高抽象級別,這導(dǎo)致設(shè)備以符合設(shè)計(jì)規(guī)范的可預(yù)測方式響應(yīng)刺激。這并沒有改變,但開發(fā)人員的簡介正在變得更廣泛。對軟件開發(fā)人員工作量的最重要補(bǔ)充是對功率的考慮。

低功耗設(shè)計(jì)之所以成為熱門話題,有幾個(gè)原因。雖然這在歷史上一直是硬件問題,但今天的復(fù)雜設(shè)計(jì)為根據(jù)系統(tǒng)的當(dāng)前狀態(tài)、軟件和實(shí)時(shí)環(huán)境調(diào)整功耗提供了許多機(jī)會。該狀態(tài)由軟件確定;因此,電源管理正在成為一個(gè)軟件問題。

使用虛擬原型在硬件可用性之前開發(fā)和調(diào)試電源管理代碼是一項(xiàng)艱巨的任務(wù),但這正是我們所需要的。當(dāng)然,原則上都是可以的;硬件模擬可以得出功耗數(shù)據(jù),并且可以測量CPU的實(shí)際功耗。這只是一個(gè)以有意義的方式將此信息傳達(dá)給軟件開發(fā)人員的問題。

前進(jìn)的道路

任何認(rèn)為軟件和硬件開發(fā)是獨(dú)立活動的想法都必須摒棄。好消息是,片上系統(tǒng) (SoC) 生產(chǎn)商現(xiàn)在認(rèn)識到需要先于芯片進(jìn)行嵌入式軟件開發(fā)。壞消息是,盡管傳統(tǒng)的 EDA 硬件工具可以通過仿真和仿真運(yùn)行嵌入式軟件,但它們并不關(guān)注嵌入式系統(tǒng)設(shè)計(jì)的關(guān)鍵問題,包括操作系統(tǒng)上下文、多核和線程處理以及緩存考慮。

需要一種集成方法來提供設(shè)計(jì)為以良好協(xié)調(diào)的方式工作并以硬件和軟件團(tuán)隊(duì)都熟悉的方式呈現(xiàn)信息的工具。軟件開發(fā)人員必須能夠使用他們用來開發(fā)將在 FPGA 原型和具有集成技術(shù)的最終芯片上運(yùn)行的應(yīng)用程序所利用的相同本地工具更早地與硬件進(jìn)行交互。Mentor Embedded Platform 中提供了一種這樣的統(tǒng)一方法,它結(jié)合了 Mentor Graphics 的熟悉技術(shù),例如使用 Vista 硬件調(diào)試和分析的虛擬原型設(shè)計(jì)以及用于軟件開發(fā)的 Sourcery CodeBench 集成開發(fā)環(huán)境 (IDE)。通過使用這個(gè)集成嵌入式平臺進(jìn)行早期軟件開發(fā),開發(fā)人員可以使用虛擬和仿真硬件進(jìn)行性能分析,

這種跨學(xué)科的早期研究改進(jìn)了設(shè)計(jì)硬件并加速了 SoC 和嵌入式系統(tǒng)的軟件調(diào)試和啟動。軟件開發(fā)人員和硬件工程師都同意這是朝著正確方向邁出的一步。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21761

    瀏覽量

    604448
  • 嵌入式
    +關(guān)注

    關(guān)注

    5087

    文章

    19149

    瀏覽量

    306231
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4183

    瀏覽量

    218532
收藏 人收藏

    評論

    相關(guān)推薦

    Vitis里如何創(chuàng)建嵌入式軟件工程

    Vitis可以為異構(gòu)平臺的應(yīng)用實(shí)現(xiàn)加速。其實(shí),Vitis也能完美的支持嵌入式軟件開發(fā)。下面以MicroZed單板為例,介紹在Vitis里如何創(chuàng)建嵌入
    的頭像 發(fā)表于 11-04 12:03 ?5573次閱讀
    Vitis里如何創(chuàng)建<b class='flag-5'>嵌入式</b><b class='flag-5'>軟件</b>工程

    嵌入式系統(tǒng)調(diào)試技巧

    調(diào)試與設(shè)計(jì)一樣是嵌入式系統(tǒng)不可或缺的一部分。兩者都可以正確地稱為同一枚硬幣的兩個(gè)面??紤]到物聯(lián)網(wǎng)領(lǐng)域嵌入式系統(tǒng)的最新發(fā)展,工程師在
    發(fā)表于 07-21 12:08 ?2216次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>調(diào)試</b>技巧

    嵌入式系統(tǒng)的應(yīng)用與設(shè)計(jì)

    ;nbsp;   當(dāng)前的嵌入式系統(tǒng)設(shè)計(jì)的前沿應(yīng)當(dāng)就是嵌入式系統(tǒng)芯片(SOC)。
    發(fā)表于 10-15 16:25

    嵌入式系統(tǒng)的硬件平臺組成

    和DSP協(xié)處理器(也可內(nèi)部集成),以完成高性能信號處理?! ‰S著計(jì)算機(jī)技術(shù)、微電子技術(shù)、應(yīng)用技術(shù)的不斷發(fā)展及納米芯片加工工藝技術(shù)的發(fā)展,以微處理器為核心的集成多種功能的SoC系統(tǒng)芯片已
    發(fā)表于 06-20 15:25

    基于ARM的嵌入式系統(tǒng)軟件設(shè)計(jì)

    嵌入式軟件啟動代碼嵌入式軟件開發(fā)關(guān)鍵技術(shù)嵌入式實(shí)時(shí)操作系統(tǒng)
    發(fā)表于 03-25 15:03 ?203次下載
    基于ARM的<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)軟件</b>設(shè)計(jì)

    汽車嵌入式SoC系統(tǒng)的應(yīng)用與發(fā)展

    汽車嵌入式SoC系統(tǒng)的應(yīng)用與發(fā)展 嵌入式系統(tǒng)是泛計(jì)算領(lǐng)域的重要組成部分,是嵌入式對象宿主體系中
    發(fā)表于 10-26 14:08 ?1446次閱讀
    汽車<b class='flag-5'>嵌入式</b><b class='flag-5'>SoC</b><b class='flag-5'>系統(tǒng)</b>的應(yīng)用與發(fā)展

    嵌入式系統(tǒng)的遠(yuǎn)程調(diào)試

      1 基本方法   圖1(a)是傳統(tǒng)的嵌入式調(diào)試方法:主機(jī)PC通過串口與從機(jī)嵌入式系統(tǒng)相連,接收從嵌入式
    發(fā)表于 08-30 10:23 ?1040次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>的遠(yuǎn)程<b class='flag-5'>調(diào)試</b>

    嵌入式系統(tǒng)U盤實(shí)時(shí)啟動技術(shù)

    本文給出了實(shí)現(xiàn)嵌入式實(shí)時(shí)系統(tǒng)優(yōu)盤啟動嵌入式主機(jī)硬件結(jié)構(gòu)、軟件協(xié)議棧以及主要程序流程,探討了實(shí)現(xiàn)嵌入式
    發(fā)表于 07-20 15:09 ?1753次閱讀

    嵌入式系統(tǒng)開發(fā)圣經(jīng)

    本書內(nèi)容主要包含嵌入式系統(tǒng)介紹、嵌入式Soc硬件系統(tǒng)概論、嵌入式
    發(fā)表于 03-22 16:30 ?5次下載

    嵌入式軟件是什么意思_嵌入式軟件的分類有哪些

    本文首先闡述嵌入式軟件的概念,其次介紹嵌入式軟件的特征,最后介紹
    發(fā)表于 08-31 15:54 ?1.6w次閱讀

    嵌入式軟件的開發(fā)流程_嵌入式軟件調(diào)試

    本文首先介紹嵌入式軟件的發(fā)展,其次闡述嵌入式軟件的開發(fā)流程,最后介紹
    發(fā)表于 08-31 16:02 ?6342次閱讀

    如何實(shí)現(xiàn)嵌入式系統(tǒng)遠(yuǎn)程調(diào)試

    嵌入式系統(tǒng)隨著目前科技的發(fā)展,正逐步融入人們的生活中。對于嵌入式系統(tǒng),我們應(yīng)該有所了解。就專業(yè)人員而言,他們對嵌入式
    的頭像 發(fā)表于 11-22 11:55 ?5380次閱讀
    如何實(shí)現(xiàn)<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>遠(yuǎn)程<b class='flag-5'>調(diào)試</b>

    嵌入式系統(tǒng)軟件組成

    軟件固化存儲。在嵌入式系統(tǒng)中,操作系統(tǒng)和應(yīng)用系統(tǒng)集成與計(jì)算機(jī)硬件系統(tǒng)中,
    發(fā)表于 10-20 12:36 ?4次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>的<b class='flag-5'>軟件</b>組成

    嵌入式系統(tǒng)筆記

    目錄第一講 簡單介紹第二講 嵌入式系統(tǒng)結(jié)構(gòu)第三講 基于ARm架構(gòu)的嵌入式微處理器?第四講 SOC第五講 嵌入式
    發(fā)表于 10-20 14:51 ?7次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>筆記

    嵌入式Linux專題(一)——嵌入式Linux系統(tǒng)構(gòu)成及啟動流程

    本文簡單的介紹什么是嵌入式系統(tǒng),以及嵌入式Linux的系統(tǒng)結(jié)構(gòu),并且簡單的介紹Linux的
    發(fā)表于 11-02 12:36 ?15次下載
    <b class='flag-5'>嵌入式</b>Linux專題(一)——<b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>系統(tǒng)</b>構(gòu)成及<b class='flag-5'>啟動</b>流程
    主站蜘蛛池模板: 国产三级在线观看免费| 国偷自产AV一区二区三区健身房| 夜夜草导航| 我在厨房摸岳的乳HD在线观看| 人妻久久久精品99系列AV| 欧美精品一区二区蜜臀亚洲| 巨胸美乳中文在线观看| 久久国产精品萌白酱免费| 好看的电影网站亚洲一区| 国语自产一区第二页| 国产亚洲欧洲日韩在线观看| 国产日韩亚洲精品视频| 国产亚洲精品AAAAAAA片| 国产色青青视频在线观看 | porono日本xxx| 99视频这里只有精品国产| 99热只有这里有精品| DASD-700美谷朱里| 二色AV天堂在线| 国产精品一久久香蕉国产线看| 国产欧美日韩国产高清| 国产在线精品亚洲第一区| 精选国产AV精选一区二区三区 | 射漂亮黑b丝女| 向日葵视频app下载18岁以下勿看| 小色哥影院| 亚洲香蕉视频在线播放| 中文字幕人成人乱码亚洲影视S| 5g在线视讯年龄确认海外禁止进入 | 免费在线看视频| 青青伊人精品| 我强进了老师身体在线观看 | 国产黄大片在线视频| 国产日韩欧美另类| 久久国产影院| 内射一区二区精品视频在线观看| 欧美日韩综合一区| 天堂草原天黑黑| 一区三区三区不卡| JAPANBABES11学生老师| 国产精品97久久AV麻豆|