999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

FPGA遠程動態重構技術的研究

2012-07-03 00:23:54孫道讓劉蘊紅
電子技術應用 2012年3期
關鍵詞:系統設計

孫道讓,劉蘊紅

(大連理工大學 電氣工程學院,遼寧 大連116024)

隨著現場可編程門陣列的廣泛應用,對其進行靈活的重新配置的研究也越來越多。目前絕大多數FPGA都是基于查找表 LUT(Look UP Table)的技術,采用 SRAM工藝生產。這種工藝的FPGA有兩層結構,上層為配置存儲器,下層是硬件邏輯層。通過上層配置信息控制硬件層門電路的通斷,改變芯片內基本邏輯塊的布線,從而形成特定的功能。這種架構為動態重構技術實現提供了可能。一個FPGA大型數字系統總是由很多功能模塊組合而成,這樣各個系統模塊的激活狀態就可能在時間軸上產生分離,時間上分離的模塊就可以共用一個硬件邏輯區,根據需要對這個邏輯區動態地改變配置,實現不同的功能,這就是局部動態重構[1]。FPGA的動態重構使其應用更加靈活,減少了硬件的資源消耗,縮短了開發周期。但是對一些特殊場合,如深海數據采集或機器人野外勘探,開發者可以為某個系統模塊設計幾個功能,設備在自主運行過程中根據需要選擇相應的配置數據進行配置。如果遇到特殊環境,事先設計的功能有可能不適合工作要求,需要增加新的功能。在目前硬件進化技術還無法進行實際應用的情況下,本文設計了一種遠程動態重構的系統來解決上述問題。

1 遠程動態重構系統的結構

遠程動態重構系統有PowerPC處理器和89C54微控制器兩個核心。VirtexII-Pro FPGA內部集成有2個PowerPC405嵌入式處理器[2],本文系統使用其中一個,實現對動態重構進行控制和調配。FPGA內部用于對局部重構區域PRR進行重新配置的硬件模塊有3個,分別是嵌入式內核PowerPC、系統高級配置環境System ACE和內部配置訪問通道ICAP。System ACE是一種在系統編程的高級配置解決方案,它提供 CF(Compact Flash)、MPU和Test JTAG等多個接口,本系統采用CF卡作為配置數據的來源,可以更方便地改變和存儲配置數據。ICAP的主要作用就是按照特定時序將配置數據重新配置到 PRR中[3]。

遠程數據傳輸通過外接控制器89C54完成,一方面控制器要通過UART接口接收GSM模塊TC35傳來的數據;另一方面要把接收到的配置數據寫入CF卡中,以供FPGA系統讀取。

System ACE和89C54控制器共用CF卡的控制接口。為避免互相影響,本系使用多路復用器將CF卡端口做分時復用處理,即配置過程中與System ACE連接,而數據傳輸存儲過程中與89C54進行連接。遠程動態重構系統結構如圖1所示。

2 遠程動態重構的本地準備

以機械手臂的控制為例,采用PID控制、模糊控制和備用三種控制方案,每個控制算法經過驗證綜合生成獨立的bit流模塊。這三個模塊共用一個可重構的區域PRregion,根據具體情況,選用最適合的算法模塊,動態地配置重構區域來控制機械手臂,其他靜態邏輯區域則仍然正常運行。這樣不僅提高了系統的靈活性,而且節省了配置時間、減少了不必要的消耗。FPGA的設計流程一般包括設計、仿真、綜合、實現過程,本文根據系統自身結構提出如圖2所示的設計流程。

FPGA重構系統綜合使用EDK(Embedded Development Kit)、ISE和PlanAhead多種工具平臺,采用分層化設計,以簡化設計過程。其過程如下:

(1)利用嵌入式開發工具EDK設計一個基于PowerPC405的嵌入式控制系統[4],添加 SystemACE_Compact-Flash外設以支持從CF卡配置FPGA;添加IP核opb_hwicap以支持嵌入式內核通過ICAP讀取配置數據動態地配置FPGA。

(2)EDK包含有軟件開發工具SDK,因此利用SDK對PowerPC405進行軟件編程和調試,最終生成應用程序二進制executable.elf文件;利用EDK外設創建向導,創建多個控制算法IP模塊,在各自的VHDL文件中編寫相應的算法;使用ISE工具對多個算法模塊進行綜合、創建頂層模塊、實例化嵌入式系統和算法模塊。綜合產生top網表文件。

(3)創建PlanAhead工程,使用以上產生的網表文件和約束文件進行布局布線。其中最重要的是將算法模塊設置為可重構模塊,對其進行嚴格的區域約束[5],其約束代碼如下:

AREA_GROUP"AL_PRregion"RANGE=SLICE_(minX)(minY):SLICE_(maxX)(maxY)

