国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

解讀FPGA設(shè)計(jì)的安全性

發(fā)布時(shí)間:2009-5-18 14:47    發(fā)布者:賈延安
關(guān)鍵詞: FPGA , 安全性
與開(kāi)發(fā)成本很高的ASIC相比,FPGA可重復(fù)編程的性能正受到系統(tǒng)設(shè)計(jì)者的青睞。此外, FPGA的性能和功能也越來(lái)越強(qiáng)大,包括32位軟處理器、SERDES、DSP塊和高性能的接口,F(xiàn)在的低成本FPGA甚至可以滿(mǎn)足大批量的應(yīng)用。設(shè)計(jì)人員采用FPGA能夠快速開(kāi)發(fā)產(chǎn)品,以應(yīng)對(duì)產(chǎn)品快速上市(市場(chǎng)要求縮短產(chǎn)品的開(kāi)發(fā)時(shí)間)和遠(yuǎn)程更新的需求。 但是,把器件生產(chǎn)、現(xiàn)場(chǎng)更新和固件遠(yuǎn)程重構(gòu)的工作外包可能會(huì)導(dǎo)致FPGA被復(fù)制、克隆或盜版。這對(duì)某些企業(yè)是個(gè)嚴(yán)重的問(wèn)題,因?yàn)橛行┧惴▽?duì)企業(yè)保持競(jìng)爭(zhēng)優(yōu)勢(shì)是必不可少的,而外包可能使這些算法被別人利用。因此,考慮FPGA設(shè)計(jì)的安全性是一件非常重要的事。
FPGA有兩種類(lèi)型 :基于SRAM、需要用外部引導(dǎo)器件配置的易失FPGA,以及將配置保存在內(nèi)存中因而不需要外部引導(dǎo)器件的非易失FPGA。基于SRAM的FPGA是易失器件。如果切斷電源,配置即被刪除,必須對(duì)器件進(jìn)行重新配置,然后器件才能工作。這類(lèi)器件可以用處理器或使用SPI或并行閃存通過(guò)JTAG端口編程。就安全性而言,它們是很脆弱的。一旦系統(tǒng)上電,盜版者就能輕而易舉地獲取FPGA的位流。Flash和反熔絲FPGA是非易失性的器件,它們上電后即可編程,無(wú)需使用任何外部存儲(chǔ)器。這些非易失器件擁有最高級(jí)別的安全性。但是,反熔絲FPGA受到兩個(gè)方面的制約: 1 )它們不能再次編程。2 )它們的性能和內(nèi)存容量有限。而Flash FPGA和SRAM FPGA是可以重復(fù)編程的。
盜版行為分為幾種類(lèi)型:“克隆”復(fù)制系統(tǒng)元件的行為,甚至不必知道內(nèi)部的邏輯。通過(guò)攔截FPGA的位流和復(fù)制配置,可以輕松地克隆一個(gè)低成本SRAMFPGA!澳嫦蚬こ獭毙枰斫釬PGA的邏輯功能,以便進(jìn)行修改以滿(mǎn)足盜版者的需要。盜版者可以分析無(wú)保護(hù)的位流以復(fù)制原先的設(shè)計(jì),或解剖器件分析其內(nèi)容。還有一個(gè)被廣泛使用的盜版手段是“生產(chǎn)超過(guò)客戶(hù)訂購(gòu)量的系統(tǒng)”,然后向市場(chǎng)出售多余的系統(tǒng),而專(zhuān)利持有者卻無(wú)法從中取得收益,沒(méi)有任何方法可以阻止不擇手段的分包商這樣做。最后一種盜版方法是“盜竊服務(wù)”,盜版者通過(guò)破解系統(tǒng)的安全設(shè)置來(lái)獲得特定的服務(wù),如收看衛(wèi)星電視節(jié)目。
打擊盜版可以采用多種安全措施,最簡(jiǎn)單的方法的是使用一個(gè)保密位,防止FPGA的配置數(shù)據(jù)被截獲。有了這個(gè)保密位,盜版者如果試圖讀取配置數(shù)據(jù),讀出的數(shù)據(jù)將全部為零。所有的FPGA都有這種類(lèi)型的保護(hù)。然而,如果引導(dǎo)文件位于器件的外部,相對(duì)就比較容易復(fù)制配置,標(biāo)準(zhǔn)的SRAM FPGA就是這種情況。如果配置數(shù)據(jù)是在器件內(nèi)部,如非易失FPGA ,保密位就會(huì)有很好的保密效果。
與反熔絲FPGA不同 ,SRAMFPGA和FlashFPGA是可重復(fù)編程的,它們?cè)试S用戶(hù)調(diào)整設(shè)計(jì)或賦予FPGA一個(gè)全新的功能。此外,現(xiàn)在甚至可以遠(yuǎn)程修改FPGA配置文件,從而修改系統(tǒng)。雖然重構(gòu)對(duì)某些應(yīng)用來(lái)說(shuō)是個(gè)優(yōu)點(diǎn),但它也可能成為一個(gè)安全隱患,因?yàn)楸I版者可能攔截并獲取新的碼流。不過(guò)這可以通過(guò)在傳輸時(shí)保護(hù)位流來(lái)解決。
雖然Flash FPGA比SRAM FPGA更安全 ,它們也有缺點(diǎn)。它們的密度和存儲(chǔ)容量有限,功能和I/O的速度也有限。
針對(duì)這些缺點(diǎn),萊迪思半導(dǎo)體公司已經(jīng)開(kāi)發(fā)出一種創(chuàng)新的技術(shù),它結(jié)合了以下兩種技術(shù)的優(yōu)點(diǎn):
* 性能和存儲(chǔ)器容量較大的低成本SRAM
* 可以?xún)?nèi)部存儲(chǔ)重構(gòu)數(shù)據(jù)的Flash
萊迪思獨(dú)特的flexiFLASH技術(shù),將SRAM和Flash整合在同一個(gè)FPGA中,可以同時(shí)實(shí)現(xiàn)以下幾個(gè)方面的優(yōu)點(diǎn):
* 位流配置
* 以最短的系統(tǒng)中斷時(shí)間進(jìn)行遠(yuǎn)程重新配置
* 數(shù)據(jù)保護(hù)和器件加鎖
復(fù)雜系統(tǒng)中的設(shè)計(jì)安全性
工程師正面臨著構(gòu)建日益復(fù)雜的系統(tǒng)的挑戰(zhàn)。

