色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

FPGA學習-基于FIFO的行緩存結構

FPGA設計論壇 ? 來源:FPGA設計論壇 ? 作者:FPGA設計論壇 ? 2022-05-10 09:59 ? 次閱讀

像素行與像素窗口

一幅圖像是由一個個像素點構成的,對于一幅480*272大小的圖片來說,其寬度是480,高度是272。在使用FPGA進行圖像處理時,最關鍵的就是使用FPGA內部的存儲資源對像素行進行緩存與變換。由于在圖像處理過程中,經常會使用到卷積,因此需要對圖像進行開窗,然后將開窗得到的局部圖像與卷積核進行卷積,從而完成處理。

圖像數據一般按照一定的格式和時序進行傳輸,在我進行實驗的時候,處理圖像時,讓其以VGA的時序來進行工作,這樣能夠為我處理行緩存提供便利。

基于FIFO的行緩存結構

4d8ab88a-d003-11ec-bce3-dac502259ad0.png

在FPGA中對圖像的一行數據進行緩存時,可以采用FIFO這一結構,如上圖所示,新一行圖像數據流入到FIFO1中,FIFO1中會對圖像數據進行緩存,當FIFO1中緩存有一行圖像數據時,在下一行圖像數據來臨的時候,將FIFO1中緩存的圖像數據讀出,并傳遞給下一個FIFO,于此同時,將新一行的圖像數據緩存到FIFO1中,這樣就能完成多行圖像的緩存。

若要緩存多行圖像,下面的菊花鏈式的結果更能夠直觀地表現圖像數據地流向。

4da3f0f2-d003-11ec-bce3-dac502259ad0.png

新輸入地圖像緩存到FIFO1當中,當FIFO中緩存有一行數據的時候,下一個輸入像素來臨的時候,會將數據從本FIFO中讀出,并給到下一個FIFO,來形成類似于一個流水線的結構。

上面的圖中,就是實現一個5X5大小的窗口的一個結構圖。

代碼設計

實現一個可以生成任意尺寸大小的開窗的模塊,需要注意參數的使用,可以通過調節KSZ來調整窗口的大小。最終將窗口中的圖像像素,轉換成一個一維的數據輸出給到下一個模塊。

在設計的時候,對于FIFO要選擇精準計數模式,這樣才能讓流水正常工作起來。

在代碼中通過generate語句來實現多個line_buffer的例化,line buffer的個數可以根據卷積窗口的大小來選擇,例如3X3大小的卷積窗口需要緩存兩行,5X5大小的卷積窗口需要緩存4行,可以通過設置參數來選擇要例化多少個line_buffer。

4dbe4a06-d003-11ec-bce3-dac502259ad0.png

時序設計

4dd01cfe-d003-11ec-bce3-dac502259ad0.png

在設計FIFO的菊花鏈結構時,需要根據當前FIFO中存儲的數據個數來判斷,這時候使用到精準計數模式,可以反應FIFO中的存儲的數據。當FIFO中存儲有一行數據的時候,使能pop_en信號,表示當前可以將數據從FIFO中讀出。

在將數據寫入到FIFO中的時候,需要對數據進行擴充,也即需要對輸入的圖像的邊界補充數據,因為進行卷積之后的圖像將會比原始圖像數據尺寸減少,因此在形成卷積窗口時,將圖像擴充,能夠讓圖像處理完成之后,保持原來的尺寸,只是會在邊界出現黑邊。

win_buf這個模塊的最終輸出,就是一個矩陣內的所有像素,組成一個信號輸出到外部,供進行卷積的處理。

4de75cfc-d003-11ec-bce3-dac502259ad0.png

4dfd3586-d003-11ec-bce3-dac502259ad0.png

4e222b66-d003-11ec-bce3-dac502259ad0.png

4e352892-d003-11ec-bce3-dac502259ad0.png

4e52d77a-d003-11ec-bce3-dac502259ad0.png

4e720ef6-d003-11ec-bce3-dac502259ad0.png

4e94a31c-d003-11ec-bce3-dac502259ad0.png

4eac8b26-d003-11ec-bce3-dac502259ad0.png

4ec1763a-d003-11ec-bce3-dac502259ad0.png

4ed810f2-d003-11ec-bce3-dac502259ad0.png

4f0223c4-d003-11ec-bce3-dac502259ad0.png

4f178a48-d003-11ec-bce3-dac502259ad0.png

4f30dc6e-d003-11ec-bce3-dac502259ad0.png

4f4959a6-d003-11ec-bce3-dac502259ad0.png

仿真驗證

4f5fbd72-d003-11ec-bce3-dac502259ad0.png

輸入的第三行數據的前三個數據是:0x00,0x78,0x7c

輸入的第二行數據的前三個數據是:0x00,0x7d,0x7d

輸入的第一行數據的前三個數據是:0x00,0x7e,0x7f

