一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

通過片上儀器和邏輯分析輕松進(jìn)行FPGA和ASIC調(diào)試

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Brad Quinton ? 2022-06-19 07:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ASICFPGA 變得非常復(fù)雜,特別是對于涉及多核的片上系統(tǒng) (SoC) 設(shè)計(jì)。這種復(fù)雜性帶來了更長、更繁瑣的調(diào)試和驗(yàn)證周期。不幸的是,當(dāng)出現(xiàn)故障或出錯(cuò)時(shí),在高度集成的設(shè)計(jì)中訪問測試點(diǎn)幾乎是不可能的。除非您想在運(yùn)行多個(gè)原型時(shí)花費(fèi)數(shù)周時(shí)間在黑暗中拍攝隨機(jī)錯(cuò)誤,否則片上儀器不再是可選的;這是一個(gè)重要的必備品。圖 1 顯示了使用片上儀器的調(diào)試過程概覽。

圖 1:儀器和調(diào)試周期對于檢測 FPGA 原型中的錯(cuò)誤至關(guān)重要。

pYYBAGKsTI6AXPmbAAOuJQUoFSs336.png

雖然有多種方法可以將儀器添加到 FPGA,但使用儀器網(wǎng)絡(luò)的分布式方法正在成為首選方法,因?yàn)樗畲笙薅鹊卦黾恿藵撛谟^察點(diǎn)的數(shù)量,同時(shí)最大限度地減少了硅面積或查找表的使用要求。對高效調(diào)試同樣重要的是深度跟蹤捕獲,以了解系統(tǒng)的各個(gè)部分如何隨著時(shí)間的推移進(jìn)行交互。最后,設(shè)計(jì)人員必須能夠觀察多個(gè)器件和時(shí)鐘域的交互,包括片上和片外,所有這些都是完全時(shí)間相關(guān)的,以獲得真正的系統(tǒng)級視角。

總而言之,包括靈活和完整的觀察點(diǎn)訪問、深度跟蹤捕獲和系統(tǒng)級視圖在內(nèi)的創(chuàng)新有可能將 FPGA 和 ASIC 調(diào)試的游戲規(guī)則從漫長而艱巨的過程轉(zhuǎn)變?yōu)榭焖俣咝У倪^程。

調(diào)試挑戰(zhàn)

在回顧實(shí)現(xiàn)嵌入式儀器的不同方法之前,首先了解為什么儀器是必要的會(huì)很有幫助。最大的原因僅僅是每個(gè)系統(tǒng)中不斷增長的功能。

雖然過去有很多探測點(diǎn)(設(shè)備上的外部 I/O)可供選擇,但現(xiàn)在無法觀察到發(fā)生了什么,因?yàn)樵诖蠖鄶?shù)情況下,關(guān)鍵接口現(xiàn)在都在設(shè)備內(nèi)部。與五年前相比,當(dāng)前一代 FPGA 的并行運(yùn)行功能數(shù)量增加了 100 倍,而外部輸出的數(shù)量卻保持不變。從試圖調(diào)試意外行為的開發(fā)人員的角度來看,現(xiàn)代芯片只不過是一個(gè)大黑匣子。

似乎這還不夠,雖然模擬器的功能繼續(xù)以線性方式提高,但并行功能的每一次增加都會(huì)增加潛在組合的指數(shù)級增長。由于仿真一次運(yùn)行在一種組合上,因此不可能涵蓋硅前仿真運(yùn)行中的所有功能。

由于無法充分模擬硅前所有可能的排列,導(dǎo)致在設(shè)計(jì)完成之前進(jìn)行基于 FPGA 的原型設(shè)計(jì)。特別是在原型級別,訪問觀察點(diǎn)對于快速有效地調(diào)試功能問題非常有幫助。

另一個(gè)調(diào)試挑戰(zhàn)是硅上嵌入式軟件的出現(xiàn)。越來越多的 FPGA 和 ASIC 設(shè)計(jì)包括一個(gè)或多個(gè)處理器內(nèi)核。此類系統(tǒng)可能包括軟件、固件、嵌入式處理器、GPU、內(nèi)存控制器和其他高速外圍設(shè)備的復(fù)雜組合。這種增加的功能集成與更快的內(nèi)部時(shí)鐘速度和復(fù)雜的高速 I/O 相結(jié)合,使開發(fā)人員比以往任何時(shí)候都更難提供功能齊全且經(jīng)過充分驗(yàn)證的系統(tǒng)。

