<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應用 > 詳解FPGA芯片結(jié)構(gòu)以及開發(fā)流程

          詳解FPGA芯片結(jié)構(gòu)以及開發(fā)流程

          作者: 時間:2018-08-09 來源:網(wǎng)絡(luò) 收藏

          1.FPGA概述

          本文引用地址:http://www.ex-cimer.com/article/201808/386159.htm

          FPGA是英文FieldProgrammableGateArray的縮寫,即現(xiàn)場可編程門陣列,它是在PAL、GAL、EPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點

          2.FPGA芯片結(jié)構(gòu)

          FPGA芯片主要由三部分組成,分別是IOE(inputoutputelement,輸入輸出單元)、LAB(logicarrayblock,邏輯陣列塊,對于Xilinx稱之為可配置邏輯塊CLB)和Interconnect(內(nèi)部連接線)。

          2.1 IOE

          IOE是芯片與外部電路的物理接口,主要完成不同電氣特性下輸入/輸出信號的驅(qū)動與匹配要求,比如從基本的LVTTL/LVCMOS接口到PCI/LVDS/RSDS甚至各種各樣的差分接口,從5V兼容到3.3V/2.5V/1.8V/1.5V的電平接口,下面是ALTERA公司的CycloneIVEP4CE115F29設(shè)備的IOE結(jié)構(gòu)

          EP4CE115F29設(shè)備的IOE結(jié)構(gòu)圖

          FPGA的IOE按組分類,每組都能夠獨立地支持不同的I/O標準,通過軟件的靈活配置,可匹配不同的電器標準與IO物理特性,而且可以調(diào)整驅(qū)動電流的大小,可以改變上/下拉電阻,CycloneIV設(shè)備有8個IOblank(組),見下圖:

          CycloneIV設(shè)備的IO組

          2.2 LAB

          LAB是FPGA的基本邏輯單元,其實際的數(shù)量和特性依據(jù)所采用的器件的不同而不同,EP4CE115F29設(shè)備的每個LAB的布局包括16個LE、LAB控制信號、LEcarrychains、Registerchains和Localinterconnect,其LAB結(jié)構(gòu)圖如下:

          LAB結(jié)構(gòu)圖

          LE是CycloneIV設(shè)備最小的邏輯單元,每個LE主要有LUT和寄存器組成的,

          LE的結(jié)構(gòu)圖

          查找表LUT(Look-Up-Table)其本質(zhì)是一個靜態(tài)存儲器SRAM,目前FPGA多采用4輸入的LUT,每個LUT可以看作一個有4位地址線的16x1的RAM。當我們通過原理圖或HDL語言描述了一個邏輯電路后,F(xiàn)PGA開發(fā)軟件會自動計算邏輯電路的所有可能的結(jié)果,并把結(jié)果事先寫入RAM。這樣,在FPGA工作時,每輸入一個信號進行邏輯運算就等于輸入一個地址進行查表,找出地址對應的內(nèi)容,然后輸出。

          LUT的實現(xiàn)原理圖


          上一頁 1 2 下一頁

          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();