国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

南京觀海微電子----Verilog流水線設(shè)計——Pipeline

這篇具有很好參考價值的文章主要介紹了南京觀海微電子----Verilog流水線設(shè)計——Pipeline。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

南京觀海微電子----Verilog流水線設(shè)計——Pipeline,觀海微電子,顯示驅(qū)動IC,fpga開發(fā)

1.?前言

在工程師實際開發(fā)過程中,可能會經(jīng)常遇到這樣的需求:數(shù)據(jù)從數(shù)據(jù)源端不斷地持續(xù)輸入FPGA,F(xiàn)PGA需要對數(shù)據(jù)進行處理,最后將處理好的數(shù)據(jù)輸出至客戶端。

在數(shù)據(jù)處理過程中,可能需要一系列的處理步驟。比如常規(guī)的信號進行處理步驟有(這里的處理步驟只是舉個例子):信號解調(diào)、濾波、傅里葉變換。

假如數(shù)據(jù)源每10ns輸入一個數(shù)據(jù),一個采用數(shù)據(jù)經(jīng)過信號解調(diào)需要10ns,完成濾波需20ns,傅里葉變換需要30ns。我們該如何用verilog語言設(shè)計硬件電路使得數(shù)據(jù)處理效率高效?

2.?面臨問題

FPGA一個較大的優(yōu)勢是其并行處理機制,即利用并行架構(gòu)實現(xiàn)信號/數(shù)據(jù)處理的功能。

大家首先想到的方法就是復(fù)制多份數(shù)據(jù)處理電路,如下圖所示:

南京觀海微電子----Verilog流水線設(shè)計——Pipeline,觀海微電子,顯示驅(qū)動IC,fpga開發(fā)

南京觀海微電子----Verilog流水線設(shè)計——Pipeline,觀海微電子,顯示驅(qū)動IC,fpga開發(fā)

將數(shù)據(jù)處理電路復(fù)制6份,這樣即便每路數(shù)據(jù)處理需要60ns,也能保證整個由6路處理鏈路組成的數(shù)據(jù)模塊能處理每10ns輸出一個數(shù)據(jù)的數(shù)據(jù)源。

這種解決方案的確利用了FPGA獨特的優(yōu)勢,但面臨的問題是顯而易見的,它需要消耗大量的硬件資源。比如當(dāng)處理算法較復(fù)雜時,一條處理鏈路可能就用掉了FPGA相應(yīng)60%的資源,這樣除非換更大容量的FPGA,否則在當(dāng)前FPGA上即使復(fù)制兩遍處理鏈路的電路都是不支持的。

此外,我們深入分析會發(fā)現(xiàn),電路雖然被復(fù)制了6份,但在同一時刻電路被使用率是很低的。假設(shè)輸入一個數(shù)據(jù)時刻為0ns,則在第50ns時,真正處于工作狀態(tài)的電路如下圖所示(黃色標(biāo)的區(qū)域):

南京觀海微電子----Verilog流水線設(shè)計——Pipeline,觀海微電子,顯示驅(qū)動IC,fpga開發(fā)

可見同一時刻,工作的電路比例很低,其它白色的電路模塊都是閑置的未工作的電路。

3. Pipeline解決方案

所謂流水線(pipeline)處理,如同生產(chǎn)裝配線一樣,將操作執(zhí)行工作量分成若干個時間上均衡的操作段,從流水線的起點連續(xù)地輸入,流水線的各操作段以重疊方式執(zhí)行。

這使得操作執(zhí)行速度只與流水線輸入的速度有關(guān),而與處理所需的時間無關(guān)。這樣,在理想的流水操作狀態(tài)下,其運行效率很高。

比如仍然以上面信號處理例子為例,我們不需要去復(fù)制6份同樣的電路,而是去優(yōu)化我們單條信號處理電路。利用pipeline的設(shè)計理念,我們需要把處理時間大于10ns的電路模塊拆分成多個小于等于10ns的子電路(操作信號處理工作量分成若干個時間上均衡的處理段),并且每個子電路的輸入是前一級子電路的輸出,每一級子電路都能鎖存當(dāng)前時鐘周期的輸出結(jié)果。改造后的電路如下圖所示:

南京觀海微電子----Verilog流水線設(shè)計——Pipeline,觀海微電子,顯示驅(qū)動IC,fpga開發(fā)

