當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 基礎(chǔ)知識(shí)科普站
[導(dǎo)讀]數(shù)字集成電路有兩種類型:ASIC和FPGA(現(xiàn)場(chǎng)可編程門陣列)。專用集成電路(ASIC)有一個(gè)預(yù)先定義的特定硬件功能,在生產(chǎn)后不能重新編程。但FPGA可以在制造后可無(wú)限編程。

數(shù)字集成電路有兩種類型:ASIC和FPGA(現(xiàn)場(chǎng)可編程門陣列)。專用集成電路(ASIC)有一個(gè)預(yù)先定義的特定硬件功能,在生產(chǎn)后不能重新編程。但FPGA可以在制造后可無(wú)限編程。

FPGA是一種集成電路,一種可編程芯片,它允許工程師對(duì)定制的數(shù)字邏輯進(jìn)行編程,可以根據(jù)程序改變其硬件邏輯。主要目的是允許工程師重新設(shè)計(jì)和重新配置他們的芯片更快,更便宜,只要他們想要,然而世界上沒有什么理想的,F(xiàn)PGA芯片也有局限性!

深入淺出帶你了解FPGA架構(gòu)

FPGA最早出現(xiàn)于20世紀(jì)80年代,其最初的應(yīng)用是允許工程師擁有通用可編程邏輯芯片。然而,這需要大量的編程才能執(zhí)行簡(jiǎn)單的功能,所以工程師們盡量避免使用這些功能。但是,雖然在1980年的FPGA是一個(gè)簡(jiǎn)單的接口設(shè)備,主要針對(duì)難以用于設(shè)計(jì)復(fù)雜系統(tǒng)的膠水邏輯,但它成為了一個(gè)系統(tǒng)級(jí)集成電路,具有自己的內(nèi)存塊、微處理器和接口,允許設(shè)計(jì)重要的系統(tǒng)。

基本特點(diǎn)

1) 采用FPGA設(shè)計(jì)ASIC電路(專用集成電路),用戶不需要投片生產(chǎn),就能得到合用的芯片。

2) FPGA可做其它全定制或半定制ASIC電路的中試樣片。

3) FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。

4) FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。

5) FPGA采用高速CMOS工藝,功耗低,可以與CMOS、TTL電平兼容。

6)使工程師能夠精確地構(gòu)建所需硬件,而不必使用標(biāo)準(zhǔn)集成電路,或花費(fèi)與ASIC設(shè)計(jì)相關(guān)的時(shí)間、成本和風(fēng)險(xiǎn)。

7)與微處理器或微控制器相比,它們以更快、更節(jié)能和更簡(jiǎn)單的方式進(jìn)行操作。

8)FPGA功能可以像任何其他軟件代碼一樣更新,即使硬件已經(jīng)離開了生產(chǎn)點(diǎn)。這可以幫助修復(fù)bug或添加新特性。

可以說,F(xiàn)PGA芯片是提高系統(tǒng)集成度、可靠性的最佳選擇之一。FPGA是由存放在片內(nèi)RAM中的程序來(lái)設(shè)置其工作狀態(tài),因此,工作時(shí)需要對(duì)片內(nèi)RAM進(jìn)行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM中,配置完成后,F(xiàn)PGA進(jìn)入工作狀態(tài)。掉電后,F(xiàn)PGA恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無(wú)須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,F(xiàn)PGA的使用非常靈活。

深入淺出帶你了解FPGA架構(gòu)

CPLD和FPGA

CPLD是復(fù)雜可編程邏輯器件,也是一種制造后可重新編程的器件。在這個(gè)意義上,它們類似于FPGA。然而,也有顯著的差異。FPGA由多個(gè)邏輯單元組成,而CPLD由較少的邏輯單元組成。由于它們的尺寸,CPLD通常更便宜和更快。然而,CPLD的功能非常有限,它們不能用于構(gòu)建復(fù)雜的系統(tǒng),它們通常用于簡(jiǎn)單的設(shè)計(jì),如膠合邏輯[1]。

各個(gè)廠家叫法不盡相同。PLD(Programmable Logic Device)是可編程邏輯器件的總稱,早期多EEPROM工藝,基于乘積項(xiàng)結(jié)構(gòu)。FPGA最早由Xilinx公司發(fā)明。多為SRAM 工藝,基于查找表(Look Up Table)結(jié)構(gòu),要外掛配置用的EPROM。Xilinx把SRAM工藝,要外掛配置用的EPROM的PLD叫FPGA,把Flash工藝(類似EEPROM工藝),乘積項(xiàng)結(jié)構(gòu)的PLD叫CPLD;Altera把自己的PLD產(chǎn)品:MAX系列(EEPROM工藝),FLEX/ACEX/APEX系列(SRAM工藝)都叫作CPLD,即復(fù)雜PLD(Complex PLD)。

