FPGA掃盲文

姓名:呂紅霞御吞;學(xué)號(hào):20011210203岭佳;學(xué)院:通信工程學(xué)院

轉(zhuǎn)自https://mp.weixin.qq.com/s/8_na7HzTAryQE5SRxjfwOA

【嵌牛導(dǎo)讀】本文介紹了FPGA的發(fā)展歷程

【嵌牛鼻子】FPGA

【嵌牛提問(wèn)】所以FPGA到底是什么玛追?

【嵌牛正文】

1984年,Xilinx公司的創(chuàng)始人之一,密西根大學(xué)畢業(yè)生,RossFreeman第一次提出了可編程邏輯器件(PLD)的概念谜酒,讓芯片成為一個(gè)空白的畫(huà)布,可由工程師通過(guò)編程在上面任意“涂鴉”妻枕。

?Freeman也因?yàn)檫@項(xiàng)發(fā)明進(jìn)入2009美國(guó)發(fā)明家名人堂。遺憾的是英年早逝的他沒(méi)能看到他所締造的FPGA帝國(guó)是多么的輝煌粘驰。

??清華大學(xué)微電子研究所所長(zhǎng)屡谐,中國(guó)半導(dǎo)體行業(yè)協(xié)會(huì)副理事長(zhǎng)魏少軍先生曾用印一本書(shū)來(lái)區(qū)別芯片的設(shè)計(jì)、制造蝌数、封測(cè)過(guò)程:設(shè)計(jì)相當(dāng)于作家寫了一本書(shū)愕掏,制造相當(dāng)于印刷,封裝相當(dāng)于裝訂顶伞。那么FPGA是什么饵撑?如果是一個(gè)專業(yè)從事FPGA工作的老攻城獅可能會(huì)告訴你,”Field Programmable Gate Array“唆貌,然后再補(bǔ)上一句”It can be anything you want“滑潘。網(wǎng)上也有很多通俗易懂的類比。例如把FPGA的開(kāi)發(fā)看作是數(shù)字積木搭建锨咙,東南大學(xué)湯勇明老師就寫過(guò)一本《搭建你的數(shù)字積木——數(shù)字電路與邏輯設(shè)計(jì)》

一個(gè)個(gè)IP就像是一塊塊積木语卤,通過(guò)調(diào)用IP"搭建"特定功能的電路,這個(gè)比喻來(lái)說(shuō)明FPGA的開(kāi)發(fā)再合適不過(guò)了。

??也有人將FPGA比作是空白的大腦粹舵,大腦里面存在成千上萬(wàn)的神經(jīng)元細(xì)胞钮孵,但是神經(jīng)元之間并沒(méi)有連接起來(lái),也就還沒(méi)有大腦強(qiáng)大的功能眼滤,但是當(dāng)工程師用Verilog或者vhdl來(lái)對(duì)FPGA進(jìn)行布局布線之后巴席,神經(jīng)元就連接到了一起,大腦也就有了一些功能诅需,給大腦輸入羊肉泡饃的畫(huà)面漾唉,會(huì)流口水之類的反應(yīng)。這個(gè)比喻來(lái)形容FPGA的設(shè)計(jì)原理再合適不過(guò)了诱担。

??另外毡证,還有人將FPGA中的一些組成部分和生物化學(xué)有機(jī)體類比。FPGA中最基本的單元——可編程邏輯單元(CLB)蔫仙,可以類比為有機(jī)體中的蛋白質(zhì)分子料睛,生物化學(xué)的角度上,蛋白質(zhì)可以合成更高更復(fù)雜的器官摇邦,例如心恤煞,肝,胃施籍,胳膊腿等居扒,那么同樣CLB作為電子有機(jī)體中的蛋白質(zhì)分子,當(dāng)然就可以合成一個(gè)電子有機(jī)體(類比人)的各個(gè)模塊(器官)丑慎,有的器官?gòu)?fù)雜喜喂,需要很多蛋白質(zhì)分子分層次合成,那么同樣竿裂,有的電子系統(tǒng)的模塊的也極其復(fù)雜玉吁,需要CLB分層次合成。

??那么蛋白質(zhì)分子在合成各種不同的器官的時(shí)候腻异,靠什么做指導(dǎo)嘞进副?人體內(nèi)部有著極其龐大復(fù)雜的DNA序列,這個(gè)DNA序列記錄著人體的所有信息悔常。在受精卵生成胚胎階段影斑,其中的某一段序列指導(dǎo)胚胎的這一坨(也就是這一堆蛋白質(zhì)分子)成為未來(lái)的手,另一端序列指導(dǎo)胚胎的另一堆蛋白質(zhì)分子成為未來(lái)的胳膊机打。那么同樣矫户,在FPGA中也會(huì)有等價(jià)于生物化學(xué)有機(jī)體中的DNA,就是bit_stream姐帚。bit_stream和DNA完全類似吏垮,就是一段序列障涯,指導(dǎo)著若干CLB合成某一個(gè)執(zhí)行具體功能的模塊。

