女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

如何有效使用RISC-V的跟蹤技術(shù)

半導(dǎo)體芯科技SiSC ? 來(lái)源:半導(dǎo)體芯科技SiSC ? 作者:半導(dǎo)體芯科技SiS ? 2023-08-29 11:07 ? 次閱讀

作者:IAR

嵌入式軟件開(kāi)發(fā)中,利用完整的應(yīng)用跟蹤,可為開(kāi)發(fā)人員分析其產(chǎn)品行為提供無(wú)限的可能性。通過(guò)對(duì)應(yīng)用程序的全面了解,他們可以跟蹤每一條指令,看看他們的應(yīng)用程序是否按照預(yù)期運(yùn)行,或者是否出現(xiàn)錯(cuò)誤或漏洞。那么,如何才能最大化地利用現(xiàn)有可用的RISC-V跟蹤呢?

什么是跟蹤?

與傳統(tǒng)的通過(guò)設(shè)置斷點(diǎn)、printf等進(jìn)行調(diào)試相比,跟蹤更像是在不打擾的情況下觀(guān)察你的應(yīng)用程序。基本上,開(kāi)發(fā)人員可以在不干擾程序的情況下觀(guān)察整個(gè)程序的工作情況。跟蹤包括完整的指令執(zhí)行流程(不需要printf也不需要UART),一旦跟蹤數(shù)據(jù)被捕獲,你可以快速追溯,并隔離異常和硬故障。

這使得尋找那些罕見(jiàn)的、依賴(lài)于執(zhí)行順序的漏洞變得更加容易,因?yàn)檫@提供了一串線(xiàn)索:程序執(zhí)行是怎么樣的,按什么順序執(zhí)行的。這使開(kāi)發(fā)人員能夠準(zhǔn)確地了解它們是如何以及為什么總是會(huì)停在一串特殊的代碼上。你可以迅速發(fā)現(xiàn)異常和硬故障,進(jìn)而發(fā)現(xiàn)那些罕見(jiàn)的、依賴(lài)于執(zhí)行順序的錯(cuò)誤。如果沒(méi)有跟蹤,當(dāng)你的程序出現(xiàn)崩潰,就很難重現(xiàn)實(shí)際發(fā)生的情況。

然而,跟蹤不僅僅是為了發(fā)現(xiàn)錯(cuò)誤。跟蹤還可以進(jìn)行代碼剖析、代碼覆蓋等,你可以實(shí)時(shí)了解你的設(shè)備的行為。性能和覆蓋率監(jiān)測(cè)是強(qiáng)大的功能,當(dāng)你有跟蹤功能時(shí),就可以實(shí)現(xiàn)這些強(qiáng)大的功能。如果你的帶寬夠?qū)挘踔量梢詫?shí)時(shí)跟蹤流整合到你的調(diào)試器中。

RISC-V的跟蹤技術(shù)

RISC-V組織的主要關(guān)注點(diǎn)之一是為RISC-V制定標(biāo)準(zhǔn)化的規(guī)范。對(duì)所有RISC-V成員開(kāi)放的各種工作小組,目前正專(zhuān)注于開(kāi)發(fā)制定這些規(guī)范。其中一個(gè)例子是處理器跟蹤工作組,該工作組在2020年2月批準(zhǔn)發(fā)布了處理器跟蹤規(guī)范。另一個(gè)例子是Nexus跟蹤小組,該小組致力于研究如何使用Nexus IEEE-ISTO 5001?標(biāo)準(zhǔn)針對(duì)RISC-V內(nèi)核定義的跟蹤技術(shù)。

這類(lèi)工作將持續(xù)進(jìn)行,因?yàn)楸仨毧紤]跟蹤標(biāo)準(zhǔn)的所有方面。其中,包括跟蹤控制的輸出格式。最低的目標(biāo)是與更成熟的架構(gòu)的現(xiàn)有標(biāo)準(zhǔn)看齊。如果RISC-V跟蹤規(guī)范做得好,它將使現(xiàn)有的跟蹤查看器、硬件跟蹤探頭和跟蹤分析工具易于采用。目前已經(jīng)有一些實(shí)現(xiàn)的方案,但RISC-V架構(gòu)應(yīng)該在從物聯(lián)網(wǎng)到服務(wù)器的每個(gè)設(shè)備中都有跟蹤,即使是簡(jiǎn)單、標(biāo)準(zhǔn)的跟蹤也比完全沒(méi)有跟蹤好。