FPGA的應(yīng)用

目前FPGA的應(yīng)用有很多。當(dāng)我們?cè)谏a(chǎn)過程中不確定我們的需求,或者需求會(huì)隨著時(shí)間而改變。FPGA是最快、最便宜的原型制作方法之一,但它并不局限于此。它被用于不同的目的:從靈活的設(shè)計(jì)和機(jī)器學(xué)習(xí)訓(xùn)練到快速交易和加密挖掘。服務(wù)器應(yīng)用是FPGA設(shè)備最新的案例。

然而,它們也有缺點(diǎn):

硬件成本

速度要求

FPGA的架構(gòu)

FPGA由構(gòu)建塊組成,這些構(gòu)建塊就像可以用來(lái)構(gòu)建系統(tǒng)的樂高積木。它有一個(gè)基本的邏輯構(gòu)建塊稱為邏輯單元(CLB),但也可以包含更大的其他塊,如PLL、接口、內(nèi)存等。單個(gè)FPGA芯片將擁有數(shù)十萬(wàn)個(gè)邏輯單元。除了CLB,芯片還有輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)。

我們有一個(gè)查找表(LUT)作為FPGA邏輯塊的核心。本質(zhì)上就是一個(gè)RAM。它把數(shù)據(jù)事先寫入RAM后,每當(dāng)輸入一個(gè)信號(hào)就等于輸入一個(gè)地址進(jìn)行查表,找出地址對(duì)應(yīng)的內(nèi)容,然后輸出。構(gòu)建塊的輸出是多路復(fù)用的。多路復(fù)用器的一個(gè)輸入是LUT的直接輸出,用于純組合邏輯,如NAND, NOR, XOR或其他邏輯門。多路復(fù)用器的另一個(gè)輸入是經(jīng)過d型觸發(fā)器并與時(shí)鐘同步存儲(chǔ)的LUT的注冊(cè)輸出。

一個(gè)邏輯單元本身是一個(gè)簡(jiǎn)單的電路,不能做太多的事情,但當(dāng)有很多邏輯單元時(shí),我們可以實(shí)現(xiàn)任何我們想要的功能。為了做到這一點(diǎn),邏輯單元被連接到一個(gè)陣列的其他邏輯單元。

CLB塊之間的橙色矩形是可編程開關(guān),它可以將邏輯單元的輸出路由到任何地方。這是一個(gè)非常簡(jiǎn)單的圖表;事實(shí)上,比這里顯示的更多的電線和互連線。

注意攜帶和攜帶引腳。每個(gè)加法器只有一位寬,而使用進(jìn)位/進(jìn)位引腳,可以非??焖俸陀行У貏?chuàng)建大的加法器和計(jì)數(shù)器。擁有快速、專用的攜帶鏈?zhǔn)荈PGA相對(duì)于其他可編程邏輯器件(如CPLD)的最大優(yōu)勢(shì)之一。

在FPGA中,時(shí)鐘可以實(shí)現(xiàn)所有觸發(fā)器,因?yàn)闆]有時(shí)鐘的數(shù)字設(shè)計(jì)幾乎不可想象。FPGA有非常高級(jí)的時(shí)鐘資源,包括內(nèi)置的可配置PLL(鎖相環(huán))和DLL(延遲鎖環(huán))。由于幾乎所有的現(xiàn)代數(shù)字設(shè)計(jì)都需要多個(gè)具有不同頻率和相位延遲的時(shí)鐘,因此時(shí)鐘管理非常重要。

FPGA也有用于讀取和輸出數(shù)據(jù)的輸入輸出塊。除了標(biāo)準(zhǔn)的I/O塊,大多數(shù)FPGA有以下I/O特性:

觸發(fā)器輸出同步I/O

微分信號(hào)

雙數(shù)據(jù)速率(DDR)

序列化器和反序列化器(SERDES)

上拉、下拉和三態(tài)I/O

回轉(zhuǎn)速度可調(diào),驅(qū)動(dòng)強(qiáng)度可調(diào)

就像內(nèi)存中內(nèi)置的RAM塊一樣,分布式RAM可以在100Kb和100Mb之間變化。最新一代的FPGA設(shè)備也有DSP乘法器片,主要用于DSP應(yīng)用(數(shù)字信號(hào)處理)。大多數(shù)FPGA有其他內(nèi)置塊:

ADC和DAC

外部存儲(chǔ)器控制器,如DRAM, DDR, DDR2。

串行總線控制器

以太網(wǎng)MAC

專用的先進(jìn)先出[2]

