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

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

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

流水線設(shè)計的思想介紹與設(shè)計實例

電子工程師 ? 來源:lq ? 2019-02-04 17:20 ? 次閱讀

流水線設(shè)計

流水線概述

如下圖為工廠流水線,工廠流水線就是將一個工作(比如生產(chǎn)一個產(chǎn)品)分成多個細(xì)分工作,在生產(chǎn)流水線上由多個不同的人分步完成。這個待完成的產(chǎn)品在流水線上一級一級往下傳遞。

圖片來自網(wǎng)絡(luò)

比如完成一個產(chǎn)品,需要8道工序,每道工序需要10s,那么流水線啟動后,不間斷工作的話,第一個產(chǎn)品雖然要80s才完成,但是接下來每10s就能產(chǎn)出一個產(chǎn)品。使得速度大大提高。當(dāng)然這也增加了人員等資源的付出。

對于電路的流水線設(shè)計思想與上述思想異曲同工,也是以付出增加資源消耗為代價,去提高電路運算速度。

流水線設(shè)計實例

這里以一個簡單的8位無符號數(shù)全加器的設(shè)計為實例來進行講解,實現(xiàn)

assign {c_out,data_out [7:0]} = a[7:0] + b[7:0] +c_in

c_out 為進位位。

(源碼鏈接:https://pan.baidu.com/s/1-imO5A51dJ_pfWpRfOYcHg 提取碼:dx0k)

如果有數(shù)字電路常識的人都知道,利用一塊組合邏輯電路去做8位的加法,其速度肯定比做2位的加法慢。因此這里可以采用4級流水線設(shè)計,每一級只做兩位的加法操作,當(dāng)流水線一啟動后,除第一個加法運算之外,后面每經(jīng)過一個2位加法器的延時,就會得到一個結(jié)果。

整體結(jié)構(gòu)如下,每一級通過in_valid,o_valid信號交互,分別代表每一級的輸入輸出有效信號。

第一級:做最低兩位與進位位的加法操作,并將運算結(jié)果和未做運算的高六位傳給下一級。

第二級:做2,3兩位與上一級加法器的進位位的加法操作,并將本級運算結(jié)果和未做運算的高4位傳給下一級。

第三級:做4,5兩位與進位位的加法操作,并將運算結(jié)果和未做運算的高2位傳給下一級。

第四級:做最高兩位與上一級加法器輸出的進位位的加法操作,并將結(jié)果組合輸出。

仿真結(jié)果如下:如圖,當(dāng)整體模塊in_valid有效時,送進去的數(shù)據(jù)a=1,b=5,c_in=1;故經(jīng)過四個周期后,o_valid信號拉高,同時獲得運算結(jié)果data_out=7。(本設(shè)計的流水線每級延時為一個時鐘周期)

總結(jié)

流水線就是通過將一個大的組合邏輯劃分成分步運算的多個小組合邏輯來運算,從而達到提高速度的目的。

在設(shè)計流水線的時候,我們一般要盡量使得每級運算所需要的時間差不多,從而做到流水匹配,提高效率。因為流水線的速度由運算最慢的那一級電路決定。

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

    關(guān)注

    0

    文章

    120

    瀏覽量

    25739
  • 數(shù)字電路
    +關(guān)注

    關(guān)注

    193

    文章

    1605

    瀏覽量

    80625

原文標(biāo)題:流水線設(shè)計

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

收藏 人收藏

    評論

    相關(guān)推薦

    FPGA中的流水線設(shè)計

    令預(yù)取、 譯碼、 執(zhí)行、 寫回結(jié)果, openrisc采用的是 5 級整數(shù)流水線。當(dāng)然它們的核心思想都是利用并行執(zhí)行提高效率??偨Y(jié)一下,流水線就是插入寄存器,以面積換取速度。`
    發(fā)表于 10-26 14:38

    周期精確的流水線仿真模型

    使用軟件仿真硬件流水線是很耗時又復(fù)雜的工作,仿真過程中由于流水線的沖突而導(dǎo)致運行速度緩慢。本文通過對嵌入式處理器的流水線, 指令集, 設(shè)備控制器等內(nèi)部結(jié)構(gòu)的分析和
    發(fā)表于 12-31 11:30 ?9次下載

    FPGA重要設(shè)計思想及工程應(yīng)用之流水線設(shè)

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

    什么是流水線技術(shù)

    什么是流水線技術(shù) 流水線技術(shù)
    發(fā)表于 02-04 10:21 ?3927次閱讀

    流水線中的相關(guān)培訓(xùn)教程[1]

    流水線中的相關(guān)培訓(xùn)教程[1]  學(xué)習(xí)目標(biāo)     理解流水線中相關(guān)的分類及定義;
    發(fā)表于 04-13 15:56 ?1052次閱讀

    流水線中的相關(guān)培訓(xùn)教程[4]

    流水線中的相關(guān)培訓(xùn)教程[4] 下面討論如何利用編譯器技術(shù)來減少這種必須的暫停,然后論述如何在流水線中實現(xiàn)數(shù)據(jù)相關(guān)檢測和定向。
    發(fā)表于 04-13 16:09 ?4805次閱讀

    電鍍流水線的PLC控制

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

    裝配流水線控制系統(tǒng)設(shè)計

    裝配流水線控制系統(tǒng)設(shè)計
    發(fā)表于 12-17 15:26 ?14次下載

    FPGA之為什么要進行流水線的設(shè)計

    流水線又稱為裝配線,一種工業(yè)上的生產(chǎn)方式,指每一個生產(chǎn)單位只專注處理某一個片段的工作。以提高工作效率及產(chǎn)量;按照流水線的輸送方式大體可以分為:皮帶流水裝配線、板鏈線、倍速鏈、插件線、網(wǎng)帶線、懸掛線及滾筒
    的頭像 發(fā)表于 11-28 07:04 ?3612次閱讀

    各種流水線特點及常見流水線設(shè)計方式

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

    滾筒輸流水線故障排除方法

    在工程建造中,滾筒流水線演著重要的角色。在一些工程建造過程中,經(jīng)??吹綕L筒流水線的身影。在工業(yè)不斷發(fā)展下的今天,滾筒流水線日益增長,走向多元化。滾筒流水線能夠長距離的輸送,而且支持重量
    發(fā)表于 07-08 09:32 ?1910次閱讀

    如何選擇合適的LED生產(chǎn)流水線輸送方式

    LED生產(chǎn)流水線輸送形式分為平面直線傳輸流水線、各種角度平面轉(zhuǎn)彎傳輸流水線、斜面上傳流水線、斜面下傳流水線這四種輸送方式,企業(yè)也是可以根據(jù)L
    發(fā)表于 08-06 11:53 ?1028次閱讀

    嵌入式_流水線

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

    CPU流水線的問題

    1989 年推出的 i486 處理器引入了五級流水線。這時,在 CPU 中不再僅運行一條指令,每一級流水線在同一時刻都運行著不同的指令。這個設(shè)計使得 i486 比同頻率的 386 處理器性能提升了不止一倍。
    的頭像 發(fā)表于 09-22 10:04 ?2008次閱讀

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

    jenkins 有 2 種流水線分為聲明式流水線與腳本化流水線,腳本化流水線是 jenkins 舊版本使用的流水線腳本,新版本 Jenkin
    發(fā)表于 05-17 16:57 ?1086次閱讀