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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

FPGA中流水線的原因和方式

科技觀察員 ? 來源:allaboutcircuits ? 作者:Sneha HL ? 2022-05-07 16:51 ? 次閱讀

本文解釋了流水線及其對 FPGA 的影響,即延遲、吞吐量、工作頻率的變化和資源利用率。

對FPGA(現場可編程門陣列)進行編程是一個定制其資源以實現特定邏輯功能的過程。這涉及使用 FPGA 的基本構建塊(如可配置邏輯塊(CLB)、專用多路復用器等)對程序指令進行建模,以滿足數字系統的要求。

在設計過程中,要考慮的一個重要標準是系統固有的時序問題,以及用戶規定的任何約束。可以幫助設計人員實現這一目標的一種設計機制是流水線。

什么是流水線?

流水線是一種能夠并行執行程序指令的過程。您可以在下面看到流水線處理器架構的可視化表示。

pYYBAGJ2MwWAHXu-AAC7Qyoezgk454.jpg

圖 1.

流水線處理器架構的可視化表示。每個方塊對應一條指令。正方形使用不同顏色傳達了指令相互獨立的事實。圖片由

Colin ML Burnett

[

CC-BY-SA-3.0

] 提供。

在 FPGA 中,這是通過以特定方式排列多個數據處理塊來實現的。為此,我們首先將整個邏輯電路分成幾個小部分,然后使用寄存器(觸發器)將它們分開。

讓我們通過一個例子來分析一下FPGA設計流水線化的模式。

一個例子

讓我們看一下在四個輸入數組上進行三個乘法和一個加法的系統。因此,我們的輸出y i將等于 ( a i × b i × c i ) + d i。

非流水線設計

想到創建這樣一個系統的第一個設計是乘法器,然后是加法器,如圖 2a 所示。

poYBAGJ2MwqASgxoAAAgpIr2n7g915.jpg

圖 2a。

非流水線 FPGA 設計示例。圖片由 Sneha HL 創建

在這里,我們期望操作序列是a i和b i數據乘以乘數 M 1,然后是其乘積與c i乘以乘數 M 2 ,最后將結果乘積與d i相加加法器 A 1。

然而,當系統設計為同步時,在第一個時鐘滴答時,只有乘法器 M1 可以在其輸出端產生有效數據 ( a 1 × b 1 )。這是因為,此時,與 M 2和 A 1不同,只有 M 1在其輸入引腳處具有有效數據(a 1和b 1 ) 。

在第二個時鐘節拍中,M 1和 M 2的輸入引腳上都會有有效數據。但是,現在我們需要確保只有 M 2運行,而 M 1保持其輸出不變。這是因為,此時,如果 M 1運行,則其輸出線變為 ( a 2 × b 2 ) 而不是其預期值 ( a 1 × b 1 ),從而導致錯誤的 M 2輸出 ( a 2 × b 2 × c 1 ) 而不是 ( a 1 ×b 1 × c 1 )。

當時鐘第三次滴答作響時,所有三個組件都會有有效輸入:M 1、M 2和 A 1。盡管如此,我們只希望加法器能夠運行,因為我們期望輸出為y 1 = ( a 1 × b 1 × c 1 + d 1 )。這意味著系統的第一個輸出將在第三個時鐘滴答之后可用。

接下來,隨著第四個時鐘滴答的到來,M 1可以對下一組數據進行操作:a 2和b 2。 但此時,M 2和 A 1預計空閑。這之后必須在第五個時鐘節拍激活 M 2 -只有M 2 - 在第六個時鐘節拍激活 A 1 -只有A 1。這確保了我們的下一個輸出, y 2 = ( a 2 × b 2 × c 2 + d 2)。

當組件遵循類似的激勵模式時,我們可以預期下一個輸出發生在時鐘節拍 9、12、15 等處(圖 2b)。

Figure2b.jpeg

圖 2b。

流水線設計

現在,假設我們在輸入(R 1到 R 4)、M 1和 M 2之間(分別為 R 5和 R 8)以及沿直接輸入路徑(R 6、R 7、和 R 9 ),如圖 3a 所示。

Fig3a.jpg

圖 3a。

流水線 FPGA 設計示例。Sneha HL 創建的圖像和表格

這里,在第一個時鐘滴答聲中,有效輸入僅出現在寄存器 R 1到 R 4(分別為 a 1、b 1、c 1和d 1)和乘法器 M 1(a 1和b 1)。結果,只有這些才能產生有效的輸出。此外,一旦 M 1產生它的輸出,它就會被傳遞到寄存器 R 5并存儲在其中。

在第二個時鐘滴答聲中,存儲在寄存器 R 5和 R 6(a 1 × b 1和c 1)中的值顯示為 M 2的輸入,這使其能夠將其輸出呈現為a 1 × b 1 × c 1,而R 4 ( d 1 ) 的輸出被轉移到寄存器R 7。同時,即使是第二組數據(a 2、b 2、c 2和d 2) 進入系統并出現在 R 1到 R 4的輸出端。