AREA_GROUP "AL_PRregion" RANGE = RAMB16_(minX)(minY):RAMB16(maxX)(maxY)

在PlanAhead工具中可以通過可視化方法進行區域約束,既直觀又簡單。可重構模塊在運行過程中如果需要實現不同的控制算法,則需要在重構區中添加所有算法模塊綜合生成的網表文件、使用PR Assemble命令生成多個不同的算法bit流文件。除了動態bit流文件外,PlanAhead還會產生一個靜態完整的bit流文件static_full.bit。可執行以下兩個命令生成ace配置文件:

(1)data2mem -bm implementation/system_stub_bd-bt implementation/static_full.bit-bd TestApp/executable.elf tag ppc310_0–o b implementation/static.bit。

(2)xmd -tcl genace.tcl-jprog-target ppc_hw -hw implementation/static.bit-elf TestApp/executable.elf-board ml310-ace system.ace。

3 遠程動態重構的實現

經過動態重構本地準備之后,得到如表1所示的CF卡配置文件列表。設置保留模塊,是為了給新的控制算法保留一個接口(以一個空文件存儲在CF卡中)。

表1 CF卡配置文件列表

傳統的本地重構設計完成后,針對重構區域會得到幾個不同的配置文件,如針對機械臂控制算法重構區得到兩個初期設計的控制算法配置文件。在實際運行過程中,有些環境只需PID控制就可滿足要求,而有些環境采用模糊控制更合適。如果采用這兩種控制方法都不能滿足工作要求時,必然要對初期設計進行升級,對復雜危險的工作現場進行遠程動態重構。

本文提出的設計方法是:GSM模塊作為遠程數據傳輸工具,與89C54單片機通過UART端口連接,單片機接收到一個扇區512 B的數據寫入CF卡reserved.bit文件中。GSM模塊采用西門子公司的TC35模塊,它支持AT指令,由89C54發送AT指令ASCI碼對TC35進行控制[5]。本設計主要涉及到的AT指令如表2所示,TC35以串行模式與89C54進行通信。

表2 主要的AT指令表

CF卡必須格式化成FAT16格式才能用于FPGA的配置文件存儲。FAT格式磁盤必須一次性對一個扇區進行操作,所以單片機必須從TC35接收滿512 B的數據才可以對CF卡進行寫操作。FPGA配置完成之后CF卡處于閑置狀態,通過多路復用器將CF卡與外接控制器連接以完成對.bit文件的讀寫操作。單片機對CF卡進行操作本質就是對FAT文件系統的讀寫。

FAT格式磁盤的邏輯分區依次為:引導扇區、文件分配表(FAT1和 FAT2)、文件目錄區(FDT)和數據區[6]。引導扇區用于存儲引導程序和磁盤信息,外界訪問CF卡都要經過引導區的識別驗證;FAT是給每個文件分配磁盤物理空間的表格,數據區的劃分單元為簇,一個簇包括64個扇區,FAT表正是為每個文件構造一個簇鏈表;文件目錄區是尋找文件的入口,其內容是每個文件的目錄信息;在文件目錄之后的扇區都是以簇為單位進行數據存儲,這就是數據區。

CF卡與89C54接口配置關系如圖3所示,單片機使用TrueIDE模式對CF卡進行讀寫,采用邏輯塊LAB(Logical Block Addressing)方式進行尋址。

CF卡寫一個扇區(讀扇區基本相似,限于篇幅不列出)的代碼如下:

Write_Sectors:mov R2,#1;一次寫一個扇區

mov R3,#0Ah;假設 LBA為 000000Ah

mov R4,#0

mov R5,#0 mov R6,#0

mov R7,#WriteSctr

acall Function;將參數寫入CF控制寄存器

acall WaitDRQ ;等待數據請求

acall Write512

ret

Write512:mov R0,#high(data);取數據高地址

mov R1,#low(data);取數據低地址

mov R7,#2;512 B=2*256

mov R6,#0;256 B

write: mov dph,R0;獲取地址

mov dpl,R1

clr a

movca,@a+dptr;獲取一個數據

inc dptr;指向下一個數據

movR0,dph;保存地址

movR1,dpl

movDPTR,#Data_Reg;到 CF數據寄存器

movx@dptr,a;向 CF卡寫一個數據

djnzR6,write

djnzR7,write;將 512 B的數據全部寫入CF卡

ret

圖4 遠程動態重構流程圖

