chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

使用軟件查找硬件錯誤

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Russell Klein ? 2022-06-29 15:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

有一個基本的自然法則適用于任何計算芯片,無論是處理器、微控制器還是片上系統(tǒng):軟件總是會發(fā)現(xiàn)硬件錯誤。在我的整個職業(yè)生涯中,我參與過的項目中沒有一個被證明是正確的。

如果你很不幸,在你制作芯片后軟件發(fā)現(xiàn)了一個錯誤,那么接下來會發(fā)生什么取決于問題的嚴重程度。

如果它不是致命的,并且如果你很幸運并且像一些知名處理器制造商那樣擁有市場力量,那么每個人都會圍繞這個 bug 編寫代碼,然后所有未來的版本都必須復(fù)制這個 bug 以實現(xiàn)向后兼容性。這不適用于我們大多數(shù)人。更傾向于:

您可能必須刪除不起作用的功能。

功率可能太高,或性能太慢,損害您的競爭力和獲得好價格的能力。

在最壞的情況下,您可能不得不花費大量時間并旋轉(zhuǎn)另一套面具。額外的延誤和費用。

最好的解決方案是在您投入芯片之前運行該軟件并捕獲這些錯誤。您將同時驗證軟件和硬件。但是怎么做呢?

模擬軟件非常慢。我們說的是幾年。除了瑣碎的代碼之外,根本不是一個選項。

相比之下,仿真被證明是解決這個問題的關(guān)鍵工具。您可以在模擬器上實例化硬件,然后讓它在合理的時間范圍內(nèi)運行實際代碼。也許不是真正的系統(tǒng)速度,但足夠快以使其成為可行的解決方案。

但是,假設(shè)您要找到問題,您必須能夠追蹤這些問題的原因,而調(diào)試部分在歷史上一直是問題所在。事實上,許多工程師一直不愿意使用仿真,因為在過去,訪問內(nèi)部處理器狀態(tài)的唯一途徑是通過 JTAG。仿真器以幾 MHz 的時鐘速度運行;仿真器上的 JTAG 只運行其中的一小部分。

那么,例如,如果你想單步執(zhí)行指令?這意味著通過 JTAG 傳輸大約 400 萬個低級位。在仿真器上以 1 MHz 完成,這將需要 4 秒非常昂貴的實時仿真器時間。

而且,更糟糕的是,它是侵入性的:在這 4 秒內(nèi),時鐘正在走動。處理器狀態(tài)將保持不變,但處理器之外的世界將繼續(xù)。如果您只是在調(diào)試處理器代碼,這可以工作(即使速度很慢)。但是,如果您嘗試調(diào)試與非處理器硬件的交互,這將變得非常困難,因為在您完成該單個步驟時,處理器之外的所有內(nèi)容都已更改狀態(tài)。

由于仿真器上的 JTAG 既緩慢又具有侵入性,調(diào)試——尤其是與性能和同步相關(guān)的問題——變得非常令人沮喪。因此,考慮到這一點,仿真在過去并不是首選解決方案——阻力仍然存在。

今天的模擬器調(diào)試速度很快

但是時代和模擬器已經(jīng)改變。Mentor 有一種單獨的方法來捕獲不依賴于 JTAG 的處理器狀態(tài),因此它可以快速發(fā)生 - 在 40-50 MHz 范圍內(nèi)。這可能比 FPGA 原型上的 JTAG 更快。數(shù)據(jù)被饋送到我們的 CoModel 主機,狀態(tài)歷史可以在其中存儲和重新創(chuàng)建,一個周期一個周期。

鑒于已存儲的跟蹤,您現(xiàn)在可以針對該跟蹤重放任何有問題的軟件,它將遵循系統(tǒng)狀態(tài),以便您可以看到哪里出了問題??梢詥尾綀?zhí)行;您可以探測寄存器和內(nèi)存;你可以看公交車。一切都沒有入侵:您的調(diào)試工作不會改變系統(tǒng)狀態(tài)。這一切都可以離線完成——您無需使用實時仿真器,這使其更具成本效益。