在這種情況下,允許 M 1對其輸入進行操作,以使其輸出線從a 1 × b 1變為a 2 × b 2,這與非流水線設計的情況不同。這是因為,在本設計中,M 1輸出的任何變化都不會影響 M 2的輸出。這是因為確保 M 2正確功能所需的數據在第一個時鐘節拍期間已經鎖存在寄存器 R 5中(并且即使在第二個時鐘節拍時也保持不受干擾)。

這意味著寄存器 R 5的插入使 M 1和 M 2在功能上獨立,因此它們都可以同時對不同的數據集進行操作。

接下來,當時鐘第三次滴答作響時,寄存器R 8和R 9的輸出(( a 1 × b 1 × c 1 )和d 1 )作為輸入傳遞給加法器A 1。結果,我們得到第一個輸出y 1 = (( a 1 × b 1 × c 1 ) + d 1 )。盡管如此,在同一時鐘滴答聲中,M 1和 M 2將可以自由操作 ( a 3 , b 3) 和 ( a 2 , b 2 , c 2 )。這是可行的,因為存在將塊M 1與M 2隔離的寄存器R 5和將乘法器M 2與加法器A 1隔離的R 8。

因此,在第三個時鐘滴答處,我們甚至可以分別從 M 1和 M 2得到 ( a 3 × b 3 ) 和 ( a 2 × b 2 × c 2 ) ,除了y 1。

現在,當第四個時鐘滴答到達時,加法器 A 1對其輸入進行運算以產生第二個輸出,y 2 = (( a 2 × b 2 × c 2 ) + d 2 )。此外,M 1的輸出從 ( a 3 × b 3 ) 變為 ( a 4 × b 4 ),而 M 2的輸出從 ( a 2 × b 2 × c 2 ) 變為 ( a 3 × b3 × c 3 )。

在遵循相同的操作模式時,我們可以預期從那時起每個時鐘滴答都會出現一個輸出數據(圖 3b),這與非流水線設計的情況不同,在非流水線設計的情況下,我們必須等待三個時鐘周期才能獲得每個輸出數據(圖 2b)。

poYBAGJ2MyKAMx8nAAC0HhjgCc8615.jpg

流水線的后果


潛伏

在所示示例中,流水線設計顯示為從第三個時鐘周期開始為每個時鐘節拍產生一個輸出。這是因為每個輸入必須經過三個寄存器(構成流水線深度),同時在到達輸出之前進行處理。類似地,如果我們有一個深度為n的管道,那么有效輸出僅從第n個時鐘滴答開始在每個時鐘周期出現一個。

這種與第一個有效輸出出現之前丟失的時鐘周期數相關的延遲稱為延遲。流水線階段的數量越多,與之相關的延遲就越大。

增加工作時鐘頻率

圖 2a 所示的非流水線設計每三個時鐘周期產生一個輸出。也就是說,如果我們有一個周期為 1 ns 的時鐘,那么輸入需要 3 ns (3 × 1 ns) 來處理并顯示為輸出。

然后這條最長的數據路徑將成為關鍵路徑,它決定了我們設計的最小工作時鐘頻率。換言之,所設計系統的頻率必須不大于 (1/3 ns) = 333.33 MHz,以確保令人滿意的操作。

在流水線設計中,一旦流水線填滿,每個時鐘滴答都會產生一個輸出。因此我們的工作時鐘頻率與定義的時鐘頻率相同(此處為 1/1ns = 1000 MHz)。

這些數字清楚地表明,與非流水線設計相比,流水線設計大大增加了操作頻率。

吞吐量增加

流水線設計每個時鐘周期產生一個輸出(一旦克服延遲),無論設計中包含的流水線級數如何。因此,通過設計流水線系統,我們可以提高 FPGA 的吞吐量。

更好地利用邏輯資源

在流水線中,我們使用寄存器來存儲設計各個階段的結果。這些組件增加了設計使用的邏輯資源,使其在硬件方面非常龐大。

結論

流水線化設計的行為非常詳盡。您需要在適當的時刻將整個系統劃分為各個階段,以確保最佳性能。盡管如此,投入其中的辛勤工作與其在設計執行時所呈現的優勢相當。

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

    關注

    1638

    文章

    21856

    瀏覽量

    609510
  • 現場可編程門陣列

    關注

    1

    文章

    20

    瀏覽量

    4793
