女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

從算法到RTL實(shí)現(xiàn)的問題

OpenFPGA ? 來源:OpenFPGA ? 作者:OpenFPGA ? 2022-04-28 09:50 ? 次閱讀

針對近日技術(shù)交流群里討論的算法與RTL實(shí)現(xiàn)問題,寫篇文章,做一次總結(jié)。

微信公眾號《FPGA算法工程師》技術(shù)交流群里,交流氣氛十分熱烈,大家針對學(xué)習(xí)和工作中遇到的難點(diǎn)進(jìn)行交流和討論,可謂受益匪淺。

新手遇到的是新問題,對于有相關(guān)經(jīng)驗(yàn)的工程師而言,可能都遇到過。

作為算法、FPGA和IC等集中交流的平臺,群賢畢至,集思廣益,解決大家對相關(guān)知識和技術(shù)上的困惑,讓問題變得更簡單。

群友們提到一個很多人都會遇到的現(xiàn)實(shí)問題:

“把一個算法用RTL實(shí)現(xiàn),有哪些比較科學(xué)的步驟?第一步干什么?第二步干什么?第三步干什么……?”

25fd8232-c68c-11ec-bce3-dac502259ad0.png

這個問題,對于FPGA、ASIC等邏輯電路設(shè)計(jì)人員來講,是非常重要的問題。

通常來講,我們做算法實(shí)現(xiàn),需要有對標(biāo)的算法模型,作為驗(yàn)證硬件邏輯設(shè)計(jì)是否正確的參考依據(jù)。

我們首先要根據(jù)實(shí)際需求,針對某方面的信號處理問題,做一個鏈路級或模塊級快速仿真驗(yàn)證設(shè)計(jì)。最常見的比如通過MATLAB/C/C++等軟件環(huán)境進(jìn)行設(shè)計(jì)和驗(yàn)證。

26274ebe-c68c-11ec-bce3-dac502259ad0.png

軟件環(huán)境可以快速搭建仿真模型,并且進(jìn)行驗(yàn)證,為硬件RTL實(shí)現(xiàn)提供參考依據(jù)。在具體算法設(shè)計(jì)時,必須考慮數(shù)據(jù)流的處理過程:數(shù)據(jù)從哪里來,數(shù)據(jù)需要經(jīng)過哪些步驟處理,處理之后送到哪里。

接下來,我們需要將MATLAB、C++等算法模型由浮點(diǎn)轉(zhuǎn)為定點(diǎn),這個工作可以做好之后再去做邏輯設(shè)計(jì),也可以省略,但一定要清楚是如何定點(diǎn)的。

做好算法設(shè)計(jì)后,需要進(jìn)行性能評估,看是否符合預(yù)期要求,不符合則進(jìn)一步優(yōu)化,或者換一種設(shè)計(jì)方法。

在做邏輯實(shí)現(xiàn)之前,還有一個重要工作,就是對算法處理步驟進(jìn)行一步一步分解,解決如何從a到b再到c的過程,落實(shí)到加減乘除。

當(dāng)算法實(shí)際滿足要求后,則考慮邏輯實(shí)現(xiàn)的問題。

首先,建議采用自頂向下的設(shè)計(jì)思想,進(jìn)行系統(tǒng)架構(gòu)設(shè)計(jì),明確整個處理過程,需要執(zhí)行哪些功能,涉及哪些接口

26520e7e-c68c-11ec-bce3-dac502259ad0.png

接下來,選芯片器件,評估資源占用情況,評估需要用多少乘法器,除法器,DSP,BRAM,GT等。

其次,評估處理時間要求,是否需要實(shí)時性處理,給予多少時間來處理,進(jìn)而評估所需時鐘頻率,以及是否需要存在多個時鐘域處理。

2674f1f0-c68c-11ec-bce3-dac502259ad0.png

對于信號處理系統(tǒng),有的需要實(shí)時處理,有的則不需要實(shí)時處理。最具挑戰(zhàn)的無疑是實(shí)時性要求高的通信、雷達(dá)和圖像等領(lǐng)域的信號處理問題。

首先解決信號處理中的算法問題,為實(shí)現(xiàn)某一處理過程,需要分哪些步驟,最終得到什么樣的結(jié)果。

為了實(shí)現(xiàn)實(shí)時處理,邏輯電路該怎么去設(shè)計(jì)?

26932094-c68c-11ec-bce3-dac502259ad0.png

于是,算法問題既要研究如何處理數(shù)據(jù)流的問題,也要研究如何快速處理的問題。

電路實(shí)現(xiàn)時,則需要考慮資源消耗、并行處理結(jié)構(gòu),流水處理和控制邏輯。

26a9990a-c68c-11ec-bce3-dac502259ad0.png

如果有處理速率要求,則需考慮并行+流水的處理方式,并考慮單時鐘下的數(shù)據(jù)位寬。

同時,務(wù)必明確數(shù)據(jù)流向,前后級接口,功能模塊內(nèi)部RTL邏輯處理,細(xì)化到每個時鐘應(yīng)該怎么處理,step by step。

26d59852-c68c-11ec-bce3-dac502259ad0.png