??在有機(jī)體中還有脂肪的存在膳汪,脂肪的一大作用就是存儲(chǔ)能量唯蝶,在FPGA中負(fù)責(zé)存儲(chǔ)的是BRAM,不同的是脂肪儲(chǔ)存的是能量遗嗽,BRAM儲(chǔ)存的是數(shù)據(jù)粘我。????????

? FPGA中還有一個(gè)很重要的東西叫做DSP,即數(shù)字信號(hào)處理器痹换,在人的大腦里面有一片腦回溝區(qū)域?qū)iT負(fù)責(zé)數(shù)學(xué)運(yùn)算征字,兩者可以做一個(gè)類比。

? 生物體中還有一個(gè)十分重要的器官叫心臟娇豫,而FPGA中有一個(gè)東西叫時(shí)鐘匙姜,心臟控制脈搏,時(shí)鐘則負(fù)責(zé)整個(gè)系統(tǒng)的工作頻率冯痢。有了心臟氮昧,人類才得以正常活動(dòng)浦楣,有了時(shí)鐘袖肥,系統(tǒng)才得以有條不紊的運(yùn)行。

? 在FPGA的設(shè)計(jì)當(dāng)中編寫的RTL代碼振劳,通過(guò)軟件工具可以生成人類看不懂的bit_stream,也就是說(shuō)工程師每天的工作都是在編寫FPGA的DNA,在生物學(xué)領(lǐng)域椎组,我相信大多數(shù)的科學(xué)家畢生都在做著解讀‘人類天書(shū)’DNA的工作吧。這樣一一類比下來(lái)感覺(jué)FPGA的開(kāi)發(fā)就像是在造人一樣历恐,頓時(shí)感覺(jué)代碼都不枯燥了寸癌。

? 首款 FPGA,即賽靈思 XC2064弱贼,只包含 64 個(gè)邏輯模塊灵份,每個(gè)模塊含有兩個(gè) 3 輸入查找表 (LUT) 和一個(gè)寄存器。按照現(xiàn)在的計(jì)算哮洽,該器件有 64 個(gè)邏輯單元——不足 1000 個(gè)邏輯門。盡管容量很小弦聂,XC2064 晶片的尺寸卻非常大鸟辅,比當(dāng)時(shí)的微處理器還要大;而且采用 2.5 微米工藝技術(shù)勉強(qiáng)能制造出這種器件。但隨著IC制造工藝的發(fā)展莺葫,F(xiàn)PGA也迅速發(fā)展匪凉,資源爆炸式增長(zhǎng),ZYNQ系列的Z-7100的邏輯單元已經(jīng)到了444k捺檬。

與FPGA同為PLD的還有CPLD再层,CPLD(Complex Programmable Logic Device),復(fù)雜可編程邏輯器件。CPLD由可編程邏輯的功能圍繞一個(gè)可編程互連矩陣構(gòu)成,由固定長(zhǎng)度的金屬線實(shí)現(xiàn)邏輯單元之間的互連聂受,并增加了I/O控制模塊的數(shù)量和功能蒿秦。

FPGA由可編程邏輯塊(CLB),輸入/輸出模塊(IOB)及可編程互連資源(PIR)等三種可編程電路和一個(gè)SRAM結(jié)構(gòu)的配置存儲(chǔ)單元組成蛋济。CLB是實(shí)現(xiàn)邏輯功能的基本單元棍鳖,他們通常規(guī)則排列成一個(gè)陣列,散布于整個(gè)芯片中碗旅《纱Γ可編程輸入/輸出模塊(IOB)主要完成芯片上的邏輯與外部引腳的接口,它通常排列在芯片的四周祟辟∫教保可編程互連資源(PIR)包括各種長(zhǎng)度的連線線段和一些可編程鏈接開(kāi)關(guān),他們將各個(gè)CLB之間或CLB與IOB之間以及IOB之間連接起來(lái)旧困,構(gòu)成特定功能的電路醇份。

? CPLD的基本結(jié)構(gòu)可看成由可編程邏輯陣列(LAB),可編程I/O控制模塊和可編程內(nèi)部連線(PIA)等三部分組成叮喳。

? 可編程邏輯陣列(LAB):由若干個(gè)可編程邏輯宏單元(Logic Macro Cell被芳,LMC)組成,LMC主要包括與陣列馍悟、或陣列畔濒、可編程觸發(fā)器和多路選擇器等電路,能獨(dú)立地配置為時(shí)序或組合工作方式锣咒。

?CLB主要由邏輯函數(shù)發(fā)生器侵状,觸發(fā)器,數(shù)據(jù)選擇器等電路組成毅整。邏輯函數(shù)發(fā)生器主要由查找表(Look Up Table)構(gòu)成趣兄。

