h1_key

當(dāng)前位置:首頁 >新聞資訊 > 行業(yè)資訊>FPGA芯片基本結(jié)構(gòu)知識(shí)
FPGA芯片基本結(jié)構(gòu)知識(shí)
2023-04-07 839次

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

  FPGA 可編程的特性決定了其實(shí)現(xiàn)數(shù)字邏輯的結(jié)構(gòu)不能像專用 ASIC 那樣通過固定的邏輯門電路來完成,而只能采用一種可以重復(fù)配置的結(jié)構(gòu)來實(shí)現(xiàn), 而查找表(LUT)可以很好地滿足這一要求,目前主流的 FPGA 芯片仍是基于 SRAM 工藝的查找表結(jié)構(gòu)。

  FPGA 芯片參數(shù)指標(biāo):包含可編程邏輯模塊的數(shù)量、固定功能邏輯模塊(如乘法器)的數(shù)目及存儲(chǔ)器資源(如嵌入式 RAM)的大小。

  在最底層的可配置邏輯模塊(如片上的邏輯單元) 上,存在著基本的兩種部件:觸發(fā)器和查找表( LUT) , 而觸發(fā)器和查找表的組合方式不同,是各個(gè) FPGA 家族之間區(qū)別的重要依據(jù), 并且查找表本身的結(jié)構(gòu)也可能各不相同( 有 4 輸入或 6 輸入或其他)。

  查找表( Look-Up-Table)簡(jiǎn)稱為 LUT, 其本質(zhì)上就是一個(gè) RAM。目前 FPGA 內(nèi)部中多使用 4輸入的 LUT,每一個(gè) LUT 可以看成一個(gè)有 4 位地址線的 RAM。

  當(dāng)用戶在 EDA 工具上通過原理圖或 硬件描述語言設(shè)計(jì)了一個(gè)邏輯電路以后, FPGA 開發(fā)軟件會(huì)自動(dòng)計(jì)算邏輯電路的所有可能結(jié)果,并把真值表(即結(jié)果)事先寫入 RAM 中。這樣,每輸入一個(gè)信號(hào)進(jìn)行邏輯運(yùn)算就等于輸入一個(gè)地址進(jìn)行查找表操作, 通過地址找到對(duì)應(yīng)的 RAM 中的結(jié)果, 最后將其輸出。以實(shí)現(xiàn)數(shù)字邏輯 Y=A&B&C 的功能為例。如果是在專用 ASIC 中,為了實(shí)現(xiàn)該邏輯,邏輯門都已經(jīng)事先確定好, Y 的輸出值為兩個(gè)邏輯與運(yùn)算后的結(jié)果,其基本的實(shí)現(xiàn)結(jié)構(gòu)如下圖所示:

  

 

  對(duì)Y=A&B&C 的 利用FPGA 實(shí)現(xiàn)基本結(jié)構(gòu) :

  

 


  更為復(fù)雜的 FPGA 架構(gòu)

  隨著技術(shù)的發(fā)展和工藝節(jié)點(diǎn)的進(jìn)步, FPGA 的容量和性能在不斷提高的同時(shí), 其功耗卻不斷的優(yōu)化減少。2006 年以前四輸入查找表一直被廣泛使用, 在一些高端器件可能會(huì)用上六輸入、八輸入或更多輸入端口的查找表。而一個(gè)多輸入的查找表又可以分解成較小輸入的查找表, 即能夠分裂成許多更小的功能。例如一個(gè)八輸入的查找表可以分解成兩個(gè)四輸入的查找表或分解成一個(gè)三輸入加一個(gè)五輸入的查找表。在實(shí)際的高端器件中,這種可編程構(gòu)造可以描述相當(dāng)于百萬級(jí)(有時(shí)甚至千萬級(jí))的原始邏輯門。

  在 FPGA 內(nèi)部,利用 FPGA 的可編程性在芯片內(nèi)部構(gòu)造實(shí)現(xiàn)了一個(gè)計(jì)數(shù)器邏輯,有著“軟內(nèi)核”與“硬內(nèi)核”之分。

  軟內(nèi)核(軟功能):在構(gòu)造計(jì)數(shù)器邏輯過程中使用到的功能便可以被稱為軟功能。

  硬內(nèi)核(硬功能):功能若是直接利用芯片實(shí)現(xiàn)的,則是利用了芯片內(nèi)部的硬功能。

  軟內(nèi)核與硬內(nèi)核之間優(yōu)勢(shì)互補(bǔ),軟內(nèi)核的優(yōu)勢(shì)在于可以在利用芯片資源的基礎(chǔ)上利用編程設(shè)計(jì)讓其完成需要實(shí)現(xiàn)的任何功能(注意是數(shù)字功能,不包括模擬功能)。而**硬內(nèi)核由于是實(shí)現(xiàn)固定功能的器件,因此其優(yōu)勢(shì)在于資源利用率高且功耗較低, 占用硅片的面積也較小, 并具有較高的性能。最重要的區(qū)別**在于:與軟內(nèi)核相比硬內(nèi)核可用于實(shí)現(xiàn)模擬功能, 例如鎖相環(huán)的倍頻功能,這個(gè)功能需要在模擬電路下實(shí)現(xiàn),所以這一部分是在 FPGA 內(nèi)部用硬件來實(shí)現(xiàn)的 。

  帶嵌入式處理器的 FPGA

  利用 FPGA 的可編程構(gòu)造實(shí)現(xiàn)的事情之一即為使用其中的一部分?jǐn)?shù)字邏輯資源制作一個(gè)或多個(gè)軟處理器內(nèi)核, 當(dāng)然, 也可以實(shí)現(xiàn)不同規(guī)模的處理器。

  


  這個(gè)芯片是一種新的SoC(System on Chip,系統(tǒng)級(jí)芯片) FPGA,完全以硬內(nèi)核方式實(shí)現(xiàn)的雙路 ARM Cortex-A9 微控制器子系統(tǒng)(運(yùn)行時(shí)鐘高達(dá) 1GHz,包含浮點(diǎn)引擎,片上緩存,計(jì)數(shù)器,定時(shí)器等)以及種類廣泛的硬內(nèi)核接口功能( SPI, I2C, CAN等),還有一個(gè)硬內(nèi)核的動(dòng)態(tài)內(nèi)存控制器,所有這些組件都利用大量傳統(tǒng)的可編程構(gòu)造和大量的通用輸入輸出( GPIO)引腳進(jìn)行了性能增強(qiáng)。


  數(shù)據(jù)存儲(chǔ)以及配置方式

  在 FPGA 內(nèi)部存在著存儲(chǔ)單元片內(nèi) RAM 塊,數(shù)據(jù)是存放在 RAM 中并由其來設(shè)置工作狀態(tài)的,若想要 FPGA 進(jìn)行工作,就需要對(duì)片內(nèi) RAM 進(jìn)行編程。而如果外部有大量數(shù)據(jù)交互時(shí),就要通過增加外設(shè)來對(duì)數(shù)據(jù)進(jìn)行暫時(shí)性的存儲(chǔ),如 SDRAM 存儲(chǔ)器或者 DDR3 存儲(chǔ)器,暫存在外設(shè)中的數(shù)據(jù)最終也是要通過 FPGA 內(nèi)部的 RAM 進(jìn)行存儲(chǔ)與處理。當(dāng)在 EDA 工具上將程序設(shè)計(jì)完成之后,便需要將軟件上的程序燒錄進(jìn) FPGA 內(nèi)部。通過不同的配置模式, FPGA 便會(huì)有不同的編程方式。

  常用的幾種配置模式:

  并行模式:通過并行 PROM(Programmable read-only memory,可編程只讀存儲(chǔ)器)、 Flash (Macromedia Flash。多媒體軟件平臺(tái))配置 FPGA;

  主從模式:使用一片 PROM 配置多片 FPGA;

  串行模式:串行 PROM 配置 FPGA;

  外設(shè)模式:將 FPGA 作為微處理器的外設(shè),由微處理器對(duì)其編程。

  目前, 主流的 FPGA 都是基于 SRAM (Static Random-Access Memory,靜態(tài)隨機(jī)存取存儲(chǔ)器)工藝的, 在大部分的 FPGA 開發(fā)板上,使用的都是串行配置模式。由于 SRAM 掉電就會(huì)丟失內(nèi)部數(shù)據(jù),因此往往都會(huì)外接一個(gè)能夠掉電保存數(shù)據(jù)的片外存儲(chǔ)器以保存程序。這樣一來, 上電時(shí) FPGA 便將外部存儲(chǔ)器中的數(shù)據(jù)讀入片內(nèi) RAM 以完成配置, 對(duì) FPGA 編程完成后便進(jìn)入工作狀態(tài);掉電后 FPGA 內(nèi)部 SRAM 中存儲(chǔ)的數(shù)據(jù)丟失,邏輯清零。以這種方式配置 FPGA 不僅能反復(fù)使用,還無需重復(fù)的手動(dòng)配置。完成一次主動(dòng)配置之后每次上電便會(huì)自動(dòng)的實(shí)現(xiàn) FPGA 的內(nèi)部編程。

 

  • 一文讀懂?dāng)?shù)字隔離器芯片的原理、運(yùn)用、品牌、選型要點(diǎn)
  • 隔離器芯片的核心目的是在兩個(gè)電氣系統(tǒng)之間提供電氣隔離,同時(shí)允許數(shù)字信號(hào)或數(shù)據(jù)(有時(shí)甚至是電源)穿越這個(gè)隔離屏障。隔離意味著兩側(cè)電路沒有直接的電氣連接(沒有共用的地線或電源),從而防止危險(xiǎn)的電壓、電流浪涌、地線環(huán)路干擾或噪聲從一側(cè)傳遞到另一側(cè),保護(hù)人員和設(shè)備安全,并確保信號(hào)的完整性。
    2025-08-21 182次
  • 一文讀懂DRAM(動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器)工作原理、分類、主要廠商
  • DRAM是一種易失性半導(dǎo)體存儲(chǔ)器,用于計(jì)算機(jī)和其他數(shù)字設(shè)備作為主內(nèi)存。它的名字“動(dòng)態(tài)”源于需要周期性刷新存儲(chǔ)的數(shù)據(jù)。
    2025-06-19 538次
  • 一文讀懂FPGA的工作原理、關(guān)鍵參數(shù)、品牌、運(yùn)用
  • FPGA代表Field-Programmable Gate Array,中文譯為現(xiàn)場(chǎng)可編程門陣列。它是一種非常特殊的半導(dǎo)體集成電路芯片。與 CPU、GPU 或?qū)S眉呻娐沸酒诔鰪S時(shí)功能就固定不同,F(xiàn)PGA的硬件邏輯功能在制造完成后,可以由用戶在現(xiàn)場(chǎng)(Field)根據(jù)需要進(jìn)行編程(Programmable)來定義。 它本質(zhì)上是由大量可配置邏輯塊、可編程互連資源和豐富的輸入/輸出單元組成的陣列(Array)。
    2025-06-05 327次
  • 一文讀懂ADC(模數(shù)轉(zhuǎn)換器)與DAC(數(shù)模轉(zhuǎn)換器)類型、應(yīng)用
  • ADC(模數(shù)轉(zhuǎn)換器)與DAC(數(shù)模轉(zhuǎn)換器)芯片是連接模擬世界與數(shù)字系統(tǒng)的核心元器件,廣泛應(yīng)用于通信、工業(yè)控制、醫(yī)療設(shè)備、消費(fèi)電子等領(lǐng)域。以下是它們的核心技術(shù)原理、類型及市場(chǎng)應(yīng)用解析:
    2025-05-21 236次
  • 一文讀懂GNSS模組產(chǎn)品分類、品牌、運(yùn)用
  • 全球?qū)Ш叫l(wèi)星系統(tǒng)(GNSS,Global Navigation Satellite System)是一種通過衛(wèi)星信號(hào)提供地理定位、導(dǎo)航和時(shí)間同步服務(wù)的技術(shù)。常見的GNSS包括美國(guó)的GPS、俄羅斯的GLONASS、歐盟的伽利略(Galileo)和中國(guó)的北斗(BDS)。以下從產(chǎn)品、品牌和應(yīng)用領(lǐng)域三個(gè)方面進(jìn)行介紹:
    2025-04-28 533次

    萬聯(lián)芯微信公眾號(hào)

    元器件現(xiàn)貨+BOM配單+PCBA制造平臺(tái)
    關(guān)注公眾號(hào),優(yōu)惠活動(dòng)早知道!
    10s
    溫馨提示:
    訂單商品問題請(qǐng)移至我的售后服務(wù)提交售后申請(qǐng),其他需投訴問題可移至我的投訴提交,我們將在第一時(shí)間給您答復(fù)
    返回頂部