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

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

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

硬件調(diào)試領(lǐng)域的各項(xiàng)挑戰(zhàn)

CEVA ? 來(lái)源:lp ? 2019-03-26 10:46 ? 次閱讀

介紹

日常生活中,我們不會(huì)注意到最常用設(shè)備核心的復(fù)雜芯片 — 它們通常隱藏在設(shè)備內(nèi)部。另一方面,芯片的功能卻非常引人注目:它們能讓我們使用手機(jī)拍攝高質(zhì)量的照片,駕駛時(shí)提醒我們注意行人,以及檢測(cè)和識(shí)別我們向虛擬助手發(fā)出的命令。在本系列文章中,我將重點(diǎn)討論驗(yàn)證芯片功能所面臨的挑戰(zhàn)。

正如廣告宣傳的那樣,在設(shè)備光鮮亮麗的外表下,隱藏著一支杰出的人才隊(duì)伍 — 研究人員、硬件架構(gòu)師、硬件設(shè)計(jì)師、軟件開(kāi)發(fā)人員、集成商和質(zhì)量保證工程師 — 他們確保了每一塊芯片在任何可能的情況下都能平穩(wěn)運(yùn)行。這些人員即使處于不同時(shí)區(qū)空域,也必須努力協(xié)作。他們的任務(wù)就是確保拼圖的各個(gè)部分完美地組合在一起,并通過(guò)大量的軟件代碼行和硬件邏輯塊來(lái)確保所需要的功能順利實(shí)現(xiàn),以滿足消費(fèi)者的預(yù)期要求。實(shí)現(xiàn)這些芯片功能的最大挑戰(zhàn)之一在于軟件和硬件之間的邊界。

硬件調(diào)試

我假定垂閱這篇文章的您已對(duì)嵌入式設(shè)計(jì)領(lǐng)域有所了解,但我仍需快速扼要地復(fù)述一些主要的挑戰(zhàn),特別是當(dāng)開(kāi)放嵌入式 DSP軟件時(shí)的挑戰(zhàn)。

首先,為什么您想使用 DSP?CEVA DSP 專門用于多個(gè)應(yīng)用領(lǐng)域,如人工智能、計(jì)算機(jī)視覺(jué)、語(yǔ)音識(shí)別和移動(dòng)通信。相比通用 CPU,使用 DSP 可以實(shí)現(xiàn)更高的性能和更低的功耗,同時(shí)仍能保持軟件編程的靈活性。CEVA DSP 可在必要時(shí)運(yùn)行實(shí)時(shí)操作系統(tǒng),以保證 DSP 應(yīng)用程序通常所需要的實(shí)時(shí)性能。應(yīng)用程序既可以在多核系統(tǒng)上同時(shí)運(yùn)行多個(gè)線程,又可以在單核系統(tǒng)上分時(shí)運(yùn)行。然后,線程可以異步處理多個(gè)并行進(jìn)程,從而控制系統(tǒng)的不同硬件元素以及處理數(shù)據(jù)。

舉個(gè) DSP 操作的例子,它可以通過(guò)增強(qiáng)顏色或?qū)Ρ榷?、采用高?dòng)態(tài)范圍 (HDR)算法將多個(gè)圖像融合為一個(gè)圖像、自動(dòng)檢測(cè)場(chǎng)景內(nèi)容、或穩(wěn)定快速行駛期間手持電話拍攝的抖動(dòng)視頻來(lái)處理相機(jī)的圖像?;蛘撸€可以對(duì)來(lái)自兩個(gè)傳感器的兩個(gè)每秒 120 幀/12 位采樣率/超高清 8K分辨率視頻流來(lái)執(zhí)行上面所有這些功能,。在這種復(fù)雜運(yùn)算時(shí),數(shù)據(jù)傳輸率可超過(guò)每秒 33GB,因此,確保該過(guò)程每一步都能按預(yù)期運(yùn)行具有非常大的復(fù)雜性和挑戰(zhàn)性。

DSP 架構(gòu)可能相當(dāng)復(fù)雜,相應(yīng)的匯編操作可能跨越多條線路。為了滿足預(yù)期吞吐量,需要通過(guò)專用編譯器或由程序員手動(dòng)對(duì)代碼進(jìn)行性能優(yōu)化。這包括展開(kāi)循環(huán)、重新排序指令并將其組合在一起以便在單個(gè)循環(huán)內(nèi)并行執(zhí)行等等。調(diào)試此類代碼可能非常困難,且需要非常先進(jìn)的調(diào)試工具。