wKgaomTtYOWAUbz5AASeX8Y1Pl0560.jpg

圖1 來(lái)自一個(gè)RISC-V設(shè)備的跟蹤

看清每條指令

軟件開(kāi)發(fā)工具中集成對(duì)跟蹤的支持增強(qiáng)了日常的代碼開(kāi)發(fā)/調(diào)試。跟蹤應(yīng)該是設(shè)計(jì)人員日常環(huán)境中固有的一部分,而不應(yīng)該是事后分析的東西。因此,你可以寫(xiě)代碼并運(yùn)行,看看是如何到達(dá)當(dāng)前的執(zhí)行點(diǎn)的。通過(guò)快速追溯、隔離異常和硬故障的功能,你可以直接迭代并獲得良好的代碼質(zhì)量。你還可以找到依賴(lài)于執(zhí)行順序的漏洞,并找到可以與你的程序流程相關(guān)聯(lián)的功耗測(cè)量值。所有這些分析也可以在具有挑戰(zhàn)性和復(fù)雜依賴(lài)性的多核環(huán)境下進(jìn)行。

在尋找一個(gè)漏洞時(shí),翻閱捕獲的跟蹤的難度無(wú)異于大海撈針。在短短幾秒鐘的執(zhí)行時(shí)間里,可以產(chǎn)生數(shù)以?xún)|計(jì)的指令。因此,極為重要的是,規(guī)范將提供足夠的觸發(fā)器,以便能夠?qū)⒉东@限制在特定區(qū)域。先進(jìn)的導(dǎo)航和搜索功能是必不可少的,如果你的編譯器/調(diào)試器工具提供該功能,則可以使用跟蹤觸發(fā)器將跟蹤數(shù)據(jù)限制在你需要的范圍內(nèi)。

為什么需要跟蹤?

