專利名稱:一種提高串行外圍設(shè)備接口傳輸效率的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
一種實(shí)現(xiàn)提高串行外圍設(shè)備接口傳輸效率的方法涉及數(shù)據(jù)通訊領(lǐng)域,具體來說是 涉及一種提高SPI數(shù)據(jù)傳輸?shù)膶?shí)現(xiàn)方法。
背景技術(shù):
隨著IC技術(shù)的不斷發(fā)展,各種設(shè)備之間的通訊方式也多種多樣,手段也越來越 多。其中SPI Serial Peripheral hterface,串行外圍設(shè)備接口)總線技術(shù)是一種用于設(shè) 備之間進(jìn)行數(shù)據(jù)傳輸?shù)拇型ㄓ嵔涌诩夹g(shù)。它可以提供較高的通訊速率,尤其適用于對外 設(shè)、器件的配置與控制。通常來說,SPI接口是以主從方式工作的,這種模式通常有一個主器件和一個或多 個從器件,之間接口包括4種信號(1)串行數(shù)據(jù)信號1 (主器件數(shù)據(jù)輸出,從器件數(shù)據(jù)輸入);(2)串行數(shù)據(jù)信號2 (主器件數(shù)據(jù)輸入,從器件數(shù)據(jù)輸出);(3)時鐘信號(由主器件產(chǎn)生);(4)從器件使能信號(由主器件控制)。SPI數(shù)據(jù)傳輸過程是由主器件通過從器件使能信號和時鐘信號來達(dá)到控制從器件 的目的。其中主器件通過從器件使能信號來選中某個或多個從器件,在數(shù)據(jù)傳輸過程中,主 器件發(fā)出有效的時鐘信號給從器件,主/從器件在有效的時鐘狀態(tài)時通過串行數(shù)據(jù)信號1 和串行數(shù)據(jù)信號2來相互進(jìn)行數(shù)據(jù)的收發(fā),從而實(shí)現(xiàn)主/從器件之間的數(shù)據(jù)通訊。但是,由于外圍設(shè)備的特性多種多樣,在一些情況下主設(shè)備只會接收從設(shè)備發(fā)出 的數(shù)據(jù),如果還是采用SPI的通常模式來傳輸,那么SPI接口的串行數(shù)據(jù)信號1則會一直處 于空閑,從而被浪費(fèi)?;谝陨峡紤],本發(fā)明采用一種比較新穎的方法,在上述情況下,同時 使用兩條串行數(shù)據(jù)信號進(jìn)行同向傳輸,這樣可由一條數(shù)據(jù)通道變?yōu)閮蓷l數(shù)據(jù)通道,從而大 大提高數(shù)據(jù)的傳輸效率。
發(fā)明內(nèi)容
針對SPI接口在某些應(yīng)用過程中,數(shù)據(jù)傳輸效率較低,并且串行數(shù)據(jù)信號資源被 浪費(fèi)的情況,本發(fā)明提供的方法可以很好的解決這一問題。本發(fā)明能夠在解決問題的基礎(chǔ) 上,在沒有增加額外資源的情況下使主/從設(shè)備之間的數(shù)據(jù)傳輸效率大大提高。本發(fā)明公開了一種提高串行外圍設(shè)備接口數(shù)據(jù)傳輸效率的方法,參照圖1的示意 圖。本發(fā)明所述方法涉及到的結(jié)構(gòu)包含至少一個控制設(shè)備C、至少一個設(shè)備A(SPI接口), 以及支持SPI接口通訊的信號至少含有一條雙向SCK時鐘信號、一條雙向MISO數(shù)據(jù)信號 和一條雙向MOSI數(shù)據(jù)信號。所述方法支持控制設(shè)備C實(shí)現(xiàn)對設(shè)備A進(jìn)行兩種配置方式配 置方式1為設(shè)備A被配置為主設(shè)備使用,配置方式2為設(shè)備A被配置為從設(shè)備使用。所述的控制設(shè)備C需要能夠?qū)υO(shè)備A進(jìn)行控制及操作。所述的設(shè)備A需要能夠支持控制設(shè)備C對其進(jìn)行相應(yīng)的控制以及支持至少一條雙向的SCK時鐘信號接口、一條雙向的MISO數(shù)據(jù)信號接口和一條雙向的MOSI數(shù)據(jù)信號接口。所述的配置方式1是指通過控制設(shè)備C將設(shè)備A配置為主設(shè)備,其接口信號雙向 的SCK時鐘信號被設(shè)定為單向輸出信號、雙向的MISO數(shù)據(jù)信號被設(shè)定為單向輸入信號、雙 向的MOSI數(shù)據(jù)信號被設(shè)定為單向輸入信號。所述的配置方式2是指通過控制設(shè)備C將設(shè)備A配置為從設(shè)備,其接口信號雙向 的SCK時鐘信號被設(shè)定為單向輸入信號、雙向的MISO數(shù)據(jù)信號被設(shè)定為單向輸出信號、雙 向的MOSI數(shù)據(jù)信號被設(shè)定為單向輸出信號。本發(fā)明具有以下優(yōu)點(diǎn)(1)本發(fā)明在實(shí)現(xiàn)對SPI接口數(shù)據(jù)傳輸?shù)耐瑫r又不花費(fèi)額外的資源。(2)本發(fā)明在實(shí)現(xiàn)對SPI接口數(shù)據(jù)傳輸?shù)耐瑫r又大大提高數(shù)據(jù)傳輸?shù)男省?3)本發(fā)明采用的數(shù)據(jù)傳輸方式,沒有增加設(shè)計(jì)的復(fù)雜度,設(shè)計(jì)成本很低。
圖1是本方法涉及的結(jié)構(gòu)示意2是本方法使用中配置方式一情況下的結(jié)構(gòu)示意3是本方法使用中配置方式二情況下的結(jié)構(gòu)示意4和圖5是本方法在數(shù)據(jù)傳輸過程中的數(shù)據(jù)格式時序定義示意圖
具體實(shí)施例方式下面參照附圖,給出具體的在不同配置方式下的實(shí)施描述。在使用本方法時,針對外圍設(shè)備特性及應(yīng)用方式的不同情況有兩種配置方式可供 選擇配置方式一當(dāng)設(shè)備B在系統(tǒng)中作為從設(shè)備使用,那么可通過控制設(shè)備C對設(shè)備 A(SPI)進(jìn)行操作,將設(shè)備A配置為主設(shè)備。(參照圖2的示意圖)具體操作如下根據(jù)使用要求,可將設(shè)備A與設(shè)備B之間的連接關(guān)系參照圖2的方 式連接。通過控制設(shè)備C將設(shè)備A配置為主設(shè)備方式,使得雙向的SCK時鐘信號被設(shè)定為 單向輸出信號、雙向的MISO數(shù)據(jù)信號被設(shè)定為單向輸入信號、雙向的MOSI數(shù)據(jù)信號被設(shè)定 為單向輸入信號。主設(shè)備A通過SCK時鐘信號實(shí)現(xiàn)對從設(shè)備B的傳輸控制,傳輸過程中,通 過兩條數(shù)據(jù)信號通道MISO和MOSI同時進(jìn)行由從設(shè)備B向主設(shè)備A的數(shù)據(jù)傳送。當(dāng)需要進(jìn) 行數(shù)據(jù)傳輸時,主設(shè)備A產(chǎn)生有效的SCK時鐘信號,從設(shè)備B根據(jù)有效的SCK時鐘信號開始 通過MISO信號和MOSI信號同時進(jìn)行數(shù)據(jù)的傳送,主設(shè)備A同時通過MISO和MOSI進(jìn)行數(shù) 據(jù)的接收。由于控制設(shè)備C對設(shè)備A進(jìn)行不同的傳輸配置會產(chǎn)生不同狀態(tài)的SCK時鐘信號 方式,不同情況下的傳送數(shù)據(jù)格式定義可參照圖4和圖5的示意圖。配置方式二 當(dāng)設(shè)備B在系統(tǒng)中作為主設(shè)備使用,那么可通過控制設(shè)備C對設(shè)備 A(SPI)進(jìn)行操作,將設(shè)備A配置為從設(shè)備。(參照圖3的示意圖)具體操作如下根據(jù)使用要求,可將設(shè)備A與設(shè)備B之間的連接關(guān)系參照圖3的方 式連接。通過控制設(shè)備C將設(shè)備A配置為從設(shè)備方式,使得雙向的SCK時鐘信號被設(shè)定為 單向輸入信號、雙向的MISO數(shù)據(jù)信號被設(shè)定為單向輸出信號、雙向的MOSI數(shù)據(jù)信號被設(shè)定 為單向輸出信號。此時的主設(shè)備B通過發(fā)出的SCK時鐘信號實(shí)現(xiàn)對從設(shè)備A的傳輸控制,
4傳輸過程中,通過兩條數(shù)據(jù)信號通道MISO和MOSI同時進(jìn)行由從設(shè)備A向主設(shè)備B進(jìn)行數(shù) 據(jù)傳送。當(dāng)需要進(jìn)行數(shù)據(jù)傳輸時,主設(shè)備B產(chǎn)生有效的SCK時鐘信號,從設(shè)備A根據(jù)有效的 SCK時鐘信號通過MISO信號和MOSI信號同時進(jìn)行數(shù)據(jù)的傳送,主設(shè)備B同時通過MISO和 MOSI進(jìn)行數(shù)據(jù)的接收。由于從設(shè)備A會接收到不同狀態(tài)的SCK時鐘信號方式,不同情況下 的傳送數(shù)據(jù)格式定義可參照圖4和圖5的示意圖。
權(quán)利要求
1.一種用于提高串行外圍設(shè)備接口數(shù)據(jù)傳輸效率的方法,傳輸結(jié)構(gòu)含有一個控制設(shè)備 及一個設(shè)備A,以及設(shè)備A用以與外圍設(shè)備B進(jìn)行數(shù)據(jù)通訊的雙向SCK時鐘信號、雙向MISO 數(shù)據(jù)信號和雙向MOSI數(shù)據(jù)信號,其特征在于控制設(shè)備根據(jù)外圍設(shè)備B的特性及應(yīng)用,對設(shè) 備A進(jìn)行配置,從而實(shí)現(xiàn)不同情況的數(shù)據(jù)傳輸,步驟如下(1)控制設(shè)備通過與設(shè)備A的接口將設(shè)備A配置為主設(shè)備模式或從設(shè)備模式;(2)在設(shè)備A被配置為主設(shè)備模式或從設(shè)備模式后,雙向SCK時鐘信號被設(shè)定為單向信 號,雙向MISO數(shù)據(jù)信號被設(shè)定為單向信號,雙向MOSI數(shù)據(jù)信號被設(shè)定為單向信號;(3)設(shè)備A通過MISO和MOSI兩條數(shù)據(jù)信號通道同時接收設(shè)備B發(fā)送的數(shù)據(jù)或發(fā)送數(shù) 據(jù)給設(shè)備B。
2.根據(jù)權(quán)利要求1所述的一種用于提高串行外圍設(shè)備接口數(shù)據(jù)傳輸效率的方法,其特 征在于,當(dāng)設(shè)備A作為主設(shè)備使用,外圍設(shè)備B作為從設(shè)備使用時,設(shè)備A可通過MISO和 MOSI兩條數(shù)據(jù)信號通道同時接收設(shè)備B發(fā)送的數(shù)據(jù)。
3.根據(jù)權(quán)利要求1所述的一種用于提高串行外圍設(shè)備接口數(shù)據(jù)傳輸效率的方法,其特 征在于,當(dāng)設(shè)備A作為從設(shè)備使用,外圍設(shè)備B作為主設(shè)備使用時,設(shè)備A可通過MISO和 MOSI兩條數(shù)據(jù)信號通道同時發(fā)送數(shù)據(jù)給設(shè)備B。
全文摘要
本發(fā)明涉及提高串行外圍設(shè)備接口(SPI,Serial Peripheral Interface)數(shù)據(jù)傳輸效率的一種實(shí)現(xiàn)方法。其結(jié)構(gòu)為它至少含有一個控制設(shè)備C(用以對設(shè)備A進(jìn)行操作控制)及一個設(shè)備A(SPI),以及設(shè)備A用以與外圍設(shè)備B進(jìn)行數(shù)據(jù)通訊的信號——至少包含一條雙向SCK時鐘信號、一條雙向MISO數(shù)據(jù)信號和一條雙向MOSI數(shù)據(jù)信號。本方法包括根據(jù)設(shè)備B的特性,通過控制設(shè)備C對設(shè)備A實(shí)現(xiàn)不同配置方式。本發(fā)明實(shí)現(xiàn)基于SPI接口數(shù)據(jù)傳輸時的高速數(shù)據(jù)搬移,方法簡單,沒有增加額外的成本,降低系統(tǒng)設(shè)計(jì)投入,提高了傳輸效率。
文檔編號G06F13/42GK102110070SQ20091024348
公開日2011年6月29日 申請日期2009年12月23日 優(yōu)先權(quán)日2009年12月23日
發(fā)明者張帆, 田勇 申請人:北京中電華大電子設(shè)計(jì)有限責(zé)任公司