一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

自動(dòng)性能測(cè)量和時(shí)序分析有助于軍事嵌入式系統(tǒng)避免過早過時(shí)

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:ANDREW COOMBES ? 2022-11-08 11:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

陸地、海洋和空中軍事嵌入式系統(tǒng)的持續(xù)成功取決于修改系統(tǒng)以滿足新興需求的能力。隨著時(shí)間的推移,對(duì)基于軟件的系統(tǒng)累積的修改會(huì)導(dǎo)致該系統(tǒng)的性能下降。最終,由此產(chǎn)生的性能下降使系統(tǒng)開發(fā)人員可以選擇放棄計(jì)劃的新功能或更換硬件并接受早期過時(shí)。還有另一種選擇。自動(dòng)性能測(cè)量和時(shí)序分析技術(shù)為開發(fā)人員提供了優(yōu)化累積修改導(dǎo)致的大部分性能下降的工具,從而避免放棄功能或過早過時(shí)。

軍事嵌入式系統(tǒng)在其生命周期中通常會(huì)多次增強(qiáng)。其中許多增強(qiáng)功能都是軟件更新。隨著時(shí)間的推移,軟件更新累積起來增加了對(duì)計(jì)算平臺(tái)的需求。這可能導(dǎo)致硬件的功能不足以滿足應(yīng)用程序需求,并可能導(dǎo)致間歇性故障。

然后,系統(tǒng)開發(fā)人員面臨著艱難的選擇,要么放棄計(jì)劃的新功能,導(dǎo)致功能衰減,要么更換硬件(即早期過時(shí))。

一個(gè)可行的替代方案需要確定高影響、低風(fēng)險(xiǎn)的策略來優(yōu)化軟件,從而最大限度地延長(zhǎng)計(jì)算平臺(tái)的使用壽命。此替代方案包括自動(dòng)性能測(cè)量和時(shí)序分析。

性能問題

軍用嵌入式系統(tǒng),尤其是航空電子系統(tǒng),如BAE系統(tǒng)鷹的任務(wù)控制計(jì)算機(jī),通常是實(shí)時(shí)嵌入式系統(tǒng)。實(shí)時(shí)系統(tǒng)是不同的,因?yàn)樗鼈兊恼_行為既取決于其操作在邏輯上是否正確,也取決于執(zhí)行這些操作的時(shí)間。開發(fā)這些系統(tǒng)的工程師必須能夠提供令人信服的證據(jù),證明軟件始終在其時(shí)間限制內(nèi)執(zhí)行。

軟件的本質(zhì)意味著每次執(zhí)行時(shí),它都可能采用不同的代碼路徑,從而導(dǎo)致不同的執(zhí)行時(shí)間。即使以相同的方式使用系統(tǒng),內(nèi)部狀態(tài)的差異也可能意味著用戶看到的執(zhí)行時(shí)間差異很大。正因?yàn)槿绱?,完全有可能在不發(fā)現(xiàn)任何時(shí)序問題的情況下嚴(yán)格測(cè)試軟件,然后在實(shí)際使用中遇到導(dǎo)致重大時(shí)序問題的情況。因此,為了確保系統(tǒng)始終滿足其執(zhí)行時(shí)間,有必要建立其最壞情況執(zhí)行時(shí)間(WCET),這也是DO-178B的考慮因素。

查找最壞情況的執(zhí)行時(shí)間

測(cè)量是一種通常用來獲得實(shí)時(shí)系統(tǒng)定時(shí)行為置信度的方法。為了測(cè)量時(shí)序,工程師通常將檢測(cè)點(diǎn)放在他們想要測(cè)量的代碼段的開頭和結(jié)尾。這些點(diǎn)通過切換輸出端口(通過示波器或邏輯分析儀監(jiān)控)或通過讀取片內(nèi)定時(shí)器并將生成的時(shí)間戳記錄在存儲(chǔ)器中來記錄經(jīng)過的時(shí)間。

遺憾的是,這些高水位線可能無法反映代碼執(zhí)行所需的最長(zhǎng)時(shí)間。當(dāng)測(cè)試尚未執(zhí)行通過代碼的最長(zhǎng)路徑時(shí),就會(huì)發(fā)生這種情況,如圖 1 所示。運(yùn)行兩個(gè)測(cè)試,如圖 1 所示,由綠色路徑和藍(lán)色路徑表示。從這些測(cè)試中觀察到的執(zhí)行時(shí)間分別為 110 和 85。盡管這些測(cè)試執(zhí)行了軟件中的所有代碼,但仍有第三條路徑(以紅色顯示),其執(zhí)行時(shí)間為 140,使其成為最長(zhǎng)路徑。

