SRAM-based Devices
大多數(shù)fpga都是基于SRAM配置單元的使用,這意味著它們可以被一次又一次地配置。這種編程技術(shù)的主要優(yōu)點(diǎn)是可以快速實(shí)現(xiàn)和測(cè)試新的設(shè)計(jì)思想。而不斷發(fā)展的標(biāo)準(zhǔn)和協(xié)議可以相對(duì)容易地適應(yīng)。此外,當(dāng)系統(tǒng)第一次通電時(shí),F(xiàn)PGA可以首先被編程來(lái)執(zhí)行一個(gè)功能,如自測(cè)或板/系統(tǒng)測(cè)試,然后它可以被重新編程來(lái)執(zhí)行其主要任務(wù)。
基于SRAM-based的FPGA還有另一個(gè)巨大優(yōu)勢(shì),那就是SRAM技術(shù)是當(dāng)前比較前沿的。由于當(dāng)今很多從事內(nèi)存開(kāi)發(fā)的技術(shù),內(nèi)存技術(shù)突飛猛進(jìn),F(xiàn)PGA開(kāi)發(fā)商正好可以利用這一點(diǎn)。同時(shí),SRAM單元與FPGA中其他的單元一樣是基于CMOS技術(shù),能更好的簡(jiǎn)化FPGA的本身的設(shè)計(jì)。
但不幸的是,天下沒(méi)有免費(fèi)的午餐。基于sram的FPGA的一個(gè)缺點(diǎn)是,每次系統(tǒng)啟動(dòng)時(shí)都必須重新配置。所以就需要一個(gè)特殊的外部存儲(chǔ)器,來(lái)使得FPGA能夠引導(dǎo)啟動(dòng)配置,這就增加了物料成本以及布局空間。另外一個(gè)更重要的問(wèn)題就是,基于這樣的啟動(dòng)方式,它并不能很好的保護(hù)FPGA的設(shè)計(jì)產(chǎn)權(quán)。而且,可以明確地說(shuō),全世界有很多專門從事逆向存儲(chǔ)器設(shè)計(jì)IP的公司。世界上并不存在不能破解的存儲(chǔ)器,只是看資金是否足夠。
好在就是,許多基于SRAM-based的FPGA開(kāi)始支持比特流加密,在這種情況下,最終的配置數(shù)據(jù)在存儲(chǔ)到外部存儲(chǔ)設(shè)備之前被加密。加密密鑰本身通過(guò)JTAG端口加載到FPGA中特殊的基于sram的寄存器中。這個(gè)密鑰與一些相關(guān)的邏輯一起,允許傳入的加密配置位流在被加載到設(shè)備時(shí)被解密。加載加密比特流的命令以及過(guò)程中會(huì)自動(dòng)禁用FPGA的讀回能力。這意味著通常在開(kāi)發(fā)期間使用未加密的配置數(shù)據(jù),然后在進(jìn)入生產(chǎn)階段時(shí)開(kāi)始使用加密的數(shù)據(jù)。
加密比特流方案的主要缺點(diǎn)是,當(dāng)系統(tǒng)斷電時(shí),電路板上需要電池備份來(lái)維護(hù)FPGA中加密密鑰寄存器的內(nèi)容。這種電池將有幾年或幾十年的使用壽命,因?yàn)樗恍枰贔PGA中維護(hù)一個(gè)寄存器,但它確實(shí)增加了電路板的尺寸、重量、復(fù)雜性和成本。
以Xilinx A7系列的FPGA來(lái)說(shuō),就是基于SRAM-based技術(shù)的FPGA。下圖為它的配置電路框圖:
需要配置一個(gè)SPI Flash,來(lái)實(shí)現(xiàn)FPGA的比特流配置。所以這篇文章就解釋了不同廠商的FPGA由于其架構(gòu),同時(shí)導(dǎo)致外圍配置電路不同的原因。
下一篇就介紹基于Antifuse-based 為架構(gòu)的FPGA。