ARM設(shè)計(jì)的FPGA可重構(gòu)配置方法的實(shí)現(xiàn)及應(yīng)用
{p ntf(”、n\r—Configure Ermr:nsrATus is O!、n、r );
retum O;}}
else if(Read—nC0NF—Done)
{p ntf(”\n\卜-Co gure success! 、n );}
fnr(i=O;i(5O;i++)/ 初始化 /
{Set—DcLK(1);
hudeIay(1);
Set— DCLK(O);
hude1.dy(1);} 、
if(!Read—nC0NF—D0ne)
{printf(”、r\n—configure En r:nCO F—Done is 0 1”);
retum 0:}
retum l:
{
結(jié)合上述可重構(gòu)配置分析,我們利用了FPGA可重構(gòu)特性,實(shí)現(xiàn)模塊化機(jī)器人控制器的設(shè)計(jì).模塊化機(jī)器人結(jié)構(gòu)復(fù)雜,控制電機(jī)數(shù)量多,而且針對(duì)不同構(gòu)形控制策略也有差別,如四自由度串聯(lián)式機(jī)器手構(gòu)形和全向移動(dòng)小車構(gòu)形(圖4所示)從控制策略到控制電機(jī)數(shù)量都有很大的不同,這就要求控制器可以根據(jù)不同構(gòu)形動(dòng)態(tài)的改變控制策略,也即控制器的可重構(gòu).為此,在模塊化機(jī)器人可重構(gòu)控制模塊結(jié)構(gòu)設(shè)計(jì)中,提出基于ARM和FPGA的動(dòng)態(tài)可重構(gòu)的模塊化機(jī)器人控制系統(tǒng)方案,充分利用嵌入式ARM核微處理器高性能、低功耗、資源豐富等方面的性能和FPGA內(nèi)部邏輯可重構(gòu)的特性,由主處理器根據(jù)機(jī)器人當(dāng)前構(gòu)形選擇不同的控制策略并對(duì)FPGA內(nèi)部邏輯進(jìn)行動(dòng)態(tài)重配,以適應(yīng)不同構(gòu)形及應(yīng)用的需要.結(jié)構(gòu)設(shè)計(jì)框圖如圖5所示。
ARM模塊選用s3c241Ox運(yùn)行 C/OS—II實(shí)時(shí)操作系統(tǒng),負(fù)責(zé)運(yùn)行控制軟件,完成模塊化機(jī)器人運(yùn)動(dòng)規(guī)劃,實(shí)時(shí)監(jiān)控系統(tǒng)運(yùn)行狀態(tài),實(shí)現(xiàn)人機(jī)交互功能及對(duì)FPGA內(nèi)部邏輯實(shí)時(shí)重構(gòu).FPGA內(nèi)部運(yùn)行軟核處理器,負(fù)責(zé)與模塊化機(jī)器人運(yùn)動(dòng)控制相關(guān)的任務(wù),如舵機(jī)控制、直流電機(jī)控制、系統(tǒng)IO控制、傳感器數(shù)據(jù)采集等任務(wù).
對(duì)FPGA配置采用上述基于ARM的PS配置方法,平臺(tái)充分利用了FPcA內(nèi)部邏輯可重構(gòu)的特性,可組成多種不同構(gòu)形,不同構(gòu)形具有不同的物理結(jié)構(gòu)和控制方式,以滿足不同任務(wù)需求.其重構(gòu)方法采用:
(1)根據(jù)具體構(gòu)形規(guī)劃系統(tǒng)硬件資源種類,如構(gòu)形需要的直流電機(jī)數(shù)量、舵機(jī)數(shù)量、系統(tǒng)I/,O數(shù)量以及各種傳感器的數(shù)目.
(2)根據(jù)硬件資源種類修改FPcA內(nèi)部邏輯,實(shí)現(xiàn)硬件層次的“重構(gòu)”.
(3)根據(jù)FPGA邏輯的變化,進(jìn)行軟件的開發(fā),實(shí)現(xiàn)軟件層次的“重構(gòu)”.
(4)將FPGA配置文件下載到ARM的存儲(chǔ)器中,系統(tǒng)上電后,ARM結(jié)合需求通過讀取相應(yīng)存儲(chǔ)區(qū)的配
置文件對(duì)FPGA進(jìn)行配置,實(shí)現(xiàn)控制系統(tǒng)的動(dòng)態(tài)重構(gòu).
經(jīng)過實(shí)驗(yàn)驗(yàn)證,利用ARM的實(shí)時(shí)處理功能,對(duì)FPGA內(nèi)部邏輯進(jìn)行動(dòng)態(tài)重配,所設(shè)計(jì)的控制平臺(tái)可以滿足可重構(gòu)配置的性能要求.
4 結(jié)語(yǔ)
文中給出了基于ARM的FPGA的Ps加載配置方案,該方法電路結(jié)構(gòu)簡(jiǎn)單、易于實(shí)現(xiàn),充分利用ARM處理器功能強(qiáng)、速度快、應(yīng)用廣的特點(diǎn),在系統(tǒng)中可預(yù)先包含多個(gè)不同功能的配置文件,根據(jù)現(xiàn)場(chǎng)的需要進(jìn)行相應(yīng)的配置,實(shí)現(xiàn)在線更新FPGA功能,既節(jié)省了開發(fā)成本,又滿足了一些特殊的系統(tǒng)設(shè)計(jì)要求,也充分顯示出FPGA現(xiàn)場(chǎng)升級(jí)、靈活運(yùn)用的設(shè)計(jì)理念,方案的提出,對(duì)嵌人式數(shù)字系統(tǒng)設(shè)計(jì)具有相當(dāng)?shù)慕梃b意義.
評(píng)論