高速收發(fā)器

這些塊在FPGA設(shè)備上設(shè)計(jì)為“硬塊”,而不是在制造過程后由邏輯塊和開關(guān)構(gòu)建,因?yàn)樗鼈兺ǔJ撬袕?fù)雜系統(tǒng)都需要的。因?yàn)樗鼈兇嬖谟谒械南到y(tǒng)中,并且使用得非常頻繁,所以我們希望它們能夠存在以節(jié)省時(shí)間(總使用clb和開關(guān)從頭開始設(shè)計(jì)它們沒有意義,相反我們將它們?cè)O(shè)計(jì)為單獨(dú)的可配置塊,以便設(shè)計(jì)師能夠更改它們的參數(shù)),但更重要的是,我們希望它們具有非常好的特性,非常高效地工作并占用更少的空間。此外,這些模塊中有一些模擬部件需要手工設(shè)計(jì),不能僅通過數(shù)字單元來(lái)構(gòu)建。

如何對(duì)FPGA進(jìn)行編程和配置

為了配置FPGA,我們需要對(duì)它進(jìn)行編程。我們可以使用Verilog、System Verilog和VHDL等FPGA硬件描述語(yǔ)言進(jìn)行編程。這些語(yǔ)言有一些區(qū)別,這里便不再贅述。使用FPGA定義硬件的工作流程如下:

每個(gè)步驟都需要一些工具集。大多數(shù)FPGA制造商都提供了具備所有所需工具的編程環(huán)境。

高手玩家

FPGA市場(chǎng)前景誘人,但是門檻之高在芯片行業(yè)里無(wú)出其右。全球有60多家公司先后斥資數(shù)十億美元,前赴后繼地嘗試登頂FPGA高地,其中不乏英特爾、IBM、德州儀器、摩托羅拉、飛利浦、東芝、三星這樣的行業(yè)巨鱷,但是最終登頂成功的只有位于美國(guó)硅谷的四家公司:Xilinx(賽靈思)、Altera、Lattice(萊迪思)、Microsemi,其中,Xilinx與Altera這兩家公司共占有近90%的市場(chǎng)份額,專利達(dá)到6000余項(xiàng)之多,如此之多的技術(shù)專利構(gòu)成的技術(shù)壁壘高不可攀。

深入淺出帶你了解FPGA架構(gòu)

Xilinx

Xilinx公司成立于 1984年,Xilinx首創(chuàng)了現(xiàn)場(chǎng)可編程邏輯陣列(FPGA)這一創(chuàng)新性的技術(shù),并于1985年首次推出商業(yè)化產(chǎn)品,是全球領(lǐng)先的可編程邏輯完整解決方案的供應(yīng)商,也是目前排名第一的FPGA解決方案提供商。

產(chǎn)品系列包括:

Spartan系列:定位于低端市場(chǎng),目前最新器件為采用28nm工藝的Spartan7;

Artix系列:定位于低端Spartan和高端Kintex之間的中端市場(chǎng),目前在售的主流產(chǎn)品為采用28nm工藝的Artix-7;

Kintex系列:定位于高端市場(chǎng),包含有28nm工藝的Kintex7系列,20nm的Kintex7 Ultrascale系列,還有16nm的Kintex7 Ultrascale+系列;

Virtex系列:定位于高端市場(chǎng),包含有采用28nm工藝的Virtex7系列,20nm的Virtex7 Ultrascale系列,還有16nm的Virtex7 Ultrascale+系列;

全可編程 SoC 和 MPSoC系列:包括有Zynq-7000和Zynq UltraScale+ MPSoC系列FPGA、內(nèi)嵌有ARM Cortex系列CPU;

AI Engine系列:Versal ACAP、Alveo系列等。

Intel(Altera)

與Xilinx齊名的FPGA供應(yīng)商,2015年被CPU屆的大佬Intel收購(gòu)。

產(chǎn)品系列包括:

MAXII系列:實(shí)質(zhì)上是CPLD;

Cyclone系列:定位于中低端市場(chǎng),類似于Xilinx 公司的Spartan系列和Artix系列,最新產(chǎn)品為Cyclone10。

Stratix系列:定位于高端市場(chǎng),與Xilinx的Kintex、Virtex系列競(jìng)爭(zhēng),最新產(chǎn)品為Stratix10;

Arria系列:SOC系列FPGA, 內(nèi)置ARM Cotex A9的核;

Intel Arria 10系列:支持DDR4存儲(chǔ)器接口的FPGA,硬件設(shè)計(jì)人員可以使用Quartus II 軟件v14.1,在Arria 10 FPGA和SoC設(shè)計(jì)中實(shí)現(xiàn)666 Mbps DDR4存儲(chǔ)器數(shù)據(jù)速率;

