<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 用PowerPC860實(shí)現(xiàn)FPGA配置

          用PowerPC860實(shí)現(xiàn)FPGA配置

          作者: 時(shí)間:2004-12-08 來(lái)源:網(wǎng)絡(luò) 收藏
          摘要:介紹如何用(MPC)進(jìn)行(Xilinx的Virtex-II系列)的配置;給出進(jìn)行配置所需的詳細(xì)時(shí)序圖和原理圖。本配置基本原理對(duì)其它的配置也適用。

          關(guān)鍵詞: FPGA Xilinx

          1 概述

          MPC860是基于結(jié)構(gòu)的通信控制器。它不僅是集成的微處理器,而且將很多外設(shè)的功能也集成在一起。MPC860具有存儲(chǔ)控制器,其存儲(chǔ)控制器的功能很強(qiáng),可以支持各種存儲(chǔ)器,包括各種新型的DRAM和Flash,并可以實(shí)現(xiàn)與存儲(chǔ)器的無(wú)縫接口;而且使用嵌入式操作系統(tǒng)VxWorks和開(kāi)發(fā)環(huán)境Tornado開(kāi)發(fā)非常方便。

          本設(shè)計(jì)中用1片Intel W28F1283A150 Flash作為BootFlash對(duì)MPC860進(jìn)行加電配置,其多余的存儲(chǔ)空間完全可以存放下FPGA所需的配置文件。加電復(fù)位、系統(tǒng)啟動(dòng)后,由MPC860處理機(jī)與EPLD配合,控制FPGA配置文件的下載過(guò)程,完成對(duì)FPGA的配置。使用MPC860可以對(duì)FPGA十分方便地進(jìn)行配置,甚至可以通過(guò)MPC860的網(wǎng)絡(luò)功能對(duì)FPGA進(jìn)行遠(yuǎn)程配置,節(jié)省了因采用專(zhuān)用配置芯片所耗費(fèi)的電路板及其成本。本文主要介紹如何用MPC860對(duì)Xilinx公司的Virtex II系列的FPGA進(jìn)行配置,其原理同樣適用于別的FPGA芯片(包括Altera公司)。

          2 Xilinx FPGA的配置方式

          本設(shè)計(jì)中FPGA采用Xilinx公司Virtex-II系列蝗XC2V4000,其配置文件的下載模式有5種:主串模式(master serial)、從串模式(slave serial)、主并模式(master selectMAP)、從并模式(slave selectMAP)、JTAG械。其中,JTAG模式在開(kāi)發(fā)調(diào)試階段使用。本設(shè)計(jì)將JTAG口直接做在信號(hào)處理板上,便于開(kāi)發(fā)設(shè)計(jì)階段的調(diào)試。

          參考Xilinx公司的有關(guān)文檔,比較其余4種下載模式,可將其分為串行下載方式和并行下載方式。串行下載方式和并行下載方式都有主、從2種模式。主、從模式的最大區(qū)別在于:主模式的下載同步時(shí)鐘(CCLK)由FPGA提供;從模式的下載同步時(shí)鐘(CCLK)由外部時(shí)鐘源或者外部控制信號(hào)提供。主模式對(duì)下載時(shí)序的要求比從模式嚴(yán)格得多。因此從處理機(jī)易于控制下載過(guò)程的角度,選擇使用從串模式或從并模式。本設(shè)計(jì)采用從串模式進(jìn)行FPGA配置,以減少占用MPC860的資源。

          用MPC860對(duì)FPGA進(jìn)行配置,實(shí)質(zhì)上就是用MPC860和EPLD來(lái)仿真JTAG接口的下載時(shí)序,完成對(duì)FPGA的下載。JTAG的有效引腳只有5個(gè),分別是nConfig(PROG_B)、nStatus(INIT_B)、Conf_Done(DONE)、DClk(CCLK)、Data0(DIN)。其中nConfig用于使FPGA進(jìn)行到下載狀態(tài),nStatus時(shí)不否出現(xiàn)CRC校驗(yàn)錯(cuò)誤,Conf_Done用于表示下載完成,而DC1k的Data則是用于在下載時(shí)產(chǎn)生時(shí)鐘和數(shù)據(jù)位的。每一個(gè)CD1k時(shí)鐘周期寫(xiě)入1個(gè)bit數(shù)據(jù)(括號(hào)中標(biāo)注為Xilinx的FPGA對(duì)該功能的稱(chēng)呼)。

          表1所列為下載信號(hào)定義。

          表1 下載信號(hào)定義

          引 腳方向(對(duì)FPGA)說(shuō) 明
          Data0輸入數(shù)據(jù)引腳
          DClk輸入同步時(shí)鐘,由外部時(shí)鐘源或控制信號(hào)提供
          NConfig輸入異步復(fù)位引腳,用于異步復(fù)位配置邏輯
          Conf_Done輸出配置狀態(tài)
          nStatus輸出下載狀態(tài)

          3 從串模式的配置信號(hào)和下載時(shí)序

          (1)啟動(dòng)下載時(shí)序

          在nConfig引腳上產(chǎn)生1個(gè)超過(guò)2μs的低脈沖,等待nStatus回應(yīng)1個(gè)低脈沖以及Conf_Done。變低。這時(shí)候表明FPGA已經(jīng)進(jìn)入到了下載狀態(tài),等待至少5μs以后就可以開(kāi)始下載了。

          (2)下載時(shí)序

          從串下載模式的下載時(shí)序如圖1的所示。

          在Data0上逐位地產(chǎn)生要下載的數(shù)據(jù),同時(shí)在DC1k上產(chǎn)生時(shí)鐘。數(shù)據(jù)必須在時(shí)鐘的上升沿之間50ns有效,時(shí)鐘高電平和低電平的時(shí)鐘都不能小于80ns。這一過(guò)程一直持續(xù)到全部數(shù)據(jù)下載完成。在下載過(guò)程中可以出現(xiàn)相對(duì)較少時(shí)間的等待狀態(tài),而不會(huì)中斷下載進(jìn)程。如果發(fā)生錯(cuò)誤,nStatus將被拉低,F(xiàn)PGA退出操作,必須重算1~3步驟。

          (3)結(jié)束下載

          在數(shù)據(jù)都下載完成以后,需要繼續(xù)給FPGA提供若干的時(shí)鐘,時(shí)鐘要至少等到Conf_Done變高為止。

          (4)啟動(dòng)器件

          Conf_Done被釋放,被外部拉高。

          MPC860處理機(jī)控制從串下載模式的信號(hào)連接示意如圖2所示。

          4 MPC860下載模式的軟件(狀態(tài)機(jī))設(shè)計(jì)

          MPC860下載模式的狀態(tài)機(jī)的實(shí)現(xiàn)是由PCM860處理器和EPLD協(xié)同來(lái)完成的。MPC860通過(guò)寫(xiě)入Sc_Dnld_Req(1..0)來(lái)控制狀態(tài)機(jī)的下一個(gè)狀態(tài),通過(guò)判斷EPLD中寄存器Sc_Dnld_Con(3..0)的內(nèi)容來(lái)決定流程的跳轉(zhuǎn)。

          圖3中狀態(tài)req=“x”代表向EPLD的寄存器Sc_Dnld_Req寫(xiě)入數(shù)據(jù)“xx”。

          其中,Sc_Dnld_Req(1 downto 0)使MPC860通過(guò)這個(gè)寄存器向EPLD發(fā)出指令,控制下載過(guò)程:

          10――通知EPLD作好向FPGA發(fā)nconfig的準(zhǔn)備工作;

          11――通知EPLD開(kāi)始向FPGA發(fā)出nconfig命令;

          00――通知EPLD作好向FPGA下載數(shù)據(jù)的準(zhǔn)備工作;

          01――通知EPLD開(kāi)始向FPGA逐位下載1個(gè)字節(jié)的數(shù)據(jù)。

          如果下載過(guò)程順序的話(huà),第1、第2步只需在每次下載數(shù)據(jù)前進(jìn)行1次,第3、第4步是每下載1個(gè)字節(jié)數(shù)據(jù)都要進(jìn)行的步驟(每次寫(xiě)入下載數(shù)據(jù)的操作在第3步之前進(jìn)行,且新數(shù)據(jù)要寫(xiě)入專(zhuān)門(mén)的寄存器Sd_Data_Byte(7 downto 0))。

          Sd_Data_Byte(7 downto 0))是下載數(shù)據(jù)緩存。

          Sc_Dnld_Con(3 downto 0)是4bit的只讀寄存器。860通過(guò)查詢(xún)這個(gè)寄存器的內(nèi)容判斷目標(biāo)FPGA的當(dāng)前下載狀態(tài),以決定應(yīng)該發(fā)出什么樣的指令。其各位代表的意義如下所述:

          ①Sc_Dnld_Con(3) ――為0時(shí)表示不可以發(fā)送新數(shù)據(jù)到EPLD,為1時(shí)允許發(fā)送數(shù)據(jù);

          ②Sc_Dnld_Con(2) ――為0時(shí)表示工作正常,為1時(shí)表示下載過(guò)程中斷;

          ③Sc_Dnld_Con(1) ――目標(biāo)FPGA返回的nstatus信號(hào);

          ④Sc_Dnld_Con(0) ――目標(biāo)FPGA返回的conf_done信號(hào)。

          結(jié)束語(yǔ)

          MPC860有強(qiáng)大的資源,可以在外圍電路不復(fù)雜的情況下實(shí)現(xiàn)Xilinx公司的FPGA的配置程序下載。本設(shè)計(jì)經(jīng)過(guò)實(shí)際調(diào)試,已成功地用于所開(kāi)發(fā)的數(shù)字通信信號(hào)處理板上,效果良好。



          關(guān)鍵詞: PowerPC FPGA 860

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();