專利名稱:外圍設(shè)備接口的協(xié)調(diào)訪問方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及外圍設(shè)備接口的控制技術(shù),特別是涉及外圍設(shè)備接口的協(xié)調(diào)訪問方法及裝置。
背景技術(shù):
目前,視頻顯示行業(yè),已經(jīng)不再是傳統(tǒng)的,單純負(fù)責(zé)視頻信號(hào)的輸出顯示了。在視頻界里,現(xiàn)在對(duì)視頻信號(hào)的處理,會(huì)根據(jù)不同的需要,而加入對(duì)視頻信號(hào)的一些算法,使顯示出來的視頻有不同的觀感,以達(dá)到客戶所需要的目的,例如對(duì)于視頻縮放技術(shù),會(huì)將視頻源通過算法處理后縮小或者放大顯示出來;對(duì)于視頻增強(qiáng)技術(shù),將受到風(fēng)沙或雨霧的影響而顯得模糊的視頻,可通過算法處理后,清晰顯示出來;還有視頻曲面技術(shù)等等。在這些利用算法的情況下,會(huì)產(chǎn)生一些參數(shù)(圖像亮度、灰度、曲面度等等),這些參數(shù)需要儲(chǔ)存起來,供CPU或者其他設(shè)備讀取,又不能因?yàn)閿嚯姸鴣G失。在這個(gè)情況下,就需要用到SPI (Serial Peripheral Interface,串行外圍設(shè)備接口)和儲(chǔ)存器(例如Flash)的組合設(shè)備來存儲(chǔ)這些參數(shù)。鑒于視頻業(yè)界的發(fā)展,很多情況下,需要一塊顯卡(或顯示設(shè)備),能同時(shí)同步做到視頻縮放、視頻增強(qiáng)、視頻曲面等等,而單個(gè)儲(chǔ)存器的存儲(chǔ)空間有一定限制,這種情況下,需要用到多個(gè)儲(chǔ)存器,相應(yīng)地,需要協(xié)調(diào)調(diào)配兩片或多片的SPI。在傳統(tǒng)技術(shù)當(dāng)中,多個(gè)外圍設(shè)備接口是相對(duì)獨(dú)立地與控制端或者其他設(shè)備進(jìn)行通信的,無法協(xié)調(diào)工作。從硬件上說,必定會(huì)造成布板的面積和成本的增加;從軟件角度看,也會(huì)導(dǎo)致整個(gè)系統(tǒng)的速度、性能被拖慢。
發(fā)明內(nèi)容
基于此,有必要針對(duì)上述問題,提供一種外圍設(shè)備接口的協(xié)調(diào)訪問方法及裝置,能夠協(xié)調(diào)調(diào)度外圍設(shè)備接口的訪問操作,提高訪問效率,避免數(shù)據(jù)丟失。一種外圍設(shè)備接口的協(xié)調(diào)訪問裝置,包括與外圍設(shè)備接口相連的接口解釋單元,該接口解釋單元包括地址信息接收單元;與所述外圍設(shè)備接口相連的先進(jìn)先出容器;其中,所述接口解釋單元還包括,與所述先進(jìn)先出容器相連的片選調(diào)度單元。相應(yīng)地,一種外圍設(shè)備接口的協(xié)調(diào)訪問方法,包括接口解釋單元獲取片選操作指令和目標(biāo)地址,根據(jù)片選操作指令選取至少一個(gè)外圍設(shè)備接口;為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接。實(shí)施本發(fā)明,具有如下有益效果上述外圍設(shè)備接口的協(xié)調(diào)訪問方法及裝置,通過一條片選操作指令即可同時(shí)選取一個(gè)或多個(gè)外圍設(shè)備接口進(jìn)行訪問操作,可以提高訪問效率,簡(jiǎn)化電路布局的設(shè)計(jì)。為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器作為數(shù)據(jù)緩存區(qū),根據(jù)接口解釋單元獲取的目標(biāo)地址,再建立緩存區(qū)與所述目標(biāo)地址的對(duì)應(yīng)位置的通信關(guān)系。其中,建立緩存區(qū)可以將對(duì)各個(gè)外圍設(shè)備接口操作的數(shù)據(jù)內(nèi)容先暫存起來,協(xié)調(diào)調(diào)度多個(gè)外圍設(shè)備接口的存/取操作,避免因接口切換而造成的數(shù)據(jù)丟失問題。
圖I為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問裝置的示意圖;圖2為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問裝置的整體示意圖;圖3為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問裝置的實(shí)施例示意圖;圖4為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問方法的流程圖;
圖5為本發(fā)明外圍設(shè)備接口的讀取訪問操作的方法流程圖;圖6為本發(fā)明外圍設(shè)備接口的寫入訪問操作的方法流程圖;圖7為本發(fā)明外圍設(shè)備接口的停止訪問操作的方法流程圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述。圖I為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問裝置的示意圖,包括與外圍設(shè)備接口相連的接口解釋單元,該接口解釋單元包括地址信息接收單元;與所述外圍設(shè)備接口相連的先進(jìn)先出容器;其中,所述接口解釋單元還包括,與所述先進(jìn)先出容器相連的片選調(diào)度單元。外圍設(shè)備接口是指接收控制指令,用于建立與外圍設(shè)備通信的接口。所述控制指令可以來源于中央控制器(CPU)、微控制器(MCU),或者通過網(wǎng)絡(luò)端口接收。所述外圍設(shè)備可以包括各式存儲(chǔ)器或其它外圍設(shè)備芯片。在傳統(tǒng)技術(shù)當(dāng)中,各個(gè)外圍設(shè)備接口相對(duì)獨(dú)立地建立通信連接,協(xié)調(diào)工作的效率低下。隨著日漸增多的各種外圍設(shè)備,多個(gè)外圍設(shè)備接口勢(shì)必會(huì)造成布板的面積和成本的增加。對(duì)于軟件系統(tǒng)來說,也會(huì)導(dǎo)致整個(gè)系統(tǒng)的速度、性能被拖慢。本發(fā)明包括了與外圍設(shè)備接口相連的接口解釋單元,在外圍設(shè)備接口接收控制指令之前,先對(duì)該控制指令進(jìn)行解析。其中,接口解釋單元包括地址信息接收單元,用于接收作用于外圍設(shè)備上的目標(biāo)操作地址。與傳統(tǒng)技術(shù)不同,接口解釋單元可以通過一條片選操作指令,同時(shí)選取一個(gè)或多個(gè)外圍設(shè)備接口進(jìn)行訪問操作,提高訪問效率,簡(jiǎn)化電路布局的設(shè)計(jì)。另外,本發(fā)明還包括,與所述外圍設(shè)備接口相連的先進(jìn)先出容器(FIFO容器單元),用于緩存與外圍設(shè)備接口交互的數(shù)據(jù)內(nèi)容。優(yōu)選地,F(xiàn)IFO容器單元可通過FIFO電路(FirstIn First Out,先進(jìn)先出)實(shí)現(xiàn),該電路為數(shù)據(jù)的存儲(chǔ)模塊,該模塊依照數(shù)據(jù)先進(jìn)先出為原貝U,不需要對(duì)地址進(jìn)行控制,可以根據(jù)空、滿等信號(hào)標(biāo)志位來判斷FIFO的存儲(chǔ)狀態(tài)。為外圍設(shè)備接口配置FIFO電路作為數(shù)據(jù)緩存區(qū),根據(jù)接口解釋單元獲取的目標(biāo)地址,再建立緩存區(qū)與所述目標(biāo)地址的對(duì)應(yīng)位置的通信關(guān)系。其中,建立緩存區(qū)可以將對(duì)各個(gè)外圍設(shè)備接口操作的數(shù)據(jù)內(nèi)容先暫存起來,協(xié)調(diào)調(diào)度多個(gè)外圍設(shè)備接口,避免因切換外圍設(shè)備接口而造成的數(shù)據(jù)丟失問題。
最后,所述接口解釋單元還包括,與所述先進(jìn)先出容器相連的片選調(diào)度單元,用于同時(shí)選取一個(gè)或多個(gè)外圍設(shè)備接口進(jìn)行訪問操作,提高效率。圖2為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問裝置的整體示意圖。與圖I相比,圖2的整體示意圖在其中一個(gè)實(shí)施例中給予了讀取訪問SPI的實(shí)施例裝置結(jié)構(gòu)示意圖,在另一個(gè)實(shí)施例中給予了寫入訪問SPI的實(shí)施例裝置結(jié)果示意圖。SPI (Serial Peripheral Interface,串行外圍設(shè)備接口)是由 Motorola 公司開發(fā),用來在微控制器(MCU)和外圍設(shè)備芯片之間提供一個(gè)低成本、易使用的接口,它可以使MCU與各種外圍設(shè)備以串行方式進(jìn)行通信以交換信息。 在一個(gè)實(shí)施例中,所述先進(jìn)先出容器包括與外圍設(shè)備接口的數(shù)量相對(duì)應(yīng)的預(yù)算數(shù)N個(gè)先進(jìn)先出讀取單元(FIFO讀取單元)。為每個(gè)外圍設(shè)備接口(SPI)配置一個(gè)先進(jìn)先出容器(FIFO讀取單元)作為數(shù)據(jù)緩存區(qū),則每個(gè)SPI的讀取操作可以異步進(jìn)行,其交互的信息緩存在FIFO容器當(dāng)中,無需擔(dān)心因切換SPI而造成的數(shù)據(jù)丟失問題。因?yàn)镾PI以串行方式進(jìn)行交換信息,所以對(duì)外圍設(shè)備發(fā)出數(shù)據(jù)內(nèi)容之前,要先向SPI發(fā)出一個(gè)讀取的指令,再發(fā)出8/16/24位的目標(biāo)地址信息,通信效率低。而本發(fā)明利用接口解釋單元解釋操作指令,利用FIFO容器緩存與SPI交互的數(shù)據(jù),則可以實(shí)現(xiàn)通過控制端的一條操作指令實(shí)現(xiàn)對(duì)多個(gè)SPI的讀取操作,從而減輕了控制端收發(fā)操作指令的負(fù)擔(dān)。在一個(gè)實(shí)施例中,所述先進(jìn)先出容器還包括,與外圍設(shè)備接口的數(shù)量相對(duì)應(yīng)的預(yù)算數(shù)N個(gè)先進(jìn)先出寫入單元(FIFO寫入單元);所述接口解釋單元還包括,與先進(jìn)先出寫入單元相連的數(shù)據(jù)信息接收單元。類似地,為每個(gè)外圍設(shè)備接口(SPI)配置一個(gè)先進(jìn)先出容器(FIFO寫入單元)作為數(shù)據(jù)緩存區(qū),則每個(gè)SPI的寫入操作可以異步進(jìn)行。本發(fā)明接口解釋單元還包括數(shù)據(jù)信息接收單元,用于接收來源于控制端的數(shù)據(jù)內(nèi)容。數(shù)據(jù)信息接收單元與FIFO寫入單元相連的,用于將寫入操作的數(shù)據(jù)加入FIFO隊(duì)列,等待寫入相應(yīng)的SPI中。圖3為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問裝置的實(shí)施例示意圖。與圖2相比,圖3的實(shí)施例示意圖揭示了一個(gè)優(yōu)選實(shí)施方式,其中,上述各個(gè)單元可以采用FPGA實(shí)現(xiàn)。在一個(gè)優(yōu)選實(shí)施例中,SPI與閃存(FLASH)相連,通過N個(gè)SPI實(shí)現(xiàn)對(duì)FLASH的擴(kuò)展存儲(chǔ)。在另一個(gè)優(yōu)選實(shí)施例中,所述FPGA與CPU相連,接收CPU發(fā)送的指令和數(shù)據(jù)信息。FLASH存儲(chǔ)器(Flash Memory,一般簡(jiǎn)稱FLASH或閃存),它屬于內(nèi)存器件的一種,一種不揮發(fā)性內(nèi)存。目前各類的DDR、SDRAM、RDRAM都屬于揮發(fā)性內(nèi)存,只要停止電流供應(yīng)內(nèi)存中的數(shù)據(jù)便無法保持。而閃存在沒有電流供應(yīng)的條件下,也能長(zhǎng)久地保持?jǐn)?shù)據(jù),其存儲(chǔ)特性相當(dāng)于硬盤,但其體積只相當(dāng)于人的半截手指,甚至更小。SPI-FLASH,就是指通過SPI接口對(duì)該種FLASH進(jìn)行訪問的FLASH種類。其結(jié)合了SPI接口和FLASH的優(yōu)點(diǎn),既低成本、易使用,又體積小,易于安放在PCB板上,與其他芯片連
接使用。在一個(gè)優(yōu)選實(shí)施例中,包括與所述外圍設(shè)備接口相連的閃存(FLASH)。本發(fā)明應(yīng)用于SPI-FLASH的擴(kuò)展存儲(chǔ)策略,能夠同時(shí)控制多個(gè)SPI,發(fā)揮SPI的協(xié)調(diào)調(diào)度優(yōu)勢(shì)。另外,由于建立了 FIFO容器作為緩存區(qū),便于與各種FLASH的存儲(chǔ)速度相適應(yīng),提高了系統(tǒng)的異步處理能力。
在另一個(gè)優(yōu)選實(shí)施例中,還包括與所述接口解釋單元、所述先進(jìn)先出容器分別相連的中央處理單元(CPU)。本發(fā)明應(yīng)用于處理CPU的操作指令,可以提高操作命令的效率,減少CPU收發(fā)操作命令的負(fù)擔(dān)。從而,也提高了 CPU與各種外圍設(shè)備的工作性能。圖4為本發(fā)明外圍設(shè)備接口的協(xié)調(diào)訪問方法的流程圖,包括SlOl :接口解釋單元獲取片選操作指令和目標(biāo)地址,根據(jù)片選操作指令選取至少一個(gè)外圍設(shè)備接口;S102 :為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接。所述接口解釋單元可以通過FPGA實(shí)現(xiàn),另外,可以利用FPGA的存儲(chǔ)資源Blackram來生成FIFO容器單元。FIFO容器單元可根據(jù)其用途不同,分為兩種1、用于寫入數(shù)據(jù)的FIFO寫入單元;2、用于從外圍設(shè)備讀取數(shù)據(jù)的FIFO讀取單元。這兩種FIFO容器合成一對(duì), 其數(shù)目根據(jù)外圍設(shè)備接口的數(shù)目而定,有N個(gè)接口,就有N對(duì)FIFO容器與其相對(duì)應(yīng)。另外,以控制端為CPU,外圍設(shè)備為SPI-FLASH做例子說明本發(fā)明。CPU選型為ARM9、FPGA 選型為 xc5vlx50t、SPI FLASH 選型為 M25P128。ARM9 與 FPGA 通訊,通過地址總線和數(shù)據(jù)總線。ARM9的16位數(shù)據(jù)總線,可以分為圖3所述的功能0 — 7位是對(duì)哪個(gè)SPI設(shè)備操作的片選(每個(gè)SPI模塊,對(duì)應(yīng)著每個(gè)SPI FLASH),根據(jù)SPI的數(shù)目,可以直接片選,也可以用譯碼器/編碼器進(jìn)行片選;第8位是讀取SPI數(shù)據(jù)FIFO的使能;第9位是寫入SPI數(shù)據(jù)FIFO的使能;第10位為整個(gè)SPI設(shè)備擦除的使能;第11為位擦除SPI設(shè)備其中一個(gè)扇區(qū)的使能;第12位為替換數(shù)據(jù)的使能;第13位為停止位。這些地址位的片選和使能,都是高電平(即I)有效,低電平(即0)為片選無效,第14 一 16位為預(yù)留位,為以后功能擴(kuò)展而用。需要補(bǔ)充說明的是,圖4的方法流程僅以圖3的實(shí)施裝置為例展開說明,但圖4方法中的所述接口解釋單元、所述FIFO容器并不局限于以FPGA來實(shí)現(xiàn),所有基于硬件或軟件形式的實(shí)施方式均應(yīng)包含在本方法的保護(hù)范圍之內(nèi)。下面基于上述ARM、FPGA, SPI-FLASH等設(shè)備為例,對(duì)本發(fā)明的實(shí)施方法進(jìn)行詳細(xì)說明。圖5為本發(fā)明外圍設(shè)備接口的讀取訪問操作的方法流程圖。與圖4相比,圖5的方法流程圖實(shí)現(xiàn)SPI的同時(shí)讀取操作。S201 :接口解釋單元獲取片選操作指令和目標(biāo)地址,根據(jù)片選操作指令選取至少一個(gè)外圍設(shè)備接口;S202 :為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接;S203 :將所述目標(biāo)地址的對(duì)應(yīng)位置的待讀數(shù)據(jù)內(nèi)容存儲(chǔ)到先進(jìn)先出容器;S204:根據(jù)所述先進(jìn)先出容器的標(biāo)志位非空,讀取該先進(jìn)先出容器的所述待讀數(shù)據(jù)內(nèi)容。FPGA設(shè)置有兩個(gè)寄存器,一個(gè)16位的連接到ARM9的0 —15位地址線作為片選調(diào)度單元(指令寄存器),一個(gè)8位的連接到ARM9的8位數(shù)據(jù)線作為地址信息接收單元/數(shù)據(jù)信息接收單元(地址寄存器/數(shù)據(jù)寄存器),以下以一個(gè)CPU要同時(shí)控制8個(gè)SPI (SPI-O至SPI-7設(shè)備)為例,地址線的低8位的每一位對(duì)應(yīng)著8個(gè)SPI設(shè)備的每一個(gè),具體實(shí)現(xiàn)如下要讀出SPI-3的地址為00000000往后的數(shù)據(jù)內(nèi)容,CPU向指令寄存器發(fā)送片選操作指令XX00000100001000,向地址寄存器發(fā)送目標(biāo)地址00000000,經(jīng)過命令解釋后,片選到與SPI-3相對(duì)應(yīng)的FIFO讀取單元(RX_FIF0-3容器),通過FPGA編程,向SPI-3發(fā)出讀取指令和目標(biāo)地址00000000,SPI-3就把待讀數(shù)據(jù)內(nèi)容讀出并儲(chǔ)存到RX_FIF0-3容器里面,供(PU讀取。若CPU需要讀取8個(gè)SPI相同地址空間(如00000100)的數(shù)據(jù),只需要發(fā)送片選操作指令XX00000111111111,和目標(biāo)地址00000100到FPGA,F(xiàn)PGA可以同時(shí)對(duì)8個(gè)SPI進(jìn)行讀取,并把待讀數(shù)據(jù)內(nèi)容緩存在FIFO讀取單元(RX_FIF0-0容器至RX_FIF0_7容器)里面供CPU讀取。CPU可以根據(jù)每個(gè)FIFO讀取單元的空標(biāo)志位進(jìn)行判斷其有沒數(shù)據(jù),若有的話,就進(jìn)行讀取。圖6為本發(fā)明外圍設(shè)備接口的寫入訪問操作的方法流程圖。與圖5相比,圖6的方法流程圖實(shí)現(xiàn)SPI的同時(shí)寫入操作。
S301 :接口解釋單元獲取片選操作指令和目標(biāo)地址,根據(jù)片選操作指令選取至少一個(gè)外圍設(shè)備接口;S302 :為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接;S303:接收待寫數(shù)據(jù)內(nèi)容,根據(jù)所述先進(jìn)先出容器的標(biāo)志位非滿,存儲(chǔ)所述待寫數(shù)據(jù)內(nèi)容到所述先進(jìn)先出容器;S304 :將所述待寫數(shù)據(jù)內(nèi)容寫入所述目標(biāo)地址的對(duì)應(yīng)位置。要寫入數(shù)據(jù)到SPI-2的從00000000開始的地址空間,CPU只需發(fā)送片選操作指令XX00001000000100到FPGA的指令寄存器,及發(fā)送目標(biāo)地址00000000到FPGA的地址寄存器,F(xiàn)PGA接送到數(shù)據(jù)后,進(jìn)行命令解析,并片選SPI-2所對(duì)應(yīng)的FIFO寫入單元(TX_FIF0_2容器),然后把需要寫入SPI的待寫數(shù)據(jù)內(nèi)容由8位的數(shù)據(jù)寄存器寫入TX_FIF0-2容器,通過FPGA編程,再將TX_FIF0-2容器的數(shù)據(jù)發(fā)往SPI-2。若CPU要對(duì)8個(gè)SPI的相同目標(biāo)地址(如10000000)寫入相同的數(shù)據(jù),需要發(fā)送片選操作指令XX00001011111111和目標(biāo)地址10000000到FPGA,F(xiàn)PGA可以同時(shí)片選8個(gè)FIFO寫入單元(TX_FIF0-0容器至TX_FIF0-7容器),把待寫數(shù)據(jù)內(nèi)容同時(shí)輸入到FIFO容器里,繼而寫入SPI。CPU可以根據(jù)每個(gè)FIFO容器的滿標(biāo)志位進(jìn)行判斷其數(shù)據(jù)是否溢出,若沒有有話,就進(jìn)行數(shù)據(jù)輸入。進(jìn)一步地,還可以實(shí)現(xiàn)對(duì)目標(biāo)地址的對(duì)應(yīng)位置上的數(shù)據(jù)內(nèi)容的修改。將目標(biāo)地址的對(duì)應(yīng)位置上的數(shù)據(jù)緩存到先進(jìn)先出容器,修改該數(shù)據(jù)為待寫數(shù)據(jù)內(nèi)容。如CPU需要對(duì)SPI-7的FLASH地址為00000010的數(shù)據(jù)進(jìn)行修改,CPU發(fā)送片選操作指令XX01000010000000到指令寄存器和發(fā)送要修改的目標(biāo)地址00000010到地址寄存器,經(jīng)過解析后,F(xiàn)PGA先將目標(biāo)地址的對(duì)應(yīng)位置上的相關(guān)地址的數(shù)據(jù)讀出來,緩存到RX_FIF0-7里,經(jīng)修改后的數(shù)據(jù)傳輸?shù)絋X_FIF0-7,然后以頁(yè)寫的方式寫回SPI-7,將待寫數(shù)據(jù)內(nèi)容替換目標(biāo)地址00000010的原有數(shù)據(jù)。如果要替換連續(xù)的幾個(gè)地址的數(shù)據(jù),也可以向數(shù)據(jù)寄存器輸入要輸入數(shù)據(jù)的數(shù)目(數(shù)目>=2),通過增加數(shù)據(jù)寄存器的方法把要替換的數(shù)據(jù)緩存起來,再進(jìn)行對(duì)SPI的讀取和回寫替換的操作。
圖7為本發(fā)明外圍設(shè)備接口的停止訪問操作的方法流程圖。與圖4或圖5或圖6相比,圖7的方法流程圖實(shí)現(xiàn)SPI的停止操作。S401 :接口解釋單元獲取片選操作指令和目標(biāo)地址,根據(jù)片選操作指令選取至少一個(gè)外圍設(shè)備接口;S402 :為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接;S403 :將所述目標(biāo)地址的對(duì)應(yīng)位置的待讀數(shù)據(jù)內(nèi)容存儲(chǔ)到先進(jìn)先出容器;S404:根據(jù)所述先進(jìn)先出容器的標(biāo)志位非空,讀取該先進(jìn)先出容器的所述待讀數(shù)據(jù)內(nèi)容;S405:接收待寫數(shù)據(jù)內(nèi)容,根據(jù)所述先進(jìn)先出容器的標(biāo)志位非滿,存儲(chǔ)所述待寫數(shù) 據(jù)內(nèi)容到所述先進(jìn)先出容器;S406 :將所述待寫數(shù)據(jù)內(nèi)容寫入所述目標(biāo)地址的對(duì)應(yīng)位置;當(dāng)寫入閃存的所述目標(biāo)地址的對(duì)應(yīng)位置時(shí),將該位置上的數(shù)據(jù)修改為所述待寫數(shù)據(jù)內(nèi)容;S407 當(dāng)接收到停止操作指令時(shí),根據(jù)所述停止操作指令選取外圍設(shè)備接口,切斷通過該外圍設(shè)備接口建立的通信連接。以上對(duì)SPI的讀、寫、修改的操作中,若CPU需要停止當(dāng)前操作,可以通過向停止標(biāo)志位置I或者改變當(dāng)前操作使能的標(biāo)志位來實(shí)現(xiàn)。當(dāng)接收到扇區(qū)擦除指令時(shí),根據(jù)所述扇區(qū)擦除指令選取外圍設(shè)備接口和扇區(qū)區(qū)數(shù),向該外圍設(shè)備接口發(fā)出擦除指令。例如,要擦除SPI-5所有地址的數(shù)據(jù),CPU發(fā)送扇區(qū)擦除指令xx00010000100000,經(jīng)過解析后,F(xiàn)PGA向SPI-5發(fā)出整塊擦除指令即可。若CPU需要對(duì)8片SPI都進(jìn)行整片擦除,就只需要發(fā)送扇區(qū)擦除指令XX00010011111111即可。此時(shí),扇區(qū)地址為空。若要擦除SPI-6的第0個(gè)扇區(qū),CPU發(fā)送扇區(qū)擦除指令xxOO 100001000000和扇區(qū)地址00000000,經(jīng)過解析后FPGA向SPI-6發(fā)出扇區(qū)擦除的指令和地址即可。若CPU要對(duì)8片SPI的相同扇區(qū)進(jìn)行扇區(qū)擦除,就只需要發(fā)送地址XX00100011111111和扇區(qū)地址到數(shù)據(jù)寄存器即可。以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
權(quán)利要求
1.一種外圍設(shè)備接口的協(xié)調(diào)訪問裝置,其特征在于,包括 與外圍設(shè)備接口相連的接口解釋單元,該接口解釋單元包括地址信息接收單元; 與所述外圍設(shè)備接口相連的先進(jìn)先出容器; 其中,所述接口解釋單元還包括,與所述先進(jìn)先出容器相連的片選調(diào)度單元。
2.根據(jù)權(quán)利要求I所述的外圍設(shè)備接口的協(xié)調(diào)訪問裝置,其特征在于,所述先進(jìn)先出容器包括 與外圍設(shè)備接口的數(shù)量相對(duì)應(yīng)的預(yù)算數(shù)N個(gè)先進(jìn)先出讀取單元。
3.根據(jù)權(quán)利要求I或2所述的外圍設(shè)備接口的協(xié)調(diào)訪問裝置,其特征在于 所述先進(jìn)先出容器還包括,與外圍設(shè)備接口的數(shù)量相對(duì)應(yīng)的預(yù)算數(shù)N個(gè)先進(jìn)先出寫入單元; 所述接口解釋單元還包括,與先進(jìn)先出寫入單元相連的數(shù)據(jù)信息接收單元。
4.根據(jù)權(quán)利要求I至3任一項(xiàng)所述的外圍設(shè)備接口的協(xié)調(diào)訪問裝置,其特征在于,包括 與所述外圍設(shè)備接口相連的閃存。
5.根據(jù)權(quán)利要求I至4任一項(xiàng)所述的外圍設(shè)備接口的協(xié)調(diào)訪問裝置,其特征在于,還包括 與所述接口解釋單元、所述先進(jìn)先出容器分別相連的中央處理單元。
6.一種外圍設(shè)備接口的協(xié)調(diào)訪問方法,其特征在于,包括 接口解釋單元獲取片選操作指令和目標(biāo)地址,根據(jù)片選操作指令選取至少一個(gè)外圍設(shè)備接口 ; 為每個(gè)外圍設(shè)備接口配置一個(gè)先進(jìn)先出容器,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接。
7.根據(jù)權(quán)利要求6所述的外圍設(shè)備接口的協(xié)調(diào)訪問方法,其特征在于,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接的步驟之后,包括 將所述目標(biāo)地址的對(duì)應(yīng)位置的待讀數(shù)據(jù)內(nèi)容存儲(chǔ)到先進(jìn)先出容器; 根據(jù)所述先進(jìn)先出容器的標(biāo)志位非空,讀取該先進(jìn)先出容器的所述待讀數(shù)據(jù)內(nèi)容。
8.根據(jù)權(quán)利要求6所述的外圍設(shè)備接口的協(xié)調(diào)訪問方法,其特征在于,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接的步驟之后,還包括 接收待寫數(shù)據(jù)內(nèi)容,根據(jù)所述先進(jìn)先出容器的標(biāo)志位非滿,存儲(chǔ)所述待寫數(shù)據(jù)內(nèi)容到所述先進(jìn)先出容器; 將所述待寫數(shù)據(jù)內(nèi)容寫入所述目標(biāo)地址的對(duì)應(yīng)位置。
9.根據(jù)權(quán)利要求8所述的外圍設(shè)備接口的協(xié)調(diào)訪問方法,其特征在于,接收待寫數(shù)據(jù)內(nèi)容的步驟之前,包括 將目標(biāo)地址的對(duì)應(yīng)位置上的數(shù)據(jù)緩存到先進(jìn)先出容器,修改該數(shù)據(jù)為待寫數(shù)據(jù)內(nèi)容。
10.根據(jù)權(quán)利要求6至9任一項(xiàng)所述的外圍設(shè)備接口的協(xié)調(diào)訪問方法,其特征在于,通過所述外圍設(shè)備接口建立所述先進(jìn)先出容器與所述目標(biāo)地址的對(duì)應(yīng)位置的通信連接的步驟之后,還包括當(dāng)接收到停止操作指令時(shí),根據(jù)所述停止操作指令選取外圍設(shè)備接口,切斷通過該外圍設(shè)備接口建立的通信連接;當(dāng)接收到扇區(qū)擦除指令時(shí),根據(jù)所述扇區(qū)擦除指令選取外圍設(shè)備接口和扇區(qū)地址,向該外圍設(shè)備接口發(fā)出擦除指令。
全文摘要
本發(fā)明公開了外圍設(shè)備接口的協(xié)調(diào)訪問方法及裝置。該裝置,包括與外圍設(shè)備接口相連的接口解釋單元,該接口解釋單元包括地址信息接收單元;與所述外圍設(shè)備接口相連的先進(jìn)先出容器;其中,所述接口解釋單元還包括,與所述先進(jìn)先出容器相連的片選調(diào)度單元。采用本發(fā)明,可以提高外圍設(shè)備接口的訪問效率,簡(jiǎn)化電路布局的設(shè)計(jì)。為外圍設(shè)備接口配置先進(jìn)先出容器作為數(shù)據(jù)緩存區(qū),可以將對(duì)各個(gè)外圍設(shè)備接口操作的數(shù)據(jù)內(nèi)容先暫存起來,協(xié)調(diào)調(diào)度多個(gè)外圍設(shè)備接口,避免因接口切換而造成的數(shù)據(jù)丟失問題。
文檔編號(hào)G06F13/20GK102750242SQ20121019331
公開日2012年10月24日 申請(qǐng)日期2012年6月12日 優(yōu)先權(quán)日2012年6月12日
發(fā)明者施楊 申請(qǐng)人:廣東威創(chuàng)視訊科技股份有限公司