片上信號捕捉

當(dāng)系統(tǒng)涉及多個(gè)芯片和組件時(shí),很容易移動(dòng)邏輯分析儀探頭以查看不同的信號組合。即使轉(zhuǎn)向片上儀器,靈活地將虛擬邏輯分析儀探頭移動(dòng)到不同信號點(diǎn)的需求仍然保持不變。由于設(shè)計(jì)人員無法預(yù)測給定芯片的每個(gè)變量或潛在應(yīng)用,因此可用的信號捕獲點(diǎn)越多越好。

傳統(tǒng)的 ASIC 方法使用具有共享選擇信號的多路復(fù)用器網(wǎng)絡(luò)(每個(gè)多路復(fù)用器級別一個(gè))并提供 n/m 個(gè)不同的信號組合,其中 n 是探測點(diǎn)的數(shù)量,m 是同時(shí)查看的信號數(shù)量(調(diào)試總線寬度)。這是最嚴(yán)格但最簡單的選項(xiàng),因?yàn)樗昧撕唵蔚亩嗦窂?fù)用器。為了有效,這種方法需要大量的前期時(shí)間來創(chuàng)建與每個(gè)可能的調(diào)試場景相對應(yīng)的信號組,并且一旦捕獲點(diǎn)起作用,設(shè)計(jì)人員就只能查看同一組中的信號。此過程要求高、耗時(shí)且極不可能捕獲所有調(diào)試場景。

另一個(gè)極端是創(chuàng)建一個(gè)完整的交叉開關(guān)多路復(fù)用器,以提供完全的信號靈活性,這需要 m 個(gè)大小為 n:1 的多路復(fù)用器。相對于面積而言,這可能會(huì)很快變得昂貴,這使得這種方法對于除了最小的情況之外的所有情況都是不切實(shí)際的。

中間立場是要么增加多路復(fù)用器結(jié)構(gòu)內(nèi)的選擇信號數(shù)量,要么創(chuàng)建多個(gè)具有不同信號排序的重復(fù)組。共享選擇多路復(fù)用器和帶有附加選擇信號的多路復(fù)用器都在許多本土方法中實(shí)現(xiàn)。雖然共享選擇多路復(fù)用方案可以處理常見和預(yù)期的調(diào)試場景,但它們?nèi)匀粵]有達(dá)到理想的完整覆蓋范圍。因此,它們不適合解決意外問題,并且通常會(huì)導(dǎo)致實(shí)現(xiàn)效率低下,因?yàn)樾盘枙?huì)重復(fù)連接到多個(gè)多路復(fù)用器。

通過利用多級無序網(wǎng)絡(luò)(通常稱為集中器網(wǎng)絡(luò)),可以找到更優(yōu)雅、更高效的解決方案。這種新方法有效地創(chuàng)建了一個(gè)觀測網(wǎng)絡(luò),并且正在商業(yè)化。使用獨(dú)特的網(wǎng)絡(luò)架構(gòu)和互補(bǔ)的路由算法,觀察網(wǎng)絡(luò)提供了完整交叉開關(guān)多路復(fù)用器的信號靈活性,而在大多數(shù)情況下,只需要共享簡單多路復(fù)用器的裸片面積。表 1 顯示了使用不同方法計(jì)算的信號可見度的比較。

表 1:觀察網(wǎng)絡(luò)提供與多路復(fù)用器相同級別的信號可見性,同時(shí)需要相似或更少的裸片面積。

poYBAGKsTIeAGhKzAAE5D8kEM5Y537.png

通過觀察網(wǎng)絡(luò),設(shè)計(jì)人員可以使用自動(dòng)化工具以寄存器傳輸語言 (RTL) 實(shí)現(xiàn)片上信號捕獲探針。在設(shè)計(jì)階段,無需擔(dān)心不同的信號組合或排序,因?yàn)槊糠N組合都可用。結(jié)果是一個(gè)隨信號數(shù)量線性增長的觀察網(wǎng)絡(luò)。這種方法將確定路由的復(fù)雜性從芯片轉(zhuǎn)移到軟件中。在產(chǎn)生顯著的面積/性能改進(jìn)的同時(shí),觀測網(wǎng)絡(luò)需要復(fù)雜的算法來確定路由,因此如果沒有商業(yè)軟件來控制信號選擇,就很難使用它。

