国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

通用信號處理模塊功能線程動態(tài)重構技術

2014-01-01 03:09
無線電工程 2014年11期
關鍵詞:程序代碼管理程序存儲器

劉 可

(中國西南電子技術研究所,四川成都610036)

0 引言

IMA是當前航電體系結構發(fā)展的最高階段[1],其體系架構實現(xiàn)了基于模塊的高度綜合,硬件資源與軟件資源均采用模塊化設計,系統(tǒng)通過對軟硬件資源進行配置及重構來實現(xiàn)各項功能線程[2]。在IMA系統(tǒng)中,通用SPM通過加載不同的應用程序和配置參數(shù)來實現(xiàn)不同的數(shù)字信號處理功能[3],其設計難點在于如何實現(xiàn)穩(wěn)定可靠的功能線程動態(tài)重構和應用程序在線更新。目前國內航空電子領域已知范圍內尚缺乏相關專門研究和工程實踐。本文介紹了一種機載通用SPM功能重構和代碼更新技術。通用SPM以大規(guī)??删幊踢壿嬈骷?FPGA)和高速數(shù)字信號處理器(DSP)為主處理單元,引入應用程序3級加載流程,可按照系統(tǒng)指令動態(tài)配置主處理單元,可實現(xiàn)數(shù)10種數(shù)字信號處理功能程序的存儲和加載。

1 通用SPM硬件設計

通用SPM每個處理通道配備高速LVDS串行解串器(SERDES)[4]、FPGA、DSP 和通用異步收發(fā)器(UART)[5],此外還有大容量 FLASH 存儲器、SDRAM存儲器、用戶自定義接口以及模塊支持單元。模塊支持單元可由CPLD或小容量FPGA編程實現(xiàn)。通用SPM單處理通道如圖1所示。

FPGA和 DSP是通用 SPM的主處理單元[6]。其中,DSP除了是數(shù)字信號處理的核心器件,還是功能線程動態(tài)重構和應用程序在線更新的主控器。DSP掛接的FLASH存儲器用于保存各種數(shù)字信號處理功能的DSP和FPGA應用程序代碼,此外還存儲功能重構和代碼更新所需的自舉加載程序(BOOTLOADER)[7]以及功能管理程序。模塊支持單元主要負責在功能重構過程中實現(xiàn)FPGA加載接口和加載過程監(jiān)控。SDRAM存儲器為功能管理程序和應用程序提供了數(shù)據(jù)暫存空間。

圖1 通用SPM單處理通道

2 功能重構和代碼更新解決方案

基于自身具備的自舉加載(BOOTLOAD)[8]能力,DSP成為功能線程動態(tài)重構和應用程序在線更新的主控器。為了突破DSP自舉加載程序代碼尺寸不能超過1 KB的限制以滿足系統(tǒng)需求,通用SPM采用了應用程序3級加載流程。

2.1 DSP 應用程序加載流程

通用SPM DSP應用程序加載流程分為3個階段:自舉加載程序加載運行、功能管理程序加載運行和應用程序加載運行,即3級加載。

通用SPM FLASH存儲器掛接在DSP芯片EMIFB總線CE1空間,DSP通過上拉/下拉電阻配置成從EMIFB總線CE1空間的8 bit ROM上電/復位自舉加載。FLASH低地址段保存BOOTLOADER程序,BOOTLOADER用匯編語言編寫,編譯后大小不超過1 KB。DSP上電/復位后,CPU處于“掛起”狀態(tài),增強型直接存儲器訪問(EDMA)控制器使用默認的ROM訪問時序,以單幀數(shù)據(jù)塊傳輸方式自動把FLASH中前1 KB地址單元中存儲的BOOTLOADER代碼拷貝到片內程序存儲區(qū),在此過程中EMIF接口自動把連續(xù)的8 bit字節(jié)組合成32 bit指令字以便EDMA控制器復制。數(shù)據(jù)塊傳輸結束后,CPU從“掛起”狀態(tài)中被釋放并從內存地址0開始執(zhí)行 BOOTLOADER代碼,該階段為第1級加載[9]。

受限于代碼尺寸,BOOTLOADER的主要任務是把FLASH中保存的功能管理程序代碼整塊搬移到DSP片內程序存儲區(qū),然后跳轉到功能管理程序起始處執(zhí)行,該階段為第2級加載,功能管理程序可視為第2級BOOTLOADER。

