0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用CPLD+FLASH方案的可重構(gòu)配置方法

電子設(shè)計(jì) ? 來(lái)源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-06-10 08:17 ? 次閱讀

基于軟件無(wú)線電的某機(jī)載多模式導(dǎo)航接收機(jī)能較好地解決導(dǎo)航體制不兼容對(duì)飛行保障區(qū)域的限制,但由于各體制信號(hào)差異較大,各自實(shí)現(xiàn)其硬件將相當(dāng)龐大,若對(duì)本系統(tǒng)中數(shù)字信號(hào)處理的核心FPGA芯片使用可重構(gòu)的配置方法,將導(dǎo)航接收機(jī)的多種模式以時(shí)分復(fù)用的方式得以實(shí)現(xiàn),可以重復(fù)利用FPGA的硬件資源,達(dá)到了縮小體積,減小功耗,增加靈活性和降低系統(tǒng)硬件復(fù)雜程度等目的。本系統(tǒng)中的核心器件是新一代高檔FPGA,適合于計(jì)算量大的數(shù)字信號(hào)處理,包含實(shí)現(xiàn)數(shù)字信號(hào)處理的DSP塊、數(shù)字鎖相環(huán)、硬件乘法器以及各種接口等多項(xiàng)技術(shù),支持遠(yuǎn)程更新,但其配置數(shù)據(jù)大,實(shí)現(xiàn)較為復(fù)雜。采用CPLD+FLASH方案,有效的解決了這一問(wèn)題。

1 FPGA及其可重構(gòu)技術(shù)簡(jiǎn)介

現(xiàn)代高速度FPGA運(yùn)行時(shí)需將其配置數(shù)據(jù)加載到內(nèi)部SDRAM中,改變SDRAM里面的數(shù)據(jù),可使FPGA實(shí)現(xiàn)不同的功能,即所謂的可重構(gòu)技術(shù)??芍貥?gòu)技術(shù)包括靜態(tài)系統(tǒng)重構(gòu)和動(dòng)態(tài)系統(tǒng)重構(gòu)。在FPGA處于工作狀態(tài)時(shí)對(duì)其部分配置數(shù)據(jù)進(jìn)行更改稱(chēng)為動(dòng)態(tài)配置,否則稱(chēng)為靜態(tài)配置。由于本系統(tǒng)在工作時(shí)需要改變整個(gè)FPGA功能,所以采用靜態(tài)配置。這種配置是完全的,它對(duì)整個(gè)FPGA的功能、參數(shù)完全更改,而且其引腳功能也被更改。

系統(tǒng)的關(guān)鍵部件為一片高檔密度FPGA EP2S30,其要求的一次配置數(shù)據(jù)達(dá)1.205MBytes,故其配置采用“Flash存儲(chǔ)器+CPLD主控器”的方案。

EP2S30支持5種配置方案,即AS(Active Serial)模式、PS(Passive Serial)模式、FPP(Fast Passive Parallel)模式、PPA(Passive parallel Asynchronous)模式和JTAG配置模式等。為縮短配置時(shí)間,本系統(tǒng)采用FPP模式,配置數(shù)據(jù)不壓縮,使各配置數(shù)據(jù)長(zhǎng)度一致,以便于分配Flash存儲(chǔ)空間,且只需要同數(shù)據(jù)率相同的時(shí)鐘信號(hào)。

2 可重構(gòu)系統(tǒng)硬件設(shè)計(jì)

2.1 芯片介紹

2.1.1 FPGA芯片

采用Altera公司StratixⅡ系列FPGA,具有多達(dá)33880個(gè)等價(jià)邏輯單元(LE)和13552個(gè)自適應(yīng)邏輯單元(ALM),支持可編程片上系統(tǒng)(SOPC),有多達(dá)1369Kbits片上RAM,支持NIOS嵌入式處理器,片上有多達(dá)16個(gè)DSP塊和64個(gè)18位×18位硬件乘法器以及6個(gè)PLL模塊,支持遠(yuǎn)程更新。其片內(nèi)資源完全可以實(shí)現(xiàn)系統(tǒng)所需的數(shù)字下變頻(DDC)、幅度調(diào)制與解調(diào)、方位和距離脈沖形成以及控制信號(hào)的產(chǎn)生等。但其配置數(shù)據(jù)達(dá)1.205MBytes,要完成多模式可重構(gòu)配置,其配置數(shù)據(jù)存儲(chǔ)器必須有足夠大的空間。

2.1.2 Flash芯片