圖1  FPGA與微處理器相連的系統(tǒng)
圖1展示了一個(gè)FPGA與微處理器相連的系統(tǒng) 。微處理器通過(guò)一個(gè)外部PHY和一個(gè)集成在FPGA內(nèi)的MAC與以太網(wǎng)連接。與競(jìng)爭(zhēng)者的產(chǎn)品不同,這個(gè)微處理器中還包含用戶(hù)邏輯。FPGA通過(guò)一個(gè)Flash來(lái)配置。Flash和RAM中包含有微處理器的程序和系統(tǒng)的數(shù)據(jù)。如果系統(tǒng)需要更新,就通過(guò)以太網(wǎng)來(lái)發(fā)送數(shù)據(jù)。為了保護(hù)設(shè)計(jì),F(xiàn)PGA數(shù)據(jù)和位流都經(jīng)過(guò)了加密。但是,發(fā)送到微處理器的數(shù)據(jù)和指令未加擾,因此盜版者能夠查看此數(shù)據(jù)并加以復(fù)制。一種可能的解決辦法是在FPGA內(nèi)實(shí)現(xiàn)軟微處理器,它可以訪(fǎng)問(wèn)FPGA的內(nèi)部存儲(chǔ)器組,而從外部卻無(wú)法看到存儲(chǔ)器組。這些存儲(chǔ)器組可以用來(lái)存儲(chǔ)重要的算法和數(shù)據(jù)。

圖2  處理器集成在FPGA之中
圖2展示了同一個(gè)設(shè)計(jì),但處理器集成在FPGA之中。圖2中采用的軟微處理器是LatticeMico32 。設(shè)計(jì)師構(gòu)建了解擾器,因此加擾是機(jī)密的。使用解擾器允許加密的指令存儲(chǔ)在外部存儲(chǔ)器。為了加密位流,萊迪思為幾款FPGA提供了128位AES密鑰。