應用程序的加載由功能管理程序完成。功能管理程序根據(jù)模塊支持單元CPLD中保存的加載參數(shù)信息,從FLASH中特定存儲空間讀取數(shù)字信號處理應用程序代碼并寫入DSP內存,校驗正確后跳轉執(zhí)行,該階段為第3級加載。至此,DSP應用程序加載流程結束。

2.2 FPGA應用程序加載流程

和DSP應用程序一樣,F(xiàn)PGA應用程序也保存在FLASH存儲器中。FPGA配置模式通過硬件設定為從并模式(Slave SelectMAP)[10],由 DSP 充當FPGA加載的主控器。DSP在自身加載流程的第2階段運行功能管理程序對FPGA進行配置。一般情況下可將FPGA視為DSP的外設,因此功能管理程序先配置FPGA,再加載DSP。功能管理程序通過DSP EMIF總線從FLASH中讀出FPGA應用程序代碼,然后通過模塊支持單元CPLD寫入FPGA加載端口。CPLD實現(xiàn)DSP EMIF總線至FPGA加載端口之間的接口適配邏輯[11],F(xiàn)PGA加載如圖2所示。

圖2 FPGA加載

通過CPLD實現(xiàn)的FPGA加載時序如圖3所示。

圖3 FPGA加載時序

2.3 功能線程動態(tài)重構流程

系統(tǒng)在需要對通用信號處理模塊進行功能重構時,首先通過UART接口向DSP發(fā)送功能重構指令。DSP當前運行的應用程序接收到該指令后,將指令中包含的關鍵參數(shù)信息保存在模塊支持單元中,然后通過模塊支持單元發(fā)出DSP復位信號,啟動DSP加載流程。DSP依次運行BOOTLOADER和功能管理程序。功能管理程序根據(jù)模塊支持單元中保存的功能重構參數(shù),從FLASH存儲器中對應地址空間讀取用戶程序FPGA和DSP代碼。用戶程序FPGA代碼通過CPLD中的適配邏輯寫入FPGA配置口。FPGA在數(shù)據(jù)加載正確完成后自動啟動配置流程。此后,功能管理程序將用戶程序DSP代碼直接寫入DSP內存,校驗正確后跳轉執(zhí)行。在跳轉執(zhí)行DSP應用程序前,功能管理程序通過UART接口將功能線程動態(tài)重構操作結果上報系統(tǒng)。功能重構流程如圖4所示。

圖4 功能重構流程

2.4 應用程序在線更新流程

應用程序在線更新流程如圖5所示。

圖5 應用程序代碼更新流程

通用SPM在功能重構流程中讀取的DSP和FPGA應用程序代碼全部存放在大容量FLASH存儲器中。模塊單板調試時,DSP可掛接仿真器,在PC機CCStudio開發(fā)環(huán)境中將保存在本地硬盤上的DSP和FPGA應用程序代碼燒錄到FLASH內。在系統(tǒng)聯(lián)試和維護的情況下,系統(tǒng)主控可通過UART接口向通用信號處理模塊DSP發(fā)送應用程序代碼更新指令。DSP當前運行的應用程序接收到該指令后,將指令中包含的關鍵參數(shù)信息保存在模塊支持單元中,然后通過模塊支持單元發(fā)出DSP復位信號,啟動 DSP加載流程。DSP依次運行 BOOTLOADER和功能管理程序。功能管理程序解析模塊支持單元中保存的指令參數(shù),并通過UART接口接收系統(tǒng)下發(fā)的DSP和FPGA應用程序代碼數(shù)據(jù)。應用程序代碼以數(shù)據(jù)幀的形式分包傳送,每一幀數(shù)據(jù)內含該包數(shù)據(jù)的CRC校驗值。通用SPM將接收到的應用程序代碼數(shù)據(jù)暫存在SDRAM存儲器中。校驗無誤后,功能管理程序再將應用程序代碼燒寫到FLASH相應地址空間中并將操作結果上報系統(tǒng)主控。

2.5 功能重構常見問題

通用SPM功能重構有2個常見問題:加載耗時和加載可靠性。

