• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      SSD系統(tǒng)中多級FPGA在線升級電路的設(shè)計與實現(xiàn)

      2013-04-29 13:47:55徐晶晶陳帥
      考試周刊 2013年72期
      關(guān)鍵詞:在線

      徐晶晶 陳帥

      摘 要: 為了解決多級FPGA在線自動升級與加載的技術(shù)難題,本文提出了利用其中一片F(xiàn)PGA實現(xiàn)自動更新的方案,設(shè)計了存儲系統(tǒng)的邏輯方案,主要功能有:PCI-E接口的橋、多級FPGA在線系統(tǒng)升級、NANDFLASH的讀寫等操作控制、DDR2的讀寫等操作控制及校驗與智能磨損平衡技術(shù)算法等,降低了硬件成本。

      關(guān)鍵詞: SSD FPGA 在線 升級電路

      1.引言

      目前,傳統(tǒng)的FPGA升級與加載方式主要有兩種[1]-[5]:一種是通過JTAG口直接加載配置文件到FPGA內(nèi)部的SRAM中,但是由于SRAM掉電后數(shù)據(jù)將丟失,因此在下次重新上電時,需要重新通過JTAG加載線進(jìn)行手動加載;另外一種是通過外置FLASH存儲器件,首先將加載文件燒錄到FLASH中,然后在每次上電時,利用FPGA的專用接口直接自動加載FLASH中的配置文件,克服第一種方法存在的每次上電都要手動加載的缺點(diǎn)[6]-[7]。對于單FPGA硬件系統(tǒng)來說,利用上述的第二種方法與網(wǎng)絡(luò)接口的聯(lián)合可以實現(xiàn)對單個FPGA的在線自動升級與加載,但是如果對于多級FPGA系統(tǒng)來說,為了保證下電后配置文件不丟失,采用上述第二種辦法則需要在每個FPGA的外圍都掛上一個NANDFLASH存儲器,才能保證重新上電后能夠自動加載,硬件成本較高。同時對FLASH中的配置文件的更新需要更多的外圍器件支持。

      本文利用一片F(xiàn)PGA并通過SPI接口與加載接口實施更新NORFLASH與其他四片F(xiàn)PGA加載的方案。設(shè)計了存儲系統(tǒng)的邏輯方案,采用MLC結(jié)構(gòu)的NANDFLASH顆粒作為存儲單元,使用多片F(xiàn)PGA器件作為整個系統(tǒng)的邏輯控制核心。邏輯部分主要功能有:PCI-E接口的橋、多級FPGA在線系統(tǒng)升級、NANDFLASH的讀寫等操作控制、DDR2的讀寫等操作控制,以及校驗與智能磨損平衡技術(shù)算法等,降低了硬件成本和系統(tǒng)復(fù)雜性。

      2.多級FPGA在線自動升級與加載方案的電路結(jié)構(gòu)

      設(shè)計如圖1所示的硬件系統(tǒng)的核心結(jié)構(gòu),由5片F(xiàn)PGA組成;其中的FPGA1采用xilinx公司的Virtex5系列的30T器件,內(nèi)部包含PCI-EXPRESS endpoint IP核,利用IP核構(gòu)成的總線節(jié)點(diǎn)實現(xiàn)FPGA1與內(nèi)存和CPU之間的通信。其他四片F(xiàn)PGA2采用xilinx公司的SPARTAN6系列的150T器件。首先通過PCIE的IP核接口實現(xiàn)從內(nèi)存中讀取到新的加載文件,然后再進(jìn)行并串的轉(zhuǎn)換,通過SPI接口控制模塊實現(xiàn)從SPI_NORFLASH中讀取數(shù)據(jù)與下發(fā)擦除、讀寫狀態(tài)寄存器等指令,更新了SPI_NORFLASH中的存儲的文件,存儲的文件內(nèi)容包括FPGA1與FPGA2的配置文件存放地址不同。為了保證在升級或者加載失敗時避免FPGA癱瘓,因此還需在FLASH空間里把上述兩個文件內(nèi)容實現(xiàn)備份,供發(fā)生意外所需。其次在SPI_NORFLASH文件更新成功后,F(xiàn)PGA1內(nèi)部通過一些控制模塊將SPI_NORFLASH中的數(shù)據(jù)讀出,然后進(jìn)行數(shù)據(jù)串并轉(zhuǎn)換與并串轉(zhuǎn)換,并將轉(zhuǎn)換后的數(shù)據(jù)按照SPARTAN6 150T的串行SLAVE加載模式,加載到其他4片F(xiàn)PGA中,從而實現(xiàn)整個5片F(xiàn)PGA的在線自動升級與加載。

      圖1 多級FPGA在線升級與加載方案

      3.多級FPGA在線自動升級與加載方案的模塊化實現(xiàn)

      在FPGA1內(nèi)部為了實現(xiàn)在線自動升級與加載的功能,特設(shè)計了以下幾個模塊,包括PCI-E IP核的包裝模塊,SPI接口控制器模塊SPI_CONTROLLER,以及對其他4片F(xiàn)PGA的加載控制模塊UPDATA_CONTROLLER,這3個部分共同組成了整個在線自動升級與加載的控制模塊如圖2所示。其中PCI-E ENDPIONT模塊主要是實現(xiàn)PCI-E IP所需要的各種接收與發(fā)送數(shù)據(jù)的時序與數(shù)據(jù)的封裝,包括TLP幀的封裝與解析并將數(shù)據(jù)傳送給SPI_CONTROLLER模塊。

      圖2 FPGA1內(nèi)部部分結(jié)構(gòu)框圖

      SPI_CONTROLLER模塊需要將接收到的數(shù)據(jù)處理后才能通過SPI接口燒錄到NORFLASH中。從總線上傳送下來的數(shù)據(jù)為32位比特,其中包括8比特命令碼和24比特的地址碼或者32比特全為數(shù)據(jù)或者32比特中前8位為指令碼,剩余24比特?zé)o效,等格式數(shù)據(jù)。由于外置的SPI_NORFLASH根據(jù)M25P128 FLASH器件的特點(diǎn),特設(shè)計了SPI_CONTROLLER模塊中的一些狀態(tài)機(jī),如圖3所示,根據(jù)接收到指令狀態(tài)機(jī)由空閑狀態(tài)轉(zhuǎn)移到解碼狀態(tài),分析出32位比特數(shù)據(jù)中前8位是具體指令。根據(jù)解碼后的分析并進(jìn)行相關(guān)狀態(tài),模塊內(nèi)的其他部分小模塊根據(jù)這些狀態(tài)產(chǎn)生相關(guān)的時序與數(shù)據(jù),待操作完成后,狀態(tài)機(jī)跳轉(zhuǎn)到操作完成等待狀態(tài),并隨后跳轉(zhuǎn)到空閑狀態(tài),從而完成整個操作流程,實現(xiàn)對外置NORFLASH的數(shù)據(jù)更新等其他操作。具體模塊內(nèi)部的狀態(tài)機(jī)轉(zhuǎn)換如下圖3所示:

      圖3 SPI控制模塊內(nèi)部狀態(tài)機(jī)

      其中操作完成中最主要的兩個操作是讀FLASH與寫FLASH,根據(jù)M25P128器件的特點(diǎn)及SPI接口的時序要求,因此所設(shè)計模塊中clk,spi_di,spi_do及片選信號滿足下面的時序要求,具體如圖4、圖5所示:

      圖4 SPI讀操作時序

      圖5 SPI寫操作時序

      本模塊加載過程中的狀態(tài)機(jī)為:首先進(jìn)入復(fù)位狀態(tài),然后判斷復(fù)位是否成功;通過啟動加載狀態(tài)直接進(jìn)入初始化狀態(tài);從發(fā)完讀加載數(shù)據(jù)指令后直接進(jìn)入等待讀取數(shù)據(jù)完成狀態(tài);開始加載后計入加載計時狀態(tài)如果加載成功則進(jìn)入空閑狀態(tài);最終無論加載成功與否都需要釋放SPI端口。在加載過程中,可以利用在加載部分文件期間同時讀取下一部分需加載的內(nèi)容,從而提高加載效率。

      4.仿真與調(diào)試

      上述的電路設(shè)計方案利用VERILOG語言編寫實現(xiàn),并通過NC-VERILOG仿真工具。首先進(jìn)行仿真驗證,在仿真結(jié)果正確的條件下,再進(jìn)行板級調(diào)試。仿真波形如下圖6所示:

      圖6 FPGA在線升級系統(tǒng)仿真波形

      5.結(jié)語

      通過上述設(shè)計的方案和模塊與最后的調(diào)試與完善,該方案已經(jīng)在SSD存儲卡產(chǎn)品中穩(wěn)定可靠地應(yīng)用于整個硬件核心FPGA系統(tǒng)中,實現(xiàn)在線自動升級與加載,很大程度上降低了維護(hù)的人力與物力成本,從而提高了產(chǎn)品的市場競爭力。

      參考文獻(xiàn):

      [1]魏書軍,劉振安,趙棣新,過雅南.VME總線在線“從串模式”配置FPGA的設(shè)計與實現(xiàn)[J].核電子學(xué)與探測技術(shù),2007,(05).

      [2]張煒,楊虎,張爾揚(yáng).一種靈活的實時FPGA數(shù)據(jù)配置方法[J].通信技術(shù),2003,(02).

      [3]李鵬,蘭巨龍.用CPLD和Flash實現(xiàn)FPGA配置[J].電子技術(shù)應(yīng)用,2006,(06).

      [4]彭冰,劉舒,黃振.基于共用總線的多片F(xiàn)PGA配置電路的設(shè)計與實現(xiàn)[J].中國新通信,2009,(05).

      [5]毛劍慧,黑勇,吳斌,喬樹山.一種新穎的多模式FPGA配置方案[J].微計算機(jī)信息,2008,(29).

      [6]蘇嵐,陳銘,鐘銳.FPGA被動串行配置方法在稅控機(jī)中的應(yīng)用[J].電子器件,2007,(02).

      [7]孫云峰,段哲民.基于微處理器系統(tǒng)的FPGA在線配置方法[J].微處理機(jī),2008,(05).

      猜你喜歡
      在線
      代表“在線”助力監(jiān)督
      浙江人大(2016年12期)2016-12-27 11:32:38
      綜合氣象業(yè)務(wù)在線培訓(xùn)考試系統(tǒng)設(shè)計
      在線檢測分析儀表的新型測量技術(shù)
      在線凝膠滲透色譜—?dú)庀嗌V—串聯(lián)質(zhì)譜聯(lián)用檢測煙葉中的農(nóng)藥殘留
      MOOC綜述與高校圖書館應(yīng)對策略
      科技視界(2015年25期)2015-09-01 17:10:31
      基于ASP.Net的實時用工呼叫平臺設(shè)計與實現(xiàn)
      东丽区| 徐闻县| 卢龙县| 甘孜县| 青田县| 佛教| 北海市| 健康| 井研县| 剑河县| 荔浦县| 遂溪县| 黔江区| 永康市| 嘉峪关市| 普安县| 永新县| 五家渠市| 美姑县| 桑植县| 勃利县| 车致| 封开县| 吐鲁番市| 四会市| 潜江市| 子洲县| 西和县| 万载县| 南部县| 嘉鱼县| 周口市| 巴林左旗| 桂东县| 正阳县| 公主岭市| 平舆县| 焦作市| 新河县| 承德县| 卓尼县|