圖3  用128位AES密鑰保護(hù)設(shè)計(jì)
首先,工程師應(yīng)用萊迪思的軟件設(shè)計(jì)工具套件ispLEVER (7.0或更高版本)開(kāi)發(fā)FPGA代碼,完成綜合、映射、布局布線(xiàn)和仿真后,產(chǎn)生位流,經(jīng)最后驗(yàn)證后再用ispVM系統(tǒng)(萊迪思的編程工具)對(duì)電路板編程。當(dāng)設(shè)計(jì)師對(duì)系統(tǒng)的功能感到滿(mǎn)意時(shí),此時(shí)就要來(lái)做保護(hù)設(shè)計(jì)的工作。可以用萊迪思的ispLEVER工具或萊迪思的編程工具ispVM System對(duì)位流加密,用戶(hù)可選擇128位密鑰。編碼的位流可以是十六進(jìn)制(從0至F,不區(qū)分大小寫(xiě))或一個(gè)ASCII密鑰(可用所有字母數(shù)字字符和空格,大小寫(xiě)敏感),然后使用任何非加密的文件編碼將該位流加載到配置存儲(chǔ)器中。
現(xiàn)在密鑰應(yīng)該已經(jīng)保存在一個(gè)可編程存儲(chǔ)區(qū)。編程是通過(guò)器件的JTAG端口進(jìn)行。應(yīng)該注意到,用密鑰對(duì)位流加了密,現(xiàn)在只能通過(guò)加密的位流對(duì)FPGA進(jìn)行配置。用sysCONFIG接口或JTAG接口可以對(duì)萊迪思的FPGA進(jìn)行編程。該sysCONFIG接口可以讓用戶(hù)使用集中配置模式,或FlashSPI ,或以并行的方式使用并行配置模式重新輸入數(shù)據(jù)。符合IEEE 1149.1和IEEE1532標(biāo)準(zhǔn)的JTAG端口允許以突發(fā)位流(或快速編程)模式、或用1532模式對(duì)數(shù)據(jù)進(jìn)行編程。JTAG端口用來(lái)對(duì)器件中的AES128位密鑰編程。不需要用特別的模式來(lái)保存FPGA中的128位密鑰。
在萊迪思的FPGA中使用一個(gè)編碼位流可以防止器件的配置被重新讀取,但需要一些措施來(lái)確保配置能夠正確地運(yùn)作。位流未加密時(shí),F(xiàn)PGA執(zhí)行CRC操作。如果程序不正確,DONE信號(hào)保持在0,INITN變?yōu)? 。用戶(hù)仍然可以訪(fǎng)問(wèn)JTAG Usercode寄存器。對(duì)FPGA的位流譯碼時(shí),它存儲(chǔ)位流用戶(hù)碼,用來(lái)存放FPGA應(yīng)用程序的版本號(hào)。