以上都比較明確后,可以著手進(jìn)行RTL設(shè)計(jì)。RTL設(shè)計(jì)的核心,便是寄存器、RAM和FSM的靈活使用。其中,F(xiàn)SM占據(jù)了大部分功能。通常情況下,我們不只是操作純數(shù)據(jù)流,而是在各種控制信號和參數(shù)下進(jìn)行設(shè)計(jì),此時涉及各種FSM和選擇器設(shè)計(jì),并注意是否需要進(jìn)行流控。

26ee1b66-c68c-11ec-bce3-dac502259ad0.png

RTL代碼設(shè)計(jì)完成之后,進(jìn)行TestBench平臺搭建和仿真驗(yàn)證是必要的,特別是對于復(fù)雜功能模塊或系統(tǒng)設(shè)計(jì)而言。經(jīng)驗(yàn)再豐富的工程師,也不敢保證,不經(jīng)過仿真驗(yàn)證直接上板一定沒問題。

驗(yàn)證也是一門重要的技術(shù),這也是為什么存在IC驗(yàn)證崗位,目的就是為芯片成功流片嚴(yán)格把關(guān),一旦流片失敗,損失重大,影響深遠(yuǎn)。

FPGA的開發(fā)設(shè)計(jì),同樣需要進(jìn)行仿真驗(yàn)證。通常,我們可以通過算法鏈路產(chǎn)生所需激勵源,通過TestBench對功能模塊進(jìn)行驗(yàn)證,并進(jìn)行結(jié)果對比分析。重點(diǎn)解決兩個問題:

一是驗(yàn)證邏輯時序是否存在問題,比如信號是否對齊,有無接口處理不當(dāng)導(dǎo)致數(shù)據(jù)丟失等。

二是信號處理過程是否得當(dāng),數(shù)據(jù)位寬、精度等是否符合算法要求。

解決功能性問題后,就需要考慮性能問題。定點(diǎn)是否合適,與浮點(diǎn)算法性能的差異有多大,或者軟件中的定點(diǎn)處理與邏輯電路定點(diǎn)處理,誤差有多大。在不斷驗(yàn)證過程中,優(yōu)化算法設(shè)計(jì)和邏輯電路設(shè)計(jì)。

剩下的邏輯綜合、實(shí)現(xiàn)、比特流生成和調(diào)試等環(huán)節(jié),屬于常規(guī)操作,但對于邏輯綜合、實(shí)現(xiàn)中的時序約束和相關(guān)策略設(shè)置,也是十分重要的。

26fabb28-c68c-11ec-bce3-dac502259ad0.png

最后,用一張圖總結(jié)如何從算法到RTL實(shí)現(xiàn)。

2709a3c2-c68c-11ec-bce3-dac502259ad0.png

本文只是粗略地分析了算法到RTL代碼實(shí)現(xiàn)之間的邏輯關(guān)系,以及從實(shí)現(xiàn)角度,我們應(yīng)該怎么去著手。

具體到某個信號處理算法實(shí)現(xiàn)時,必須清楚整個信號處理過程,對算法一步一步分解,再對信號流、定點(diǎn)和接口進(jìn)行設(shè)計(jì)。

做任何事情之前,先謀劃布局,磨刀不誤砍柴工,扎扎實(shí)實(shí)做好每一步,功到自然成。

---END---

審核編輯 :李倩

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

    關(guān)注

    23

    文章

    4699

    瀏覽量

    94773
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    388

    瀏覽量

    60681