圖1:執(zhí)行路徑:高水位線可能不反映代碼執(zhí)行可能需要的最長(zhǎng)時(shí)間。當(dāng)測(cè)試尚未執(zhí)行通過代碼的最長(zhǎng)路徑時(shí),會(huì)發(fā)生這種情況。

pYYBAGNpzuiAT2eoAADCXmJttkQ340.jpg

此示例表明,僅執(zhí)行所有代碼不足以執(zhí)行最長(zhǎng)路徑。對(duì)于非平凡的代碼,很難設(shè)計(jì)出肯定會(huì)使代碼沿著最長(zhǎng)路徑行駛的測(cè)試。通過在代碼中的每個(gè)決策點(diǎn)添加檢測(cè)點(diǎn),可以避免這種情況。每當(dāng)執(zhí)行檢測(cè)點(diǎn)時(shí),都會(huì)記錄其 ID 和時(shí)間戳。在系統(tǒng)上運(yùn)行一系列測(cè)試會(huì)導(dǎo)致創(chuàng)建計(jì)時(shí)跟蹤。將跟蹤中的計(jì)時(shí)信息與有關(guān)代碼結(jié)構(gòu)的信息相結(jié)合,可以查找有關(guān)軟件計(jì)時(shí)行為的信息,包括 WCET 的預(yù)測(cè)。

對(duì)于可能涉及數(shù)百萬行代碼的典型軍事應(yīng)用,手動(dòng)檢測(cè)程序?qū)⒎浅YM(fèi)力;此外,通常生成的跟蹤數(shù)據(jù)量使得手動(dòng)嘗試將跟蹤數(shù)據(jù)與程序結(jié)構(gòu)信息相結(jié)合變得不可行。幸運(yùn)的是,程序檢測(cè)、跟蹤處理、將跟蹤數(shù)據(jù)與程序結(jié)構(gòu)信息相結(jié)合以及數(shù)據(jù)挖掘/表示等任務(wù)都可以實(shí)現(xiàn)自動(dòng)化。Rapita Systems 的 RapiTime 是一種自動(dòng)化性能測(cè)量和時(shí)序分析技術(shù),有助于解決獲取以 C、C++Ada 實(shí)現(xiàn)的大型軍事嵌入式系統(tǒng)的詳細(xì)時(shí)序信息的挑戰(zhàn)。

性能優(yōu)化

了解 WCET 只是解決方案的一部分:當(dāng)面臨軟件組件超出其執(zhí)行時(shí)間預(yù)算的問題時(shí),必須采取系統(tǒng)、科學(xué)的方法來優(yōu)化組件的性能。

軟件性能優(yōu)化需要回答三個(gè)問題:

優(yōu)化的最佳位置在哪里?

建議的優(yōu)化是否在改進(jìn)?

可以做出多大的改進(jìn)?

優(yōu)化的最佳位置在哪里?

在典型的復(fù)雜應(yīng)用中:

(1)大多數(shù)子程序?qū)嶋H上并不處于最壞情況的路徑上;它們對(duì)最壞情況的執(zhí)行時(shí)間沒有任何貢獻(xiàn)。優(yōu)化這些子計(jì)劃根本不會(huì)減少WCET。

(2)許多子計(jì)劃對(duì)WCET的貢獻(xiàn)很小,因此不能代表優(yōu)化的良好候選者。優(yōu)化這些子計(jì)劃所付出的努力不會(huì)構(gòu)成對(duì)資源的有效利用。

(3)少數(shù)子計(jì)劃占整個(gè)WCET的很大一部分(圖2)。因此,子程序是優(yōu)化的潛在候選者。

圖2:分項(xiàng)計(jì)劃對(duì)整個(gè)WCET的累計(jì)貢獻(xiàn)

poYBAGNpzumAQ196AABOpAhgVTg384.jpg

通過檢查WCET信息,工程師可以輕松識(shí)別相對(duì)較少的組件,在這些組件中,優(yōu)化可能會(huì)對(duì)整體最壞情況的執(zhí)行時(shí)間產(chǎn)生重大影響。

我在改進(jìn)事情嗎?

有時(shí),試圖通過猜測(cè)最壞情況的熱點(diǎn)在哪里,優(yōu)化該代碼,然后查看效果來縮短分析過程是很誘人的。然而,軟件優(yōu)化的經(jīng)驗(yàn)告訴我們,即使是對(duì)他們的代碼有深入了解的高技能軟件工程師,如果不訪問詳細(xì)的時(shí)間信息,也幾乎不可能確定WCET的重要貢獻(xiàn)者,從而確定優(yōu)化的最佳候選者。

通常看起來如此明顯 - “一定是進(jìn)行所有這些浮點(diǎn)計(jì)算的代碼部分是優(yōu)化的最佳候選者” - 而實(shí)際上,一些看似無害的賦值隱藏了一個(gè)幾乎占用所有時(shí)間的內(nèi)存副本。這個(gè)問題的答案很簡(jiǎn)單:不要猜測(cè),測(cè)量。然后重復(fù)測(cè)量以量化改進(jìn)(或缺乏改進(jìn))。

