亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        CPLD加Flash在線升級(jí)及配置FPGA

        2016-06-16 01:33:36劉光文李淯陽重慶金美通信有限責(zé)任公司重慶400030
        微處理機(jī) 2016年2期
        關(guān)鍵詞:配置嵌入式處理器

        劉光文,李淯陽,成 亮(重慶金美通信有限責(zé)任公司,重慶 400030)

        ?

        CPLD加Flash在線升級(jí)及配置FPGA

        劉光文,李淯陽,成 亮
        (重慶金美通信有限責(zé)任公司,重慶400030)

        摘 要:基于Xilinx公司的Vertext4 FPGA嵌入式系統(tǒng)采用Flash作為BootLoader以及操作系統(tǒng)目標(biāo)文件的存儲(chǔ)介質(zhì)。如果將FPGA的目標(biāo)文件通過以太網(wǎng)接口發(fā)送給處理器,處理器接收到FPGA的目標(biāo)文件后將其存儲(chǔ)到Flash的空閑空間,然后利用CPLD模擬產(chǎn)生配置時(shí)序,將Flash中的FPGA目標(biāo)文件按相應(yīng)的時(shí)序送給FPGA配置管腳,即可實(shí)現(xiàn)FPGA的上電配置。其優(yōu)勢(shì)在于省去了專用的配置PROM,并且能夠完美地支持FPGA目標(biāo)文件在線升級(jí)。實(shí)踐證明,該方法具有很強(qiáng)的通用性,在嵌入式系統(tǒng)中具有很強(qiáng)的實(shí)用價(jià)值。

        關(guān)鍵詞:嵌入式;系統(tǒng);配置;處理器;目標(biāo)文件;在線升級(jí)

        1 引 言

        基于FPGA的嵌入式系統(tǒng)技術(shù)已經(jīng)得到了廣泛、深入的應(yīng)用,包括工業(yè)控制領(lǐng)域、網(wǎng)絡(luò)應(yīng)用、消費(fèi)類電子產(chǎn)品、成像和安全產(chǎn)品等領(lǐng)域。

        目前大規(guī)模FPGA均通過把設(shè)計(jì)生成的目標(biāo)文件配置到芯片內(nèi)部的SRAM完成其邏輯功能,具有可重復(fù)編程性,可靈活實(shí)現(xiàn)各種邏輯功能,F(xiàn)PGA的這種特性使其在現(xiàn)代電子系統(tǒng)設(shè)計(jì)中得到了廣泛應(yīng)用。但基于SRAM工藝的FPGA是易失性的,系統(tǒng)掉電后SRAM內(nèi)的數(shù)據(jù)將全部丟失,需要外接ROM保存其配置數(shù)據(jù),系統(tǒng)每次上電時(shí)必須重新配置數(shù)據(jù)才能正常工作。通常設(shè)計(jì)時(shí)采用兩種方案保存FPGA的目標(biāo)文件,一是使用專用的PROM,如Xilinx公司的XCFxx系列PROM來提供FPGA的配置時(shí)序[1],上電時(shí)自動(dòng)加載PROM中的目標(biāo)文件到FPGA的SRAM中;另一種是在含有微控制器的嵌入式系統(tǒng)中,采用其他非易失性存儲(chǔ)器來存儲(chǔ)目標(biāo)文件,如EEPROM、Flash等,使用CPLD模擬FPGA的配置時(shí)序?qū)OM中的目標(biāo)文件置入FPGA中。與前面一種方案相比,后者成本更低,并且可完美支持在線升級(jí)。

        2 配置原理

        2.1主串配置原理

        Xilinx公司的Vertext4系列FPGA采用90nm工藝的,該芯片具有高性能、低功耗、可無限次編程等特點(diǎn),并且內(nèi)部嵌入了IBM公司的高性能PPC405 (Power PC)硬核處理器[2],可完美支持Vxworks操作系統(tǒng)[3]。芯片支持從串、主串、從并、主并、JTAG等方式進(jìn)行配置[4],與主串配置相關(guān)的引腳功能及配置如下:

        (1)M[2:0]:配置模式選擇。M2,M1,M0均接下拉電阻,即M[2:0]=000時(shí)為主串模式。

        (2)CCLK:配置時(shí)鐘,由被配置FPGA提供時(shí)鐘信號(hào),上升沿有效。

        (3)DIN:串行數(shù)據(jù)輸入位。

        (4)PROG_B:低電平異步復(fù)位FPGA內(nèi)部邏輯位。內(nèi)部配置邏輯復(fù)位后,等該引腳為高電平時(shí)才能配置FPGA。

        (5)INIT_B:由低電平到高電平跳變時(shí),采樣配置模式選擇管腳M[2:0],確定配置模式;配置過程中若出現(xiàn)配置錯(cuò)誤,INIT_B將呈現(xiàn)低電平。

        (6)DONE:復(fù)位及配置過程中為低電平,配置成功后為高電平。

        2.2配置時(shí)序的捕獲及確認(rèn)

        Xilinx公司的目標(biāo)編程文件有“.bit”、“.bin”、“.mcs”等格式,其中.bit格式用作JTAG下載,其他2種格式用作專用PROM編程。系統(tǒng)產(chǎn)生配置文件時(shí)首先需生成專用PROM編程文件“.bin”文件,然后將該文件存儲(chǔ)到FLASH或PROM中。

        使用十六進(jìn)制編輯程序例如“UltraEdit”將“.bin”文件打開查看其內(nèi)容,可以發(fā)現(xiàn)其頭部是以0xFFFFFFFF和0xAA995566開始,如圖1所示。

        圖1 查看FPGA配置文件內(nèi)容

        為了確認(rèn)主串配置時(shí)是高位先發(fā)還是低位先發(fā),通過示波器捕獲配置時(shí)序,對(duì)比配置文件內(nèi)容,可以確認(rèn)使用的是高位先發(fā)順序。如圖2所示。

        圖2 串行數(shù)據(jù)為高位先發(fā)順序

        2.3在線升級(jí)原理

        設(shè)計(jì)首先需要在嵌入式系統(tǒng)的軟件程序中加入FTP服務(wù)器功能,對(duì)于使用VxWorks操作系統(tǒng)的嵌入式系統(tǒng)來說只需勾選相應(yīng)的FTP服務(wù)器組件即可實(shí)現(xiàn)。然后使用計(jì)算機(jī)登入嵌入式系統(tǒng)的FTP服務(wù)器,將FPGA的目標(biāo)文件按特定名稱上傳到FTP服務(wù)器。FTP服務(wù)器在檢測(cè)到特定名稱的文件后會(huì)通知處理器處理該文件,處理器隨即開始讀取該文件并將文件寫入到Flash中指定的區(qū)域,寫入后刪除該文件,結(jié)束本次升級(jí),為下一次在線升級(jí)做好準(zhǔn)備[5]。

        3 功能實(shí)現(xiàn)

        3.1硬件框圖

        硬件上總體分為3個(gè)部分:Flash芯片、CPLD芯片及FPGA主芯片。Flash采用的是2片Intel公司的16位寬、16Mbyte容量的TE28F128J3C芯片[6],共同組成32位寬、32Mbyte容量的存儲(chǔ)器;CPLD采用Xilinx公司的XC95144芯片[7];FPGA使用了Xilinx公司的XC4VFX60芯片。具體硬件框圖如圖3所示。

        圖3 硬件整體框圖

        3.2CPLD實(shí)現(xiàn)流程

        CPLD配置FPGA的邏輯流程如下:

        (1)系統(tǒng)上電后,CPLD將PROG_B置為低電平,復(fù)位FPGA內(nèi)部邏輯重新配置FPGA,延時(shí)100μs充分復(fù)位內(nèi)部邏輯后,再將PROG_B置為高電平。

        (2)將PROG_B置高電平大于300ns后,F(xiàn)PGA會(huì)將INIT_B置為高電平,CPLD采樣到INIT_B變?yōu)楦唠娖胶?,CPLD根據(jù)FPGA送來的配置時(shí)鐘CCLK的上升沿串行地將配置數(shù)據(jù)送給FPGA,在CCLK的每個(gè)上升沿,都有1個(gè)Bit的數(shù)據(jù)被傳遞給DIN。

        (3)32個(gè)CCLK時(shí)鐘后,CPLD將Flash地址加1,然后將Flash數(shù)據(jù)線上的數(shù)據(jù)采樣加載到內(nèi)部移位寄存器;然后再使用32個(gè)CCLK時(shí)鐘周期將移位寄存器內(nèi)的數(shù)據(jù)串行地傳遞給DIN,然后再將Flash地址加1,一直循環(huán)。

        (4)所有配置數(shù)據(jù)傳送完成,CRC校驗(yàn)無誤,則DONE呈現(xiàn)高電平,否則為低電平。

        (5)CPLD采樣到DONE為高后,立即釋放Flash控制信號(hào),進(jìn)入等待狀態(tài)。FPGA則釋放全局三態(tài)(GTS),激活I(lǐng)O管腳,釋放全部置位復(fù)位(GSR)和全局寫使能(GWE)有效,開始執(zhí)行配置區(qū)里的邏輯,如果FPGA要重新配置,可由CPLD再次將PROG_B拉低,則DONE信號(hào)會(huì)由高變低,重新進(jìn)入配置狀態(tài)。

        4 實(shí)驗(yàn)結(jié)果驗(yàn)證

        為了驗(yàn)證實(shí)驗(yàn)結(jié)果,在嵌入式系統(tǒng)正常運(yùn)行的情況下,使用1臺(tái)PC機(jī)作為FTP客戶端,通過以太網(wǎng)接口登錄嵌入式系統(tǒng)的FTP服務(wù)器,然后將FPGA目標(biāo)文件“a.bin”上傳到FTP服務(wù)器。處理器收到文件并解析出該文件后,將該文件從0地址開始寫入到Flash的底層空間,如圖4所示。

        圖4 在線升級(jí)示意圖

        CPLD程序也設(shè)計(jì)為從0地址開始加載FPGA目標(biāo)文件并配置FPGA。具體配置時(shí)序如圖5所示。

        圖5 CPLD配置FPGA的波形

        從圖5左邊部分可以看出,CPLD從0地址開始累加讀取Flash數(shù)據(jù),F(xiàn)lash前4個(gè)地址讀出的數(shù)據(jù)依次為0xFFFFFFFF、0xAA995566、0x20000000、0x30008001,然后并行數(shù)據(jù)被轉(zhuǎn)換為串行數(shù)據(jù)送到DIN。

        圖5右邊部分,可以看到地址已經(jīng)累加到0xA03C3,然后DONE信號(hào)變?yōu)楦唠娖?,CPLD在檢測(cè)到DONE信號(hào)為高電平后,完成配置過程,進(jìn)入等待狀態(tài)。

        5 結(jié)束語

        基于CPLD加FLASH的FPGA主串配置方案原理簡(jiǎn)單易行[8],雖然舉例是采用Xilinx公司Vertext4系列的XC4VFX60 FPGA,但稍加修改即可適用于其它系列的FPGA器件,具有很強(qiáng)的通用性和實(shí)用性。

        另外,F(xiàn)PGA具有可重復(fù)配置的靈活性,在嵌入式系統(tǒng)中可以通過串口、網(wǎng)口遠(yuǎn)程燒寫Flash重構(gòu)系統(tǒng)功能,這種在線重構(gòu)技術(shù),為設(shè)備的智能化在線維護(hù)、功能重組和在線升級(jí)等提供了可能,具有廣闊的應(yīng)用前景。

        參考文獻(xiàn):

        [1]XILINX:Platform Flash In-System Programmable Configuration PROMS[EB/OL].2004/www.xilinx.com.

        [2]XILINX:EDK PowerPC Tutorial Ver 3.0[EB/OL].2004/www.xilinx.com.

        [3]XILINX:Getting Started with EDK and Wind River VxWorks[EB/OL].2004/www.xilinx.com.

        [4]XILINX:Virtex-4 Configuration Guide[EB/OL].2004/www.xilinx.com.

        [5]胡啟道,張福洪,戴紹港.基于MCU的FPGA在線配置[J].電子器件,2007,30(3):1049-1056.Hu Qidao,Zhang Fuhong,Dai Shaogang.Online Configure FPGA Based on MCU[J].Electronic Devices,2007,30 (3):1049-1056.

        [6]Intel:Intel StrataFlash?Memory(J3)28F256J3,28F128J3,28F640J3,28F320J3(x8/x16)Datasheet [EB/OL].2004/http://www.intel.com.

        [7]XILINX:XC95144XLHighPerformanceCPLD [EB/OL].2007/www.xilinx.com.

        [8]王小峰,周吉鵬.一種FPGA在線配置flash的方法[J].電子器件,2006,29(3):902-904.Wang Xiaofeng,Zhou Jipeng.Online Configure flash by FPGA[J].Electronic Devices,2006,29(3):902-904.

        Online Update and Configure FPGA By CPLD and Flash

        Liu Guangwen,Li Yuyang,Cheng Liang
        (Chongqing Jinmei Communication Co.,Ltd.,Chongqing 400030,China)

        Abstract:The embedded system,based on Xilinx Vertext4 FPGA,usually uses Flash as storage medium to save BootLoader and operating system object file.If the FPGA object file is sent to processor via Ethernet port,it will be saved to free space in Flash by processor,and the CPLD generates a time sequence and sends the FPGA object file to FPGA through the pin configuration,then the power-on configuration is simulated and realized.It has advantage of saving a dedicated configuration PROM and supporting FPGA object file online updating perfectly.The practice proves that it is a universal solution and has lots of practical utility in embedded system.

        Key words:Embedded;System;Configuration;Processor;Object file;Online update

        DOI:10.3969/j.issn.1002-2279.2016.02.001

        中圖分類號(hào):TP317.4

        文獻(xiàn)標(biāo)識(shí)碼:A

        文章編號(hào):1002-2279(2016)02-0001-03

        作者簡(jiǎn)介:劉光文(1982-),男,四川省遂寧市人,助理工程師,學(xué)士,主研方向:FPGA邏輯設(shè)計(jì)、硬件電路設(shè)計(jì)。

        收稿日期:2015-05-29

        猜你喜歡
        配置嵌入式處理器
        搭建基于Qt的嵌入式開發(fā)平臺(tái)
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        世界主要國(guó)家軍民融合式發(fā)展財(cái)力資源配置的啟示
        商情(2016年39期)2016-11-21 10:03:22
        論高校網(wǎng)絡(luò)防火墻的配置與管理
        計(jì)算機(jī)Linux網(wǎng)絡(luò)操作系統(tǒng)特點(diǎn)及服務(wù)器配置研究
        試論人力資源配置及其作用與模式
        Imagination的ClearCallTM VoIP應(yīng)用現(xiàn)可支持Cavium的OCTEON? Ⅲ多核處理器
        ADI推出新一代SigmaDSP處理器
        汽車零部件(2014年1期)2014-09-21 11:41:11
        呼嚕處理器
        Altera加入嵌入式視覺聯(lián)盟
        午夜在线观看一区二区三区四区| 欧美性videos高清精品| 亚洲国产一区在线二区三区| 日韩av不卡一二三区| 中文字幕一区久久精品| 欧美狠狠入鲁的视频777色| 亚洲男人第一av网站| 亚洲A∨日韩Av最新在线| 日韩女优视频网站一区二区三区| 夜夜爽日日澡人人添| 亚洲色无码播放| 欧美日本国产亚洲网站免费一区二区| 精品国产三区在线观看| 精品乱人伦一区二区三区| 无码人妻品一区二区三区精99| 欧美高h视频| 高清不卡av一区二区| 老师露出两个奶球让我吃奶头| 日日摸夜夜添夜夜添无码免费视频 | 国产精品沙发午睡系列990531 | 欧美大肥婆大肥bbbbb| 无码毛片高潮一级一免费| 国产黄色一级到三级视频| 国产精品婷婷久久爽一下| 免费无码毛片一区二区三区a片| 亚洲午夜看片无码| 亚洲国产国语对白在线观看| 精品国产这么小也不放过| 亚洲av国产av综合av| 一片内射视频在线观看| 加勒比东京热中文字幕| 国产一区二区精品久久| 国产熟女精品一区二区三区| 久久综合五月天啪网亚洲精品| 色欲av伊人久久大香线蕉影院| 亚洲av无码资源在线观看| 中文字幕一区二区三区97| av日韩一区二区三区四区| 国内精品自在自线视频| 国产性一交一乱一伦一色一情| 全部亚洲国产一区二区|