回覆列表
  • 1 # 矽釋出

    嵌入式除錯可以在不同的級別執行,具體取決於可用的裝置。表徵不同形式嵌入式除錯的不同度量標準包括:是否減慢主應用程式,被除錯的系統或應用程式與實際系統或應用程式的距離有多近,可以為除錯設定的觸發器的表達程度如何(例如,當特定的程式計數器值到達時,我想檢查記憶體),以及在除錯過程中可以檢查什麼(例如,只有記憶體,記憶體和暫存器等)。

    從最簡單到最複雜,它們大致可分為以下幾個方面:

    · 互動式駐留除錯,使用嵌入式作業系統提供的簡單shell(例如Forth和Basic)

    · 使用日誌記錄或串列埠輸出進行外部除錯,以使用快閃記憶體中的監視器或使用Remedy偵錯程式等除錯伺服器來跟蹤操作,該除錯伺服器甚至可用於異構多核系統。

    · 一個線上偵錯程式(ICD),一種透過JTAG或Nexus介面連線到微處理器的硬體裝置。這允許微處理器的操作在外部被控制,但通常限於處理器中的特定除錯能力。

    · 線上模擬器(ICE)用模擬等效替代微處理器,從而完全控制微處理器的所有方面。

    · 一個完整的模擬器提供了對硬體所有方面的模擬,允許對所有硬體進行控制和修改,並允許在普通PC上進行除錯。缺點是費用低且執行緩慢,在某些情況下比最終系統慢100倍。

    · 對於SoC設計,典型的方法是在FPGA原型板上驗證和除錯設計。 Certus 等工具用於在FPGA RTL中插入探針,使訊號可用於觀察。這用於除錯多個FPGA上的硬體,韌體和軟體互動,其功能類似於邏輯分析儀。

    · 純軟體偵錯程式的好處是不需要任何硬體修改,但必須仔細控制它們記錄的內容以節省時間和儲存空間。

  • 中秋節和大豐收的關聯?
  • 書法的矛盾點體現在哪些方面?對此你怎麼看?