在設(shè)備中植入跟蹤單元,讓你有可能在產(chǎn)品運(yùn)行時(shí)進(jìn)行非侵入性的跟蹤。因?yàn)榧词固砑臃浅5讓拥恼{(diào)試打印輸出,也會(huì)改變應(yīng)用程序的時(shí)間,并掩蓋其真實(shí)行為。

有許多方法可以捕捉和獲得從設(shè)備中輸出的跟蹤數(shù)據(jù):

l 順序排列

- 足夠的PC采樣跟蹤(對(duì)統(tǒng)計(jì)代碼剖析研究有好處)

- 輕型儀器、實(shí)時(shí)操作系統(tǒng)(RTOS)監(jiān)控、變量跟蹤等

- 配備優(yōu)秀的探針,有可能達(dá)到幾兆字節(jié)/秒的速度

l 高速并行接口(4至16位的雙邊接口)

- 捕獲一切(時(shí)鐘速度可以很高)

- 通過(guò)控制流轉(zhuǎn)移時(shí)留下的信息進(jìn)行跟蹤

- 為你執(zhí)行的每一條指令提供保證

- 指令執(zhí)行過(guò)程信息實(shí)時(shí)存儲(chǔ)在調(diào)試器探針上

l RAM緩沖區(qū)

- 要么是小的專(zhuān)用RAM,要么與系統(tǒng)內(nèi)存共享

- 即使是4KB的跟蹤RAM也能提供足夠的功能,真正發(fā)揮作用

l 高速排列

- 速度為10Gbits/s或更高

- 主要適用于較大的、復(fù)雜的系統(tǒng)

l 通過(guò)功能接口進(jìn)行跟蹤(USB3.0提供了超高帶寬!)

- 使用案例有限——對(duì)小型物聯(lián)網(wǎng)設(shè)備來(lái)說(shuō)不是一個(gè)選擇

調(diào)試異常情況

通過(guò)在日常工作中使用跟蹤,你可以真實(shí)看到應(yīng)用程序是如何運(yùn)行的。你可以檢查程序流,直到一個(gè)特定的狀態(tài),如應(yīng)用程序崩潰,然后使用跟蹤數(shù)據(jù)來(lái)定位問(wèn)題的起源。

異常或未處理的故障可以由指針問(wèn)題、非法指令或數(shù)據(jù)中止引起。通常,當(dāng)這種情況發(fā)生時(shí),你的堆棧(和函數(shù)調(diào)用信息)會(huì)被毀掉,但通過(guò)跟蹤,你可以獲得完整的應(yīng)用程序歷史記錄。跟蹤數(shù)據(jù)對(duì)于定位那些顯現(xiàn)不規(guī)則且零星發(fā)生的編程錯(cuò)誤也很有用。這可以幫助發(fā)現(xiàn)價(jià)值“百萬(wàn)美元”的漏洞。

硬件和軟件工具的集成

獲得盡可能高質(zhì)量的代碼的最佳方法是將跟蹤分析能力整合到你的日常開(kāi)發(fā)環(huán)境中。如果你能在每次部署變化時(shí)驗(yàn)證程序時(shí)序和正確性,那么將復(fù)雜的漏洞推給后期系統(tǒng)驗(yàn)證甚至客戶(hù)的風(fēng)險(xiǎn)就會(huì)大大降低。最好的解決方案是擁有像跟蹤調(diào)試探針這樣的硬件工具,它可以在你的集成開(kāi)發(fā)環(huán)境中與軟件工具無(wú)縫協(xié)作。例如,IAR提供跟蹤探頭I-jet Trace,它與完整的C/C++編譯器和調(diào)試器工具鏈IAR Embedded Workbench完全集成。

I-jet Trace解鎖了IAR Embedded Workbench 集成開(kāi)發(fā)環(huán)境中的一些高級(jí)功能。在圖2中,你可以看到幾個(gè)高級(jí)視圖功能的例子,上面是時(shí)間軸,下面是代碼堆棧。這顯示的是運(yùn)行中的程序正在進(jìn)行復(fù)雜的函數(shù)調(diào)用,并且中斷也在同步觸發(fā)。藍(lán)色部分顯示的是數(shù)據(jù)跟蹤,這樣你就可以獲得儀表化的顯示,并看到RTOS的切換等。下面的詳細(xì)圖顯示了啟動(dòng)代碼的運(yùn)行情況——有復(fù)雜的調(diào)用,還有一些較長(zhǎng)和較短的函數(shù),甚至還有一個(gè)工具提示來(lái)優(yōu)化其中一個(gè)調(diào)用的代碼。

wKgZomTtYOaAD3DZAATwGdQHBrY669.jpg

圖2 結(jié)合調(diào)用堆棧和中斷以及變量記錄的時(shí)間軸實(shí)例

代碼質(zhì)量

但是,跟蹤不僅僅是為了發(fā)現(xiàn)漏洞。它還可以幫助你監(jiān)控你的應(yīng)用程序——它是否按照預(yù)期運(yùn)行?集成性能監(jiān)控是使用跟蹤的主要好處之一,因?yàn)樗梢詭椭懔私鈶?yīng)用程序執(zhí)行時(shí)間都花在哪里了,是否受到中斷風(fēng)暴的影響,是否有時(shí)反應(yīng)不夠快等等。

代碼覆蓋率也是一個(gè)可以用跟蹤實(shí)現(xiàn)的功能(圖3展示了它在IAR Embedded Workbench中的樣子)。這可以用來(lái)證明代碼至少被運(yùn)行過(guò)一次,查找出未運(yùn)行的代碼,顯示測(cè)試的缺陷等等。功能安全認(rèn)證強(qiáng)烈建議將代碼覆蓋率作為提高質(zhì)量的一個(gè)手段。靜態(tài)代碼分析工具是對(duì)跟蹤分析器一個(gè)很好的補(bǔ)充。這可以確保代碼符合特定行業(yè)的標(biāo)準(zhǔn)和最佳編程實(shí)踐。除了覆蓋率,該工具還可以收集每個(gè)單獨(dú)指令的執(zhí)行次數(shù)。例如,有些指令塊被執(zhí)行了4次,有些被執(zhí)行了12次。很明顯,沒(méi)有被覆蓋的代碼執(zhí)行了0次。

wKgaomTtYOeARIkaAAOCrXDTxjk961.jpg

