亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種軟件的配置方法、裝置及系統(tǒng)與流程

文檔序號:11729195閱讀:195來源:國知局
一種軟件的配置方法、裝置及系統(tǒng)與流程

本發(fā)明涉及計算機(jī)控制領(lǐng)域,更具體的說,涉及一種軟件的配置方法、裝置及系統(tǒng)。



背景技術(shù):

目前,需要寫入配置文件的芯片,如現(xiàn)場可編程門陣列fpga或者是dsp芯片,在使用前,都需要在芯片的閃存flash中寫入配置文件,配置文件中包括開發(fā)環(huán)境、配置程序等信息。

目前,將配置文件寫入到芯片的方法是:通過下載線將配置文件通過jtag接口寫入到芯片中。由于jtag接口設(shè)置在電路板上,將下載線連接到j(luò)tag接口,就需要技術(shù)人員直接與電路板接觸,對于全封閉的產(chǎn)品,就需要將產(chǎn)品進(jìn)行拆殼才能實現(xiàn)在芯片中寫入配置文件的目的,但是拆殼操作會增加寫入配置文件的復(fù)雜程度。

因此,亟需一種對于全封閉的產(chǎn)品,不需要進(jìn)行拆殼即能實現(xiàn)在芯片中寫入配置文件的方法。



技術(shù)實現(xiàn)要素:

有鑒于此,本發(fā)明提供一種軟件的配置方法、裝置及系統(tǒng),以解決現(xiàn)有技術(shù)中,對于全封閉的產(chǎn)品,需要進(jìn)行拆殼才能在芯片中寫入配置文件的問題。

為解決上述技術(shù)問題,本發(fā)明采用了如下技術(shù)方案:

一種軟件的配置方法,包括:

從控制裝置中接收配置文件和命令字;其中,所述命令字中包含有需要寫入所述配置文件的芯片的編號;

將所述配置文件通過網(wǎng)口寫入所述編號對應(yīng)的芯片的閃存flash中;

其中,所述網(wǎng)口為內(nèi)部設(shè)置有所述芯片的產(chǎn)品的殼體上的網(wǎng)口。

優(yōu)選地,將所述配置文件通過網(wǎng)口寫入所述編號對應(yīng)的芯片的閃存flash中,包括:

將所述配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包;

將每個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中。

優(yōu)選地,將每個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中,包括:

將第i個數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

判斷所述flash中的預(yù)設(shè)標(biāo)志位是否是預(yù)設(shè)數(shù)值;

當(dāng)判斷出所述flash中的所述預(yù)設(shè)標(biāo)志位是所述預(yù)設(shè)數(shù)值,判斷是否已經(jīng)將最后一個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

當(dāng)判斷出沒有將最后一個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中,使i=i+1,并返回所述將第i個數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

其中,i為正整數(shù)。

一種軟件的配置裝置,包括:

接收單元,用于從控制裝置中接收配置文件和命令字;其中,所述命令字中包含有需要寫入所述配置文件的芯片的編號;

寫入單元,用于將所述配置文件通過網(wǎng)口寫入所述編號對應(yīng)的芯片的閃存flash中;

其中,所述網(wǎng)口為內(nèi)部設(shè)置有所述芯片的產(chǎn)品的殼體上的網(wǎng)口。

優(yōu)選地,所述寫入單元包括:

拆分單元,用于將所述配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包;

第一寫入單元,用于將每個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中。

優(yōu)選地,所述第一寫入單元包括:

第二寫入單元,用于將第i個數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

第一判斷單元,用于判斷所述flash中的預(yù)設(shè)標(biāo)志位是否是預(yù)設(shè)數(shù)值;

第二判斷單元,用于當(dāng)所述第一判斷單元判斷出所述flash中的所述預(yù)設(shè)標(biāo)志位是所述預(yù)設(shè)數(shù)值,判斷是否已經(jīng)將最后一個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

控制單元,用于當(dāng)所述第二判斷單元判斷出沒有將最后一個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中,使i=i+1;

所述第二寫入單元,還用于當(dāng)所述控制單元使i=i+1后,將第i個數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

其中,i為正整數(shù)。

一種軟件的配置系統(tǒng),包括:

控制裝置,用于向配置裝置發(fā)送配置文件和命令字;其中,所述命令字中包含有需要寫入所述配置文件的芯片的編號;

配置裝置,用于接收所述配置文件和所述命令字,將所述配置文件通過網(wǎng)口寫入所述編號對應(yīng)的芯片的閃存flash中;其中,所述網(wǎng)口為內(nèi)部設(shè)置有所述芯片的產(chǎn)品的殼體上的網(wǎng)口;