對于一個輸入數(shù)據(jù)的樣本來說,數(shù)據(jù)是串行被處理的,但對于多個輸入數(shù)據(jù)來說,各個處理階段是并行執(zhí)行的,所以數(shù)據(jù)處理從整體上看是并行執(zhí)行的,由于是并行執(zhí)行,所以能夠充分利用FPGA資源。

需要注意的是,在工作時鐘頻率一定的情況下,pipeline的設(shè)計思路并不會提高對單個數(shù)據(jù)的處理速度,但該設(shè)計方式可以極大提高數(shù)據(jù)的吞吐率。同時由于pipeline的設(shè)計方式降低了FPGA寄存器間的傳播延時,反而又使得設(shè)計出來的電路能以更高的系統(tǒng)時鐘進行工作,某種程度上又會提高FPGA系統(tǒng)的工作速度獲取更快的計算處理速率。

由于網(wǎng)上pipeline示例代碼資源很多,本文就不提供pipeline的示例代碼了。

4.?小結(jié)

利用pipeline的設(shè)計方法,可以提高FPGA系統(tǒng)的工作速度。這種方法可廣泛運用于各種設(shè)計,特別是大型的、對速度要求較高的系統(tǒng)設(shè)計。雖然有時候采用流水線反而會增大對資源的使用,但是它可降低寄存器間的傳播延時,保證系統(tǒng)維持高的系統(tǒng)時鐘速度。

在實際應(yīng)用中,考慮到資源的使用和速度的要求,可以根據(jù)實際情況來選擇流水線的級數(shù)以滿足設(shè)計需要。文章來源地址http://www.zghlxwxcb.cn/news/detail-803149.html