輸出的第一個矩陣的值是:0x0078_7c00_7d7d_007e_7f

輸入行數據第一個數據是0x00這是因為擴充了邊界的原因。

可以看到,設置KSZ為3,可以得到一個位寬為72bit的輸出數據,該數據包含了一個窗口中的9個數據。

5X5開窗

4f813506-d003-11ec-bce3-dac502259ad0.png

設置開窗大小為5x5之后,也可以看到輸出信號的位寬變為了8*25=200bit,也就是一個5X5大小的矩陣中的數據。

輸入的第5行數據的前5個數據是:0x00,0x00,0x7e,0x7c,0x7f

輸入的第4行數據的前5個數據是:0x00,0x00,0x7e,0x7e,0x7e,

輸入的第3行數據的前5個數據是:0x00,0x00,0x78,0x7c,0x7c

輸入的第2行數據的前5個數據是:0x00,0x00,0x7d,0x7d,0x7a

輸入的第1行數據的前5個數據是:0x00,0x00,0x7e,0x7f,0x7d

從輸出結果看,輸出的矩陣數據,剛好是這5行的前5數據,并且前兩個數據是0x00,這是因為在每一行前面補充了兩個0的原因。

經過測試,這種開窗算子是能夠完成任意此村的開窗的。

實際應用

在實際應用中,我也將這個模塊正確地使用上了,完成了一個3x3的sobel算子和5x5的均值濾波。

原始圖像

4fa373be-d003-11ec-bce3-dac502259ad0.png

3x3 Sobel

4fdb32ea-d003-11ec-bce3-dac502259ad0.png

審核編輯 :李倩

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

    關注

    1635

    文章

    21837

    瀏覽量

    608334
  • 圖像處理
    +關注

    關注

    27

    文章

    1315

    瀏覽量

    57130