圖3 跟蹤也可以審查代碼覆蓋率

總結(jié)

跟蹤提供了各種有益的數(shù)據(jù)源,如收集數(shù)據(jù)或協(xié)助開(kāi)發(fā)人員將信息過(guò)濾成實(shí)際的知識(shí)和見(jiàn)解。用不同的跟蹤查看器進(jìn)行可視化和分析,可以創(chuàng)建一個(gè)產(chǎn)品如何運(yùn)行及其動(dòng)態(tài)行為的真實(shí)描述,為開(kāi)發(fā)人員提供必要的信息,以跟蹤那些很難,甚至不可能通過(guò)其他手段捕捉的復(fù)雜漏洞。通過(guò)在日常開(kāi)發(fā)中加入跟蹤,開(kāi)發(fā)人員可以加速軟件開(kāi)發(fā)過(guò)程,提高軟件質(zhì)量。

審核編輯 黃宇

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

    關(guān)注

    0

    文章

    10

    瀏覽量

    3218
  • RISC-V
    +關(guān)注

    關(guān)注

    46

    文章

    2484

    瀏覽量

    48271
收藏 人收藏

    評(píng)論

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

    UltraSoC宣布提供業(yè)界首款RISC-V處理器跟蹤IP產(chǎn)品

    領(lǐng)先的嵌入式分析技術(shù)開(kāi)發(fā)商UltraSoC日前宣布:其RISC-V處理器跟蹤解決方案開(kāi)始全面供貨,這是業(yè)界首款商用RISC-V處理器跟蹤IP
    的頭像 發(fā)表于 02-09 10:26 ?8030次閱讀

    rIsc-v的缺的是什么?

    能與RISC-V的起步較晚、生態(tài)系統(tǒng)支持不足等因素有關(guān)。為了進(jìn)一步提高市場(chǎng)份額和認(rèn)可度,RISC-V需要不斷加強(qiáng)自身的技術(shù)實(shí)力和生態(tài)建設(shè)。 4. 技術(shù)挑戰(zhàn)
    發(fā)表于 07-29 17:18

    RISC-V MCU技術(shù)

    嘿,咱來(lái)聊聊RISC-V MCU技術(shù)哈。 這RISC-V MCU技術(shù)呢,簡(jiǎn)單來(lái)說(shuō)就是基于一個(gè)叫RISC-V的指令集架構(gòu)做出的微控制器
    發(fā)表于 01-19 11:50

    為什么選擇RISC-V

    RISC-V是一種開(kāi)放式ISA(指令集體系結(jié)構(gòu)),為處理器體系結(jié)構(gòu)的創(chuàng)新開(kāi)創(chuàng)了新紀(jì)元。RISC-V基金會(huì)由325多家成員公司組成。這是該技術(shù)的主要優(yōu)勢(shì)。軟件架構(gòu)師/固件工程師/軟件開(kāi)發(fā)
    發(fā)表于 07-27 17:38

    RISC-V架構(gòu)

    導(dǎo)體核心技術(shù)自主可控的強(qiáng)烈愿望,有望伴隨著國(guó)內(nèi)MCU產(chǎn)品的國(guó)產(chǎn)替代進(jìn)程引領(lǐng)全球發(fā)展腳步。  中長(zhǎng)期看,RISC-V內(nèi)核具備向智能駕駛、航空航天、AI超算等中高端場(chǎng)景滲透的潛力。跟蹤RISC-V
    發(fā)表于 04-03 15:29

    2023 RISC-V中國(guó)峰會(huì):RISC-V深圳技術(shù)分享會(huì)(同期會(huì)議)

    本屆峰會(huì)將以“RISC-V生態(tài)共建”為主題,結(jié)合當(dāng)下全球新形勢(shì),把握全球新時(shí)機(jī),呈現(xiàn)RISC-V全球新觀(guān)點(diǎn)、新趨勢(shì)。 由電子發(fā)燒友主辦的RISC-V技術(shù)分享會(huì)(深圳站)將于8月26
    發(fā)表于 08-15 17:27

    UltraSoC宣布推出業(yè)界首款支持RISC-V的處理器跟蹤技術(shù)

    英國(guó)劍橋—2017年7月3日—領(lǐng)先的嵌入式分析技術(shù)開(kāi)發(fā)商UltraSoC日前宣布:公司已經(jīng)開(kāi)發(fā)出處理器跟蹤技術(shù),可支持基于開(kāi)源RISC-V架構(gòu)的產(chǎn)品。UltraSoC公司已經(jīng)為處理器
    發(fā)表于 07-03 16:14 ?955次閱讀

    RISC-V規(guī)范的演進(jìn) RISC-V何時(shí)爆發(fā)?

    RISC-V的關(guān)注度越來(lái)越高,開(kāi)源的理念也正在被越來(lái)越多的開(kāi)發(fā)者和公司接受。對(duì)于尚不成熟的RISC-V而言,無(wú)論是規(guī)范和技術(shù)的演進(jìn)還是生態(tài)的建設(shè),還有人才和專(zhuān)利都還有不小挑戰(zhàn)。2021年RIS
    的頭像 發(fā)表于 02-11 10:10 ?3481次閱讀

    RISC-V的調(diào)試標(biāo)準(zhǔn)及跟蹤技術(shù)

    本文主要詳細(xì)介紹了RISC-V的調(diào)試標(biāo)準(zhǔn)以及RISC-V跟蹤技術(shù),感興趣的小伙伴跟小編一起了解一下吧。
    的頭像 發(fā)表于 06-23 17:19 ?3187次閱讀
    <b class='flag-5'>RISC-V</b>的調(diào)試標(biāo)準(zhǔn)及<b class='flag-5'>跟蹤</b><b class='flag-5'>技術(shù)</b>

    RISC-VRISC-V AI的未來(lái)(特邀講座)

    主題演講:RISC-VRISC-V AI的未來(lái)(特邀講座)ppt分享
    發(fā)表于 07-14 17:15 ?17次下載

    RISC-V調(diào)試和完善的跟蹤解決方案

    RISC-V調(diào)試和完善的跟蹤解決方案ppt分享
    發(fā)表于 07-14 17:15 ?2次下載

    RISC-V設(shè)計(jì)支持工具,支持RISC-V技術(shù)的基礎(chǔ)

    RISC-V設(shè)計(jì)支持工具,支持RISC-V技術(shù)的基礎(chǔ) ppt分享
    發(fā)表于 07-14 17:15 ?21次下載

    什么是RISC-VRISC-V的關(guān)鍵技術(shù)

    RISC-V不僅僅是一個(gè)流行語(yǔ);它建立在堅(jiān)實(shí)的技術(shù)基礎(chǔ)之上,使其有別于其他指令集架構(gòu) (ISA)。RISC-V的核心是基于精簡(jiǎn)指令集計(jì)算(RISC)原則,強(qiáng)調(diào)效率和性能。
    發(fā)表于 03-26 09:34 ?4857次閱讀

    解鎖RISC-V技術(shù)力量丨曹英杰:RISC-V與大模型探索

    4月12日,第二期“大家來(lái)談芯|解鎖RISC-V技術(shù)力量”在上海臨港新片區(qū)頂科永久會(huì)址舉辦,本期沙龍聚焦RISC-V技術(shù),圍繞AI時(shí)代的RISC-V
    的頭像 發(fā)表于 04-16 08:16 ?1115次閱讀
    解鎖<b class='flag-5'>RISC-V</b><b class='flag-5'>技術(shù)</b>力量丨曹英杰:<b class='flag-5'>RISC-V</b>與大模型探索

    RISC-V Summit China 2024 青稞RISC-V+接口PHY,賦能RISC-V高效落地

    沁恒在歷屆峰會(huì)上分享RISC-V在MCU領(lǐng)域的創(chuàng)新成果,和大家共同見(jiàn)證了本土RISC-V產(chǎn)業(yè)的成長(zhǎng)。早在第一屆RISC-V中國(guó)峰會(huì)上,沁恒就公開(kāi)了青稞RISC-V系列量產(chǎn)芯片的關(guān)鍵
    的頭像 發(fā)表于 08-30 18:18 ?2146次閱讀
    <b class='flag-5'>RISC-V</b> Summit China 2024  青稞<b class='flag-5'>RISC-V</b>+接口PHY,賦能<b class='flag-5'>RISC-V</b>高效落地