遠程動態重構的流程如圖4所示。現場TC35接收到新短信數據時會有觸發信號發送給89C54單片機,單片機開始讀取TC35Flash數據。在對CF卡進行寫操作之前,首先要讀取reserved.bit文件的首簇號;讀取CF卡文件目錄表 FDT,得到 reserved.bit的信息,其中偏移地址為1Ah~1Bh,所存儲的2 B為文件首簇號,而接下來 4 B代表文件大小。由文件首簇號在FAT表中找到文件入口,然后跟蹤簇鏈至簇尾(0XFFFF),按照LAB尋址方式將數據按扇區寫入CF卡數據區,邏輯扇區號LBA可由簇號按公式“LBA=(簇號-2)×64+513”計算得到。如果文件數據量比舊文件多,則在FAT中增加鏈表,直至把數據存儲完畢;如果文件較小,則將原文件剩余FAT簇鏈都寫入0x0000,以釋放空間。對CF卡的寫操作則不對其他區域進行更改。

CF卡數據更新完畢后,接通CF卡與SystemACE控制器之間的多路復用器,對控制算法重構區進行局部動態配置,配置過程中不對其他邏輯區域的運行造成影響。

遠程動態重構結合了FPGA局部動態重構和GSM無線數據傳輸的優勢,對用在野外勘測的機器人和數據采集處理系統有很高的應用價值,允許設計人員根據系統運作情況實時地改變機器人的控制算法或數據處理算法,使其更加適合工作環境,既方便了設計人員對遠程設備的配置升級,又節省了大量人力物力。今后該方案將計算機與FPGA硬件平臺連接,可以為硬件的外部進化遠程下載染色體到硬件平臺提供有效途徑。

[1]潘興武,呂志強.基于可穿戴計算機的動態重構硬件模塊設計[J].電子科技大學學報,2010,39:50-53.

[2]Xilinx Inc.Virtex-II Pro and Virtex-II Pro X FPGA user guide[EB/OL].http://www.xilinx.com/support,2007-05-11.

[3]Xilinx Inc.Early access partial reconfiguration user guide[EB/OL].http://www.xilinx.com/,2010-05-10.

[4]楊浩強.基于 EDK的 FPGA嵌入式系統開發[M].北京:機械工業出版社,2008.

[5]孫丘偉,余臻.基于GSM的短信報警收發平臺設計[J].福州大學學報(自然科學版),2008,36:44-48.

[6]翟亞東,史忠科.基于CF卡的飛行試驗數據記錄器的設計[J].計 算 機 測 量 與 控 制 ,2006,14(10):1384-1386.

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 操国产美女| 国模沟沟一区二区三区| 白浆免费视频国产精品视频| 国产精品永久在线| 72种姿势欧美久久久久大黄蕉| 97青草最新免费精品视频| 被公侵犯人妻少妇一区二区三区 | 全午夜免费一级毛片| 手机精品福利在线观看| 为你提供最新久久精品久久综合| 在线国产91| 性色生活片在线观看| 无码一区二区三区视频在线播放| 91久久偷偷做嫩草影院精品| 国产主播在线一区| 国产精品久久自在自2021| jizz国产视频| 国产在线视频欧美亚综合| 国产噜噜在线视频观看| 人妻精品全国免费视频| 免费一级毛片| 国产肉感大码AV无码| 日韩黄色大片免费看| 国产成人h在线观看网站站| 精品亚洲国产成人AV| a级毛片一区二区免费视频| 99热这里只有精品在线播放| 尤物精品视频一区二区三区| 国产精品真实对白精彩久久 | 国产精品一区二区不卡的视频| 一级毛片免费不卡在线| 久久久久九九精品影院| 在线观看欧美精品二区| 精品三级网站| 国产69囗曝护士吞精在线视频| 国产欧美一区二区三区视频在线观看| 美女被操91视频| 人妻中文字幕无码久久一区| 男女猛烈无遮挡午夜视频| 99成人在线观看| 国产黑人在线| 韩日午夜在线资源一区二区| 99草精品视频| 欧美啪啪视频免码| A级全黄试看30分钟小视频| 国产精品99r8在线观看| 一级毛片免费不卡在线视频| 99精品在线视频观看| 久久96热在精品国产高清| 日韩无码黄色| 欧美成人手机在线观看网址| 最新国产你懂的在线网址| 播五月综合| 亚洲三级片在线看| 国产主播在线观看| 精品久久香蕉国产线看观看gif| 亚洲第一在线播放| 97色伦色在线综合视频| 久久精品波多野结衣| 国产精品高清国产三级囯产AV| 久久精品中文字幕少妇| 一本色道久久88亚洲综合| 久久天天躁狠狠躁夜夜躁| 国产成人区在线观看视频| 日本一本正道综合久久dvd| 国产麻豆福利av在线播放| 欧亚日韩Av| 欧美黄网在线| 91精品久久久久久无码人妻| 国产午夜在线观看视频| 亚洲91在线精品| 在线精品自拍| 免费又爽又刺激高潮网址| 久久国产黑丝袜视频| 成人福利一区二区视频在线| 国产成人高清在线精品| 色综合色国产热无码一| 亚洲美女视频一区| 久久永久视频| 亚洲第一黄色网| 久久无码免费束人妻| 中文字幕亚洲第一|