原文標題:FPGA學習-圖像處理基礎實現緩存卷積窗口

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    使用SCL編寫FIFO功能塊

    找到相關的指令。 ? ?其實要實現這個功能可直接使用SCL的編程方法編寫一個這樣的功能塊就可以了,(在文章的結尾會為大家提供參考示例程序和SCL相關的學習資料,供有需要的朋友下載學習)。 二、FIFO功能的條件分析? 1)設置一
    的頭像 發表于 02-09 10:27 ?203次閱讀
    使用SCL編寫<b class='flag-5'>FIFO</b>功能塊

    FPGA圖像處理基礎----實現緩存卷積窗口

    像素行與像素窗口 一幅圖像是由一個個像素點構成的,對于一幅480*272大小的圖片來說,其寬度是480,高度是272。在使用FPGA進行圖像處理時,最關鍵的就是使用FPGA內部的存儲資源對像
    的頭像 發表于 02-07 10:43 ?283次閱讀
    <b class='flag-5'>FPGA</b>圖像處理基礎----實現<b class='flag-5'>緩存</b>卷積窗口

    FIFO IP核的使用教程

    在數字設計中,利用FIFO進行數據處理是非常普遍的應用,例如,實現時鐘域交叉、低延時存儲器緩存、總線位寬調整等。下圖給出了FIFO生成器支持的一種可能配置。
    的頭像 發表于 01-03 09:36 ?1994次閱讀
    <b class='flag-5'>FIFO</b> IP核的使用教程

    HTTP緩存頭的使用 本地緩存與遠程緩存的區別

    HTTP緩存頭是一組HTTP響應頭,它們控制瀏覽器和中間代理服務器如何緩存網頁內容。合理使用HTTP緩存頭可以顯著提高網站的加載速度和性能,減少服務器的負載。 1. HTTP緩存頭概述
    的頭像 發表于 12-18 09:41 ?224次閱讀

    緩存之美——如何選擇合適的本地緩存

    Guava cache是Google開發的Guava工具包中一套完善的JVM本地緩存框架,底層實現的數據結構類似于ConcurrentHashMap,但是進行了更多的能力拓展,包括緩存過期時間設置、
    的頭像 發表于 11-17 14:24 ?499次閱讀
    <b class='flag-5'>緩存</b>之美——如何選擇合適的本地<b class='flag-5'>緩存</b>?

    FIFO Generator的Xilinx官方手冊

    FIFO作為FPGA崗位求職過程中最常被問到的基礎知識點,也是項目中最常被使用到的IP,其意義是非常重要的。本文基于對FIFO Generator的Xilinx官方手冊的閱讀與總結,匯總主要知識點
    的頭像 發表于 11-12 10:46 ?970次閱讀
    <b class='flag-5'>FIFO</b> Generator的Xilinx官方手冊

    詳解FPGA的基本結構

    ZYNQ PL 部分等價于 Xilinx 7 系列 FPGA,因此我們將首先介紹 FPGA 的架構。簡化的 FPGA 基本結構由 6 部分組成,分別為可編程輸入/輸出單元、基本可編程邏
    的頭像 發表于 10-25 16:50 ?2047次閱讀
    詳解<b class='flag-5'>FPGA</b>的基本<b class='flag-5'>結構</b>

    FIFO的深度應該怎么計算

    FIFOFPGA/IC設計中經常使用到的模塊,它經常被用在兩個模塊之間進行數據的緩存,以避免數據在傳輸過程中丟失。同時FIFO也經常被用在跨時鐘域處理中。
    的頭像 發表于 10-25 15:20 ?568次閱讀
    <b class='flag-5'>FIFO</b>的深度應該怎么計算

    FPGA加速深度學習模型的案例

    FPGA(現場可編程門陣列)加速深度學習模型是當前硬件加速領域的一個熱門研究方向。以下是一些FPGA加速深度學習模型的案例: 一、基于FPGA
    的頭像 發表于 10-25 09:22 ?578次閱讀

    Efinity FIFO IP仿真問題 -v1

    文件。 如果生成默認的IP或者自己的IP,目前FIFO的IP仿真可能會有一個錯誤 。提示在fifo_tb.sv的409沒有rd_valid_o和almost_empty_o 這是因為仿真文件只能仿真
    的頭像 發表于 10-21 11:41 ?1235次閱讀
    Efinity <b class='flag-5'>FIFO</b> IP仿真問題 -v1

    FPGA設計經驗之圖像處理

    傳感器芯片連接獲得圖像數據流,如果是RAW格式的則還可以進行差值以獲得RGB圖像數據。FPGA能進行實時流水線處理的關鍵是它可以用其內部的Block Ram緩存若干的圖像數據。這個Block Ram
    發表于 06-12 16:26

    同步FIFO和異步FIFO區別介紹

    1. FIFO簡介 FIFO是一種先進先出數據緩存器,它與普通存儲器的區別是沒有外部讀寫地址線,使用起來非常簡單,缺點是只能順序讀寫,而不能隨機讀寫。 2. 使用場景 數據緩沖:也就是數據寫入過快
    的頭像 發表于 06-04 14:27 ?2033次閱讀
    同步<b class='flag-5'>FIFO</b>和異步<b class='flag-5'>FIFO</b>區別介紹

    關于同步FIFO和異步FIFO的基礎知識總結

    FIFO是一種先進先出數據緩存器,它與普通存儲器的區別是沒有外部讀寫地址線,使用起來非常簡單,缺點是只能順序讀寫,而不能隨機讀寫。
    的頭像 發表于 04-09 14:23 ?3557次閱讀
    關于同步<b class='flag-5'>FIFO</b>和異步<b class='flag-5'>FIFO</b>的基礎知識總結

    FPGA學習筆記-入門

    大概10年前,大學同學建議我學習DSP。當因為工作忙,也只是簡單學習了DSP的一些基礎知識,沒有進一步深入學習和時間。結果現在,好像DSP已經不再是主流了,現在有了FPGA。 現在想想
    發表于 04-09 10:55

    fpga學習需要具備哪些課程

    FPGA(Field Programmable Gate Array)學習需要具備一系列的課程知識和實踐技能
    的頭像 發表于 03-14 15:51 ?1435次閱讀
    主站蜘蛛池模板: 用震蛋调教女性下面视频 | 成人a视频在线观看 | 2020国产成人精品免费视频 | 九九色精品国偷自产视频 | 操老太太的逼 | 青青视频国产依人在线 | 顶级欧美不卡一区二区三区 | 98国产精品人妻无码免费 | 大睾丸内射老师 | 精品无码日本蜜桃麻豆 | 国产精品一区二区制服丝袜 | 日本一本二本三区免费免费高清 | 国精产品999一区二区三区有限 | 99视频这里只有精品国产 | 日韩毛片在线视频 | 69久久国产精品热88人妻 | 古风H啪肉NP文 | 超碰在线视频 免费 | 红杏俱乐部 | 国外经典三级 | 国产成人精品免费视频大 | 天天影视香色欲综合网 | 亚洲 综合 自拍 精品 在线 | 黑人强伦姧人妻日韩那庞大的 | 国产综合18久久久久久软件 | 野花高清在线观看免费3中文 | 好硬好湿好大再深一点动态图 | 嫩草电影网嫩草影院 | 共妻肉多荤文高h一女n男 | 久久久这里有精品999 | 国产99久久| 免费精品国产日韩热久久 | 国产人妻系列无码专区97SS | 色青青草原桃花久久综合 | 麻豆成人啪啪色婷婷久久 | 国语精彩对白2021 | 草草久久久亚洲AV成人片 | 中字幕视频在线永久在线 | 久久精品麻豆国产天美传媒果冻 | 大屁股妇女流出白浆 | 久久视频在线视频观看精品15 |