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

        ?

        利用CPLD提高FPGA加載速度

        2013-12-30 09:48:52李春雨張麗霞
        電子器件 2013年4期
        關(guān)鍵詞:管腳字節(jié)寄存器

        李春雨,張麗霞

        (1.浙江機(jī)電職業(yè)技術(shù)學(xué)院電氣電子工程學(xué)院,杭州310053;2.諾基亞西門子通信有限公司,杭州310053)

        現(xiàn)場可編程門陣列FPGA常用來進(jìn)行大數(shù)據(jù)量的處理,并且可以根據(jù)設(shè)計的需要靈活實(shí)現(xiàn)各種接口或者總線的輸出,在設(shè)備端的通信產(chǎn)品中使用越來越廣泛[1]。FPGA是基于SRAM結(jié)構(gòu)的,每次上電時都需要重新加載程序,且隨著FPGA規(guī)模的升級,加載程序的容量也越來越大,因此提高其加載速度是產(chǎn)品設(shè)計必須妥善解決的一個問題。本文介紹了通過CPLD對FPGA的加載方式的串行改進(jìn)方式,滿足通信系統(tǒng)的加載速度快,占用資源少的要求。并用Verilog HDL實(shí)現(xiàn),在Modelsim中進(jìn)行仿真和驗(yàn)證結(jié)果,在自行設(shè)計的時鐘板上驗(yàn)證通過,而且可以擴(kuò)展到所有類似系統(tǒng)中[2]。

        1 配置方式介紹

        FPGA的加載配置,大部分是將配置數(shù)據(jù)存放在FPGA組成系統(tǒng)的存儲器件上,系統(tǒng)上電時由控制器讀出配置數(shù)據(jù)再傳送給FPGA進(jìn)行配置[3]。

        FPGA的配置方式最常用的有JTAG,從并,從串[4]3種,不同廠家叫法不同,但實(shí)現(xiàn)方式基本都是一樣的。單板調(diào)試階段常用JTAG模式,單板正式工作時通常采用從串或者從并方式。從并和從串模式各有優(yōu)點(diǎn),從并加載模式一個DCLK傳送一個字節(jié)(8 bit),因此速度快,但是占用FPGA管腳多,以Altera公司CycloneⅢ系列為例,從并模式(FPP)占用23個FPGA專用管腳,且這些管腳在不同的邏輯Bank內(nèi),當(dāng)各Bank之間接口電平不同時,即連接到控制器的23個管腳電平就要各不相同,對控制器來說通常是難以實(shí)現(xiàn)的,在這種情況下從串就成為唯一的選擇。

        以Altera公司CycloneⅢ系列FPGA為例,與從串加載相關(guān)的管腳見表1[5]。

        表1

        加載流程圖如圖1所示。

        圖1 CycloneⅢ從串加載流程

        各種型號的FPGA從串加載英文名稱雖然有些差異,但是加載流程基本如圖1,每種型號的FPGA配置文件大小是固定的,和使用的邏輯資源多少無關(guān),以CycloneⅢ系列的EP3C120為例,其大小是14.3 Mbit[5]。

        2 從串加載方式的實(shí)現(xiàn)

        2.1 以CPU作為FPGA加載控制器

        CPU可以采用嵌入式微處理器[6]的GPIO口和FPGA的加載配置接口連接,框圖如圖2所示。

        其缺點(diǎn)是DCLK也要由CPU GPIO口模擬,GPIO口的速度較慢,以RMI公司的XLS408為例,GPIO口模擬最大時鐘2 MHz,如前面說EP3C120配置文件14.3 Mbit,加載時間為7.15 s。如果基于主頻較低的ARM7處理器,對于CycloneⅡ系列中的EP2C35,配置文件大小 1.16 Mbyte,加載時間需要 1.5 min 30 s[7],對于時間比較敏感的通信產(chǎn)品來說,用戶的體驗(yàn)就會很差,通常該加載時間要求小于2 s。

        圖2 XLS408從串加載流程

        3 基于CPLD作為FPGA加載控制器的改進(jìn)方案

        3.1 改進(jìn)方案介紹

        采用基于DDR顆粒的CPLD作為控制器的方案,CPLD的IO管腳都可以約束到時鐘信號上,只要CPLD內(nèi)部的布線資源足夠,輸出的加載時鐘可以跑到上百兆,寫入CPLD的數(shù)據(jù)采用并行接口,大大提高FPGA加載速度。加載方案如下:

        圖3 基于CPLD加載數(shù)據(jù)流向圖

        本方案中CPU采用RMI公司的XLS408,CPLD采用 Lattice公司的 LCMXO1200,F(xiàn)PGA采用ALTERA公司的 CycloneⅢ EP3C120,DDR采用9片Hynix DDR2顆粒。

        1號線表示,CPU通過16 bit localbus總線讀取存儲在Flash里的FPGA文件,并搬運(yùn)到DDR里,這一步可以在加載前先做,不占用加載時間。

        2號線表示,CPU讀取DDR數(shù)據(jù)搬移到CPU內(nèi)部緩存中,DDR接口速度較快,DDR2時鐘266 MHz,數(shù)據(jù)位寬64 bit,幾乎不占用加載時間。

        3號線表示,CPU通過8 bit localbus總線寫到CPLD內(nèi)部寄存器,而localbus總線是異歩并行總線,以MIPS系列CPU XLS408為例,XLS408工作時鐘66.7 MHz,寫總線周期最快需要10個工作時鐘周期,即6.67 MHz,這一步受localbus總線速度限制。

        4號線表示通過CPLD和FPGA之間的串行接口,寫加載配置數(shù)據(jù)到FPGA中,寫FPGA的速度決定于串行接口的DCLK頻率。

        本方案的優(yōu)點(diǎn),1,2兩條路徑可以在加載之前處理,且運(yùn)行速度快,不占用加載時間。加載時間只受3,4步限制,3步是并行總線,位寬8 bit,速度相對串行總線已經(jīng)大為提高,4步受限點(diǎn)是CPLD輸出的DCLK頻率限制,CPLD輸出時鐘可以高達(dá)上百兆,加載時間會大為縮短。

        3.2 程序?qū)崿F(xiàn)

        CPLD 程序采用 Verilog[8]語言實(shí)現(xiàn),該加載模塊接口定義如下:

        程序?qū)崿F(xiàn)流圖如圖4所示。

        DCLK和FPGA加載串行數(shù)據(jù)輸出部分代碼如下:

        在FPGA加載環(huán)節(jié),CPU通過8 bit的Localbus總線先是寫CPLD數(shù)據(jù)寄存器,一字節(jié)寫完后,CPU會將標(biāo)志寄存器cpu_cpld_flag翻轉(zhuǎn),CPLD檢測到寄存器cpu_cpld_flag的雙沿變化后,計數(shù)器cnt_fpga_prog[4:0]開始計數(shù),其中 cnt_fpga_prog[0]是 CPLD工作時鐘的二分頻,該時鐘送給FPGA加載接口,做為DCLK,利用cnt_fpga_prog[3:1]的變化范圍實(shí)現(xiàn)并行數(shù)據(jù)到數(shù)據(jù)的變化,因?yàn)槎际峭ㄟ^同一計數(shù)器實(shí)現(xiàn),因此能方便的實(shí)現(xiàn)數(shù)據(jù)和DCLK的同步,當(dāng)cnt_fpga_prog[4]計數(shù)到1 后,cnt_fpga_prog[4]上升沿有效,代表一字節(jié)數(shù)據(jù)已經(jīng)成功加載到FPGA,CPU就開始通過localbus總線寫下一字節(jié)數(shù)據(jù)。

        圖4 基于CPLD從串加載FPGA的程序流程圖

        圖5 程序仿真波形

        4 仿真及改進(jìn)結(jié)果分析

        基于modelsim 6.5SE仿真波形如圖5所示。

        由上面波形可以看出CPU每加載一字節(jié)數(shù)據(jù)需要寫兩次CPLD寄存器,一次寫加載數(shù)據(jù),一次寫標(biāo)志寄存器,讀一次CPLD寄存器,讀cnt_fpga_prog[4]上升沿,共3個localbus總線周期,localbus頻率最快6.67 MHz。因此 CPU加載 14.3 Mbit,亦即1.787 5 Mbyte數(shù)據(jù)到CPLD共需時間:

        CPLD需要8個DCLK周期寫一字節(jié)數(shù)據(jù)到FPGA,CPLD工作時鐘33M時,DCLK 16.7 MHz,因此加載14.3 Mbit數(shù)據(jù)到FPGA,共需時間:

        因此當(dāng)FPGA使用EP3C120時,采用基于CPLD的從串加載方式,共需要加載時間1.65 s,滿足通信產(chǎn)品FPGA加載時間小于2 s的要求。

        從上述分析可以得出結(jié)論,如果提高CPLD的工作時鐘,CPLD加載FPGA的時間就會進(jìn)一步縮短,當(dāng)CPLD工作時鐘100 MHz時,DCLK達(dá)到50 MHz,CPLD加載配置數(shù)據(jù)到FPGA時間可以縮短到0.29 s,加載速度會更快。

        5 結(jié)束語

        使用基于 CPLD的 FPGA加載方案,相對于CPU直接加載方案,加載時間只有原先的十分之一,且有進(jìn)一步提高空間,滿足通信系統(tǒng)快速啟動的要求,且該方案并不局限于本文所提到的器件,可以應(yīng)用于各廠家的FPGA中,具有很高的實(shí)用價值。

        [1]關(guān)珊珊,周潔敏.基于Xilinx FPGA的SPI Flash控制器設(shè)計與驗(yàn)證[J].電子器件,2012,35(2):216-220.

        [2]王小峰,周吉鵬.一種FPGA在線配置Flash的方法[J].電子器件,2006,29(3):902-904.

        [3]董宏成,魏楊.基于ARM和NAND Flash的FPGA加載配置在TD—LTE 中的實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2012,38(07):26-30.

        [4]Xilinx,Spartan3e,Xapp502,Using a Microprocessor to Configure Xilinx FPGAs via Slave Serial or SelectMAP Mode[S].2009.

        [5]Altera,cyclone Ⅲ,Configuration altera FPGAs[S].2010.

        [6]葛立明,范多旺,陳光武.基于ARM的FPGA加載配置實(shí)現(xiàn)[J].微計算機(jī)信息,2007,1(2):244-245.

        [7]胡啟道,張福洪,戴紹港.基于MCU的FPGA在線配置[J].電子器件,2007,30(3):1049-1056.

        [8]王靜霞.FPGA/CPLD應(yīng)用技術(shù)(Verilog語言版)[M].北京:電子工業(yè)出版社,2011.

        猜你喜歡
        管腳字節(jié)寄存器
        No.8 字節(jié)跳動將推出獨(dú)立出口電商APP
        Lite寄存器模型的設(shè)計與實(shí)現(xiàn)
        No.10 “字節(jié)跳動手機(jī)”要來了?
        簡談MC7字節(jié)碼
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        基于圖像處理的異型電子元器件管腳偏移誤差檢測方法研究
        CMOS數(shù)字IC管腳電容的估算與測量
        HC08芯片JVT測試方法的探究
        電子測試(2013年22期)2013-09-26 06:03:52
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
        一種可重構(gòu)線性反饋移位寄存器設(shè)計
        国产女人的高潮国语对白| 久久国产亚洲av高清色 | 国产特级毛片aaaaaa高清| 人妻少妇不满足中文字幕| 亚洲青青草视频在线播放| 国产自拍成人在线免费视频| 人妻免费一区二区三区免费| 情人伊人久久综合亚洲 | 少妇高潮紧爽免费观看| 精品少妇一区二区三区入口| 亚洲中文无码av永久| 无码尹人久久相蕉无码| 国产女精品视频网站免费| 99热高清亚洲无码| 日本在线免费不卡一区二区三区| av在线免费观看蜜桃| 亚洲色欲色欲大片www无码| 亚洲va欧美va国产综合| 日本一区二区三区啪啪| 特级国产一区二区三区| 人成午夜大片免费视频77777| а√资源新版在线天堂| 亚洲av中文无码乱人伦在线视色| 无码av天堂一区二区三区| 最好看2019高清中文字幕视频| 日本高清中文一区二区三区| 久久精品亚洲94久久精品| 亚州国产av一区二区三区伊在| 毛片24种姿势无遮无拦| 国产成人久久精品亚洲小说| 国产精品日本一区二区三区在线| 桃红色精品国产亚洲av| 久久精品黄aa片一区二区三区| 亚洲国产成人久久综合电影| 蜜桃一区二区三区在线看| 九九日本黄色精品视频| 国产一区二区三区亚洲| 亚洲精品无码专区在线在线播放| 97se亚洲国产综合自在线| 国产在视频线精品视频二代 | 国产精品国产三级厂七|