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

FPGA原理介紹 (CLB, LUT, 進(jìn)位鏈, 存儲(chǔ)元素, RAM)

這篇具有很好參考價(jià)值的文章主要介紹了FPGA原理介紹 (CLB, LUT, 進(jìn)位鏈, 存儲(chǔ)元素, RAM)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。


本文首先對(duì) ASIC 和 FPGA 進(jìn)行了一個(gè)對(duì)比,然后介紹了 FPGA 的基本結(jié)構(gòu),最后解釋了 FPGA 實(shí)現(xiàn)可編程的基本原理。

ASIC vs. FPGA

這里先給出 ASIC 和 FPGA 的優(yōu)缺點(diǎn)

ASIC FPGA
優(yōu)點(diǎn) 性能優(yōu)越
可靠性高
大批量下單位成本低
開(kāi)發(fā)初期無(wú)投入資金壁壘
設(shè)計(jì)工具使用方便,設(shè)計(jì)簡(jiǎn)單快速
產(chǎn)品原型機(jī)開(kāi)發(fā)時(shí)間短
管腳定義靈活,便于PCB布板
隨時(shí)進(jìn)行硬件功能設(shè)計(jì)修改
缺點(diǎn) 開(kāi)發(fā)周期長(zhǎng):設(shè)計(jì)工具及設(shè)計(jì)流程復(fù)雜,快速進(jìn)入市場(chǎng)的壓力大
功能固定,不利修改和擴(kuò)展
NRE費(fèi)用高
設(shè)計(jì)工具及開(kāi)發(fā)人員昂貴
單位成本高
可靠性低/功耗大
性能低
用途 設(shè)計(jì)規(guī)模大,復(fù)雜度高的芯片
成熟度高,產(chǎn)量大的產(chǎn)品
要求快速迭代或者小批量產(chǎn)品
作為ASIC的算法驗(yàn)證加速

FPGA 基本結(jié)構(gòu)

基本介紹
可配置邏輯塊 (Configurable Logic Block, CLB) 主要的邏輯資源,可用于實(shí)現(xiàn)組合邏輯、時(shí)序邏輯和存儲(chǔ)單元,具體后面再介紹
可編程 I/O 模塊 (Programmable I/O Block, IOB) 芯片與外部的接口,用于不同電氣特性輸入/輸出信號(hào)的驅(qū)動(dòng)和匹配,具體后面再介紹
可編程互連 (Programmable Interconnect) 用于 CLB 之間或 CLB 和 IOB 之間進(jìn)行互連,具體后面再介紹
配置存儲(chǔ)器 (Configuration Memory) 通過(guò)寫(xiě)配置存儲(chǔ)器實(shí)現(xiàn)系統(tǒng)功能,如CLB實(shí)現(xiàn)的邏輯、CLB之間的互連、CLB和IOB之間互連,用戶(hù)不可見(jiàn),具體后面再介紹
Block RAM 增加片上存儲(chǔ)資源,通過(guò)IP核方式調(diào)用,可用于實(shí)現(xiàn)單端口RAM、雙端口RAM、FIFO等
專(zhuān)用 DSP 模塊 如加法器、乘法器、累加器
嵌入式處理核 軟核和硬核,Xilinx 的 ZYNQ系列上就集成了 ARM 硬核
外設(shè)接口 PCI-E接口、Ethernet結(jié)構(gòu)等

FPGA 基本原理

下面是 CLB、IOB、Programmable Interconnect 和 Configuration Memory 的一個(gè)示意圖,這四者共同實(shí)現(xiàn)了 FPGA 可編程的特點(diǎn)。

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

CLB 是 FPGA 的主要邏輯資源,可用于實(shí)現(xiàn)組合邏輯、時(shí)序邏輯和存儲(chǔ)單元。

IOB 是芯片與外部的接口,可以提供輸入輸出信號(hào)

通過(guò)往配置存儲(chǔ)器中寫(xiě)入不同的內(nèi)容,可以實(shí)現(xiàn)CLB的邏輯、CLB之間的互連、CLB和IOB之間互連,從而實(shí)現(xiàn)不同的功能。配置存儲(chǔ)器對(duì)用戶(hù)來(lái)說(shuō)是不可見(jiàn)的。

每個(gè) CLB 由 1 個(gè)或 2 個(gè) Slices 組成,Slices 有 SliceL 和 SliceM 這兩種類(lèi)型,下圖是一個(gè) SliceL 的結(jié)構(gòu)圖,其主要由查找表LUT、進(jìn)位鏈和存儲(chǔ)元素三部分組成。

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

查找表(LUT)

實(shí)現(xiàn)組合邏輯