通常,新功能的開(kāi)發(fā)都從高級(jí)開(kāi)發(fā)語(yǔ)言環(huán)境開(kāi)始,例如Matlab、Visual Studio 或在PC 上運(yùn)行的GNU 開(kāi)發(fā)/調(diào)試工具。這些環(huán)境在軟件開(kāi)發(fā)人員中很受歡迎,文檔完善,擁有很多針對(duì)各種算法的現(xiàn)成方法,并且通常以開(kāi)源方式分發(fā)。這樣可以快速提升軟件、重用代碼、利用高級(jí)編程環(huán)境并采用快速服務(wù)器基礎(chǔ)設(shè)施。工程師可以很便捷地進(jìn)行通信,共享代碼并在多個(gè)開(kāi)發(fā)人員甚至團(tuán)隊(duì)之間分工協(xié)作。這些開(kāi)發(fā)環(huán)境可提供一種簡(jiǎn)單而舒適的調(diào)試體驗(yàn):程序員可在運(yùn)行時(shí)在應(yīng)用程序內(nèi)部進(jìn)行步進(jìn)操作,以檢查內(nèi)存和變量值、設(shè)置斷點(diǎn)、手動(dòng)操縱資源并檢查結(jié)果,有時(shí),甚至可以在不停止調(diào)試應(yīng)用程序的情況下重新編譯代碼,從而相對(duì)容易地跟蹤漏洞和實(shí)施過(guò)程中發(fā)生的故障。

但最終,該軟件需要能夠運(yùn)行起來(lái),并且在嵌入式目標(biāo)上有效運(yùn)行。那時(shí),開(kāi)發(fā)人員必須有能夠在實(shí)際芯片上進(jìn)行調(diào)試和優(yōu)化軟件的工具。這就需要主流的開(kāi)發(fā)和調(diào)試工具有更高的能力的。

硬件調(diào)試領(lǐng)域的各項(xiàng)挑戰(zhàn)

由于目標(biāo)芯片或設(shè)備在我們的桌面工作環(huán)境中屬于“外來(lái)”元素,因此在目標(biāo)硬件上調(diào)試軟件會(huì)面臨一系列不同的挑戰(zhàn)。桌面工作環(huán)境及其操作系統(tǒng)對(duì)自身的計(jì)算引擎(在一定程度上)有所了解,但通常沒(méi)有訪問(wèn)外部硬件內(nèi)部狀態(tài)的通用方法。這就是為什么最終您必須采用硬件供應(yīng)商提供的嵌入式開(kāi)發(fā)環(huán)境的原因。這些嵌入式開(kāi)發(fā)工具可以與目標(biāo)設(shè)備進(jìn)行通信,并觀測(cè)或操縱內(nèi)部狀態(tài)。當(dāng)您在不同的調(diào)試環(huán)境中進(jìn)行這種詳細(xì)調(diào)試和優(yōu)化時(shí),會(huì)希望這些工具能提供易于使用的調(diào)試體驗(yàn),并且能夠完全支持您在這個(gè)階段的所有需求。

對(duì)于目標(biāo)硬件的調(diào)試可能具有挑戰(zhàn)性,因?yàn)楹芏嗲闆r在您的早期開(kāi)發(fā)中都無(wú)法預(yù)見(jiàn)。您只要與 DUT(被測(cè)設(shè)備)建立調(diào)試連接,就可能會(huì)遇到一些匪夷所思的通信問(wèn)題。更為普遍的是,硬件調(diào)試問(wèn)題可能發(fā)生在各個(gè)階段:在初始連接、設(shè)備重置、應(yīng)用程序加載、分步調(diào)試程序或查看內(nèi)存和變量值時(shí);這些問(wèn)題的原因可能并不明顯?;谥鳈C(jī)或通用的開(kāi)發(fā)和調(diào)試工具對(duì)目標(biāo)平臺(tái)并不了解,因此,在分析此類問(wèn)題方面幾乎沒(méi)有幫助。您只能寄希望于一個(gè)充分了解你所構(gòu)建系統(tǒng)的開(kāi)發(fā)/調(diào)試平臺(tái)。

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

    關(guān)注

    11

    文章

    3224

    瀏覽量

    66070
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1617

    瀏覽量

    49019
  • 計(jì)算機(jī)視覺(jué)

    關(guān)注

    8

    文章

    1694

    瀏覽量

    45905

原文標(biāo)題:專家解讀|硬件調(diào)試的復(fù)雜性 — 第 1 部分