Agilex系列:面向數(shù)據(jù)中心等高端市場(chǎng),采用10nm工藝,異構(gòu) 3D 系統(tǒng)級(jí)封裝 (SiP) 技術(shù)的一款FPGA產(chǎn)品。

Microchip(Microsemi)

Microsemi并購(gòu)了Actel,專注于美國(guó)軍工和航空領(lǐng)域,產(chǎn)品為反熔絲結(jié)構(gòu)FPGA和基于Flash的FPGA為主,具有抗輻照和可靠性高的優(yōu)勢(shì),Microsemi又被Microchip(微芯)并購(gòu)。

產(chǎn)品系列包括:

基于FLASH的通用FPGA系列:包括PolarFire Mid-Range FPGAs、RTG4 Radiation-Tolerant FPGAs、IGLOO2 Low-DensityFPGAs三個(gè)高、中、低端系列。

Lattice

CPLD的發(fā)明者,著名的可編程邏輯解決方案供應(yīng)商,僅次于Xilinx和Altera。

產(chǎn)品系列包括:

ECP系列:為L(zhǎng)attice自己的開發(fā)的FPGA系列,提供低成本,高密度的FPGA解決方案,而且還有高速Serdes等接口,適用于民品解決方案居多;

ICE系列:為收購(gòu)SilioncBlue的超低功耗FPGA,曾用在iPhone7里面,實(shí)現(xiàn)了FPGA首次在消費(fèi)類產(chǎn)品中應(yīng)用;

Mach系列:替代CPLD,實(shí)現(xiàn)粘合邏輯的最佳選擇。

QuickLogic Corp

QuickLogicCorporation 誕生于1988年,是一家超低功耗嵌入式現(xiàn)場(chǎng)可編程門陣列 (eFPGA) IP、多核語(yǔ)音識(shí)別 SoC、顯示器橋接和可編程序邏輯解決方案開發(fā)公司。

eFPGA產(chǎn)品系列包括:采用65nm和40nm工藝的ArcticPro系列和采用GF-22工藝的ArcticPro 2 eFPGA。

Achronix

Achronix 作為后起之秀,早期推出了eFPGA IP,但是限于IP產(chǎn)品的變現(xiàn)速度太慢,隨后推出了FPGA芯片,今年5月發(fā)布的新品叫Speedater7t。

EFINIX

EFINIX可以說是后起之秀,它改變了傳統(tǒng)FPGA的設(shè)計(jì)理念:

eXchangeable Logic and Routing (XLR) cell

我們將邏輯資源比作一個(gè)城市。隨著城市的擴(kuò)大,就必須建立更寬的道路,道路間要建立不少的立交,而且這些立交的層次都可能很復(fù)雜,還需要更多的交通燈,以及匝道來(lái)匯聚和分開車流。這些實(shí)際上和一塊FPGA的結(jié)構(gòu)非常類似,你可以自然聯(lián)想到,芯片規(guī)模越大,就只有兩個(gè)辦法來(lái)完成邏輯之間的互聯(lián)互通。要不就是把走線的資源增加很多層,要不就是把芯片做到更大的面積來(lái)增加布線。甚至兩個(gè)方面都要加強(qiáng)。

傳統(tǒng)的FPGA中的運(yùn)算單元LE(Logic Element)和互連資源Routing Switch在功能上各司其職,而數(shù)量和位置都是固定的。因此,如果你的設(shè)計(jì)中有很多Logic,那么很可能片上的LE不夠用,而互連資源會(huì)有很多富裕;而如果你的設(shè)計(jì)中需要很多的連線,比如復(fù)雜的總線,大量的Mux,那么很可能互連資源成為瓶頸。

Efinix的想法就是設(shè)計(jì)一種新的Cell,XLR,它既可以作為運(yùn)算資源,又可以作為互連資源。

國(guó)內(nèi)主要玩家

[1] gule logic的中文含意是“膠合邏輯”,它是連接復(fù)雜邏輯電路的簡(jiǎn)單邏輯電路的統(tǒng)稱。例如,一個(gè)ASIC芯片可能包含許多諸如微處理器、存儲(chǔ)器功能塊或者通信功能塊之類的功能單元,這些功能單元之間通過較少的粘合邏輯連接起來(lái)。在印制板(PCB)層,粘合邏輯可以使用具有較少邏輯門的“粘合芯片”實(shí)現(xiàn),例如PAL、GAL、CPLD等。

[2] 先進(jìn)先出(FIFO,first-in,first-out)為處理從隊(duì)列或堆棧發(fā)出的程序工作要求的一種方法,它使最早的要求被最先處理。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