內(nèi)部設(shè)置有所述芯片的所述產(chǎn)品,用于通過所述殼體上的網(wǎng)口接收所述配置裝置寫入的所述配置文件到所述芯片中。

優(yōu)選地,所述配置裝置用于將所述配置文件通過網(wǎng)口寫入所述編號對應(yīng)的芯片的閃存flash中時,具體用于:

將所述配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包;

將每個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中。

優(yōu)選地,所述配置裝置用于將每個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中時,具體用于:

將第i個數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

判斷所述flash中的預(yù)設(shè)標(biāo)志位是否是預(yù)設(shè)數(shù)值;

當(dāng)判斷出所述flash中的所述預(yù)設(shè)標(biāo)志位是所述預(yù)設(shè)數(shù)值,判斷是否已經(jīng)將最后一個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

當(dāng)判斷出沒有將最后一個所述數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中,使i=i+1,并返回所述將第i個數(shù)據(jù)包通過所述網(wǎng)口寫入所述flash中;

其中,i為正整數(shù)。

優(yōu)選地,所述配置裝置為安裝有操作系統(tǒng)的zynq芯片。

相較于現(xiàn)有技術(shù),本發(fā)明具有以下有益效果:

本發(fā)明提供了一種軟件的配置方法、裝置及系統(tǒng),將配置文件寫入到芯片是通過殼體上的網(wǎng)口實現(xiàn)的,因此不需要將殼體拆開,解決了現(xiàn)有技術(shù)中,對于全封閉的產(chǎn)品,需要進(jìn)行拆殼才能在芯片中寫入配置文件的問題。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。

圖1為本發(fā)明提供的一種軟件的配置方法的方法流程圖;

圖2為本發(fā)明提供的另一種軟件的配置方法的方法流程圖;

圖3為本發(fā)明提供的一種軟件的配置裝置的結(jié)構(gòu)示意圖;

圖4為本發(fā)明提供的另一種軟件的配置裝置的結(jié)構(gòu)示意圖;

圖5為本發(fā)明提供的一種軟件的配置系統(tǒng)的結(jié)構(gòu)示意圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。

本發(fā)明實施例提供了一種軟件的配置方法,參照圖1,包括:

s101、從控制裝置中接收配置文件和命令字;

其中,配置文件中包含有開發(fā)環(huán)境、配置程序等信息。命令字中包含有需要寫入配置文件的芯片的編號,例如,想要在芯片編號為101的芯片上寫入配置文件,此時命令字中存儲的就是101。

控制裝置是用于生成配置文件以及命令字的裝置,其中,控制裝置包括電腦或者上位機(jī)等。

s102、將配置文件通過網(wǎng)口寫入編號對應(yīng)的芯片的閃存flash中;

其中,網(wǎng)口為內(nèi)部設(shè)置有芯片的產(chǎn)品的殼體上的網(wǎng)口。芯片包括fpga、dsp芯片或者單片機(jī)等。

具體的,內(nèi)部設(shè)置有芯片的產(chǎn)品一般會在產(chǎn)品的殼體上設(shè)置有網(wǎng)口,本發(fā)明就是利用該網(wǎng)口將配置文件寫入芯片的閃存flash中。從而不需要增加另外的端口去寫入配置文件。

本實施例中,將配置文件寫入到芯片是通過殼體上的網(wǎng)口實現(xiàn)的,因此不需要將殼體拆開,解決了現(xiàn)有技術(shù)中,對于全封閉的產(chǎn)品,需要進(jìn)行拆殼才能在芯片中寫入配置文件的問題。

可選的,本發(fā)明的另一實施例中,參照圖2,步驟s102包括:

s202、將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包;

其中,配置文件是一個文件大小較大的數(shù)據(jù)包,但是在將配置文件寫入flash中時,由于配置文件較大,不能一次性將配置文件寫入,需要將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包。優(yōu)選的,預(yù)設(shè)數(shù)量字節(jié)為1024個字節(jié)。

s203、將第i個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

具體的,當(dāng)i=1時,說明是將第一個數(shù)據(jù)包寫入flash中。

s204、判斷flash中的預(yù)設(shè)標(biāo)志位是否是預(yù)設(shè)數(shù)值;

具體的,當(dāng)flash中正在寫入第i個數(shù)據(jù)包時,預(yù)設(shè)標(biāo)志位為0,當(dāng)?shù)趇個數(shù)據(jù)包成功寫入時,預(yù)設(shè)標(biāo)志位為1,此處預(yù)設(shè)數(shù)值為1。

s205、判斷是否已經(jīng)將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