在觀察點(diǎn)可見性方面,網(wǎng)絡(luò)方法比簡單多路復(fù)用器的優(yōu)勢有多大?以這個(gè)例子為例,其中探測了 256 個(gè)信號 (n),同時(shí)可見 32 個(gè)信號 (m):

簡單多路復(fù)用器:信號組合數(shù)(可見性)= 256/32 = 32

觀測網(wǎng)絡(luò):信號組合數(shù)(可見度)= 2^256 = 1.2 x 10^77

相差76個(gè)數(shù)量級。雖然第一種方法具有高度限制性,但觀察網(wǎng)絡(luò)方法提供了任何可能的信號組合。以大致相同的成本,觀測網(wǎng)絡(luò)提供了巨大的優(yōu)勢,其靈活性更高。

最大化捕捉深度

對于跨越硬件和軟件的調(diào)試挑戰(zhàn),捕獲長跡線的能力對于追蹤在數(shù)千或數(shù)百萬個(gè)時(shí)鐘周期內(nèi)出現(xiàn)的問題至關(guān)重要。在硅后和 FPGA 上,深度捕獲對于了解整個(gè)系統(tǒng)的工作方式至關(guān)重要,因?yàn)樵S多無法驗(yàn)證的錯(cuò)誤需要很長時(shí)間才能出現(xiàn)。此外,大多數(shù)軟件驅(qū)動(dòng)的功能跨越數(shù)十萬到數(shù)百萬個(gè)時(shí)鐘周期。

傳統(tǒng)的儀器方法在從觀測探頭接收到的信息時(shí),使用內(nèi)部 RAM 中的一個(gè)條目來捕獲每個(gè)時(shí)鐘周期捕獲的數(shù)據(jù)。使用這種方法很難或不可能一次捕獲超過幾千個(gè)時(shí)鐘周期而不會(huì)對內(nèi)部存儲(chǔ)器資源造成不可接受的壓力。出于這個(gè)原因,現(xiàn)在開始使用壓縮技術(shù)來提高捕獲深度。

然而,大多數(shù)眾所周知的壓縮算法都不太適合跟蹤壓縮,它們是為視覺媒體和通信應(yīng)用開發(fā)的。一起使用多種壓縮技術(shù)的專用跟蹤壓縮層,每一種都專門針對常見的跟蹤數(shù)據(jù)模式進(jìn)行定制,現(xiàn)在已經(jīng)上市。對于大多數(shù)實(shí)際應(yīng)用,這可提供 10-1,000 倍的深度,而不會(huì)損失分辨率。

高效的系統(tǒng)范圍調(diào)試

更高效的 FPGA 和 ASIC 調(diào)試的最后一個(gè)難題是時(shí)間相關(guān)的系統(tǒng)范圍視圖,它跨越多個(gè)并行運(yùn)行的時(shí)鐘域。當(dāng)問題需要跨多個(gè)檢測區(qū)域進(jìn)行關(guān)聯(lián)時(shí),設(shè)計(jì)人員正在考慮獲取單個(gè)軌跡然后手動(dòng)關(guān)聯(lián)事件的耗時(shí)過程。例如,基于 FPGA 的原型設(shè)計(jì)平臺(tái)上的平均 ASIC 原型由跨四到八個(gè) FPGA 的每個(gè) FPGA 兩到三個(gè)時(shí)鐘域組成。這意味著設(shè)計(jì)人員將需要單獨(dú)調(diào)試 8 到 24 個(gè)時(shí)鐘域。一次跟蹤這 24 個(gè)域中的每一個(gè)并手動(dòng)將結(jié)果拼湊在一起既耗時(shí)又容易出錯(cuò)。

一種更有效的方法是使用邏輯分析儀軟件從在多個(gè)時(shí)鐘域和跨多個(gè)設(shè)備運(yùn)行的獨(dú)立儀器中生成時(shí)間相關(guān)視圖,如圖 2 所示。專用調(diào)試軟件可以從芯片的每個(gè)儀器區(qū)域收集數(shù)據(jù),反轉(zhuǎn)壓縮算法,然后對齊捕獲的數(shù)據(jù)以生成系統(tǒng)范圍的時(shí)間相關(guān)視圖。這導(dǎo)致單一的跟蹤捕獲和調(diào)試方案,既節(jié)省時(shí)間又提供許多功能單元和時(shí)鐘域的同時(shí)硬件調(diào)試。此過程通常會(huì)揭示在構(gòu)建設(shè)備時(shí)從未考慮過的緊急系統(tǒng)行為。