加載耗時受以下因素制約:被加載代碼長度、DSP內核時鐘速率和EMIF接口工作速度、FLASH存儲器訪問位寬以及FPGA配置時鐘速率和配置接口位寬。因此,提高加載速度的可行辦法有:提高DSP內核和EMIF接口運行速度;在功能管理程序開始運行后把FLASH訪問位寬從字節(jié)(8 bit)改為字(16 bit);將FPGA配置位寬增大到32 bit并提高配置時鐘速率。

加載可靠性可分為硬件可靠性和操作完備性2個問題。硬件可靠性是指模塊長時間工作以及應對極端使用環(huán)境的能力,如高低溫、振動和復雜電磁環(huán)境。硬件可靠性問題的關鍵是PCB及其完整性設計,不僅包括信號完整性、電源完整性,還包括EMC、防護、熱設計、結構和易測試性等內容[12]。而操作完備性主要指在功能動態(tài)重構過程中嚴格遵循相關器件使用要求,做好器件復位、配置和校驗等操作,最大限度保證器件正??煽抗ぷ?。

3 結束語

介紹了一種機載通用SPM功能線程動態(tài)重構和應用程序在線更新技術。該技術采用了特有的應用程序3級加載流程以實現(xiàn)系統(tǒng)要求,目前已在一系列工程項目和產(chǎn)品中獲得了成功應用。需要特別指出的是,在DSP支持自舉加載功能的前提下,通用SPM主處理單元可根據(jù)應用需求靈活選用TI公司的TMS320C64XX和 TMS320C64X+系列各型DSP和XILINX公司的Virtex和Spartan系列各型FPGA。此外,通用SPM與系統(tǒng)主控的通信接口可以換用網(wǎng)絡接口單元,如TMS320C6455等DSP芯片具備的4路1X RapidIO串行接口或1路4X RapidIO并行接口[13]。通過網(wǎng)絡接口單元,通用SPM可加入系統(tǒng)內部互聯(lián)網(wǎng)絡,為系統(tǒng)硬件體系架構的開放性和可擴展性奠定基礎。

[1] 張鳳鳴,褚文奎,樊曉光,等.綜合模塊化航空電子體系結構研究[J].電光與控制,2009,16(9):47-51.

[2] 茅 成.綜合通信導航識別系統(tǒng)中的多鏈路超短波通信的實現(xiàn)[J].電訊技術,2009,49(8):59 -64.

[3] 陳 穎,苑仁亮,曾 利.航空電子模塊化綜合系統(tǒng)集成技術[M].北京:國防工業(yè)出版社,2013(9):1-2.

[4] National Semiconductor. DS92LV16 Datasheet[S],2013.

[5] PHILIPS.SC16C554B/554DB.Datasheet[S],2014.

[6] 齊青茂,王巖建,張華沖.中頻采樣全數(shù)字接收機的設計與實現(xiàn)[J].無線電通信技術,2012,38(4):77 -80.

[7] Texas Instruments.Creating a Second-level Bootloader for FLASH Bootloading on TMS320C6000 Platform With Code Composer Studio[S],2006.

[8] Texas Instruments.TMS320C6414T/15T/16T Datasheet[S],2011.

[9] Texas Instruments.TMS320C6000 EMIF to External Flash Memory[S],2002.

[10]余金磊,孫明杰.基于NIOSⅡ的FPGA配置技術[J].無線電通信技術,2013,39(3):73 -75.

[11] XILINX.Virtex-4 Configuration Guide[S],2011.

[12]王劍宇,蘇 穎.高速電路設計實踐[M].北京:電子工業(yè)出版社,2010.

[13] Texas Instruments. TMS320C6455 Fixed-Point Digital Signal Processor Datasheet[S],2011.

猜你喜歡
程序代碼管理程序存儲器
軍事保密管理程序法治化及其對軍民協(xié)同創(chuàng)新發(fā)展的促進研究
靜態(tài)隨機存儲器在軌自檢算法
計算機網(wǎng)絡信息安全未來發(fā)展趨勢
基于圖元裝接模式由程序流程圖自動生成源代碼
淺談核電工程電氣工程質量和安全的精細化管理
任意2~k點存儲器結構傅里葉處理器
關于EPC總承包項目設計管理程序文件的研究
存儲器——安格爾(墨西哥)▲
寧德核電管理體系建設與優(yōu)化
嵌入式系統(tǒng)中程序的優(yōu)化策略