可以做出多大的改進(jìn)?

表 1 顯示了通過簡(jiǎn)單的軟件優(yōu)化過程可以獲得的最壞情況執(zhí)行時(shí)間的改進(jìn)水平。這些結(jié)果是使用RapiTime技術(shù)在BAE系統(tǒng)鷹的任務(wù)計(jì)算機(jī)上提供詳細(xì)的計(jì)時(shí)信息來實(shí)現(xiàn)的。這些優(yōu)化導(dǎo)致WCET總體下降了23%。

表 1:BAE系統(tǒng)鷹任務(wù)計(jì)算機(jī)的優(yōu)化改進(jìn)

pYYBAGNpzuqAThGSAAA8oltZJrA766.jpg

WCET 和性能優(yōu)化的好處

在軍事嵌入式系統(tǒng)修改期間訪問自動(dòng)性能測(cè)量和詳細(xì)的時(shí)序分析可以為開發(fā)人員提供許多優(yōu)勢(shì):

1. 采用系統(tǒng)科學(xué)的方法獲取系統(tǒng)定時(shí)行為的信心。

2. 有關(guān)最壞情況執(zhí)行時(shí)間的詳細(xì)信息可以快速確定優(yōu)化的候選對(duì)象。

3. 自動(dòng)測(cè)量可以評(píng)估候選優(yōu)化的有效性。

能夠進(jìn)行最佳時(shí)序優(yōu)化意味著避免不必要地過時(shí)硬件,并消除放棄計(jì)劃的新功能或更換硬件并接受早期過時(shí)的需求。