為實(shí)現(xiàn)快速配置,綜合存儲(chǔ)容量、工作電壓以及等各方面的要求,F(xiàn)lash芯片選用AMD公司AM29LV065,其為8M×8bits Flash存儲(chǔ)器,內(nèi)部被分為128個(gè)64Kbytes扇區(qū),可以存儲(chǔ)6套配置方案數(shù)據(jù)。支持3.3V電壓讀寫(xiě)和擦除,支持扇區(qū)擦除和整片擦除,這一特性有利于實(shí)現(xiàn)某一配置數(shù)據(jù)單獨(dú)更改。地址不變時(shí)能自動(dòng)進(jìn)入休眠狀態(tài),將數(shù)據(jù)鎖存,從而減小功耗。

2.1.3 控制芯片

控制芯片采用Altera公司MAX7000AE系列CPLD EPM7064A,其具有ISP功能,為3.3V內(nèi)核,IO口靈活方便,避免了采用單片機(jī)作為控制芯片時(shí)IO口不夠用的問(wèn)題。

2.2 硬件連接

配置系統(tǒng)硬件連接如圖1所示。

采用CPLD+FLASH方案的可重構(gòu)配置方法

配置系統(tǒng)中配置主控制器EPM7064A是整個(gè)配置系統(tǒng)的核心,它在數(shù)據(jù)加載過(guò)程中與PC機(jī)通訊,產(chǎn)生Flash命令控制字并將配置數(shù)據(jù)寫(xiě)入Flash存儲(chǔ)器,同時(shí)對(duì)Flash存儲(chǔ)空間進(jìn)行自動(dòng)分配;在配置過(guò)程中根據(jù)系統(tǒng)的配置模式控制信號(hào)將Flash中的數(shù)據(jù)讀出并配置到FPGA中,同時(shí)完成FPGA配置所需的時(shí)序,并檢測(cè)FPGA的狀態(tài),若配置成功進(jìn)入休眠狀態(tài)以節(jié)省功耗,若配置不成功將對(duì)FPGA進(jìn)行復(fù)位并重新配置。

為簡(jiǎn)化CPLD的控制時(shí)序,便于對(duì)FPGA進(jìn)行自動(dòng)配置,將Flash的存儲(chǔ)空間按順序劃分為6個(gè)塊,分別存儲(chǔ)6個(gè)配置數(shù)據(jù)。每個(gè)塊包含20個(gè)扇區(qū),1.25MBytes存儲(chǔ)空間。

3 CPLD控制部分軟件設(shè)計(jì)與實(shí)現(xiàn)

3.1 EPM7064A的Verilog HDL描述

EPM7064A是整個(gè)配置電路的核心,它完成Flash配置數(shù)據(jù)的加載和配置時(shí)序的產(chǎn)生。按照由上至下的進(jìn)行設(shè)計(jì),將其分成三個(gè)主要功能模塊,即數(shù)據(jù)加載過(guò)程中與PC機(jī)通訊的UART模塊、寫(xiě)Flash時(shí)序產(chǎn)生模塊和配置時(shí)序產(chǎn)生模塊,分別由Verilog HDL硬件描述語(yǔ)言實(shí)現(xiàn)。

數(shù)據(jù)加載過(guò)程中,EPM7064A的UART模塊與PC機(jī)通訊,同時(shí)產(chǎn)生Flash編程控制字,將PC機(jī)送來(lái)的數(shù)據(jù)寫(xiě)入指定的塊。其主要工作過(guò)程是串口模塊接收到一個(gè)字節(jié)數(shù)據(jù)后,其DATARDY有效,觸發(fā)Flash寫(xiě)模塊先將三個(gè)控制字?jǐn)?shù)據(jù)AA、55、A0寫(xiě)入Flash,然后將接收到的數(shù)據(jù)寫(xiě)入Flash。寫(xiě)Flash仿真時(shí)序圖如圖2所示。

采用CPLD+FLASH方案的可重構(gòu)配置方法

數(shù)據(jù)讀取和配置時(shí)序模塊的主要程序代碼如下:

采用CPLD+FLASH方案的可重構(gòu)配置方法

程序代碼在QUARTUSⅡ6.0下的仿真時(shí)序如圖3所示。其簡(jiǎn)要工作過(guò)程是,外部conf_start信號(hào)啟動(dòng)一次配置,EPM7064A將nCONFIG和nSTATUS信號(hào)拉低,F(xiàn)PGA進(jìn)入復(fù)位狀態(tài),根據(jù)mode取得相應(yīng)的Flash初始地址,復(fù)位完成FPGA將nSTATUS釋放,延時(shí)大約100us后EPM7064開(kāi)始給FPGA提供時(shí)鐘和數(shù)據(jù),直到將配置數(shù)據(jù)全部寫(xiě)入FPGA,配置完成后FPGA將CONF_DONE釋放,表明配置完成,F(xiàn)PGA進(jìn)入初始化狀態(tài),經(jīng)過(guò)內(nèi)部初始化后,INIT_DONE變高,表明FPGA進(jìn)入工作狀態(tài),各引腳將根據(jù)用戶(hù)定義的狀態(tài)工作。若配置過(guò)程中nSTATUS被FPGA拉低,則表明有配置錯(cuò)誤,重新進(jìn)行配置,在任何工作狀態(tài)下外部指令都可以再次啟動(dòng)配置。