收藏 0人收藏

    評論

    相關推薦

    關于fpga流水線的理解

    如何理解fpga流水線
    發表于 08-15 11:43

    請教verilog中流水線技術的用途?

    [table=98%][tr][td]看到很多資料里說“利用流水線的設計方法,可大大提高系統的工作速度。”這是一個教材里很常用的例程:(1)非流水線實現方式module adder_8bits
    發表于 09-26 23:29

    FPGA中的流水線設計

    `流水線設計前言:本文從四部分對流水線設計進行分析,具體如下:第一部分什么是流水線第二部分什么時候用流水線設計第三部分使用流水線的優缺點第四
    發表于 10-26 14:38

    流水線寄存器問題

    圖中的DFG(Data Flow Graph)節點已經標出了傳輸延遲,求該電路中流水線寄存器的最佳放置位置?求問大神解答這個題
    發表于 11-20 11:02

    FPGA重要設計思想及工程應用之流水線

    FPGA重要設計思想及工程應用之流水線流水線設計是高速電路設計中的一 個常用設計手段。如果某個設計的處理流程分為若干步驟,而且整個數據處理 流程分
    發表于 02-09 11:02 ?52次下載

    什么是流水線技術

    什么是流水線技術 流水線技術
    發表于 02-04 10:21 ?3989次閱讀

    流水線中的相關培訓教程[1]

    流水線中的相關培訓教程[1]  學習目標     理解流水線中相關的分類及定義;
    發表于 04-13 15:56 ?1125次閱讀

    電鍍流水線的PLC控制

    電鍍流水線的PLC控制電鍍流水線的PLC控制電鍍流水線的PLC控制
    發表于 02-17 17:13 ?36次下載

    FPGA流水線練習5:設計思路

    流水線的工作方式就象工業生產上的裝配流水線。在CPU中由5—6個不同功能的電路單元組成一條指令處理流水線,然后將一條X86指令分成5—6步后再由這些電路單元分別執行,這樣就能實現在一個
    的頭像 發表于 11-29 07:06 ?2712次閱讀

    FPGA流水線練習(3):設計思路

    流水線的平面設計應當保證零件的運輸路線最短,生產工人操作方便,輔助服務部門工作便利,最有效地利用生產面積,并考慮流水線安裝之間的相互銜接。為滿足這些要求,在流水線平面布置時應考慮流水線
    的頭像 發表于 11-28 07:07 ?2485次閱讀

    FPGA之為什么要進行流水線的設計

    流水線又稱為裝配線,一種工業上的生產方式,指每一個生產單位只專注處理某一個片段的工作。以提高工作效率及產量;按照流水線的輸送方式大體可以分為:皮帶
    的頭像 發表于 11-28 07:04 ?3742次閱讀

    各種流水線特點及常見流水線設計方式

    按照流水線的輸送方式大體可以分為:皮帶流水裝配線、板鏈線、倍速鏈、插件線、網帶線、懸掛線及滾筒流水線這七類流水線
    的頭像 發表于 07-05 11:12 ?7636次閱讀
    各種<b class='flag-5'>流水線</b>特點及常見<b class='flag-5'>流水線</b>設計<b class='flag-5'>方式</b>

    如何選擇合適的LED生產流水線輸送方式

    LED生產流水線輸送形式分為平面直線傳輸流水線、各種角度平面轉彎傳輸流水線、斜面上傳流水線、斜面下傳流水線這四種輸送
    發表于 08-06 11:53 ?1110次閱讀

    嵌入式_流水線

    流水線一、定義流水線是指在程序執行時多條指令重疊進行操作的一種準并行處理實現技術。各種部件同時處理是針對不同指令而言的,他們可同時為多條指令的不同部分進行工作。? 把一個重復的過程分解為若干個子過程
    發表于 10-20 20:51 ?6次下載
    嵌入式_<b class='flag-5'>流水線</b>

    什么是流水線 Jenkins的流水線詳解

    jenkins 有 2 種流水線分為聲明式流水線與腳本化流水線,腳本化流水線是 jenkins 舊版本使用的流水線腳本,新版本 Jenkin
    發表于 05-17 16:57 ?1188次閱讀
    主站蜘蛛池模板: 99re10久久热 | 中文中幕无码亚洲视频 | 99免费视频观看 | 亚洲 欧美 清纯 校园 另类 | 久久是热频国产在线 | 亚洲精品久久久久久偷窥 | 78m成人亚洲 | 国产麻豆精品人妻无码A片 国产麻豆精品久久一二三 国产麻豆精品传媒AV国产在线 | 十分钟免费视频大全在线观看 | 国产精品爽黄69天堂A片 | 2021精品高清卡1卡2卡3麻豆 | 内射少妇三洞齐开 | 久久婷婷五月综合色丁香 | 四虎成人影院 | 影音先锋av333资源网 | 羞羞漫画免费漫画页面在线看漫画秋蝉 | 国产精品久久久久精品A片软件 | 强奸日本美女小游戏 | 男人桶女人j的视频在线观看 | 免费国产久久拍久久爱 | 国产精品人妻99一区二 | 午夜国产免费视频亚洲 | 精品一品国产午夜福利视频 | 亚洲精品色播一区二区 | 99亚洲精品自拍AV成人软件 | china男士同性视频tv | 极品少妇高潮啪啪AV无码吴梦梦 | 成人国产亚洲欧美成人综合网 | 国产成人精品综合在线 | 在线 | 果冻国产传媒61国产免费 | 欧美506070| 亚洲人成在线观看一区二区 | 第一福利在线永久视频 | 欧美性xxxxxx爱 | 久99视频精品免费观看福利 | 日本特殊精油按摩 | 成人伦理影院 | 美娇妻的性奴史1一4 | 久久免费视频 | 久久99久久成人免费播放 | 久久精品国产亚洲AV未满十八 |

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品