• 
    

    
    

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

      基于FPGA的TigerSHARC DSP程序快速加載方法

      2017-09-04 00:31:10瑩,王
      關(guān)鍵詞:管腳時(shí)鐘總線(xiàn)

      賀 瑩,王 闖

      (中航工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710065)

      基于FPGA的TigerSHARC DSP程序快速加載方法

      賀 瑩,王 闖

      (中航工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710065)

      TigerSHARC DSP加載程序的傳統(tǒng)方式是DSP上電后通過(guò)外部總線(xiàn)讀取外部存儲(chǔ)器中的程序數(shù)據(jù),該方式加載程序速度慢,不能滿(mǎn)足高速系統(tǒng)的使用要求。介紹了一種快速的DSP程序加載方法,采用FPGA讀取外部存儲(chǔ)器中的程序數(shù)據(jù),并通過(guò)TigerSHARC DSP的高速Link口對(duì)DSP加載程序。與傳統(tǒng)方式相比,該方法可有效提高程序加載速度,縮短系統(tǒng)啟動(dòng)時(shí)間。

      DSP;FPGA;TigerSHARC;Link加載

      0 引言

      TigerSHARC DSP由于具有較高的處理運(yùn)行速度、豐富的芯片資源及高速的Link通信接口,被廣泛應(yīng)用于高速數(shù)字信號(hào)處理等領(lǐng)域。在一些應(yīng)用領(lǐng)域如導(dǎo)彈系統(tǒng)中,通常要求系統(tǒng)具有較短的程序加載啟動(dòng)時(shí)間,以保證能夠快速進(jìn)入工作模式,執(zhí)行作戰(zhàn)任務(wù)。TigerSHARC DSP加載程序通常采用主引導(dǎo)方式,即DSP作為主動(dòng)方通過(guò)外部總線(xiàn)從EPROM或Flash中讀取二進(jìn)制程序文件。由于在程序加載階段外部總線(xiàn)訪(fǎng)問(wèn)數(shù)據(jù)遵循慢速設(shè)備協(xié)議,導(dǎo)致DSP程序加載速度較慢,無(wú)法滿(mǎn)足高速系統(tǒng)的使用需求。

      本文提出一種基于FPGA的TigerSHARC DSP程序加載啟動(dòng)方法,利用FPGA靈活的接口特性、可配置的訪(fǎng)問(wèn)速度,同時(shí)借助DSP自身的高速Link通信接口讀取外部Flash中的程序數(shù)據(jù),實(shí)現(xiàn)DSP的程序加載,可有效提高程序加載速度,縮短系統(tǒng)啟動(dòng)時(shí)間。雖然這種方法目前僅在TigerSHARC DSP上進(jìn)行了實(shí)現(xiàn)及驗(yàn)證,但這種思想具有普適性,完全可以應(yīng)用到其他廠家型號(hào)的DSP 芯片上。

      1 DSP程序加載過(guò)程

      TigerSHARC DSP的程序加載過(guò)程可分為以下三個(gè)步驟:

      (1)TigerSHARC自動(dòng)啟動(dòng)一個(gè)DMA,自動(dòng)把256字(32位字)傳送到內(nèi)部存儲(chǔ)器的地址0X00~0XFF;

      (2)執(zhí)行上述256字指令(稱(chēng)為加載核[1]),加載核啟動(dòng)其他DMA把后續(xù)指令和數(shù)據(jù)加載到內(nèi)部或外部存儲(chǔ)器;

      (3)加載核自我覆蓋。

      DSP加載程序通常的方法是通過(guò)DSP的外部總線(xiàn)從EPROM或Flash中讀取二進(jìn)制程序文件。由于在程序加載階段外部總線(xiàn)訪(fǎng)問(wèn)數(shù)據(jù)遵循慢速設(shè)備協(xié)議,導(dǎo)致DSP程序加載速度較慢,無(wú)法滿(mǎn)足高速系統(tǒng)的使用需求。

      2 快速加載方法

      圖1 DSP程序快速加載方案

      本文提出的程序快速加載方法利用FPGA作為傳輸中介,發(fā)揮TigerSHARC DSP的高速Link接口數(shù)據(jù)傳輸?shù)膬?yōu)勢(shì),設(shè)計(jì)了一種TigerSHARC DSP程序快速加載啟動(dòng)方法。圖1中數(shù)據(jù)通道①為傳統(tǒng)程序加載方法[2]的傳輸路徑,通道②和③為快速加載方法的傳輸路徑??焖俜椒ㄓ蒄PGA通過(guò)DSP總線(xiàn)②讀取Flash數(shù)據(jù),在FPGA內(nèi)部進(jìn)行數(shù)據(jù)緩存,同時(shí)按照Link接口傳輸協(xié)議向DSP的Link接口③傳送數(shù)據(jù),從而實(shí)現(xiàn)DSP程序加載。

      3 設(shè)計(jì)與實(shí)現(xiàn)

      DSP快速加載啟動(dòng)方法實(shí)現(xiàn)原理如圖2所示,F(xiàn)PGA主要實(shí)現(xiàn)DSP加載方式配置、Flash讀取控制、數(shù)據(jù)緩存控制以及Link接口發(fā)送控制等控制功能。

      圖2 DSP快速加載啟動(dòng)方法原理圖

      3.1 DSP加載方式配置

      TigerSHARC DSP的加載方式[3]是通過(guò)BMS管腳的狀態(tài)進(jìn)行控制的,在FPGA中將BMS管腳狀態(tài)置為‘1’,配置其為從加載模式。

      由于FPGA和Flash同時(shí)連接在DSP的外部總線(xiàn)上,F(xiàn)PGA需通過(guò)DSP的外部總線(xiàn)讀取Flash數(shù)據(jù),而DSP默認(rèn)占用總線(xiàn)使用權(quán),因此需要對(duì)DSP的外部總線(xiàn)訪(fǎng)問(wèn)權(quán)限進(jìn)行控制。在FPGA中通過(guò)對(duì)DSP的HBR管腳狀態(tài)進(jìn)行控制,實(shí)現(xiàn)總線(xiàn)權(quán)限的獲取和釋放。DSP加載完成前將HBR管腳狀態(tài)置為低,DSP釋放外總線(xiàn)權(quán)控制權(quán)給外部設(shè)備;當(dāng)FPGA讀取Flash數(shù)據(jù)完成后,將DSP的HBR管腳狀態(tài)置為高,將外總線(xiàn)控制權(quán)歸還DSP。

      3.2 Flash讀控制

      Flash讀控制主要是對(duì)Flash的片選信號(hào)、復(fù)位信號(hào)、輸出使能等控制信號(hào)進(jìn)行控制。由于程序加載過(guò)程僅涉及對(duì)Flash的讀操作,因此Flash寫(xiě)信號(hào)置無(wú)效態(tài)‘1’;Flash復(fù)位信號(hào)由DSP復(fù)位信號(hào)產(chǎn)生;Flash的片選使能信號(hào)(CE)和輸出使能信號(hào)(OE)由Flash數(shù)據(jù)讀取狀態(tài)確定,DSP復(fù)位結(jié)束后CE和OE置為有效態(tài)‘0’,F(xiàn)lash數(shù)據(jù)讀取完成后變?yōu)闊o(wú)效態(tài)‘1’。

      3.3 FIFO緩沖控制

      在FPGA內(nèi)部開(kāi)辟16×8的FIFO緩沖區(qū)對(duì)Flash讀模塊和Link接口發(fā)送模塊之間的數(shù)據(jù)流進(jìn)行緩沖。由于Link接口傳輸協(xié)議采樣時(shí)鐘為雙沿采樣,為使FIFO輸出數(shù)據(jù)流能夠直接注入Link接口發(fā)送模塊以實(shí)現(xiàn)最快傳輸,F(xiàn)IFO讀寫(xiě)時(shí)鐘采用Link接口時(shí)鐘的二倍頻 (250/4)MHz。FIFO讀寫(xiě)狀態(tài)控制分別如圖3所示。

      圖3 FIFO讀寫(xiě)控制狀態(tài)圖

      3.4 Link接口發(fā)送控制

      Link接口發(fā)送控制是對(duì)LxCLKIN、LxCLKOUT、LxDAT、LxDIR等Link接口信號(hào)時(shí)序關(guān)系的控制,在FPGA中產(chǎn)生滿(mǎn)足Link接口協(xié)議的發(fā)送時(shí)序[4]即可向DSP的Link接口發(fā)送數(shù)據(jù),實(shí)現(xiàn)DSP程序加載。各信號(hào)的產(chǎn)生方法如下:

      (1)LxCLKOUT信號(hào)為L(zhǎng)ink發(fā)送數(shù)據(jù)的參考時(shí)鐘,時(shí)鐘頻率配置為L(zhǎng)ink接口默認(rèn)頻率(250/8)MHz;

      (2)LxCLKIN信號(hào)為DSP端Link接收端口的應(yīng)答信號(hào),高表示可以接收數(shù)據(jù),低表示不能接收數(shù)據(jù),F(xiàn)PGA中通過(guò)對(duì)該信號(hào)的監(jiān)測(cè)判斷DSP端Link接口是否允許發(fā)送數(shù)據(jù);

      (3)LxDAT信號(hào)為待發(fā)送的數(shù)據(jù),共8位數(shù)據(jù)線(xiàn),從FIFO緩沖區(qū)讀出;

      (4)LxDIR信號(hào)代表信號(hào)傳輸方向,F(xiàn)PGA中置為‘1’,設(shè)置FPGA為發(fā)送方。

      4 性能比較

      在實(shí)際系統(tǒng)中,TigerSHARC DSP使用AD公司的ADSP-TS101, Flash采用SM29LV160,F(xiàn)PGA采用XC2V3000。直接加載方法中,外部總線(xiàn)時(shí)鐘頻率為50 MHz,讀取一個(gè)數(shù)據(jù)(1 B)需要6個(gè)時(shí)鐘周期(120 ns),傳輸1.96 MB的文件耗時(shí)約為246 ms。而FPGA最大傳輸延遲僅為數(shù)納秒, SM29LV160芯片訪(fǎng)問(wèn)時(shí)間不大于70 ns,與高速微處理器接口時(shí)不需要等待狀態(tài),因而可根據(jù)需要靈活地控制時(shí)序,最大限度地提高傳輸速度。經(jīng)測(cè)試,本文方案?jìng)鬏?.96 MB大小的文件耗時(shí)為86 ms。

      5 結(jié)論

      本文借助FPGA靈活的可配置特性,利用TigerSHARC DSP的高速Link接口,設(shè)計(jì)并實(shí)現(xiàn)了一種DSP程序的快速加載方法。實(shí)際測(cè)試表明,該方法可有效提高程序加載速度,縮短系統(tǒng)啟動(dòng)時(shí)間。該方法具有很好的普適性,只要修改相應(yīng)的接口協(xié)議就能應(yīng)用到其他芯片的配置上去。經(jīng)多個(gè)工程實(shí)踐驗(yàn)證,該方法有效、可行。

      [1] LERNER B. ADSP-TS101S TigerSHARC processor boot loader kernels operation (EE-174) [EB/OL].(2003-04-01)[2017-02-16]http://www.analog.com/media/en/technical-documentation/application-notes/EE-174.pdf.

      [2] 沈發(fā)江. 基于以太網(wǎng)的DSP網(wǎng)絡(luò)加載技術(shù)研究[J]. 微型機(jī)與應(yīng)用, 2013, 32(7):58-60.

      [3] Analog Devices, Inc. ADSP-TS101 TigerSHARC processor hardware reference[EB/OL].(2004-05-01)[2017-02-16]http://101.96.8.165/download.analog.com/manuals/tigersharc/processorManuals/ts_101_hwr_rev11.pdf.

      [4] 王鵬,連帥彬,孫秋菊,等.ADSP-TS101 高速全雙工Link 收發(fā)器FPGA 設(shè)計(jì)[J].信陽(yáng)師范學(xué)院學(xué)報(bào),2015,28(2):259-262.

      A fast loading method of TigerSHARC DSP based on FPGA

      He Ying, Wang Chuang

      (Xi’an Aeronautics Computing Technique Research Institute, AVIC, Xi’an 710065, China)

      The traditional way of loading TigerSHARC DSP is to read the program data from external memory by local bus after DSP is powered on, which can not meet the requirement of high speed system. This paper introduces a fast DSP program loading method, using FPGA to read the program data from external memory, and then transferring the data to TigerSHARC DSP through its high speed Link port. Compared with the traditional method, this method can effectively improve the program loading speed and shorten the system startup time.

      digital signal processor (DSP); field programmable gate array (FPGA); TigerSHARC; Link port loading

      TP302.1

      A

      10.19358/j.issn.1674- 7720.2017.16.023

      賀瑩,王闖.基于FPGA的TigerSHARC DSP程序快速加載方法[J].微型機(jī)與應(yīng)用,2017,36(16):82-83,91.

      2017-02-16)

      賀瑩(1986-),女,碩士,工程師,主要研究方向:計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、高速信號(hào)處理等。

      猜你喜歡
      管腳時(shí)鐘總線(xiàn)
      別樣的“時(shí)鐘”
      古代的時(shí)鐘
      基于PCI Express總線(xiàn)的xHC與FPGA的直接通信
      機(jī)載飛控1553B總線(xiàn)轉(zhuǎn)以太網(wǎng)總線(xiàn)設(shè)計(jì)
      有趣的時(shí)鐘
      基于圖像處理的異型電子元器件管腳偏移誤差檢測(cè)方法研究
      CMOS數(shù)字IC管腳電容的估算與測(cè)量
      時(shí)鐘會(huì)開(kāi)“花”
      多通道ARINC429總線(xiàn)檢查儀
      基于EtherCAT總線(xiàn)的ROV控制系統(tǒng)設(shè)計(jì)
      河南科技(2014年16期)2014-02-27 14:13:22
      宁强县| 雷州市| 芦溪县| 玉环县| 绥化市| 苏尼特左旗| 略阳县| 泸西县| 吴江市| 报价| 新河县| 双城市| 本溪市| 游戏| 绍兴县| 南溪县| 鸡西市| 闵行区| 绥阳县| 扎赉特旗| 大名县| 宜阳县| 栾城县| 岳西县| 绵阳市| 隆林| 和林格尔县| 平陆县| 犍为县| 勃利县| 丘北县| 桃源县| 正定县| 桃园市| 乐昌市| 台湾省| 自贡市| 平乡县| 福贡县| 肥西县| 汉中市|