具體的,當(dāng)判斷出flash中的預(yù)設(shè)標(biāo)志位是預(yù)設(shè)數(shù)值,判斷是否已經(jīng)將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中。

s206、使i=i+1;

具體的,當(dāng)判斷出沒有將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中,使i=i+1,并返回將第i個數(shù)據(jù)包通過網(wǎng)口寫入flash中。

即按照數(shù)據(jù)包的排列順序,依次將數(shù)據(jù)包寫入flash中,其中,i為正整數(shù)。

需要說明的是,步驟s203至步驟s206,是將每個數(shù)據(jù)包通過網(wǎng)口寫入flash中的子步驟。此外,步驟s201中的內(nèi)容請參照步驟s101的內(nèi)容,在此不再贅述。

本實施例中,由于flash不能一次性接收較大的配置文件,因此,通過將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包,進(jìn)而將數(shù)據(jù)包依次寫入flash中的方法在flash中寫入配置文件。

可選的,本發(fā)明的另一實施例中提供了一種軟件的配置裝置,參照圖3,包括:

接收單元101,用于從控制裝置中接收配置文件和命令字;其中,命令字中包含有需要寫入配置文件的芯片的編號;

寫入單元102,用于將配置文件通過網(wǎng)口寫入編號對應(yīng)的芯片的閃存flash中;

其中,網(wǎng)口為內(nèi)部設(shè)置有芯片的產(chǎn)品的殼體上的網(wǎng)口。

本實施例中,將配置文件寫入到芯片是通過殼體上的網(wǎng)口實現(xiàn)的,因此不需要將殼體拆開,解決了現(xiàn)有技術(shù)中,對于全封閉的產(chǎn)品,需要進(jìn)行拆殼才能在芯片中寫入配置文件的問題。

需要說明的是,本實施例中的各個單元的工作過程,請參照圖1對應(yīng)的實施例中的內(nèi)容,在此不再贅述。

可選的,本發(fā)明的另一實施例中,寫入單元102包括:

拆分單元1021,用于將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包;

第一寫入單元1022,用于將每個數(shù)據(jù)包通過網(wǎng)口寫入flash中。

其中,第一寫入單元1022包括:

第二寫入單元10221,用于將第i個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

第一判斷單元10222,用于判斷flash中的預(yù)設(shè)標(biāo)志位是否是預(yù)設(shè)數(shù)值;

第二判斷單元10223,用于當(dāng)?shù)谝慌袛鄦卧?0222判斷出flash中的預(yù)設(shè)標(biāo)志位是預(yù)設(shè)數(shù)值,判斷是否已經(jīng)將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

控制單元10224,用于當(dāng)?shù)诙袛鄦卧?0223判斷出沒有將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中,使i=i+1;

第二寫入單元10221,還用于當(dāng)控制單元10224使i=i+1后,將第i個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

其中,i為正整數(shù)。

本實施例中,由于flash不能一次性接收較大的配置文件,因此,通過將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包,進(jìn)而將數(shù)據(jù)包依次寫入flash中的方法在flash中寫入配置文件。

需要說明的是,本實施例中的各個單元的工作過程,請參照圖2對應(yīng)的實施例中的內(nèi)容,在此不再贅述。

可選的,本發(fā)明的另一實施例中提供了一種軟件的配置系統(tǒng),參照圖5,包括:

控制裝置201,用于向配置裝置發(fā)送配置文件和命令字;其中,命令字中包含有需要寫入配置文件的芯片的編號;

配置裝置202,用于接收配置文件和命令字,將配置文件通過網(wǎng)口寫入編號對應(yīng)的芯片的閃存flash中;其中,網(wǎng)口為內(nèi)部設(shè)置有芯片的產(chǎn)品的殼體上的網(wǎng)口;

內(nèi)部設(shè)置有所述芯片的所述產(chǎn)品203,用于通過所述殼體上的網(wǎng)口接收所述配置裝置202寫入的所述配置文件到所述芯片中。

其中,配置裝置202用于將配置文件通過網(wǎng)口寫入編號對應(yīng)的芯片的閃存flash中時,具體用于:

將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包;

將每個數(shù)據(jù)包通過網(wǎng)口寫入flash中。

具體的,配置裝置202用于將每個數(shù)據(jù)包通過網(wǎng)口寫入flash中時,具體用于:

將第i個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

判斷flash中的預(yù)設(shè)標(biāo)志位是否是預(yù)設(shè)數(shù)值;

當(dāng)判斷出flash中的預(yù)設(shè)標(biāo)志位是預(yù)設(shè)數(shù)值,判斷是否已經(jīng)將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