? 查找表LUT實(shí)質(zhì)上是一個(gè)RAM,當(dāng)用戶描述了一個(gè)邏輯電路后悼嫉,軟件會(huì)計(jì)算所有可能的結(jié)果艇潭,并寫入RAM。每一個(gè)信號(hào)進(jìn)行邏輯運(yùn)算戏蔑,就等于輸入一個(gè)地址進(jìn)行查表蹋凝,找出地址對(duì)應(yīng)的內(nèi)容,輸出結(jié)果总棵。這樣也大大加快了FPGA的運(yùn)算速度鳍寂。


FPGA和CPLD的區(qū)別主要有以下幾點(diǎn):

(1) FPGA采用SRAM進(jìn)行功能配置,可重復(fù)編程情龄,但系統(tǒng)掉電后迄汛,SRAM中的數(shù)據(jù)丟失捍壤,因此,需要在FPGA外加EPROM鞍爱,將配置數(shù)據(jù)寫入其中鹃觉,系統(tǒng)每次上電自動(dòng)將數(shù)據(jù)引入SRAM中。CPLD器件一般采用EEPROM存儲(chǔ)技術(shù)硬霍,可重復(fù)編程帜慢,并且系統(tǒng)掉電后,EEPROM中的數(shù)據(jù)不會(huì)丟失唯卖,適用于數(shù)據(jù)的保密粱玲。

(2)FPGA器件含有豐富的觸發(fā)器資源,易于實(shí)現(xiàn)時(shí)序邏輯拜轨,如果要求實(shí)現(xiàn)較復(fù)雜的組合電路抽减,則需要幾個(gè)CLB結(jié)合起來(lái)實(shí)現(xiàn)。CPLD的與或陣列結(jié)構(gòu)橄碾,更適用于實(shí)現(xiàn)大規(guī)模組合功能卵沉,但觸發(fā)器資源相對(duì)較少。

(3)FPGA是細(xì)顆粒度結(jié)構(gòu)法牲,CPLD是粗粒度結(jié)構(gòu)史汗。FPGA內(nèi)部有豐富連線資源,CLB分塊較小拒垃,芯片利用率高停撞。CPLD宏單元的與或陣列較大,通常不能完全被應(yīng)用悼瓮,且宏單元之間的主要通過(guò)高速數(shù)據(jù)通道連接戈毒,其容量有限,限制了器件的靈活布線横堡,因此埋市,CPLD利用率較FPGA器件低。

(4)FPGA為非連續(xù)式布線命贴,CPLD為連續(xù)式布線道宅。FPGA器件每次編程時(shí)實(shí)現(xiàn)的邏輯功能一樣,但走的路線不同胸蛛,因此延時(shí)不易控制培己,即時(shí)序延遲不可預(yù)測(cè)。CPLD每次布線路徑一樣胚泌,消除了分段式互連結(jié)構(gòu)在定時(shí)上的差異,并在邏輯單元之間提供快速且具有固定延時(shí)的通路肃弟,CPLD的延時(shí)小玷室,且時(shí)序延遲可預(yù)測(cè)零蓉。CPLD比FPGA可工作在更高的頻率。


所以FPGA是什么穷缤?

It?can be?anything you want!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末敌蜂,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子津肛,更是在濱河造成了極大的恐慌章喉,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件身坐,死亡現(xiàn)場(chǎng)離奇詭異秸脱,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)部蛇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門摊唇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人涯鲁,你說(shuō)我怎么就攤上這事巷查。” “怎么了抹腿?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵岛请,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我警绩,道長(zhǎng)崇败,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任房蝉,我火速辦了婚禮僚匆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘搭幻。我一直安慰自己咧擂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布檀蹋。 她就那樣靜靜地躺著松申,像睡著了一般。 火紅的嫁衣襯著肌膚如雪俯逾。 梳的紋絲不亂的頭發(fā)上贸桶,一...
    開(kāi)封第一講書(shū)人閱讀 49,749評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音桌肴,去河邊找鬼皇筛。 笑死,一個(gè)胖子當(dāng)著我的面吹牛坠七,可吹牛的內(nèi)容都是我干的水醋。 我是一名探鬼主播旗笔,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼拄踪!你這毒婦竟也來(lái)了蝇恶?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤惶桐,失蹤者是張志新(化名)和其女友劉穎撮弧,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體姚糊,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡贿衍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了叛拷。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片舌厨。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖忿薇,靈堂內(nèi)的尸體忽然破棺而出裙椭,到底是詐尸還是另有隱情,我是刑警寧澤署浩,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布揉燃,位于F島的核電站,受9級(jí)特大地震影響筋栋,放射性物質(zhì)發(fā)生泄漏炊汤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一弊攘、第九天 我趴在偏房一處隱蔽的房頂上張望抢腐。 院中可真熱鬧,春花似錦襟交、人聲如沸迈倍。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)啼染。三九已至,卻和暖如春焕梅,著一層夾襖步出監(jiān)牢的瞬間迹鹅,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工贞言, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留斜棚,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像弟蚀,于是被迫代替她去往敵國(guó)和親脂新。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容