圖 2:時(shí)間相關(guān)視圖加速系統(tǒng)級調(diào)試。

poYBAGKsTH6AKZLxAAR1FLEVuxg911.png

創(chuàng)新應(yīng)對意外

隨著復(fù)雜性的增加和對探測點(diǎn)的訪問受限,ASIC 和 FPGA 驗(yàn)證和調(diào)試變得乏味且耗時(shí)。隨著越來越多的功能集成到每個(gè)芯片中,對探測點(diǎn)的物理訪問變得不可能。接下來的挑戰(zhàn)是整合足夠的片上觀察點(diǎn),不僅可以處理預(yù)期的調(diào)試場景,還可以處理意外的調(diào)試場景。

即使是最復(fù)雜的設(shè)計(jì),也能更快、更有效地驗(yàn)證和調(diào)試的一項(xiàng)關(guān)鍵創(chuàng)新是觀察網(wǎng)絡(luò)。與觀察信號的傳統(tǒng)共享選擇多路復(fù)用器方法相比,觀察網(wǎng)絡(luò)可提供更多具有相似芯片面積要求的信號組合。

支持更高效調(diào)試方案的其他創(chuàng)新包括使用高級壓縮算法來提高片上存儲(chǔ)器捕獲深度,以及邏輯分析儀軟件的出現(xiàn),該軟件可以生成跨越多個(gè)設(shè)備和片外儀器的時(shí)間相關(guān)的系統(tǒng)范圍視圖。