到了這里,關(guān)于南京觀海微電子----Verilog流水線設(shè)計——Pipeline的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 體驗百度文心一言AI大模型生成ASML 、飛利浦、中芯國際、清華紫光、臺積電、三星和復(fù)旦微電子簡介

    ASML 是歐洲的一家制造半導(dǎo)體設(shè)備的公司,中文名稱為阿斯麥(中國)有限公司,成立于1984年,總部位于荷蘭費爾德霍芬。ASML的主要業(yè)務(wù)是生產(chǎn)用于制造芯片的設(shè)備和軟件。 飛利浦,1891年成立于荷蘭,主要生產(chǎn)照明、家庭電器、醫(yī)療系統(tǒng)方面的產(chǎn)品。飛利浦公司,2007年全球

    2024年02月12日
    瀏覽(24)
  • verilog實例-流水線(Pipeline)

    verilog實例-流水線(Pipeline)

    所謂流水線設(shè)計實際上是把規(guī)模較大、層次較多的組合邏輯電路分為幾個級,在每一級插入寄存器組并暫存中間數(shù)據(jù)。 K級的流水線就是從組合邏輯的輸入到輸出恰好有K個寄存器組(分為K 級,每一級都有一個寄存器組),上一級的輸出是下一級的輸入而又無反饋的電路。 流

    2024年02月02日
    瀏覽(23)
  • Verilog流水線設(shè)計——Pipeline

    Verilog流水線設(shè)計——Pipeline

    在工程師實際開發(fā)過程中,可能會經(jīng)常遇到這樣的需求:數(shù)據(jù)從數(shù)據(jù)源端不斷地持續(xù)輸入FPGA,F(xiàn)PGA需要對數(shù)據(jù)進行處理,最后將處理好的數(shù)據(jù)輸出至客戶端。 在數(shù)據(jù)處理過程中,可能需要一系列的處理步驟。比如常規(guī)的信號進行處理步驟有(這里的處理步驟只是舉個例子):

    2024年02月08日
    瀏覽(20)
  • 【【verilog典型電路設(shè)計之流水線結(jié)構(gòu)】】

    【【verilog典型電路設(shè)計之流水線結(jié)構(gòu)】】

    下圖是一個4位的乘法器結(jié)構(gòu),用verilog HDL 設(shè)計一個兩級流水線加法器樹4位乘法器 對于流水線結(jié)構(gòu) 其實需要做的是在每級之間增加一個暫存的數(shù)據(jù)用來存儲 我們得到的東西 我們一般來說會通過在每一級之間插入D觸發(fā)器來保證數(shù)據(jù)的聯(lián)通 通過在第一級和第二級,第二級和第

    2024年02月12日
    瀏覽(27)
  • FPGA中的流水線設(shè)計(含Verilog范例)

    FPGA中的流水線設(shè)計(含Verilog范例)

    在高速通信系統(tǒng)設(shè)計中,如何提高系統(tǒng)的工作速度至關(guān)重要,通常使用的方法有兩種: 1. 并行方式設(shè)計:可減少模塊間的延時; 2. 流水線設(shè)計:流水線設(shè)計如同生產(chǎn)線一樣,將整個執(zhí)行過程分解為若干個工作段,從流水線的起點連續(xù)輸入,各操作段以重疊方式執(zhí)行。使得運

    2023年04月21日
    瀏覽(22)
  • 流水線乘法器的原理及verilog代碼

    流水線乘法器的原理及verilog代碼

    二進制數(shù)乘法的顯著特點就是可以將乘法轉(zhuǎn)換為移位,乘2就是左移一位,乘2^n就是左移n位。而一個二進制數(shù)又可以看成是由若干個2的i次方的和。 設(shè)被乘數(shù)和乘數(shù)分別為M、N,且都是32位的二進制數(shù),乘積結(jié)果為64位 的向量CO則 。 所以乘法可以由移位電路和加法器完成。計算

    2024年02月10日
    瀏覽(24)
  • FPGA流水線除法器(Verilog)原理及實現(xiàn)

    FPGA流水線除法器(Verilog)原理及實現(xiàn)

    ??除法器的計算過程如下圖所示。 假設(shè)數(shù)值的位寬為N。 Step1:分別將被除數(shù)和除數(shù)擴展至原來2倍位寬(2N),被除數(shù)在其左邊補N位0,除數(shù)在其右邊補N位0; Step2:將被除數(shù)依次左移(每次左移1位),末位補數(shù)值(該數(shù)值為被除數(shù)高N位與除數(shù)高N位的商),高N位為被除數(shù)高

    2024年02月11日
    瀏覽(26)
  • 基于verilog的四級流水線實現(xiàn)并行fft16(可計算小數(shù)和負(fù)數(shù))

    基于verilog的四級流水線實現(xiàn)并行fft16(可計算小數(shù)和負(fù)數(shù))

    目錄 夯實基礎(chǔ)--FFT算法 定點運算--verilog實現(xiàn)小數(shù)運算 Verilog代碼實現(xiàn) ?FFT系數(shù) W 的準(zhǔn)備 ?輸入數(shù)值的初始化 蝶形運算端點處的值 仿真結(jié)果展示 總結(jié) ? ? ? ?FFT是DFT的一種快速算法而不是一種新的變換,他可以在數(shù)量級的意義上提高運算速度。它主要有兩種實現(xiàn)方法:一種是

    2024年02月05日
    瀏覽(49)
  • 【計組實驗】基于Verilog的多周期非流水線MIPS處理器設(shè)計

    【計組實驗】基于Verilog的多周期非流水線MIPS處理器設(shè)計

    設(shè)計多周期非流水線MIPS處理器,包括: 完成多周期MIPS處理器的Verilog代碼; 在Vivado軟件上進行仿真; 編寫MIPS代碼驗證MIPS處理器; 相關(guān)代碼及資源的下載地址如下: 本實驗的Vivado工程文件和實驗文檔:Multi-Cycle MIPS Processor.zip(272KB) QtSpim 9.1.23和Vivado 2019.2的安裝包:QtSpim Viv

    2024年02月11日
    瀏覽(18)
  • 基于Verilog HDL的FFT算法硬件實現(xiàn)(8點,三級流水線,DIT-FFT)

    基于Verilog HDL的FFT算法硬件實現(xiàn)(8點,三級流水線,DIT-FFT)

    關(guān)于fft的相關(guān)知識,在之前的文章中,有過介紹,這里不再具體介紹,可以參考學(xué)習(xí)。 從傅里葉級數(shù)(FS)到傅里葉變換(FT)最后到離散傅里葉變換(DFT)_小張愛學(xué)習(xí)哦的博客-CSDN博客_fs傅里葉級數(shù) FFT原理(基2DIT-FFT)及C語言編程思路及實現(xiàn)_小張愛學(xué)習(xí)哦的博客-CSDN博客_c語言

    2024年02月14日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包