采用CPLD+FLASH方案的可重構(gòu)配置方法

3.2 配置文件的獲取

在FPGA的工程設(shè)計(jì)編譯后產(chǎn)生的.pof和.sof文件只能直接用于在PS模式下對(duì)FPGA進(jìn)行配置,要用Flash存儲(chǔ)配置數(shù)據(jù),需要將配置數(shù)據(jù)轉(zhuǎn)換成.hexout或.hex格式,QUARTUSⅡ6.0提供兩種方法得到所需的文件,一是編譯時(shí)改變編譯選項(xiàng)自動(dòng)生成所需文件,二是將已有配置文件轉(zhuǎn)換為所需文件格式。

4 結(jié)束語(yǔ)

將可重構(gòu)配置方法成功應(yīng)用于某導(dǎo)航接收機(jī)中,充分利用了硬件資源。這種可重構(gòu)配置方法能根據(jù)指令自動(dòng)更改FPGA配置程序,重構(gòu)系統(tǒng)功能,實(shí)現(xiàn)了多模式導(dǎo)航體制融為一體,系統(tǒng)靈活性和可擴(kuò)展性大大增強(qiáng),以較低的成本實(shí)現(xiàn)復(fù)雜系統(tǒng),具有一定的工程實(shí)用價(jià)值。


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21736

    瀏覽量

    603419
  • 無(wú)線電
    +關(guān)注

    關(guān)注

    60

    文章

    2143

    瀏覽量

    116476
  • 導(dǎo)航
    +關(guān)注

    關(guān)注

    7

    文章

    528

    瀏覽量

    42414
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    FPGA重構(gòu)設(shè)計(jì)的結(jié)構(gòu)基礎(chǔ)

      重構(gòu)設(shè)計(jì)是指利用重用的軟、硬件資源,根據(jù)不同的應(yīng)用需求,靈活地改變自身體系結(jié)構(gòu)的設(shè)計(jì)方法。FPGA器件可多次重復(fù)配置邏輯的特性使
    發(fā)表于 05-27 10:22

    基于FPGA的重構(gòu)系統(tǒng)結(jié)構(gòu)分析

      由于重構(gòu)系統(tǒng)的研究歷史很短,目前尚未形成標(biāo)準(zhǔn)的結(jié)構(gòu)形式,在此僅根據(jù)已有的應(yīng)用做初步分析?! “?b class='flag-5'>重構(gòu)的粒度和方式,重構(gòu)系統(tǒng)可以粗略地分
    發(fā)表于 05-27 10:24

    cpldflash配置fpga

    用vhdl實(shí)現(xiàn)cpld配置fpga,配置成功后在usermode下設(shè)置一個(gè)重新配置信號(hào),當(dāng)信號(hào)有效時(shí)對(duì)fpga進(jìn)行重新配置;fpga
    發(fā)表于 01-17 22:35

    有什么FPGA重構(gòu)方法可以對(duì)EPCS在線編程?

    。在當(dāng)今快速發(fā)展的市場(chǎng)環(huán)境條件下,產(chǎn)品是否便于現(xiàn)場(chǎng)升級(jí),是否便于靈活使用無(wú)疑是產(chǎn)品能否進(jìn)入市場(chǎng)的關(guān)鍵因素,F(xiàn)PGA的重構(gòu)設(shè)計(jì)顯得尤為重要。目前,很多重構(gòu)的設(shè)計(jì)方式都
    發(fā)表于 07-31 07:15

    如何用CPLDFlash實(shí)現(xiàn)FPGA的配置?

    本文介紹了通過(guò)處理機(jī)用CPLDFlash實(shí)現(xiàn)FPGA配置文件下載更新的方法。
    發(fā)表于 04-28 06:11

    求一種高檔FPGA重構(gòu)配置方法

    求大神分享一種高檔FPGA重構(gòu)配置方法
    發(fā)表于 04-29 06:16

    用DSP實(shí)現(xiàn)CPLD方案現(xiàn)場(chǎng)可編程配置

    結(jié)合繼電保護(hù)測(cè)試裝置的研制體會(huì),介紹基于DSP 的CPLD方案現(xiàn)場(chǎng)可編程配置方法,給出硬件的配置連接、
    發(fā)表于 04-15 08:50 ?29次下載

    用DSP實(shí)現(xiàn)CPLD方案現(xiàn)場(chǎng)可編程配置

    結(jié)合繼電保護(hù)測(cè)試裝置的研制體會(huì),介紹基于DSP 的CPLD方案現(xiàn)場(chǎng)可編程配置方法,給出硬件的配置連接、
    發(fā)表于 05-18 14:33 ?16次下載

    基于DSP+CPLD重構(gòu)數(shù)控系統(tǒng)的設(shè)計(jì)

    針對(duì)柔性化制造的要求,構(gòu)建了以DSP+CPLD為基礎(chǔ)的數(shù)控系統(tǒng)平臺(tái)。該平臺(tái)集成度高、穩(wěn)定性強(qiáng),能實(shí)現(xiàn)生產(chǎn)過(guò)程的高速度、高精度要求,實(shí)現(xiàn)了基于CPLD重構(gòu)設(shè)計(jì),提高了系
    發(fā)表于 06-18 09:58 ?23次下載

    基于ARM和CPLD重構(gòu)檢測(cè)系統(tǒng)設(shè)計(jì)

    文章提出了一種基于ARM+CPLD 結(jié)構(gòu)的重構(gòu)檢測(cè)系統(tǒng)的設(shè)計(jì)方法, 并采用方法開(kāi)發(fā)了一款多用
    發(fā)表于 09-15 15:40 ?8次下載

    基于DSP+CPLD重構(gòu)數(shù)控系統(tǒng)的設(shè)計(jì)

    針對(duì)柔性化制造的要求,構(gòu)建了以DSP+CPLD為基礎(chǔ)的數(shù)控系統(tǒng)平臺(tái)。該平臺(tái)集成度高、穩(wěn)定性強(qiáng),能實(shí)現(xiàn)生產(chǎn)過(guò)程的高速度、高精度要求,實(shí)現(xiàn)了基于CPLD重構(gòu)設(shè)計(jì),提高了系統(tǒng)的
    發(fā)表于 07-13 15:44 ?13次下載

    基于DSP和CPLD重構(gòu)數(shù)控系統(tǒng)的設(shè)計(jì)與仿真

    基于DSP和CPLD 重構(gòu)數(shù)控系統(tǒng)的設(shè)計(jì)與仿真 1、前言   隨著計(jì)算機(jī)技術(shù)的高速發(fā)展,各工業(yè)發(fā)達(dá)國(guó)家投入巨資,對(duì)現(xiàn)代
    發(fā)表于 02-09 10:52 ?645次閱讀
    基于DSP和<b class='flag-5'>CPLD</b><b class='flag-5'>可</b><b class='flag-5'>重構(gòu)</b>數(shù)控系統(tǒng)的設(shè)計(jì)與仿真

    使用CPLDFlash實(shí)現(xiàn)FPGA的配置

    本文介紹了通過(guò)處理機(jī)用CPLDFlash實(shí)現(xiàn)FPGA配置文件下載更新的方法。與傳統(tǒng)的JTAG或PROM串行下載配置
    發(fā)表于 10-25 05:51 ?9309次閱讀
    使用<b class='flag-5'>CPLD</b>和<b class='flag-5'>Flash</b>實(shí)現(xiàn)FPGA的<b class='flag-5'>配置</b>

    基于CPLD的FPGA快速動(dòng)態(tài)重構(gòu)設(shè)計(jì)

    隨著FPGA的廣泛應(yīng)用, 其實(shí)現(xiàn)的功能也越來(lái)越多, FPGA 的動(dòng)態(tài)重構(gòu)設(shè)計(jì)就顯得愈發(fā)重要。在分析Xilinx Vertex II Pro系列FPGA配置流程、時(shí)序要求的基礎(chǔ)上, 設(shè)計(jì)了基于CPLD
    發(fā)表于 11-22 07:55 ?1138次閱讀
    基于<b class='flag-5'>CPLD</b>的FPGA快速動(dòng)態(tài)<b class='flag-5'>重構(gòu)</b>設(shè)計(jì)

    采用ARM和CPLD結(jié)構(gòu)的檢測(cè)系統(tǒng)重構(gòu)設(shè)計(jì)方法

    檢測(cè)系統(tǒng)的重構(gòu)設(shè)計(jì)是檢測(cè)技術(shù)的發(fā)展方向。重構(gòu)設(shè)計(jì)是指利用重用的軟硬件資源,根據(jù)不同的應(yīng)用需求,靈活地改變自身體系結(jié)構(gòu)的設(shè)計(jì)
    發(fā)表于 10-20 10:40 ?2249次閱讀
    <b class='flag-5'>采用</b>ARM和<b class='flag-5'>CPLD</b>結(jié)構(gòu)的檢測(cè)系統(tǒng)<b class='flag-5'>可</b><b class='flag-5'>重構(gòu)</b>設(shè)計(jì)<b class='flag-5'>方法</b>