當(dāng)判斷出沒有將最后一個數(shù)據(jù)包通過網(wǎng)口寫入flash中,使i=i+1,并返回將第i個數(shù)據(jù)包通過網(wǎng)口寫入flash中;

其中,i為正整數(shù)。

具體的,控制裝置201包括電腦或者上位機(jī)等。配置裝置為安裝有操作系統(tǒng)的zynq芯片。其中,zynq芯片包含arm層和現(xiàn)場可編程門陣列fpga層,fpga層為邏輯層,簡稱為pl層,arm層簡稱為ps層,arm層內(nèi)嵌有操作系統(tǒng),其中,操作系統(tǒng)包括類unix操作系統(tǒng)linux系統(tǒng),操作系統(tǒng)通過c語言的套接字socket編寫網(wǎng)絡(luò)通信程序,進(jìn)而實現(xiàn)控制裝置201和zynq芯片的通信,例如,實現(xiàn)控制裝置201向zynq芯片傳輸配置文件和命令字。

控制裝置201向zynq芯片傳輸配置文件和命令字的過程為:控制裝置201通過zynq芯片自帶的網(wǎng)口向zynq芯片的操作系統(tǒng)傳輸配置文件和命令字,其中,傳輸協(xié)議為tcp/ip協(xié)議。操作系統(tǒng)接收了配置文件和命令字后,將配置文件存儲在雙倍速率同步動態(tài)隨機(jī)存儲器ddr中,進(jìn)而操作系統(tǒng)將配置文件拆分成多個包含預(yù)設(shè)數(shù)量字節(jié)的數(shù)據(jù)包,將多個數(shù)據(jù)包通過pl層的總線協(xié)議axi接口依次傳送到pl層,其中通過axi接口依次傳送到pl層時,需要將數(shù)據(jù)包的格式轉(zhuǎn)換成axi的數(shù)據(jù)格式,才能夠通過axi接口依次傳送到pl層,將數(shù)據(jù)包都傳送pl層后,再將數(shù)據(jù)包依次通過pl層的串行外設(shè)接口spi接口寫入到命令字中包含的編號對應(yīng)的芯片的flash中。

需要說明的是,由于將數(shù)據(jù)包寫入flash中時,每次只寫入一個數(shù)據(jù)包,當(dāng)寫入的數(shù)據(jù)包正在寫入時,flash中的預(yù)設(shè)標(biāo)志位不是預(yù)設(shè)數(shù)值,當(dāng)寫入的數(shù)據(jù)包成功寫完時,flash的預(yù)設(shè)標(biāo)志位是預(yù)設(shè)數(shù)值,此時可以寫入下一個數(shù)據(jù)包。

當(dāng)一個芯片的flash成功寫入配置文件后,配置裝置202會反饋給控制裝置201一個寫入完成信號。此時,可以采用同樣的方法對其他的芯片的flash寫入配置文件。當(dāng)一個芯片的flash中寫入配置文件后,通過斷電上電操作,既能夠自動加載配置文件。

此外,pl層的axi接口的設(shè)計要求是:axi采用標(biāo)準(zhǔn)的xilinxaxi接口,一端與ps層相連,由arm控制axi接口的地址和數(shù)據(jù)的讀寫;將axi接口的0地址的讀寫數(shù)據(jù)和數(shù)據(jù)有效信號引出到zynq芯片外,將axi接口設(shè)計為arm可讀寫的axififo接口,實現(xiàn)數(shù)據(jù)的串行通信。其中,數(shù)據(jù)有效信號是指高脈沖攜帶的數(shù)據(jù)為有效數(shù)據(jù)。

在pl層設(shè)計了axi接口,ps層想要訪問axi接口,就需要在axi接口設(shè)計axi驅(qū)動,其中,axi驅(qū)動為字符型驅(qū)動,采用打開open、讀read、寫write的方式讀寫pl層的axi的地址空間,實現(xiàn)操作系統(tǒng)對pl層的axififo接口的讀寫控制。

此外,針對操作系統(tǒng)的要求是:

1、操作系統(tǒng)的ip自動設(shè)置,優(yōu)選的,可以設(shè)置為192.168.1.155,以便于控制裝置201快速連接。

2、操作系統(tǒng)自動加載ps層的axi驅(qū)動;

3、自動運行操作系統(tǒng)的應(yīng)用程序,實現(xiàn)自動操作。

需要說明的是,控制裝置201和配置裝置202在建立連接時,是通過控制裝置201和配置裝置202分別向?qū)Ψ桨l(fā)送握手信號,若雙方均成功接收到對方的握手信號,則證明連接成功。

對所公開的實施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1