91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

在FPGA上建立MATLAB和Simulink算法原型

FPGA設(shè)計論壇 ? 來源:未知 ? 2023-08-06 10:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

wKgaomToPW-AS6rKAAAAuFYhST8378.png

點擊上方藍字關(guān)注我們

芯片設(shè)計和驗證工程師通常要為在硅片上實現(xiàn)的每一行RTL代碼寫出多達10行測試平臺代碼。驗證任務(wù)在設(shè)計周期內(nèi)可能會占用50%或更多的時間。盡管如此辛 苦,仍有接近60%的芯片存在功能瑕疵,需要返工。由于HDL仿真不足以發(fā)現(xiàn)系統(tǒng)級錯誤,芯片設(shè)計人員正利用FPGA來加速算法創(chuàng)建和原型設(shè)計。

利用FPGA處理大型測試數(shù)據(jù)集可以使工程師快速評估算法和架構(gòu)并迅速做出權(quán)衡。工程師也可以在實際環(huán)境下測試設(shè)計,避免因使用HDL仿真器耗大量時 間。系統(tǒng)級設(shè)計和驗證工具(如
matlabSimulink)通過在FPGA上快速建立算法原型,可以幫助工程師實現(xiàn)這些優(yōu)勢。

本文將介紹使用MATLAB和Simulink創(chuàng)建FPGA原型的最佳方法。這些最佳方法包括:在設(shè)計過程初期分析定點量化的效應(yīng)并優(yōu)化字長,產(chǎn)生更 小、更高效的實現(xiàn)方案;利用自動HDL代碼生成功能,更快生成FPGA原型;重用具有HDL協(xié)同仿真功能的系統(tǒng)級測試平臺,采用系統(tǒng)級指標分析HDL實現(xiàn) 方案;通過FPGA在環(huán)仿真加速驗證(圖1)。

wKgaomToPW-ANDvUAABlixlUNas404.jpg


為什么在FPGA上建立原型?
在FPGA上建立算法原型可以增強工程師的信心,使他們相信自己的算法在實際環(huán)境中的表現(xiàn)能夠與預(yù)期相符。除了高速運行測試向量和仿真方案,工程師還可 以利用FPGA原型試驗軟件功能以及諸如RF模擬子系統(tǒng)的相關(guān)系統(tǒng)級功能。此外,由于FPGA原型運行速度更快,可以使用大型數(shù)據(jù)集,暴露出仿真模型未 能發(fā)現(xiàn)的缺陷。