審核編輯:郭婷

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

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317685
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7653

    瀏覽量

    167441
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7663

    瀏覽量

    90828
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    普源示波器MSO5074在嵌入式系統(tǒng)聯(lián)合調(diào)試中的高效實(shí)踐

    、斷點(diǎn)調(diào)試)在面對(duì)復(fù)雜系統(tǒng)時(shí)效率低下,尤其在處理多信號(hào)同步、時(shí)序分析及瞬態(tài)故障時(shí),難以精準(zhǔn)定位問題。示波器作為電子信號(hào)觀測(cè)與分析的核心工具,其高性能
    的頭像 發(fā)表于 06-20 13:45 ?174次閱讀
    普源示波器MSO5074在<b class='flag-5'>嵌入式</b><b class='flag-5'>系統(tǒng)</b>聯(lián)合調(diào)試中的高效實(shí)踐

    入行嵌入式難度大不大?

    技術(shù)的不斷進(jìn)步,嵌入式工程師需要不斷學(xué)習(xí)新的技術(shù),如人工智能、物聯(lián)網(wǎng)等。同時(shí),提升自己的項(xiàng)目經(jīng)驗(yàn)和解決問題的能力,也有助于提高薪資待遇和職業(yè)發(fā)展空間。 (四)感興趣入行 如果你對(duì)嵌入式領(lǐng)域感興趣,那么
    發(fā)表于 04-17 10:14

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

    內(nèi)容包括:嵌入式系統(tǒng)的介紹、嵌入式SoC硬件系統(tǒng)概論、嵌入式系統(tǒng)軟件開發(fā)。適用于產(chǎn)品主管、
    發(fā)表于 03-12 13:58

    IAR分析嵌入式系統(tǒng)的市場(chǎng)前景

    作為全球領(lǐng)先的嵌入式系統(tǒng)開發(fā)軟件解決方案供應(yīng)商,IAR始終致力于為客戶提供高性能與高安全性的開發(fā)工具,支持不同行業(yè)的嵌入式產(chǎn)品開發(fā)。
    的頭像 發(fā)表于 02-26 15:34 ?587次閱讀

    嵌入式系統(tǒng)中的代碼優(yōu)化與壓縮技術(shù)

    。開發(fā)人員在編寫代碼時(shí),應(yīng)注重代碼的模塊化和復(fù)用性,避免不必要的重復(fù)代碼編寫。 嵌入式系統(tǒng)中的代碼優(yōu)化與壓縮技術(shù)相輔相成,通過合理運(yùn)用各種優(yōu)化策略和壓縮技術(shù),開發(fā)人員能夠在有限的資源條件下,打造出高
    發(fā)表于 02-26 15:00

    如何提高嵌入式代碼質(zhì)量?

    的情況下也必須保持穩(wěn)定的性能。 3. 硬件依賴:嵌入式軟件緊密依賴硬件平臺(tái),需要充分理解硬件特性才能編寫高效且穩(wěn)定的代碼。 了解這些特點(diǎn)有助于開發(fā)人員在編寫代碼時(shí)有針對(duì)性地優(yōu)化和調(diào)整,以滿足
    發(fā)表于 01-15 10:48

    自動(dòng)零件分析儀的原理和應(yīng)用

    。這有助于確保投入生產(chǎn)的原材料符合工藝要求,避免因原材料質(zhì)量問題導(dǎo)致后續(xù)產(chǎn)品性能不佳。 加工過程監(jiān)測(cè):在金屬加工過程中,分析儀能夠持續(xù)監(jiān)測(cè)金屬的組織結(jié)構(gòu)變化。例如,在鍛造、軋制等熱加工
    發(fā)表于 12-23 15:22

    新手怎么學(xué)嵌入式?

    的基礎(chǔ)上增加了面向?qū)ο缶幊痰奶匦裕?b class='flag-5'>有助于編寫更復(fù)雜的嵌入式程序。 3. 學(xué)習(xí)硬件知識(shí) 嵌入式技術(shù)與硬件緊密相關(guān),因此你需要了解一些基本的硬件知識(shí)。比如微控制器(MCU)、微處理器(MPU)的工作原理,了解
    發(fā)表于 12-12 10:51

    什么是嵌入式人工智能

    。嵌入式人工智能的目標(biāo)是使嵌入式系統(tǒng)具備智能化的感知、分析和響應(yīng)能力,從而實(shí)現(xiàn)自主決策、自適應(yīng)學(xué)習(xí)和智能交互等功能,以提高系統(tǒng)
    的頭像 發(fā)表于 12-11 09:23 ?1011次閱讀
    什么是<b class='flag-5'>嵌入式</b>人工智能

    嵌入式系統(tǒng)開發(fā)中的測(cè)試方法 嵌入式系統(tǒng)開發(fā)與AI結(jié)合應(yīng)用

    嵌入式系統(tǒng)開發(fā)中的測(cè)試方法 嵌入式系統(tǒng)開發(fā)是一個(gè)復(fù)雜的過程,涉及到硬件和軟件的緊密結(jié)合。測(cè)試是確保系統(tǒng)可靠性和
    的頭像 發(fā)表于 12-09 10:22 ?1363次閱讀

    AMD 面向嵌入式系統(tǒng)推出高能效 EPYC 嵌入式 8004 系列

    領(lǐng)先地位。 ? AMD EPYC 嵌入式 8004 系列處理器專為計(jì)算密集型嵌入式系統(tǒng)所設(shè)計(jì),可為高需求工作負(fù)載提供卓越性能,同時(shí)以緊湊的尺寸規(guī)格最大限度為空間和功率受限型應(yīng)用提升能效
    發(fā)表于 10-11 13:58 ?1067次閱讀

    嵌入式系統(tǒng)的未來趨勢(shì)有哪些?

    (ML)技術(shù)的快速發(fā)展,嵌入式系統(tǒng)將更多地整合這些先進(jìn)技術(shù),以支持智能決策和自動(dòng)化。在設(shè)備上直接運(yùn)行AI和ML模型,進(jìn)行圖像識(shí)別、自然語言處理、預(yù)測(cè)分析等任務(wù),將極大提升
    發(fā)表于 09-12 15:42

    關(guān)于一些有助于優(yōu)化電源設(shè)計(jì)的新型材料

    眾所周知,人們對(duì)更高電源效率的追求正在推動(dòng)性能的全方位提升。材料科學(xué)的進(jìn)步對(duì)于優(yōu)化電源設(shè)計(jì)和開發(fā)更高效、更緊湊和更可靠的解決方案發(fā)揮著關(guān)鍵作用。下文列出了一些有助于優(yōu)化電源設(shè)計(jì)的新材料。
    的頭像 發(fā)表于 08-29 15:26 ?767次閱讀

    嵌入式C編程常用的異常錯(cuò)誤處理

    嵌入式C編程中,異常錯(cuò)誤處理是確保系統(tǒng)穩(wěn)定性和可靠性的重要部分。以下是一些常見的異常錯(cuò)誤處理方法及其詳細(xì)說明和示例: 1. 斷言 (Assertions) 斷言用于在開發(fā)階段捕獲程序中的邏輯錯(cuò)誤
    發(fā)表于 08-06 14:32

    有助于提高網(wǎng)絡(luò)設(shè)備性能的FRAM SF25C20(MB85RS2MT)

    有助于提高網(wǎng)絡(luò)設(shè)備性能的FRAM SF25C20(MB85RS2MT)
    的頭像 發(fā)表于 07-25 09:49 ?602次閱讀
    <b class='flag-5'>有助于</b>提高網(wǎng)絡(luò)設(shè)備<b class='flag-5'>性能</b>的FRAM SF25C20(MB85RS2MT)