原文標(biāo)題:從算法到RTL實(shí)現(xiàn),F(xiàn)PGA工程師該怎么做?

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

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

    DeepSeek:入門精通

    電子發(fā)燒友網(wǎng)站提供《DeepSeek:入門精通.pdf》資料免費(fèi)下載
    發(fā)表于 05-28 14:12 ?0次下載

    18個常用的強(qiáng)化學(xué)習(xí)算法整理:基礎(chǔ)方法高級模型的理論技術(shù)與代碼實(shí)現(xiàn)

    本來轉(zhuǎn)自:DeepHubIMBA本文系統(tǒng)講解基本強(qiáng)化學(xué)習(xí)方法高級技術(shù)(如PPO、A3C、PlaNet等)的實(shí)現(xiàn)原理與編碼過程,旨在通過理論結(jié)合代碼的方式,構(gòu)建對強(qiáng)化學(xué)習(xí)算法的全面理
    的頭像 發(fā)表于 04-23 13:22 ?287次閱讀
    18個常用的強(qiáng)化學(xué)習(xí)<b class='flag-5'>算法</b>整理:<b class='flag-5'>從</b>基礎(chǔ)方法<b class='flag-5'>到</b>高級模型的理論技術(shù)與代碼<b class='flag-5'>實(shí)現(xiàn)</b>

    設(shè)備全生命周期數(shù)字孿生:采購報(bào)廢的智能決策閉環(huán)

    數(shù)字孿生技術(shù)為企業(yè)打造設(shè)備全生命周期“數(shù)據(jù)驅(qū)動的智能閉環(huán)”,大幅提升設(shè)備選型、運(yùn)維、報(bào)廢決策效率,縮短安裝周期。通過全息感知、模擬推演和決策優(yōu)化,實(shí)現(xiàn)設(shè)備“經(jīng)驗(yàn)運(yùn)維”算法驅(qū)動”的
    的頭像 發(fā)表于 03-28 10:23 ?282次閱讀
    設(shè)備全生命周期數(shù)字孿生:<b class='flag-5'>從</b>采購<b class='flag-5'>到</b>報(bào)廢的智能決策閉環(huán)

    DeepSeek入門精通

    電子發(fā)燒友網(wǎng)站提供《DeepSeek入門精通.pdf》資料免費(fèi)下載
    發(fā)表于 03-04 15:43 ?59次下載

    PID控制算法的C語言實(shí)現(xiàn):PID算法原理

    在工業(yè)應(yīng)用中 PID 及其衍生算法是應(yīng)用最廣泛的算法之一,是當(dāng)之無愧的萬能算法,如果能夠熟練掌握 PID 算法的設(shè)計(jì)與實(shí)現(xiàn)過程,對于一般的研
    發(fā)表于 02-26 15:24

    DeepSeek:入門精通

    DeepSeek:入門精通
    發(fā)表于 02-08 18:00 ?121次下載

    【「算法電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+閱讀第一章部分筆記

    工具和數(shù)字開發(fā)工具進(jìn)行算法研究的主要工具有MATLAB、Python,以及普通的C/C++開發(fā)環(huán)境。數(shù)字前端開發(fā)的工具主要是Gvim、 VCS和Verdi Gvim是文本編輯器,工程師常用它來編輯RTL
    發(fā)表于 12-02 21:41

    【「算法電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+內(nèi)容簡介

    內(nèi)容簡介這是一本深入解讀基礎(chǔ)算法及其電路設(shè)計(jì),以打通算法研發(fā)到數(shù)字IC設(shè)計(jì)的實(shí)現(xiàn)屏障,以及指導(dǎo)芯片設(shè)計(jì)工程師從底層掌握復(fù)雜電路設(shè)計(jì)與優(yōu)化方法為目標(biāo)的專業(yè)技術(shù)書。任何芯片(如WiFi芯片、5G芯片
    發(fā)表于 11-21 17:14

    【「算法電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+介紹基礎(chǔ)硬件算法模塊

    作為嵌入式開發(fā)者往往比較關(guān)注硬件和軟件的協(xié)調(diào)。本書介紹了除法器,信號發(fā)生器,濾波器,分頻器等基本算法的電路實(shí)現(xiàn),雖然都是基礎(chǔ)內(nèi)容,但是也是最常用到的基本模塊。 隨著逆全球化趨勢的出現(xiàn),過去的研發(fā)
    發(fā)表于 11-21 17:05

    【「算法電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+第九章sigma delta adc閱讀與分享

    思想幾行代碼實(shí)現(xiàn)降幀率算法。 https://mp.weixin.qq.com/s/9Vhe1rUCI8ZGBGGy3todcwPDM系列文章之二:一文搞懂PDM編碼基本原理1bit
    發(fā)表于 11-20 13:58

    【「算法電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+一本介紹基礎(chǔ)硬件算法模塊實(shí)現(xiàn)的好書

    作為嵌入式開發(fā)者往往比較關(guān)注硬件和軟件的協(xié)調(diào)。本書介紹了除法器,信號發(fā)生器,濾波器,分頻器等基本算法的電路實(shí)現(xiàn),雖然都是基礎(chǔ)內(nèi)容,但是也是最常用到的基本模塊,本書的內(nèi)容比較對本人胃口。 我們先來
    發(fā)表于 11-20 13:42

    RTL8192CU驅(qū)動

    RTL8192CU驅(qū)動,支持WINXP/7/10
    發(fā)表于 10-29 10:17 ?5次下載

    名單公布!【書籍評測活動NO.46】算法電路 | 數(shù)字芯片算法的電路實(shí)現(xiàn)

    :elecfans123)領(lǐng)取書籍進(jìn)行評測,如在5個工作日內(nèi)未聯(lián)系,視為放棄本次試用評測資格! 《算法電路——數(shù)字芯片算法的電路實(shí)現(xiàn)
    發(fā)表于 10-09 13:43

    RTL8187L和802.11n

    802.11n:802.11n是IEEE制定的一種無線傳輸標(biāo)準(zhǔn),用于實(shí)現(xiàn)高速無線網(wǎng)絡(luò)連接。它支持多輸入多輸出(MIMO)和40MHz頻帶寬度,可以將數(shù)據(jù)傳輸速率提高600Mbps或更高。此標(biāo)準(zhǔn)通常在
    發(fā)表于 08-24 14:23

    名單公布!【書籍評測活動NO.40】數(shù)字IC設(shè)計(jì)入門,多角度透視芯片設(shè)計(jì)

    共4項(xiàng)。移知課程“算法RTL實(shí)現(xiàn)”主講人。 申請時間 2024年8月8日——2024年9月8日 活動參與方式 1、在本帖下方留言回帖
    發(fā)表于 08-08 15:31