審核編輯:郭婷

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

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618604
  • asic
    +關(guān)注

    關(guān)注

    34

    文章

    1247

    瀏覽量

    122415
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7653

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    西門子桌面級原型驗(yàn)證系統(tǒng)Veloce proFPGA介紹

    子,工程師可以從 proFPGA Uno 系統(tǒng)開始進(jìn)行 IP 或子系統(tǒng) (SoC) 的開發(fā),然后將其重復(fù)用于完整的 SoC 和專用集成電路 (A
    的頭像 發(fā)表于 06-30 13:53 ?773次閱讀

    FPGA調(diào)試方式之VIO/ILA的使用

    在Vivado中,VIO(Virtual Input/Output)是一種用于調(diào)試和測試FPGA設(shè)計(jì)的IP核,它允許設(shè)計(jì)者通過JTAG接口實(shí)時(shí)讀取和寫入FPGA內(nèi)部的寄存器,從而檢查設(shè)
    的頭像 發(fā)表于 06-09 09:32 ?1382次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>調(diào)試</b>方式之VIO/ILA的使用

    FPGA遠(yuǎn)程燒寫bit文件和調(diào)試ILA指南

    FPGA 開發(fā)過程中,燒寫bit文件和使用ILA進(jìn)行調(diào)試是再常見不過的操作。但如果 FPGA 板卡被放在機(jī)房,或者通過PCIe插在服務(wù)器
    的頭像 發(fā)表于 06-05 16:41 ?831次閱讀
    <b class='flag-5'>FPGA</b>遠(yuǎn)程燒寫bit文件和<b class='flag-5'>調(diào)試</b>ILA指南

    現(xiàn)代中端FPGA的主要亮點(diǎn)

    FPGA 通常按照邏輯容量進(jìn)行分類,這種方式固然簡單,但未能充分體現(xiàn)現(xiàn)代 FPGA 作為可更改的
    的頭像 發(fā)表于 01-23 13:52 ?718次閱讀

    CPLD 與 ASIC 的比較

    可編程的邏輯器件,它允許設(shè)計(jì)者在制造后對邏輯功能進(jìn)行配置。CPLD通常由多個(gè)可配置的邏輯塊(Logic Blocks)和可編程互連(Interconnect)組成,這些
    的頭像 發(fā)表于 01-23 10:04 ?716次閱讀

    FPGAASIC的區(qū)別 FPGA性能優(yōu)化技巧

    FPGAASIC的區(qū)別 FPGA(現(xiàn)場可編程門陣列)和ASIC(專用集成電路)是兩種不同的集成電路技術(shù),它們在多個(gè)方面存在顯著的區(qū)別: FPGA
    的頭像 發(fā)表于 12-02 09:51 ?1061次閱讀

    ASIC集成電路與FPGA的區(qū)別

    根據(jù)特定的需求從頭開始設(shè)計(jì)和制造,設(shè)計(jì)和制造過程是一次性的。 一旦制造完成,其功能就固定了,不可更改。 分為全定制和半定制,全定制靈活性好但開發(fā)效率低下,半定制則較為方便且可靠。 FPGA 由通用的邏輯單元組成,這些單元可以通過
    的頭像 發(fā)表于 11-20 15:02 ?1205次閱讀

    FPGAASIC在大模型推理加速中的應(yīng)用

    隨著現(xiàn)在AI的快速發(fā)展,使用FPGAASIC進(jìn)行推理加速的研究也越來越多,從目前的市場來說,有些公司已經(jīng)有了專門做推理的ASIC,像Groq的LPU,專門針對大語言模型的推理做了優(yōu)化
    的頭像 發(fā)表于 10-29 14:12 ?2035次閱讀
    <b class='flag-5'>FPGA</b>和<b class='flag-5'>ASIC</b>在大模型推理加速中的應(yīng)用

    FPGAASIC的優(yōu)缺點(diǎn)比較

    適應(yīng)各種應(yīng)用場景。這意味著用戶可以根據(jù)需要,通過編程來更改FPGA的功能,而無需更改硬件設(shè)計(jì)。 設(shè)計(jì)周期短 :與ASIC相比,FPGA的設(shè)計(jì)、驗(yàn)證和生產(chǎn)周期更短。這主要是因?yàn)?/div>
    的頭像 發(fā)表于 10-25 09:24 ?1715次閱讀

    如何在服務(wù)器上調(diào)試本地FPGA板卡

    聯(lián)合開發(fā)或者跑多策略工程的時(shí)候,一般都使用多核的服務(wù)器進(jìn)行FPGA設(shè)計(jì)。這個(gè)時(shí)候如果板卡在本地電腦應(yīng)該怎么進(jìn)行調(diào)試呢?
    的頭像 發(fā)表于 10-24 18:05 ?739次閱讀
    如何在服務(wù)器上<b class='flag-5'>調(diào)試</b>本地<b class='flag-5'>FPGA</b>板卡

    FPGA做深度學(xué)習(xí)能走多遠(yuǎn)?

    需重新設(shè)計(jì)和制造芯片,這樣可以大大縮短產(chǎn)品的迭代周期,降低開發(fā)成本和風(fēng)險(xiǎn)。 ? 成本效益:相對于專用的 ASIC 芯片,FPGA 的開發(fā)和調(diào)試周期相對較短,可以更快地進(jìn)行模型迭代和優(yōu)化
    發(fā)表于 09-27 20:53

    淺談邏輯分析儀的技術(shù)原理和應(yīng)用領(lǐng)域

    邏輯分析儀是一種專門用于數(shù)字系統(tǒng)測試和分析的電子儀器,它通過實(shí)時(shí)捕獲和顯示數(shù)字信號的邏輯電平狀態(tài)
    發(fā)表于 09-12 15:04

    ASIC IP核移植到FPGA——更新概念并推動(dòng)改變以完成充滿挑戰(zhàn)的任務(wù)!

    本系列文章從數(shù)字芯片設(shè)計(jì)項(xiàng)目技術(shù)總監(jiān)的角度出發(fā),介紹了如何將芯片的產(chǎn)品定義與設(shè)計(jì)和驗(yàn)證規(guī)劃進(jìn)行結(jié)合,詳細(xì)講述了在FPGA使用IP核來開發(fā)ASIC原型項(xiàng)目時(shí),必須認(rèn)真考慮的一些問題。文
    的頭像 發(fā)表于 08-10 17:13 ?1099次閱讀
    將<b class='flag-5'>ASIC</b> IP核移植到<b class='flag-5'>FPGA</b><b class='flag-5'>上</b>——更新概念并推動(dòng)改變以完成充滿挑戰(zhàn)的任務(wù)!

    如何在服務(wù)器上調(diào)試本地FPGA板卡

    的編程和調(diào)試 現(xiàn)在 Vivado 已遠(yuǎn)程運(yùn)行,最后一步是對 FPGA 板卡進(jìn)行編程和調(diào)試。Vivado 的硬件服務(wù)器應(yīng)用程序必須按照上述說明在本地PC
    發(fā)表于 07-31 17:36

    FPGAASIC有什么不同之處

    FPGA是“可重構(gòu)邏輯”器件。先制造的芯片,再次設(shè)計(jì)時(shí)“重新配置”。
    的頭像 發(fā)表于 07-24 09:32 ?1480次閱讀
    <b class='flag-5'>FPGA</b>和<b class='flag-5'>ASIC</b>有什么不同之處