文章出處:【微信號(hào):CEVA-IP,微信公眾號(hào):CEVA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何進(jìn)行硬件調(diào)試?

    硬件調(diào)試硬件系統(tǒng)設(shè)計(jì)、開(kāi)發(fā)和制造過(guò)程中不可或缺的一環(huán),旨在對(duì)可能出現(xiàn)的問(wèn)題進(jìn)行分析和解決。以下是進(jìn)行硬件調(diào)試的一般步驟和方法: 一、準(zhǔn)備階
    的頭像 發(fā)表于 11-10 10:17 ?206次閱讀
    如何進(jìn)行<b class='flag-5'>硬件</b><b class='flag-5'>調(diào)試</b>?

    解決驗(yàn)證“最后一公里”的挑戰(zhàn):芯神覺(jué)Claryti如何助力提升調(diào)試效率

    在高度集成化的芯片設(shè)計(jì)領(lǐng)域,驗(yàn)證是確保設(shè)計(jì)可靠性和正確性的關(guān)鍵環(huán)節(jié)。然而,電路的實(shí)現(xiàn)過(guò)程中難免會(huì)出現(xiàn)各種缺陷和不符合預(yù)期的行為,這時(shí)調(diào)試就顯得尤為重要。調(diào)試不僅是發(fā)現(xiàn)問(wèn)題后的排查和修復(fù)步驟,更是驗(yàn)證
    的頭像 發(fā)表于 10-26 08:03 ?209次閱讀
    解決驗(yàn)證“最后一公里”的<b class='flag-5'>挑戰(zhàn)</b>:芯神覺(jué)Claryti如何助力提升<b class='flag-5'>調(diào)試</b>效率

    解鎖SoC “調(diào)試挑戰(zhàn),開(kāi)啟高效原型驗(yàn)證之路

    引言由于芯片設(shè)計(jì)復(fù)雜度的提升、集成規(guī)模的擴(kuò)大,以及產(chǎn)品上市時(shí)間要求的縮短,使得設(shè)計(jì)驗(yàn)證變得更加困難。特別是在多FPGA環(huán)境中,設(shè)計(jì)調(diào)試和驗(yàn)證的復(fù)雜性進(jìn)一步增加,傳統(tǒng)的調(diào)試手段難以滿足對(duì)高性能、高效率
    的頭像 發(fā)表于 10-09 08:04 ?457次閱讀
    解鎖SoC “<b class='flag-5'>調(diào)試</b>”<b class='flag-5'>挑戰(zhàn)</b>,開(kāi)啟高效原型驗(yàn)證之路

    opa830的各項(xiàng)參數(shù)是什么???

    opa830的各項(xiàng)參數(shù)是什么啊
    發(fā)表于 09-25 07:50

    Midjourney正式宣告進(jìn)軍硬件領(lǐng)域

    8月29日最新動(dòng)態(tài),業(yè)界矚目的AI圖像創(chuàng)作先鋒Midjourney正式宣告進(jìn)軍硬件領(lǐng)域,這一重大舉措通過(guò)其在熱門社交媒體X平臺(tái)上的公告向外界傳達(dá),同時(shí)開(kāi)放招募令,誠(chéng)邀各路英才加盟其新設(shè)立的硬件研發(fā)團(tuán)隊(duì)。
    的頭像 發(fā)表于 08-29 16:41 ?257次閱讀

    說(shuō)說(shuō)硬件調(diào)試中發(fā)現(xiàn)的那些低級(jí)錯(cuò)誤

    說(shuō)說(shuō)硬件調(diào)試中發(fā)現(xiàn)的那些低級(jí)錯(cuò)誤 2024-07-03 11:47**·**一博高速先生 高速先生成員--周偉 最近遇到很多debug相關(guān)的咨詢,曾經(jīng)我們說(shuō)過(guò),我們做過(guò)的板子越多,遇到問(wèn)題的概率也
    發(fā)表于 07-03 12:02

    說(shuō)說(shuō)硬件調(diào)試中發(fā)現(xiàn)的那些低級(jí)錯(cuò)誤

    硬件調(diào)試中會(huì)經(jīng)常遇到各種意想不到的問(wèn)題,有些調(diào)試花了幾個(gè)月,各種能想到的辦法都嘗試了,最后發(fā)現(xiàn)卻是一個(gè)非常低級(jí)的錯(cuò)誤,有多低級(jí)?請(qǐng)看今天的內(nèi)文介紹。
    的頭像 發(fā)表于 07-03 12:00 ?274次閱讀
    說(shuō)說(shuō)<b class='flag-5'>硬件</b><b class='flag-5'>調(diào)試</b>中發(fā)現(xiàn)的那些低級(jí)錯(cuò)誤

    解析當(dāng)代硬件工程師面臨的可靠性設(shè)計(jì)挑戰(zhàn)與應(yīng)對(duì)策略

    硬件電路可靠性設(shè)計(jì)硬件電路可靠性設(shè)計(jì)在多個(gè)關(guān)鍵行業(yè)中至關(guān)重要。電子產(chǎn)品制造業(yè)、工業(yè)控制與自動(dòng)化、航空航天以及醫(yī)療設(shè)備領(lǐng)域,都對(duì)硬件穩(wěn)定性和長(zhǎng)期可靠性有嚴(yán)格要求。工程師在面對(duì)這些
    的頭像 發(fā)表于 06-27 08:17 ?780次閱讀
    解析當(dāng)代<b class='flag-5'>硬件</b>工程師面臨的可靠性設(shè)計(jì)<b class='flag-5'>挑戰(zhàn)</b>與應(yīng)對(duì)策略

    在機(jī)遇與挑戰(zhàn)并存的AI時(shí)代,三星如何在DRAM領(lǐng)域開(kāi)拓創(chuàng)新?

    在機(jī)遇與挑戰(zhàn)并存的AI時(shí)代,三星如何在DRAM領(lǐng)域開(kāi)拓創(chuàng)新?
    發(fā)表于 05-09 18:46 ?421次閱讀
    在機(jī)遇與<b class='flag-5'>挑戰(zhàn)</b>并存的AI時(shí)代,三星如何在DRAM<b class='flag-5'>領(lǐng)域</b>開(kāi)拓創(chuàng)新?

    JTAG在整個(gè)嵌入式系統(tǒng)開(kāi)發(fā)生命周期中的系統(tǒng)調(diào)試和測(cè)試中的作用

    時(shí)代變了。如今,內(nèi)存空間和高CPU時(shí)鐘頻率“幾乎”。設(shè)計(jì)、調(diào)試和測(cè)試挑戰(zhàn)已經(jīng)從硬件組件集成和調(diào)試發(fā)展到系統(tǒng)硬件設(shè)計(jì)的仿真,先于 SOC 流片
    發(fā)表于 05-03 10:13 ?361次閱讀
    JTAG在整個(gè)嵌入式系統(tǒng)開(kāi)發(fā)生命周期中的系統(tǒng)<b class='flag-5'>調(diào)試</b>和測(cè)試中的作用

    Cubemx5.10硬件調(diào)試時(shí),根本進(jìn)不了main是為什么?

    硬件調(diào)試時(shí),根本進(jìn)不了main。只要RCC使用HAL庫(kù)正常。
    發(fā)表于 04-22 07:19

    PLC系統(tǒng)的安裝與調(diào)試流程

    PLC控制系統(tǒng)的安裝與調(diào)試,涉及到各項(xiàng)工作,并且只能按序進(jìn)行,一環(huán)緊扣一環(huán),稍有不慎都將導(dǎo)致調(diào)試失敗,不但延誤工期,甚至?xí)p壞設(shè)備。本文介紹了在現(xiàn)場(chǎng)實(shí)踐中總結(jié)出的PLC控制系統(tǒng)的安裝與調(diào)試
    的頭像 發(fā)表于 03-27 17:08 ?672次閱讀
    PLC系統(tǒng)的安裝與<b class='flag-5'>調(diào)試</b>流程

    硬件工程師在可靠性設(shè)計(jì)中所面臨的挑戰(zhàn)及解決之道

    Course硬件電路可靠性設(shè)計(jì)HardwareEngineer硬件電路工程師在進(jìn)行可靠性設(shè)計(jì)時(shí),常常會(huì)陷入一系列煩惱之中。這些挑戰(zhàn)包括成本、時(shí)間壓力、可靠性預(yù)測(cè)的不確定性、復(fù)雜性增加以及設(shè)計(jì)限制等
    的頭像 發(fā)表于 03-23 08:16 ?816次閱讀
    <b class='flag-5'>硬件</b>工程師在可靠性設(shè)計(jì)中所面臨的<b class='flag-5'>挑戰(zhàn)</b>及解決之道

    使用帶有DAP miniwiggler硬件的memtool進(jìn)行閃存,如何使用memtool進(jìn)行調(diào)試

    我正在嘗試使用帶有 DAP miniwiggler 硬件的 memtool 進(jìn)行閃存。 但是我不知道如何調(diào)試它。 另外,如果它們有任何設(shè)置可以將程序計(jì)數(shù)器設(shè)置為我們的應(yīng)用程序內(nèi)存地址,那將非常有幫助。 如何使用memtool進(jìn)行調(diào)試
    發(fā)表于 01-23 06:37

    FPGA硬件電路的調(diào)試必備原則和技巧

    調(diào)試FPGA電路時(shí)要遵循必須的原則和技巧,才能降低調(diào)試時(shí)間,防止誤操作損壞電路。通常情況下,參考以下步驟執(zhí)行 FPGA硬件系統(tǒng)的調(diào)試。 1、在焊接
    的頭像 發(fā)表于 12-22 16:40 ?734次閱讀
    FPGA<b class='flag-5'>硬件</b>電路的<b class='flag-5'>調(diào)試</b>必備原則和技巧