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

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

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

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

使用軟件查找硬件錯誤

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

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

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

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

但是,假設您要找到問題,您必須能夠追蹤這些問題的原因,而調(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)試——尤其是與性能和同步相關的問題——變得非常令人沮喪。因此,考慮到這一點,仿真在過去并不是首選解決方案——阻力仍然存在。

今天的模擬器調(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)。這一切都可以離線完成——您無需使用實時仿真器,這使其更具成本效益。

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

行使部分系統(tǒng)

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

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

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

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

審核編輯:郭婷

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

    關注

    68

    文章

    20084

    瀏覽量

    243684
  • Android
    +關注

    關注

    12

    文章

    3980

    瀏覽量

    132669
  • Linux
    +關注

    關注

    88

    文章

    11581

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

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

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

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

    硬件好還是學軟件好?

    硬件好還是學軟件好? 選擇學習硬件還是軟件取決于個人興趣、職業(yè)目標以及對不同工作方式的偏好。以下是兩者的一些比較,幫助你做出更合適的選擇。 學習
    發(fā)表于 04-07 15:27

    AD采樣硬件軟件濾波問題如何解決

    AD采樣硬件軟件濾波問題 ADS1115我用ADS1115采樣 原理上完全可以精確到1mV 可是實際上有10mV的波動 請問大家對采樣的硬件軟件都是怎樣濾波的啊 采集很簡單的直
    發(fā)表于 01-20 09:38

    GPIO錯誤排查與解決

    。輸入模式下,GPIO可以讀取外部信號;輸出模式下,GPIO可以控制外部設備。正確配置GPIO對于系統(tǒng)的正常運行至關重要。 2. 常見的GPIO錯誤 引腳配置錯誤 :GPIO引腳未正確配置為輸入或輸出。 電平錯誤 :輸出電平與預
    的頭像 發(fā)表于 01-09 09:46 ?3362次閱讀

    RTOS中的錯誤檢查機制

    在嵌入式應用中,有可能發(fā)生各種各樣的錯誤,系統(tǒng)必須能夠檢測到這些錯誤并作出適當?shù)捻憫?。RTOS通常內(nèi)置了一些錯誤檢查功能,用于檢測錯誤并向應用提供響應
    的頭像 發(fā)表于 01-03 14:44 ?957次閱讀

    RAID 5 硬件軟件 RAID 的區(qū)別

    RAID 5硬件RAID與軟件RAID之間存在顯著的差異,這些差異主要體現(xiàn)在實現(xiàn)方式、性能、數(shù)據(jù)安全性、靈活性以及成本等方面。 一、實現(xiàn)方式 硬件RAID : 依賴于專用的硬件RAID
    的頭像 發(fā)表于 12-27 18:05 ?1721次閱讀

    CAN協(xié)議的軟件過濾和硬件過濾

    過濾器來只接收特定的消息。CAN的過濾分為軟件過濾和硬件過濾。往期推薦:《CH32FV系列CAN設備過濾器配置》《講解CH32FV系列32位CAN硬件過濾》1軟件過濾
    的頭像 發(fā)表于 12-26 19:33 ?943次閱讀
    CAN協(xié)議的<b class='flag-5'>軟件</b>過濾和<b class='flag-5'>硬件</b>過濾

    單片機Debug與仿真區(qū)別

    是指在軟件硬件開發(fā)過程中,通過特定的工具和技術來查找、診斷和修復錯誤的過程。在單片機開發(fā)中,Debug通常涉及到以下幾個方面: 硬件調(diào)試
    的頭像 發(fā)表于 12-19 09:47 ?1253次閱讀

    Linux文件查找

    Linux文件查找 1.find查找概述 為什么要有文件查找,因為很多時候我們可能會忘了某個文件所在的位置,此時就需要通過find來查找。 find命令可以根據(jù)不同的條件來進行
    的頭像 發(fā)表于 12-03 17:09 ?1113次閱讀

    常見的GND連接錯誤及解決方案

    GND(接地)連接在電子設計和硬件開發(fā)中至關重要,錯誤的GND連接可能導致電路不穩(wěn)定、信號干擾甚至設備損壞。以下是一些常見的GND連接錯誤及其解決方案: 一、GND網(wǎng)絡未連接 問題描述 : 在
    的頭像 發(fā)表于 11-29 16:02 ?8014次閱讀

    如何使用Ozone分析Cortex-M異常

    Ozone可以幫助用戶快速分析和查找導致CPU故障的軟件bug。本文解釋如何使用Ozone的調(diào)試功能,深入了解Cortex-M架構上的這些錯誤。
    的頭像 發(fā)表于 11-29 11:14 ?2258次閱讀
    如何使用Ozone分析Cortex-M異常

    硬件電路設計的思路介紹

    原理圖以及電子元件型號,如何查找移步:元件及其規(guī)格書的查找與理解。 2、沒有參考設計,自主設計 1)確定設計目標:確定硬件電路設計的目標和要求,例如性能、功耗、成本等方面。 1)選擇適合的芯片:根據(jù)設計目標選擇適合的芯片,
    的頭像 發(fā)表于 11-24 11:02 ?1289次閱讀
    <b class='flag-5'>硬件</b>電路設計的思路介紹

    硬件電路設計的一般思路

    原理圖以及電子元件型號,如何查找移步:元件及其規(guī)格書的查找與理解。 2、沒有參考設計,自主設計 1)確定設計目標:確定硬件電路設計的目標和要求,例如性能、功耗、成本等方面。 1)選擇適合的芯片:根據(jù)設計目標選擇適合的芯片,
    的頭像 發(fā)表于 11-21 11:39 ?1043次閱讀
    <b class='flag-5'>硬件</b>電路設計的一般思路

    raid 硬件軟件的區(qū)別

    在現(xiàn)代數(shù)據(jù)中心和企業(yè)級存儲解決方案中,RAID技術扮演著至關重要的角色。它通過將多個物理磁盤組合成一個邏輯單元,提供了數(shù)據(jù)冗余、性能提升和容錯能力。RAID的實現(xiàn)方式主要分為硬件RAID和軟件
    的頭像 發(fā)表于 11-12 09:39 ?2171次閱讀