采用HDL代碼生成功能的基于模型的設(shè)計可以使工程師有效地建立FPGA原型,如圖2所示。該圖向我們展示了這樣一種現(xiàn)實情況:工程師經(jīng)??s短詳細設(shè)計 階段,試圖通過盡快開始硬件開發(fā)階段以符合開發(fā)周期的要求?,F(xiàn)實中,當工程師發(fā)現(xiàn)定點算法達不到系統(tǒng)要求時,就得在HDL創(chuàng)建階段重新審視詳細設(shè)計階段。這樣的重疊工作將使HDL創(chuàng)建階段延長(如紫色長條所示),并可能引發(fā)各種設(shè)計問題(如膠合邏輯或設(shè)計補?。?。

wKgaomToPW-AQH4eAABbwfCU2EM393.jpg


由于自動HDL代碼生成流程比手工編碼快,工程師得以把節(jié)省下來的時間投入到詳細設(shè)計階段,生成更優(yōu)質(zhì)的定點算法。與手動的工作流程相比,這種方法使工程師能夠以更快的速度生成質(zhì)量更佳的FPGA原型。

數(shù)字下變頻器案例研究
為了說明采用基于模型的設(shè)計建立FPGA原型的最佳方法,可借助數(shù)字下變頻器(DDC)來進行案例研究。在眾多的
通信系統(tǒng)中,DDC是一種普通的構(gòu)建塊 (圖3)。該構(gòu)建塊用于將高速通帶輸入轉(zhuǎn)換為低速基帶輸出,以便使用較低采樣率時鐘進行處理。這樣,在硬件實施階段便可降低功耗、節(jié)約資源。DDC的主要 部件包括:數(shù)控振蕩器(NCO)、混頻器和數(shù)字濾波器鏈路(圖4)。

wKgaomToPW-AdpbhAABENhZ0GW4343.jpg


在設(shè)計過程初期分析定點量化的效應(yīng)
工程師通常使用浮點數(shù)據(jù)類型來測試新的構(gòu)想和開發(fā)初始算法。然而,F(xiàn)PGA和ASIC硬件實現(xiàn)要求轉(zhuǎn)換為定點數(shù)據(jù)類型,而這往往會造成量化誤差。使用手 動工作流程時,通常在HDL編碼過程中執(zhí)行定點量化。在該工作流程中,工程師無法輕易地通過比較定點表示形式和浮點參考值量化定點量化的效應(yīng),而分析針對 溢出的HDL實現(xiàn)也同樣不易。

為了明智確定所需的小數(shù)位數(shù),在開始HDL編碼過程之前,工程師需要某種方法來比較浮點仿真結(jié)果與定點仿真結(jié)果。增加小數(shù)位數(shù)可以減小量化誤差;不過,這種方法需要增加字長(區(qū)域增多、功耗升高)。

例如,圖5展示了DDC濾波器鏈路中低通濾波器第一階段浮點與定點仿真結(jié)果的差異。這些差異是因定點量化所致。上方圖形顯示了浮點與定點仿真結(jié)果的重疊效果。下方圖形顯示了圖中每一點的量化誤差。工程師可能需要根據(jù)設(shè)計規(guī)范來增加小數(shù)位數(shù)以減小由此引出的量化誤差。

wKgaomToPW-AaZc5AABvZHRy7Io959.jpg


除了選擇小數(shù)位數(shù)之外,工程師還需要優(yōu)化字長,實現(xiàn)低功耗和區(qū)域優(yōu)化的設(shè)計。

在DDC案例研究中,工程師使用Simulink定點模塊組將部分數(shù)字濾波器鏈路的字長減少了8位之多(圖6)。

wKgaomToPW-Aei6dAABjoogEJaM814.jpg


利用自動HDL代碼生成功能更快生成FPGA原型
在生成FPGA原型時,HDL代碼必不可少。工程師手工編寫了Verilog或VHDL代碼。作為替代選擇,使用HDL編碼器自動生成HDL代碼具有眾 多明顯優(yōu)勢。工程師可以快速地評估能否在硬件中實施當前算法;迅速評估不同的算法實現(xiàn),選擇最佳方案;并在FPGA上更快地建立算法原型。

對于DDC案例研究而言,可以在55秒內(nèi)生成了5780行HDL代碼。工程師可以瀏覽并很快理解代碼(圖7)。自動代碼生成功能允許工程師對系統(tǒng)級模型進行更改,并且,通過重新生成HDL代碼,該功能可以在數(shù)分鐘之內(nèi)生成更新的HDL實現(xiàn)方案。

wKgaomToPXCAAwqdAABl7dJQuYU401.jpg


重用具有協(xié)同仿真功能的系統(tǒng)級測試平臺進行HDL驗證
功能驗證:HDL協(xié)同仿真使工程師能夠重用Simulink模型,將激勵驅(qū)動至HDL仿真器,并對仿真輸出執(zhí)行交互式系統(tǒng)級分析(圖8)。

wKgaomToPXCAAZpfAABFH2ffuNw691.jpg


HDL仿真僅提供數(shù)字波形輸出,而HDL協(xié)同仿真則提供了顯示HDL代碼的完整視圖,并可以訪問Simulink的全套系統(tǒng)級分析工具。當工程師觀察到預(yù)期結(jié)果與HDL仿真結(jié)果存在差異時,可借助協(xié)同仿真進一步了解該失配所產(chǎn)生的系統(tǒng)級影響。

例如,在圖9中,頻譜儀視圖可以使工程師做出明智決定,忽略預(yù)期結(jié)果與HDL仿真結(jié)果之間的失配,其原因是該差異位于阻帶區(qū)。相比之下,數(shù)字波形輸出只 是將預(yù)期結(jié)果與HDL仿真結(jié)果的失配標記為誤差。盡管工程師最終可能得出相同的結(jié)論,但這將需要更多的時間完成所需的分析。

wKgaomToPXCANrD8AAB2twTbaQE089.jpg


測試覆蓋率:工程師可以使用HDL驗證工具、Simulink設(shè)計驗證工具和ModelSim/Questa自動執(zhí)行代碼覆蓋率分析。在該工作流程 中,Simulink設(shè)計驗證工具可針對模型覆蓋率生成一套測試用例。HDL驗證工具自動使用這一套測試用例運行ModelSim/Questa,收集代 碼覆蓋率數(shù)據(jù),以對生成的代碼加以全面分析。

使用FPGA在環(huán)仿真加速驗證
使用系統(tǒng)級仿真和HDL協(xié)同仿真驗證DDC算法之后,便可以立即在FPGA目標平臺上部署DDC算法。對算法執(zhí)行基于FPGA的驗證(也稱為FPGA在 環(huán)仿真)可以增強對算法在現(xiàn)實環(huán)境中有效運行的信心。相比基于主機的HDL仿真,該驗證可以使工程師更快地運行測試方案。

對于DDC算法而言,可以使用Simulink模型驅(qū)動FPGA輸入激勵并分析FPGA的輸出(圖10)。與HDL協(xié)同仿真一樣,在Simulink中始終可以利用相關(guān)數(shù)據(jù)進行分析。

wKgaomToPXCAcO0zAAA4fXZfl8U467.jpg


圖11對比了HDL協(xié)同仿真和FPGA在環(huán)仿真這兩種用于DDC設(shè)計的驗證方法。在本案例中,F(xiàn)PGA在環(huán)仿真的速度是HDL協(xié)同仿真的23倍。這樣的 速度提升使工程師能夠運行更廣泛的測試用例并對其設(shè)計進行回歸測試。這使他們能夠識別出有待進一步分析的潛在問題區(qū)域。

wKgaomToPXCASRYUAABrEGYboVU006.jpg


盡管HDL協(xié)同仿真速度較慢,但它卻提高了HDL代碼的可見性。因此,它很適合針對FPGA在環(huán)仿真過程中發(fā)現(xiàn)的問題區(qū)域進行更詳細的分析。

本文小結(jié)
如果工程師遵循本文所述的四種最佳方法,開發(fā)FPGA原型將比傳統(tǒng)的手動工作流程快出許多,并能使工程師信心倍增。此外,工程師還可以在整個開發(fā)過程中 繼續(xù)優(yōu)化自己的模型,并快速地重新生成有關(guān)FPGA實現(xiàn)的代碼。與依賴手工編寫HDL的傳統(tǒng)工作流程相比,這種能力可以顯著縮短設(shè)計迭代的周期。

wKgaomToPXCAKDIIAAAJM7aZU1A512.png

有你想看的精彩 至芯科技FPGA就業(yè)培訓班——助你步入成功之路、8月12號西安中心開課、歡迎咨詢! 基于FPGA的CAN總線通信節(jié)點設(shè)計 解析高速ADCDAC與FPGA的配合使用

wKgaomToPXCAEM_tAABUdafP6GM068.jpg

掃碼加微信邀請您加入FPGA學習交流群

wKgaomToPXGAYxzmAABiq3a-ogY771.jpgwKgaomToPXGASC1yAAACXWrmhKE764.png

歡迎加入至芯科技FPGA微信學習交流群,這里有一群優(yōu)秀的FPGA工程師、學生、老師、這里FPGA技術(shù)交流學習氛圍濃厚、相互分享、相互幫助、叫上小伙伴一起加入吧!

點個在看你最好看


原文標題:在FPGA上建立MATLAB和Simulink算法原型

文章出處:【微信公眾號:FPGA設(shè)計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。


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

    關(guān)注

    1660

    文章

    22415

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    matlab算法部署simulink

    有沒有哪位大佬能提供一下思路,遇到一個問題matlab得不到神經(jīng)網(wǎng)絡(luò)fitcnet模型的權(quán)重參數(shù),所以simulink沒辦法部署,那遇到這種情況該如何處理
    發(fā)表于 12-08 15:27

    如何利用Verilog HDLFPGA實現(xiàn)SRAM的讀寫測試

    本篇將詳細介紹如何利用Verilog HDLFPGA實現(xiàn)SRAM的讀寫測試。SRAM是一種非易失性存儲器,具有高速讀取和寫入的特點。FPGA
    的頭像 發(fā)表于 10-22 17:21 ?4355次閱讀
    如何利用Verilog HDL<b class='flag-5'>在</b><b class='flag-5'>FPGA</b><b class='flag-5'>上</b>實現(xiàn)SRAM的讀寫測試

    使用Simulink自動生成浮點運算HDL代碼(Part 1)

    單元。 Unpack和Pack模塊塊將浮點類型轉(zhuǎn)換為符號、指數(shù)和尾數(shù)。圖中S、E、M分別代表符號、指數(shù)、尾數(shù)。這是基于IEEE-754浮點運算標準。浮點算法實現(xiàn)塊S、E和m執(zhí)行計算。通過這種轉(zhuǎn)換
    發(fā)表于 10-22 06:48

    simulink只要運行就會死機

    卸載了2345安全衛(wèi)士之后,電腦就突然黑屏死機,然后再打開電腦,打開simulink后會有照片里的彈窗,就會退出MATLAB,之后再打開simulink只要運行就會死機,怎么解決(求
    發(fā)表于 07-24 17:11

    基于MatlabFPGA的雙邊濾波算法實現(xiàn)

    前面發(fā)過中值、均值、高斯濾波的文章,這些只考慮了位置,并沒有考慮相似度。那么雙邊濾波來了,既考慮了位置,有考慮了相似度,對邊緣的保持比前幾個好很多,當然實現(xiàn)也是復(fù)雜很多。本文將從原理入手,采用MatlabFPGA設(shè)計實現(xiàn)雙邊
    的頭像 發(fā)表于 07-10 11:28 ?4562次閱讀
    基于<b class='flag-5'>Matlab</b>與<b class='flag-5'>FPGA</b>的雙邊濾波<b class='flag-5'>算法</b>實現(xiàn)

    基于FPGA的壓縮算法加速實現(xiàn)

    本設(shè)計中,計劃實現(xiàn)對文件的壓縮及解壓,同時優(yōu)化壓縮中所涉及的信號處理和計算密集型功能,實現(xiàn)對其的加速處理。本設(shè)計的最終目標是證明充分并行化的硬件體系結(jié)構(gòu) FPGA 實現(xiàn)該算法時,可
    的頭像 發(fā)表于 07-10 11:09 ?2400次閱讀
    基于<b class='flag-5'>FPGA</b>的壓縮<b class='flag-5'>算法</b>加速實現(xiàn)

    無刷直流電機模糊PI控制系統(tǒng)建模與仿真

    摘 要:從無刷直流電機(BIDCM)的工作原理和結(jié)構(gòu)出發(fā),分析了 BLDCM數(shù)學模型的基礎(chǔ),采用模塊化方法,Matlab/Simulink
    發(fā)表于 07-07 18:25

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

    子,工程師可以從 proFPGA Uno 系統(tǒng)開始進行 IP 或子片系統(tǒng) (SoC) 的開發(fā),然后將其重復(fù)用于完整的 SoC 和專用集成電路 (ASIC)原型設(shè)計。這只需要將 Uno 中的相同
    的頭像 發(fā)表于 06-30 13:53 ?1854次閱讀

    利用MATLAB對交流電機調(diào)速系統(tǒng)進行建模和仿真

    是借助計算機及相關(guān)技術(shù),對真實系統(tǒng)的運行過程和狀態(tài)進行數(shù)字化模擬的技術(shù)。Simulink作為MATLAB的一個組件,能夠?qū)崿F(xiàn)對動態(tài)系統(tǒng)的建模、仿真和綜合分析。本文Simulink環(huán)境
    發(fā)表于 06-06 14:31

    MATLAB如何助力全球巨頭實現(xiàn)智能化突破

    當深度學習遇見汽車,一場靜默的技術(shù)革命正在發(fā)生。從Poclain Hydraulics 利用神經(jīng)網(wǎng)絡(luò)實時監(jiān)測電機溫度,到梅賽德斯-奔馳用虛擬傳感器替代硬件,再到康明斯通過 AI 模型加速發(fā)動機仿真——這些行業(yè)領(lǐng)軍者正借助 MATLABSimulink,將復(fù)雜
    的頭像 發(fā)表于 05-16 14:51 ?1154次閱讀
    <b class='flag-5'>MATLAB</b>如何助力全球巨頭實現(xiàn)智能化突破

    MATLAB/Simulink驅(qū)動汽車行業(yè)能效革命

    整車熱控制,MATLABSimulink 正以創(chuàng)新工具助力全球企業(yè)突破技術(shù)瓶頸,為綠色出行提供可靠保障。
    的頭像 發(fā)表于 05-14 14:22 ?784次閱讀
    <b class='flag-5'>MATLAB</b>/<b class='flag-5'>Simulink</b>驅(qū)動汽車行業(yè)能效革命

    如何實現(xiàn)MC33774ICSimulink環(huán)境中使用基于模型的設(shè)計?

    我想熟悉如何實現(xiàn)MC33774IC Simulink 環(huán)境中使用基于模型的設(shè)計。 盡管 MATLAB 提供了一些示例文件,但它們似乎是最終版本。要更深入地了解如何配置MC33774,我正在尋找一個教程,該教程解釋了如何從頭開
    發(fā)表于 04-10 08:05

    直流電機控制方法的Matlab仿真研究

    速度控制模型,以提高無刷直流電機速度控制系統(tǒng)的穩(wěn)定性和抗干擾能力 。使用 Matlab/Simulink 工具箱建立無刷直流電機的仿真模型,研究結(jié)果表明,模糊自適應(yīng) PID 算法能夠使
    發(fā)表于 03-27 12:15

    MATLAB仿真直流電機雙閉環(huán)調(diào)速系統(tǒng)中的應(yīng)用

    分析了直流調(diào)速系統(tǒng)原理的基礎(chǔ),MATLAB/SIMULINK 仿真環(huán)境下對轉(zhuǎn)速、電流雙閉環(huán)調(diào)速系統(tǒng)建模并進行了仿真分析。仿真結(jié)果表明,
    發(fā)表于 03-20 13:03

    FPGA開發(fā)任務(wù)

    我想請人幫我開發(fā)一款基于FPGA的產(chǎn)品,把我寫好MATLAB代碼固化FPGA中,實現(xiàn)算法加速和加密功能。有興趣的聯(lián)系我
    發(fā)表于 03-15 10:19