因此,關(guān)于軟件調(diào)試在模擬器上是否實用的歷史擔(dān)憂不再適用。您可以在流片前徹底使用您的計算平臺。軟件開發(fā)人員可以在芯片可用甚至 FPGA 原型可用之前很久就開始軟件開發(fā)??捎糜谡{(diào)試的工具旨在為軟件工程師所熟悉——即使您最終發(fā)現(xiàn)了硬件錯誤。

行使部分系統(tǒng)

我們要解決的下一個挑戰(zhàn)是影響單個 IP 塊的開發(fā)人員,這些 IP 塊最終將成為整個系統(tǒng)的一部分。今天的問題是,在完全系統(tǒng)集成之前,你真的不能用真正的軟件運行你的塊,因為系統(tǒng)需要你的部分和所有其他部分才能工作。因此,即使您提前完成了塊設(shè)計,也是“快點等待”。

在 Mentor,我們正在開發(fā)一個測試平臺增強功能,它將提供計算平臺的關(guān)鍵部分。鑒于 ARM 的流行,我們將從 ARM 架構(gòu)和與 ARM 相關(guān)的總線開始。處理器將覆蓋 AndroidLinux。這將讓您在仿真器上實現(xiàn)您的模塊,并在完整系統(tǒng)設(shè)計可用之前將其“插入”抽象環(huán)境,讓您在驗??證方面領(lǐng)先一步。

總之,您必須在生成掩碼之前運行軟件,以證明您的計算硬件是正確的。仿真是做到這一點的唯一現(xiàn)實方法,而目前 Mentor 的 Veloce 仿真器上提供的工具使其成為非常實用、高效的練習(xí)。您可以用最少的實時仿真時間快速調(diào)試您的軟件和硬件。而且,在不久的將來,您將能夠在完全系統(tǒng)集成之前在 IP 塊上運行和調(diào)試該軟件。

您可以更早地編寫軟件,并且可以更快地驗證您的硬件。所有這些都使得您在真正的硅片中發(fā)現(xiàn)這些硬件錯誤的可能性大大降低。

審核編輯:郭婷

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

    關(guān)注

    68

    文章

    20325

    瀏覽量

    254693
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    4035

    瀏覽量

    134447
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11807

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    錯誤防護:自動駕駛系統(tǒng)邁向高階自動化的必答題?

    問題。本文從系統(tǒng)性文獻綜述視角,全面梳理軟錯誤在自動駕駛感知、決策與執(zhí)行環(huán)節(jié)的傳播機理,深入剖析硬件級、軟件算法級及系統(tǒng)架構(gòu)級三類防護技術(shù)的研究現(xiàn)狀與發(fā)展趨勢,詳細闡述基于ISO 26262功能安全標準的量化評估方法及產(chǎn)
    的頭像 發(fā)表于 01-05 00:07 ?731次閱讀

    探索TLE4999線性霍爾評估套件:從硬件軟件的全方位解析

    探索TLE4999線性霍爾評估套件:從硬件軟件的全方位解析 在電子工程師的日常工作中,評估套件是驗證和開發(fā)傳感器應(yīng)用的重要工具。今天,我們就來深入探討一下TLE4999線性霍爾評估套件,從硬件組成
    的頭像 發(fā)表于 12-18 15:45 ?831次閱讀

    智能雙卡設(shè)計實戰(zhàn)指南:硬件電路與軟件配置詳解!

    在智能雙卡設(shè)計中,硬件電路的可靠性與軟件配置的精準性直接決定雙卡功能的穩(wěn)定性。本文基于實際項目經(jīng)驗,詳細拆解硬件設(shè)計中SIM卡供電電路、時鐘信號匹配及卡槽復(fù)用設(shè)計的實現(xiàn)細節(jié),并同步講解軟件
    的頭像 發(fā)表于 12-16 15:13 ?626次閱讀
    智能雙卡設(shè)計實戰(zhàn)指南:<b class='flag-5'>硬件</b>電路與<b class='flag-5'>軟件</b>配置詳解!

    ADC模數(shù)轉(zhuǎn)換實戰(zhàn):硬件設(shè)計與軟件開發(fā)要點指南!

    為實現(xiàn)高精度、高穩(wěn)定性的ADC模數(shù)轉(zhuǎn)換,硬件軟件設(shè)計均需遵循特定原則。硬件層面需優(yōu)化信號調(diào)理、參考電壓及抗干擾設(shè)計;軟件層面需合理配置采樣參數(shù)、實現(xiàn)數(shù)據(jù)濾波及異常處理。本文將結(jié)合實際
    的頭像 發(fā)表于 12-16 13:25 ?557次閱讀
    ADC模數(shù)轉(zhuǎn)換實戰(zhàn):<b class='flag-5'>硬件</b>設(shè)計與<b class='flag-5'>軟件</b>開發(fā)要點指南!

    芯源的CRC硬件計算誰用過嗎?MCU的CRC你們喜歡用硬件的還是軟件的???

    芯源的CRC硬件計算誰用過嗎?MCU的CRC你們喜歡用硬件的還是軟件的啊?
    發(fā)表于 12-01 08:25

    CW32嵌入式軟件開發(fā)的必備知識

    的使用,以便在開發(fā)計算機上編譯出能在目標硬件上運行的程序。 熟悉調(diào)試器的使用,能夠進行軟件的斷點調(diào)試、單步執(zhí)行、變量查看等。 7、系統(tǒng)分析與設(shè)計 能夠進行項目需求分析,將需求轉(zhuǎn)化為軟件功能需求。 掌握
    發(fā)表于 11-28 07:48

    廣凌智慧教室建設(shè)內(nèi)容:硬件軟件介紹

    廣凌科技(廣凌股份)憑借“硬件+平臺+數(shù)據(jù)”的深度融合,推出智慧教室整體解決方案,全面覆蓋智慧教室建設(shè)的硬件配置、軟件平臺、數(shù)據(jù)驅(qū)動及場景適配需求,一起來看看廣凌智慧教室建設(shè)需要搭建什么硬件
    的頭像 發(fā)表于 11-11 16:17 ?1424次閱讀
    廣凌智慧教室建設(shè)內(nèi)容:<b class='flag-5'>硬件</b>與<b class='flag-5'>軟件</b>介紹

    硬件融合拼接器與軟件融合拼接的區(qū)別?

    硬件融合拼接器和軟件融合拼接是兩種不同的圖像拼接技術(shù),它們在實現(xiàn)方式、效果和應(yīng)用場景等方面存在一些區(qū)別。 1、實現(xiàn)方式 硬件融合拼接器通常是通過硬件設(shè)備來實現(xiàn)圖像的拼接,這種設(shè)備通常由
    的頭像 發(fā)表于 09-28 14:33 ?629次閱讀

    硬件工程師和嵌入式軟件哪個更有前途?

    不少人琢磨硬件工程師和嵌入式軟件到底哪個更有前途,其實從實際職場情況和成長路子看,差別還挺清楚的。先說說天花板這事,一般來講,硬件工程師的職業(yè)天花板還真比嵌入式軟件低 ——
    的頭像 發(fā)表于 09-10 10:43 ?1319次閱讀

    電動工具EMC測試整改:硬件軟件的成本減半秘訣

    深圳南柯電子|電動工具EMC測試整改:硬件軟件的成本減半秘訣
    的頭像 發(fā)表于 08-20 11:06 ?1083次閱讀

    發(fā)電機控制器EMC整改:硬件+軟件雙維度的整改方案

    深圳南柯電子|發(fā)電機控制器EMC整改:硬件+軟件雙維度的整改方案
    的頭像 發(fā)表于 07-28 10:59 ?671次閱讀

    請問中斷過多的時候進入硬件錯誤如何處置?

    中斷過多的時候進入硬件錯誤如何處置?是加看門狗還是加硬件錯誤處理?
    發(fā)表于 07-21 06:11

    老舊工控機升級策略:硬件迭代與軟件兼容性的平衡之道

    在工業(yè)自動化領(lǐng)域,老舊工控機的升級是一個常見且具有挑戰(zhàn)性的任務(wù)。隨著技術(shù)的不斷進步,硬件性能的提升成為必然需求,但與此同時,軟件兼容性問題卻常常成為升級過程中的絆腳石。如何在硬件迭代的同時確保
    的頭像 發(fā)表于 05-29 16:05 ?1476次閱讀

    硬件輔助驗證(HAV) 對軟件驗證的價值

    硬件輔助驗證 (HAV) 有著悠久的歷史,如今作為軟件驅(qū)動驗證的必備技術(shù),再度受到關(guān)注。 RISC-V 可能是說明這一點的最好例子。HAV 能夠執(zhí)行多個周期的軟件驅(qū)動驗證,是加速 RISC-V
    的頭像 發(fā)表于 05-13 18:21 ?2194次閱讀

    如何驗證CAN控制器的錯誤響應(yīng)機制?

    CAN節(jié)點的穩(wěn)定性、可靠性和安全性得益于其強大的錯誤管理機制。上一篇文章我們介紹了CAN控制器的錯誤管理機制的工作原理。本文將基于其工作原理及ISO16845-1:2016標準,為大家介紹
    的頭像 發(fā)表于 04-30 18:24 ?1000次閱讀
    如何驗證CAN控制器的<b class='flag-5'>錯誤</b>響應(yīng)機制?