對(duì)于一個(gè) n n n 輸入的邏輯運(yùn)算,不管是與、或、非運(yùn)算還是異或運(yùn)算,輸入最多只有 2 n 2^n 2n 種組合情況,因此最多只可能存在 2 n 2^n 2n 種結(jié)果,如果事先將相應(yīng)的結(jié)果存放于一個(gè)存儲(chǔ)單元,就相當(dāng)于實(shí)現(xiàn)了組合邏輯運(yùn)算電路的功能,下圖是使用一個(gè)三輸入的LUT來(lái)實(shí)現(xiàn) y = ( a & b ) ∣ ! c y=(a\&b)|!c y=(a&b)!c 的示意圖

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

Xilinx 7系列的FPGA采用6-輸入LUT結(jié)構(gòu),可以實(shí)現(xiàn)任意6-輸入邏輯功能(比如,4選1的多路選擇器)

如果要實(shí)現(xiàn)更多輸入的邏輯功能,就需要將多個(gè)LUT合在一起使用,這時(shí)候就需要用到多路選擇器進(jìn)行連接,我們從下面的 Slices 結(jié)構(gòu)圖可以看到有三個(gè)多路選擇器將4個(gè)LUT拼接起來(lái),可以實(shí)現(xiàn)任意8-輸入的邏輯功能或者16選1的多路選擇器

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

為什么4個(gè)6輸入的LUT只能實(shí)現(xiàn)任意8-輸入的邏輯功能?可以這么理解,想要實(shí)現(xiàn)任意 n n n-輸入的邏輯功能,那就需要 2 n 2^n 2n 個(gè)存儲(chǔ)單元,由于4個(gè)6輸入的LUT只有 4 ? 2 6 = 2 8 4\cdot 2^6=2^8 4?26=28 個(gè)存儲(chǔ)單元,因此只能實(shí)現(xiàn)任意8-輸入的邏輯功能。舉一個(gè)例子進(jìn)一步解釋?zhuān)热巛斎胄盘?hào)為 [ 7 : 0 ] ?input [7:0]\text{ input} [7:0]?input,可以令 AX 和 CX 等于 input [ 6 ] \text{input}[6] input[6](AX和CX是選擇信號(hào),詳情見(jiàn)上面的 Slices 結(jié)構(gòu)圖),令 BX 等于 input[7] \text{input[7]} input[7],令這 4 個(gè) LUT 的輸入均為 input[5:0] \text{input[5:0]} input[5:0], 4 個(gè) LUT 的存儲(chǔ)單元中依次寫(xiě)入 input \text{input} input 等于 8’b00xxxxxx、8’b01xxxxxx、8’b10xxxxxx 和 8’b11xxxxxx時(shí)的結(jié)果

為什么4個(gè)6輸入的LUT可以實(shí)現(xiàn)16選1的多路選擇器?1個(gè)LUT可以實(shí)現(xiàn)1個(gè)4選1的多路選擇器,4個(gè)LUT便可以實(shí)現(xiàn)4個(gè)4選1的多路選擇器,4個(gè)由LUT實(shí)現(xiàn)的4選1的多路選擇器,再加上上圖中圈出來(lái)的3個(gè)2選1的多路選擇器,便可以實(shí)現(xiàn)16選1的多路選擇器

實(shí)現(xiàn)DRAM

上面講的都是 SliceL,SliceM的不同點(diǎn)在于,它的LUT提供了寫(xiě)端口,包括寫(xiě)地址、寫(xiě)使能和寫(xiě)數(shù)據(jù),所以我們可以訪(fǎng)問(wèn) LUT 的存儲(chǔ)單元,從而將 LUT 作為 RAM 使用,如下圖所示

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

基于LUT實(shí)現(xiàn)的RAM,稱(chēng)之為 DRAM(Distributed Random Access Memory)

BRAM 和 DRAM 的區(qū)別如下:

  1. Block RAM是內(nèi)嵌的專(zhuān)用RAM,而Distributed RAM需要消耗珍貴的邏輯資源(SLICEM)組成
  2. Block RAM具有更高的時(shí)序性能,而Distributed RAM由于分布在不同的位置,延遲較大
  3. Distributed RAM的使用更靈活
  4. 較大容量的存儲(chǔ)部件,用Block RAM
  5. 零星小容量的存儲(chǔ)部件,用Distributed RAM

進(jìn)位鏈

用于實(shí)現(xiàn)超前進(jìn)位加法,代碼中的加法邏輯會(huì)使用進(jìn)位鏈實(shí)現(xiàn),用于提高加法器、減法器和比較器的速度

一個(gè)CARRY4模塊支持4位加法,其原理圖如下所示

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

通過(guò)級(jí)聯(lián)可以支持更多位寬的加法

存儲(chǔ)元素