圖4 加密位流的數(shù)據(jù)路徑
圖4展示了加密位流的數(shù)據(jù)路徑。當(dāng)數(shù)據(jù)進(jìn)入FPGA時(shí),解碼器讀引導(dǎo)程序,前面所有的數(shù)據(jù)被忽略。即使解碼器檢測(cè)到加密的文件,如果FPGA的密鑰未被編程,數(shù)據(jù)則被阻止,DONE信號(hào)保持在'0 ' (表示配置失。。如果密鑰已被編程,F(xiàn)PGA檢查引導(dǎo)程序,指出后面所有的數(shù)據(jù)應(yīng)通過(guò)解碼器。然后FPGA檢查標(biāo)準(zhǔn)引導(dǎo)程序,得知數(shù)據(jù)是否已被壓縮。如果數(shù)據(jù)沒(méi)有被壓縮,則將它直接發(fā)送到解碼單元。如果數(shù)據(jù)已壓縮,就先把它送到解壓縮引擎,然后再送到解碼單元。一旦通過(guò)CRC校驗(yàn),即對(duì)SRAM進(jìn)行編程。DONE位被激活時(shí),解壓縮和譯碼擎不工作,允許其它JTAG鏈元件接收配置數(shù)據(jù)。
萊迪思的經(jīng)濟(jì)型ECP2/MFPGA擁有位流加密功能,內(nèi)置閃存的非易失LatticeXP2 FPGA也有此功能。LatticeXP2FPGA把SRAM映射合并入同一塊芯片,設(shè)計(jì)和含有位流配置的Flash映射都在此芯片上工作。當(dāng)設(shè)計(jì)師重點(diǎn)關(guān)注電路板的面積和快速啟動(dòng)時(shí)間時(shí),這類(lèi)器件特別有用。
內(nèi)置閃存的FPGA
非易失FPGA提供額外的Flash保護(hù)安全功能,可以防止內(nèi)存因意外或未經(jīng)授權(quán)的操作被擦除或重新編程。Flash保護(hù)功能采用6?位密鑰。
對(duì)器件進(jìn)行刪除或重新編程時(shí), ispVM System會(huì)核查Flash是否被保護(hù)。如果是,就要求用戶(hù)輸入6?位密鑰,然后ispVM檢查這個(gè)密鑰是否與存儲(chǔ)在器件中的密鑰一致,如果一致就執(zhí)行操作。但是,如果丟失了密鑰,器件就再也不能被擦除了。
這些安全性措施不僅保護(hù)了用戶(hù)電路板上的設(shè)計(jì),而且也防止了試圖修改系統(tǒng)功能的盜版行為。這些功能還有助于遠(yuǎn)程的系統(tǒng)更新。萊迪思FPGA提供這一功能,使用戶(hù)可以通過(guò)對(duì)FPGA重復(fù)編程來(lái)更新他們的系統(tǒng),而不會(huì)中斷它與周?chē)穆?lián)系。此功能被稱(chēng)為T(mén)ransFR 。

圖5 用最短的中斷系統(tǒng)時(shí)間進(jìn)行遠(yuǎn)程更新
FPGA最值得注意的的特點(diǎn)是設(shè)計(jì)人員很容易對(duì)器件進(jìn)行重構(gòu)。但是,重構(gòu)通常意味著系統(tǒng)要中斷很長(zhǎng)時(shí)間。但是,萊迪思開(kāi)發(fā)的TransFR技術(shù)將重構(gòu)的影響降至最低。萊迪思的幾個(gè)FPGA系列都支持TransFR技術(shù),包括那些含有內(nèi)置閃存的器件,如MachXO 、LatticeXP和LatticeXP2,以及像LatticeECP2 /M那樣的SRAM FPGA。
TransFR是一種同時(shí)使用基本任務(wù)編程和邊界掃描單元的技術(shù);救蝿(wù)編程修改非易失存儲(chǔ)器的內(nèi)容(內(nèi)部的或外部的) ,以便使FPGA的SRAM部分繼續(xù)工作。萊迪思的FPGA擁有可以取樣和預(yù)加載的邊界掃描單元,可以在編程時(shí)控制FPGA的I/O。

  圖6  執(zhí)行TransFR的4個(gè)步驟
執(zhí)行TransFR的4個(gè)步驟:
1,進(jìn)行基本任務(wù)編程。系統(tǒng)對(duì)FPGA的非易失性存儲(chǔ)器再編程,但不會(huì)中斷SRAM的功能。
2,可以鎖定I/O的狀態(tài),用戶(hù)可以保持或預(yù)先確定I/O的狀態(tài)。在整個(gè)重新配置過(guò)程中,I/O的值保持不變,以防止系統(tǒng)被關(guān)閉。
3, 接著用JTAG命令把新的配置傳輸至非易失存儲(chǔ)器。一完成對(duì)SRAM就執(zhí)行全局復(fù)位,以便使該器件處于一個(gè)已知的狀態(tài)。然后釋放I/O的狀態(tài),并再次鎖定PLL。
4,釋放輸出,內(nèi)部邏輯停止對(duì)I/O的監(jiān)測(cè)。
要使用TransFR,需要用到ispLEVER開(kāi)發(fā)工具和ispVM。
用戶(hù)通過(guò)使用128位AES密鑰加密文件和LatticeTransFR技術(shù)完成了更新過(guò)程,但仍有可能因?yàn)橄到y(tǒng)本身的弱點(diǎn)或違法行為引發(fā)系統(tǒng)故障。雖然FPGA的位流是加密的,但是非法操作或傳輸中的錯(cuò)誤都可能損壞它,從而導(dǎo)致FPGA被阻塞,使系統(tǒng)無(wú)法正確地重啟。為了解決這個(gè)問(wèn)題,萊迪思推出了“雙引導(dǎo) ”功能。
雙引導(dǎo)配置
在配置存儲(chǔ)器中存儲(chǔ)兩個(gè)編程文件。