其結(jié)構(gòu)如下所示,這部分用于實(shí)現(xiàn)觸發(fā)器或者鎖存器,配合 LUT 和進(jìn)位鏈可以實(shí)現(xiàn)時(shí)序電路

clb和iob,數(shù)字IC設(shè)計(jì),fpga開(kāi)發(fā)

一個(gè)6-輸入的LUT最多可以生成8個(gè)觸發(fā)器,可以是同步復(fù)位或者異步復(fù)位,有關(guān)類(lèi)型如下表所示

復(fù)位類(lèi)型 原語(yǔ) 行為
異步復(fù)位 FDCE 復(fù)位后Q輸出0
FDPE 復(fù)位后Q輸出1
同步復(fù)位 FDRE 復(fù)位后Q輸出0
FDSE 復(fù)位后Q輸出1

一個(gè)6-輸入的LUT最多可以生成4個(gè)鎖存器,異步復(fù)位,有關(guān)類(lèi)型如下表所示文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-829981.html

復(fù)位類(lèi)型 原語(yǔ) 行為
異步復(fù)位 LDCE 復(fù)位后Q輸出0
LDPE 復(fù)位后Q輸出1

到了這里,關(guān)于FPGA原理介紹 (CLB, LUT, 進(jìn)位鏈, 存儲(chǔ)元素, RAM)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 從底層結(jié)構(gòu)開(kāi)始學(xué)習(xí)FPGA(1)----可配置邏輯塊CLB(Configurable Logic Block)

    從底層結(jié)構(gòu)開(kāi)始學(xué)習(xí)FPGA(1)----可配置邏輯塊CLB(Configurable Logic Block)

    文章目錄 ????????系列目錄與傳送門(mén) ????????一、CLB概述 ????????二、SLICEM與SLICEL ????????三、查找表LUT ????????3.1、移位寄存器SRL ????????3.2、分布式DRAM? ????????四、多路選擇器MUX ????????五、存儲(chǔ)單元Storage Elements(FF) ????????六、進(jìn)

    2024年02月02日
    瀏覽(26)
  • 阿里云培訓(xùn)-負(fù)載均衡(CLB/ALB)

    阿里云培訓(xùn)-負(fù)載均衡(CLB/ALB)

    傳統(tǒng)型負(fù)載均衡CLB(Classic Load Balancer)是將訪(fǎng)問(wèn)流量根據(jù)轉(zhuǎn)發(fā)策略分發(fā)到后端多臺(tái)云服務(wù)器(ECS實(shí)例)的流量分發(fā)控制服務(wù)。CLB擴(kuò)展了應(yīng)用的服務(wù)能力,增強(qiáng)了應(yīng)用的可用性。 CLB通過(guò)設(shè)置虛擬服務(wù)地址,將添加的同一地域的多臺(tái)ECS實(shí)例虛擬成一個(gè)高性能和高可用的后端服務(wù)池

    2024年02月02日
    瀏覽(21)
  • 如何將彈性公網(wǎng)IP綁定到負(fù)載均衡CLB

    如何將彈性公網(wǎng)IP綁定到負(fù)載均衡CLB

    創(chuàng)建的CLB實(shí)例為私網(wǎng)類(lèi)型,沒(méi)有公網(wǎng)IP,無(wú)法通過(guò)公網(wǎng)訪(fǎng)問(wèn),如果需要讓其網(wǎng)站能夠通過(guò)公網(wǎng)訪(fǎng)問(wèn),只需要綁定前面創(chuàng)建的EIP即可。 第一步 如果彈性公網(wǎng)IP已經(jīng)綁定了資源,需要先解綁 第二步 將私網(wǎng)CLB實(shí)例綁定到彈性公網(wǎng)IP 第三步 測(cè)試綁定后是否能夠通過(guò)彈性公網(wǎng)IP訪(fǎng)問(wèn)到

    2024年02月03日
    瀏覽(21)
  • Xilinx-7系列之可配置邏輯塊CLB

    Xilinx-7系列之可配置邏輯塊CLB

    目錄 一、概覽 二、CLB結(jié)構(gòu) 三、Slice內(nèi)部結(jié)構(gòu) 3.1 SliceM結(jié)構(gòu) 3.2 SliceL結(jié)構(gòu) 3.3 查找表LUT 3.4 多路復(fù)用器 3.5?存儲(chǔ)單元 3.6?進(jìn)位邏輯 四、應(yīng)用 4.1 分布式RAM 4.2?ROM(只讀存儲(chǔ)器) 4.3 Shift Registers(?移位寄存器) 4.4?存儲(chǔ)資源容量估算 五、參考資料 ????可配置邏輯塊CLB(Configure Logic?

    2024年02月10日
    瀏覽(26)
  • 阿里云SLB負(fù)載均衡ALB、CLB和NLB有什么區(qū)別?

    阿里云負(fù)載均衡SLB分為傳統(tǒng)型負(fù)載均衡CLB(原SLB)、應(yīng)用型負(fù)載均衡ALB和網(wǎng)絡(luò)型負(fù)載均衡NLB,三者有什么區(qū)別?CLB是之前的傳統(tǒng)的SLB,基于物理機(jī)架構(gòu)的4層負(fù)載均衡;ALB是應(yīng)用型負(fù)載均衡,7層負(fù)載均衡;NLB是網(wǎng)絡(luò)型負(fù)載均衡,基于NFV虛擬化平臺(tái)的4層負(fù)載均衡。阿里云百科來(lái)

    2024年02月14日
    瀏覽(27)
  • FPGA中的LUT查找表工作原理。

    FPGA中的LUT查找表工作原理。

    在RAM中填入1110,后續(xù)的不同AB組合選通對(duì)應(yīng)RAM,Y輸出對(duì)應(yīng)RAM存儲(chǔ)的值,實(shí)現(xiàn)上面邏輯表達(dá)式的功能。

    2024年02月07日
    瀏覽(17)
  • FPGA原理與結(jié)構(gòu)(7)——進(jìn)位鏈CARRY

    FPGA原理與結(jié)構(gòu)(7)——進(jìn)位鏈CARRY

    系列文章目錄:FPGA原理與結(jié)構(gòu)(0)——目錄與傳送門(mén) ? ? ? ? 進(jìn)位鏈CARRY在FPGA中本質(zhì)上就是解決加減法進(jìn)位問(wèn)題的元器件,在學(xué)習(xí)進(jìn)位鏈之前,我們需要對(duì)數(shù)字電路的加減法做一個(gè)簡(jiǎn)單的回顧。 1.1半加器 ? ? ? ? 在學(xué)習(xí)組合電路的時(shí)候,半加器作為一個(gè)非常經(jīng)典的電路設(shè)

    2024年02月06日
    瀏覽(67)
  • FPGA結(jié)構(gòu):LUT(查找表)和 MUX(多路選擇器)介紹

    FPGA結(jié)構(gòu):LUT(查找表)和 MUX(多路選擇器)介紹

    如果你想學(xué)習(xí)有關(guān)FPGA的專(zhuān)業(yè)術(shù)語(yǔ),可以參考這一篇:FPGA專(zhuān)業(yè)術(shù)語(yǔ)介紹 一句話(huà)概括,通過(guò)將函數(shù)的真值表存放在少量?jī)?nèi)存單元中來(lái)實(shí)現(xiàn)組合邏輯電路功能的模塊稱(chēng)為L(zhǎng)UT。 這里以簡(jiǎn)單的一個(gè)3-LUT(3輸入查找表)為例,以下給出其示意圖的簡(jiǎn)化描述: 輸入1 ----┐ 輸入2 ----┼---

    2024年02月04日
    瀏覽(22)
  • FPGA原理與結(jié)構(gòu)(2)——查找表LUT(Look_Up_Table)

    FPGA原理與結(jié)構(gòu)(2)——查找表LUT(Look_Up_Table)

    系列文章目錄:FPGA原理與結(jié)構(gòu)(0)——目錄與傳送門(mén) 目錄 一、查找表(LUT)概述 二、LUT的性能權(quán)衡 1、面積效率 2、速度問(wèn)題 3、權(quán)衡結(jié)果 ?三、LUT的組成與應(yīng)用 1、LUT的組成? ? ? ?? 2、LUT的應(yīng)用 3、LUT應(yīng)用拓展 ?本文參考xilinx官方手冊(cè)u(píng)g474:ug474 ? ? ? ? LUT是CLB的重要組成

    2024年02月08日
    瀏覽(21)
  • FPGA基礎(chǔ)設(shè)計(jì)(八):串口收發(fā)之RAM存儲(chǔ)

    FPGA基礎(chǔ)設(shè)計(jì)(八):串口收發(fā)之RAM存儲(chǔ)

    實(shí)現(xiàn)上位機(jī)通過(guò)串口發(fā)送數(shù)據(jù)到FPGA,F(xiàn)PGA接收到數(shù)據(jù)后將其存儲(chǔ)在RAM的一段連續(xù)空間中,然后通過(guò)按鍵觸發(fā)讀出RAM數(shù)據(jù),再通過(guò)串口發(fā)送到上位機(jī)。 1、串口接收模塊; 2、按鍵消抖模塊 3、創(chuàng)建RAM IP核模塊 4、RAM IP核控制模塊; 5、串口發(fā)送模塊。 前面已經(jīng)設(shè)計(jì)好了串口發(fā)送模

    2024年02月03日
    瀏覽(76)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包