圖7   雙引導(dǎo)配置
激活PROGRAM引腳或啟動(dòng)JTAG刷新指令后,F(xiàn)PGA下載存儲(chǔ)在Sector 1的位流 。如果CRC出錯(cuò),F(xiàn)PGA自動(dòng)恢復(fù)到Sector0配置。Lattice XP2非易失FPGA也有此功能。該Flash元件擁有主動(dòng)配置,還有一個(gè)用來(lái)存放安全( “golden” )配置的SPIFlash。
萊迪思擁有許多能幫助設(shè)計(jì)人員保障設(shè)計(jì)安全的產(chǎn)品。Lattice ECP2/MFPGA是一款擁有128位AES密鑰的高安全性器件。這些經(jīng)濟(jì)的器件提供了大存儲(chǔ)容量(高達(dá)5.3 Mbit)、高速I(mǎi)/O和SERDES。非易失性L(fǎng)atticeXP2FPGA是市場(chǎng)上一款很獨(dú)特的器件,它有著極高的安全性。由于采用了FlexiFlash技術(shù),位流存儲(chǔ)在器件的Flash中,并由128位AES密鑰對(duì)它進(jìn)行保護(hù)。此外, TransFR更是保障了絕對(duì)安全的遠(yuǎn)程系統(tǒng)更新。
設(shè)計(jì)的安全性應(yīng)該是設(shè)計(jì)過(guò)程的一部分,而不是事后再去考慮。無(wú)論選擇了哪種技術(shù),最重要的是要防止設(shè)計(jì)被篡改,無(wú)論這個(gè)篡改行為是無(wú)意的還是非法的。
本文地址:http://m.qingdxww.cn/thread-2999-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專(zhuān)區(qū)
  • Chiptorials——如何使用ATECC608 TrustFLEX實(shí)現(xiàn)公鑰輪換
  • 無(wú)線(xiàn)充電基礎(chǔ)知識(shí)及應(yīng)用培訓(xùn)教程
  • Chiptorials ——使用ATECC608 TrustFLEX實(shí)現(xiàn)基本非對(duì)稱(chēng)身份驗(yàn)證
  • Chiptorials ——如何將CryptoAuthLib庫(kù)用于Microchip安全身份驗(yàn)證IC
  • 貿(mào)澤電子(Mouser)專(zhuān)區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产欧美精品一区二区三区四区 | 欧洲a级片 | 日日日夜夜夜夜 | 狠狠色丁香久久综合网 | 今野由爱毛片在线播放 | 国产一级特黄aa级特黄裸毛片 | 亚洲xxxxx| 久久鲁视频 | 欧美日韩在线视频专区免费 | 老师感受到它在你里面了吗app | 色狠狠狠色噜噜噜综合网 | 青青草原在线新免费 | 成片免费观看视频在线网 | 日韩一区二区视频 | 国产在线xvideos | 男人扒开女人下面狂躁的视频 | 欧乱色国产精品兔费视频 | 欧美大片日韩精品四虎影视 | 男男视频免费在线观看 | 91精品欧美成人 | 日本在线国产 | 久在草影院 | 4虎影院午夜在线观看 | 国自产在线精品免费 | 日本一区二区三区精品 | 手机看片成人 | 久久99国产精品成人 | 国产精品久久久久久吹潮 | 一区二区三区亚洲 | 国产草 | 国产色婷婷精品综合在线 | 国产伦久视频免费观看 视频 | 久久极品 | 日本在线视频一区二区三区 | 国产日韩网站 | 欧美精品一区在线看 | 欧美精品 在线播放 | 久久窝窝国产精品午夜看15 | 奶茶视频官网下载页 | 香蕉视频在线免费播放 | 成年女人免费毛片视频永久 |