TWI486783B - 存取資料的方法及系統 - Google Patents

存取資料的方法及系統 Download PDF

Info

Publication number
TWI486783B
TWI486783B TW102132604A TW102132604A TWI486783B TW I486783 B TWI486783 B TW I486783B TW 102132604 A TW102132604 A TW 102132604A TW 102132604 A TW102132604 A TW 102132604A TW I486783 B TWI486783 B TW I486783B
Authority
TW
Taiwan
Prior art keywords
management module
data
transmission data
applications
transmission
Prior art date
Application number
TW102132604A
Other languages
English (en)
Other versions
TW201510734A (zh
Inventor
Wen Te Liao
Original Assignee
Wistron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wistron Corp filed Critical Wistron Corp
Priority to TW102132604A priority Critical patent/TWI486783B/zh
Priority to CN201310443546.XA priority patent/CN104424147B/zh
Priority to US14/151,818 priority patent/US9418038B2/en
Publication of TW201510734A publication Critical patent/TW201510734A/zh
Application granted granted Critical
Publication of TWI486783B publication Critical patent/TWI486783B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Multi Processors (AREA)

Description

存取資料的方法及系統
本發明是有關於一種資料傳輸技術,且特別是有關於一種用於內部整合電路(Inter-Integrated Circuit,I2 C)匯流排的存取資料的方法及系統。
I2 C匯流排是一種串列通訊匯流排,使用多主從架構,其是為了讓主機板、嵌入式系統或手機用以連接低速週邊裝置而發展。目前I2 C匯流排是電子產品常見的資料傳輸界面,而I2 C匯流排通常用來傳送一些慢速的資料,如:溫度感測器、速度感測器、數位陀螺儀…等。
然而,由於I2 C匯流排在硬體設計上有其數量限制,通常會將多個I2 C元件全數接在同一條I2 C匯流排上,因此經常會發生同時存取I2 C匯流排的情形。此時,倘若控制軟體處理不當,勢必會造成資料存取不正確,進而影響系統不穩定。並且造成單一元件驅動程式在開發中不易除錯,導致延長了開發時間。
本發明提供一種存取資料的方法及系統,可讓多個內部整合電路(Inter-Integrated Circuit,I2 C)元件共用同一個I2 C匯流排,而不會造成同時存取的錯誤。
本發明的存取資料的方法,用於一電子裝置。本方法包括:由管理模組分別自多個應用程式接收多筆傳輸資料與多個識別碼,並依據接收順序將傳輸資料儲存至佇列;管理模組依據佇列的傳送順序,自上述傳輸資料中取出其中之一;管理模組將上述所取出的傳輸資料透過I2 C驅動模組傳送至對應的元件;管理模組透過I2 C驅動模組而自元件接收對應的回應資料;以及管理模組依據上述所取出的傳輸資料對應的一識別碼,將回應資料傳送至對應的應用程式。
在本發明的一實施例中,上述在由管理模組分別自上述應用程式接收傳輸資料之前,還可由管理模組自各應用程式接收註冊請求,藉以依據註冊請求產生對應的一識別碼。並且,管理模組傳送對應註冊請求的識別碼至各應用程式。
在本發明的一實施例中,上述方法中,管理模組還可自各應用程式接一取消註冊請求,以取消取消註冊請求對應的識別碼。
在本發明的一實施例中,上述各應用程式的傳輸資料格式包括識別碼、I2 C位址、傳輸資料的資料長度以及其資料本文。
在本發明的一實施例中,上述方法中,還可由管理模組 檢查佇列中是否存在有傳輸資料,以在檢查到存在傳輸資料時,依據傳送順序,取出其中一傳輸資料。
本發明的存取資料的系統,包括:元件;I2 C匯流排,耦接至上述元件;處理單元,耦接至I2 C匯流排,並經由I2 C匯流排存取上述元件;以及儲存單元,耦接至處理單元,且儲存有供處理單元執行的多個模組。上述模組包括:管理模組,自多個應用程式接收多筆傳輸資料與多個識別碼,並依據接收順序將上述傳輸資料儲存至佇列,且依據傳送順序來傳送傳輸資料;及I2 C驅動模組,透過管理模組與應用程式溝通,並且經由I2 C匯流排存取上述元件。上述管理模組依據傳送順序,取出其中一傳輸資料並傳送至I2 C驅動模組。而I2 C驅動模組經由I2 C匯流排將上述所取出的傳輸資料傳送至上述元件,並且,I2 C驅動模組將經由I2 C匯流排而自上述元件所接收的回應資料,傳送至管理模組,使得管理模組依據上述所取出的傳輸資料對應的識別碼,將回應資料傳送至對應的應用程式。
基於上述,利用管理模組來管理I2 C匯流排的存取,可在多個I2 C元件共用同一個I2 C匯流排的情況下,避免同時存取I2 C匯流排。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
110‧‧‧處理單元
120‧‧‧儲存單元
130‧‧‧I2 C匯流排
140、140_1、140_2‧‧‧元件
210_1、210_2‧‧‧元件
230‧‧‧管理模組
240‧‧‧I2 C驅動模組
410~440‧‧‧欄位
S305~S325‧‧‧存取資料的方法各步驟
S501~S531‧‧‧單一應用程式存取資料的方法各步驟
S601~S639‧‧‧兩個應用程式存取資料的方法各步驟
圖1是依照本發明一實施例的存取資料的系統方塊圖。
圖2是依照本發明一實施例的存取資料的系統架構圖。
圖3是依照本發明一實施例的存取資料的方法流程圖。
圖4是依照本發明一實施例的傳輸資料格式的示意圖。
圖5是依照本發明一實施例的單一應用程式存取資料的方法流程的示意圖。
圖6是依照本發明一實施例的兩個應用程式存取資料的方法流程的示意圖。
電腦系統通常提供內部整合電路(Inter-Integrated Circuit,I2 C)匯流排與周邊元件連接,透過軟體或韌體的驅動,來達成控制周邊元件。由於多個I2 C元件共用同一個I2 C匯流排,因此容易造成同時存取的錯誤狀況發生。為此,本發明提出一種存取資料的方法及系統,可以非同步方式來存取I2 C匯流排,藉此可避免同時存取I2 C匯流排的情況發生。
圖1是依照本發明一實施例的存取資料的系統方塊圖。請參照圖1,該系統例如為手機、筆記型電腦、桌上型電腦等電子裝置,其包括處理單元110、儲存單元120、I2 C匯流排130以及元件140。處理單元110耦接至儲存單元120及I2 C匯流排130。處理單元110經由I2 C匯流排130來存取元件140。
處理單元110例如為中央處理單元(Central Processing Unit,CPU)或是其他可程式化之微處理器(Microprocessor)等。儲存單元120例如為隨機存取記憶體(Random Access Memory,RAM)、唯讀記憶體(Read-Only Memory,ROM)、快閃記憶體(Flash memory)或磁碟儲存裝置(Magnetic disk storage device)等。元件140例如為具有I2 C介面的溫度感測器、速度感測器、數位陀螺儀等。
在本實施例中,儲存單元120中儲存有多個程式碼片段。上述程式碼片段在被安裝後,會由處理單元110來執行。這些程式碼片段包括多個指令,處理單元110藉由這些指令來存取資料方法的多個步驟。在本實施例中,存取資料的系統僅包括一個處理單元110,而在其他實施例中,存取資料的系統亦可包括多個處理單元110,而由這些處理單元來執行被安裝的程式碼片段。
圖2是依照本發明一實施例的存取資料的系統架構圖。請同時參照圖1及圖2,管理模組230與I2 C驅動模組240例如為存在於儲存單元120中,以供處理單元110執行。而為了方便說明,本實施例列舉了兩個應用程式210_1、210_2,以及兩個具有12 C介面的元件140_1、140_2。而在其他實施例中並不限制應用程式與元件的數量。
在此,於作業系統中設置一管理模組230,藉以專門負責控管I2 C匯流排130的軟體或韌體,所有I2 C匯流排130的存取都透過此管理模組230,可避免多個應用程式同時存取I2 C匯流排 130。另外,管理模組230還配置了一塊記憶體空間足以存放待處理的I2 C指令和資料。此記憶體空間例如為先進先出(First In First Out,FIFO)的佇列(Queue)。上述佇列可以提供應用程式210_1、210_2要求存取I2 C匯流排130的指令和資料的暫存。管理模組230按照佇列的傳送順序來處理所接收到的傳輸資料,並將處理後所得到的回應資料傳回給要求存取元件的應用程式。而上述管理模組230可以是一般應用軟體,也可以是驅動程式。
I2 C驅動模組240也就是I2 C匯流排130的驅動程式(driver),其透過管理模組230與應用程式210_1、210_2溝通,並且經由I2 C匯流排130存取元件140_1、140_2。
底下即搭配上述系統來說明存取資料的詳細流程。圖3是依照本發明一實施例的存取資料的方法流程圖。在本實施例中,以應用程式210_1、210_2為例,並假設應用程式210_1、210_2欲同時透過I2 C匯流排130來存取元件140_1、140_2。即,應用程式210_1欲透過I2 C匯流排130來存取元件140_1,且應用程式210_2欲透過I2 C匯流排130來存取元件140_2。
請同時參照圖2及圖3,在步驟S305中,管理模組230分別自多個應用程式接收多筆傳輸資料與多個識別碼,並依據接收順序將上述傳輸資料儲存至佇列。在此,應用程式例如將傳輸資料與識別碼封裝為符合傳輸資料格式的封包,而將封包傳送至管理模組230。舉例來說,圖4是依照本發明一實施例的傳輸資料格式的示意圖。請參照圖4,傳輸資料格式包括四個欄位410~440。 欄位410記錄識別碼,欄位420記錄欲存取元件的I2 C位址,欄位430記錄資料長度,欄位440則是記錄資料本文(包括資料或/及指令)。上述識別碼用以識別應用程式的身分。
應用程式210_1、210_2首先以如圖4所示的傳輸資料格式,將其對應的識別碼與傳輸資料封裝為封包後,傳送至管理模組230。而管理模組230在接收到封包後,則依據接收順序將上述封包儲存至佇列中,以待管理模組230逐一進行處理。
接著,管理模組230會檢查佇列中是否存在有傳輸資料,以在檢查到存在傳輸資料時,依據傳送順序,取出其中一傳輸資料。即,在步驟S310中,管理模組230依據佇列的傳送順序,自佇列中取出具有第一傳送順序的傳輸資料。上述佇列例如為FIFO佇列,則先進入佇列的傳輸資料將優先被處理,之後進來的傳輸資料則必須稍候。為方便說明,底下以應用程式210_1的傳輸資料作為第一筆寫入至佇列中的資料為例來進行說明。即,管理模組230自佇列中取出具有第一傳送順序的由應用程式210_1所傳送的封包,並將此封包拆解而獲得傳輸資料的資料本文、欲傳送的I2 C位址及資料長度。
之後,在步驟S315中,管理模組230將上述所取出的傳輸資料透過I2 C驅動模組240,經由I2 C匯流排130而傳送至對應的元件140_1。例如,管理模組230將傳輸資料的資料本文、欲傳送的I2 C位址及資料長度重新封裝後,依據所記錄的I2 C位址,將重新封裝的封包傳送至對應的元件140_1。
而後,在步驟S320中,管理模組230透過I2 C驅動模組240而自元件140_1接收對應的回應資料。並且,在步驟S325中,管理模組230依據對應的識別碼,將回應資料傳送至對應的應用程式210_1。例如,管理模組230會將回應資料與識別碼重新封裝為符合如圖4所示的傳輸資料格式的封包後再傳送回應用程式210_1。
底下再分別列舉實施例來說明單一應用程式透過管理模組230來存取元件的時序,以及多個應用程式透過管理模組230來存取元件的時序。
圖5是依照本發明一實施例的單一應用程式存取資料的方法流程的示意圖。在圖5中,以應用程式210_1透過管理模組230來存取元件140_1、140_2為例進行說明。
首先,在步驟S501中,應用程式210_1傳送註冊請求至管理模組230。而管理模組230在接收到註冊請求時,其會依據註冊請求產生(或查詢)對應的一識別碼ID1。接著,管理模組230將識別碼ID1傳送至應用程式210_1,如步驟S503所示。
在步驟S505中,應用程式210傳送傳輸資料A1至管理模組230。例如,應用程式210_1將識別碼ID1、元件140_1的I2 C位址、傳輸資料A1的資料長度及其資料本文封裝為一封包而傳送至管理模組230。管理模組230接收到上述封包後,便將封包儲存至佇列中。
之後,在步驟S507中,管理模組230自佇列中取出第一 個封包,並將其拆解而獲得傳輸資料A1後,再轉換為符合I2 C格式的封包,進而依照I2 C位址將傳輸資料A1傳送至I2 C驅動模組240。並且,在步驟S509中,經由I2 C匯流排130傳送傳輸資料A1至元件140_1。
然後,在步驟S511中,元件140_1經由I2 C匯流排130傳送回應資料B1至I2 C驅動模組240。並且,在步驟S513中,I2 C驅動模組240將回應資料B1傳送至管理模組230。而在步驟S515中,管理模組230將元件140_1的回應資料B1封裝為符合傳輸資料格式(如圖4)的封包後,再傳回給應用程式210_1。
接著,應用程式210_1傳送另一傳輸資料A2至元件140_2,如步驟S517所示。應用程式210_1將傳輸資料A2與識別碼ID1封裝為符合傳輸資料格式的封包(包括應用程式210_1的識別碼ID1、元件140_2的I2 C位址、資料長度及資料本文)後,傳送給管理模組230。管理模組230在接收到傳過來的封包,便將封包放入佇列中。
之後,在步驟S519(如同上述步驟S507)中,管理模組230自佇列中取出上述封包,並將其拆解而獲得傳輸資料A2後,以I2 C格式傳送至I2 C驅動模組240。並且,在步驟S521中,I2 C驅動模組240透過I2 C匯流排130傳送傳輸資料A2給元件140_2。
然後,在步驟S523中,元件140_2經由I2 C匯流排130傳送回應資料B2給I2 C驅動模組240。而在步驟S525中,I2 C驅動模組240將元件140_2的回應資料B2傳回給管理模組230。並 且,在步驟S527中,管理模組230將回應資料B1以傳輸資料格式傳回給應用程式210_1。
當應用程式210_1不再與元件140_1、140_2傳送資料,或者應用程式210_1結束時,則可透過管理模組230取消註冊步驟,使得管理模組230可以釋放資源供其他應用程式使用。如步驟S529所示,應用程式210_1向管理模組230傳送取消註冊(unregister)請求,藉以取消註冊。並且,在步驟S531中,管理模組230通知應用程式210_1已取消成功。例如,管理模組230傳送一特定值“-1”給應用程式210_1,表示識別碼ID1已經成功取消了。
在上述步驟S501~步驟S531中,應用程式210_1與具有I2 C介面的元件140_1及元件140_1之間的資料傳送是先透過向管理模組230的註冊步驟(步驟S501),而由管理模組230傳回應用程式210_1對應的識別碼。應用程式210_1向管理模組230註冊,便可取得對應的識別碼,接下來就可以與元件140_1、140_2來溝通了。上述識別碼是用於應用程式210_1透過管理模組230存取元件140_1、140_2時會使用於傳輸資料格式中(如圖4的欄位410)。
接著,舉例說明多個應用程式透過管理模組230來存取元件的時序的詳細流程。圖6是依照本發明一實施例的兩個應用程式存取資料的方法流程的示意圖。在圖6中,,以應用程式210_1透過管理模組230來存取元件140_1,同時應用程式210_2亦透過 管理模組230來存取元件140_2為例進行說明。
在步驟S601中,應用程式210_1向管理模組230傳送註冊請求以進行註冊。接著,在步驟S603中,管理模組230傳回識別碼ID1給應用程式210_1。
另外,在步驟S605中,應用程式210_2亦同時向管理模組230傳送註冊請求以進行註冊。並且在步驟S607中,管理模組230傳回識別碼ID2給應用程式210_2。
接著,步驟S609,應用程式210_1將傳輸資料A3以傳輸資料格式傳送至管理模組230。例如,應用程式210_1將識別碼ID1、元件140_1的I2 C位址、傳輸資料A3的資料長度及其資料本文封裝為一封包後傳送至管理模組230。
然後,在步驟S611中,應用程式210_2傳輸資料A4以傳輸資料格式傳送至管理模組230。例如,應用程式210_2將識別碼ID2、元件140_2的I2 C位址、傳輸資料A4的資料長度及其資料本文封裝為一封包後傳送至管理模組230。
在此,應用程式210_1及應用程式210_2同時傳送了傳輸資料A3與傳輸資料A4。由於此時應用程式210_1尚未收到管理模組230所傳回的回應資料,且應用程式210_2又傳送出傳輸資料A4,因此若未透過管理模組230來進行管理,則會造成兩筆傳輸資料A3、A4同時存取I2 C匯流排130而造資料不正確或其他無法預知的結果。而在本實施例中,在應用程式210_1及應用程式210_2與I2 C匯流排130之間,進一步透過管理模組230來進行 管理,便可將欲傳送的傳輸資料A3與傳輸資料A4先放入一佇列(例如為FIFO佇列)中,接下來管理模組230便可根據佇列的傳送順序來逐一進行處理。
之後,管理模組230自佇列中取出第一筆資料,即具有第一優先傳送順序的資料。在此,假設第一筆資料為傳輸資料A3。例如,管理模組230自佇列中取出第一個封包,並將其拆解而獲得傳輸資料A3後,再轉換為符合I2 C格式的封包(包括元件140_1的I2 C位址、傳輸資料A3資料長度及其資料本文),進而依照I2 C位址將傳輸資料A3傳送至I2 C驅動模組240,如步驟S613所示。並且,在步驟S615中,I2 C驅動模組240透過I2 C匯流排130傳送傳輸資料A3給元件140_1。
接著,在步驟S617中,元件140_1經由I2 C匯流排130傳送回應資料B3至I2 C驅動模組240。而在步驟S619中,I2 C驅動模組240將將回應資料B3傳回給管理模組230。並且,在步驟S621中,管理模組230將元件140_1的回應資料B3以傳輸資料格式(如圖4)傳回給應用程式210_1。於此時,應用程式210_1才接收到回應的資料(即,回應資料B3)。接著,管理模組230會再自佇列中取出下一筆資料(即傳輸資料A4)以進行處理。
管理模組230自佇列中取出下一個封包(由於上一個封包已經處理完畢,故,亦為此時的第一個封包),並將其拆解而獲得傳輸資料A4。在步驟S623中,管理模組230以I2 C格式將傳輸資料A4,傳送給I2 C驅動模組240。而在步驟S625中,I2 C驅動 模組240透過I2 C匯流排130傳送傳輸資料A4給元件140_2。
而後,在步驟S627中,元件140_2傳回回應資料B4給I2 C驅動模組240。並在步驟S629中,I2 C驅動模組240將元件140_2的回應資料B4傳回給管理模組230。之後,在步驟S631中,管理模組230以傳輸資料格式將回應資料B4傳回給應用程式210_2。在此,應用程式210_2也已經收到元件140_2所回應的回應資料B4。
而在應用程式210_1、210_2不想與元件140_1、140_2進行溝通時或者應用程式210_1、210_2結束時,則亦可透過管理模組230取消註冊步驟,使得管理模組230可以釋放資源供其他應用程式使用。
如步驟S633所示,應用程式210_1向管理模組230傳送取消註冊請求。而在步驟S635中,管理模組230通知應用程式210_1已取消成功。例如,管理模組230傳回一值“-1”給應用程式210_1表示識別碼ID1已經成功取消了。
同樣地,在步驟S637中,應用程式210_2向管理模組230傳送取消註冊請求。而在步驟S639中,管理模組230通知應用程式210_2已取消成功。例如,管理模組230傳回送一值“-1”給應用程式210_2表示識別碼ID2已經成功取消了。
在上述實施例中,應用程式210_2並不會在傳送傳輸資料A4之後就立即收到元件140_2傳回的回應資料B4,其會等到管理模組230已經處理到應用程式210_2所傳來的傳輸資料A4, 應用程式210_2才能取得元件140_2回傳的回應資料B4。據此,透過管理模組230的控管,可讓I2 C匯流排130一次只處理一筆資料的傳輸跟接收,也就是一次只處理一個I2 C指令,而且不會造成資料傳輸與接收互相隨機穿插所造成的資料錯誤或其他不可以預期的結果。
綜上所述,在上述實施例中,在應用程式與I2 C匯流排之間設置一管理模組,使得I2 C匯流排的存取皆透過此管理模組,據此可避免多個應用程式同時存取I2 C匯流排,進而避免資料存取錯誤的狀況發生,而讓系統更穩定、更易除錯,縮短開發所需花費的時間。並且,可以讓每個I2 C元件的程式開發更單純,在系統整合及設計上也會更有效率。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
S305~S325‧‧‧存取資料的方法各步驟

Claims (8)

  1. 一種存取資料的方法,用於一電子裝置,包括:由一管理模組自多個應用程式各自接收一註冊請求,藉以依據各該些應用程式的該註冊請求而產生多個識別碼之一,並且傳送對應該註冊請求的該些識別碼之一至各該些應用程式;由該管理模組分別自該些應用程式接收多筆傳輸資料與該些識別碼,並依據一接收順序將該些傳輸資料儲存至一佇列;該管理模組依據該佇列的一傳送順序,自該些傳輸資料中取出其中之一;該管理模組將上述所取出的傳輸資料透過一內部整合電路驅動模組傳送至對應的一元件;該管理模組透過該內部整合電路驅動模組而自該元件接收對應的一回應資料;以及該管理模組依據上述所取出的傳輸資料對應的該些識別碼之一,將該回應資料傳送至對應的該些應用程式之一。
  2. 如申請專利範圍第1項所述的方法,更包括:該管理模組自各該些應用程式接收一取消註冊請求;以及取消該取消註冊請求對應的該些識別碼之一。
  3. 如申請專利範圍第1項所述的方法,其中各該些應用程式的一傳輸資料格式包括該些識別碼之一、一內部整合電路位址、一資料長度以及該些傳輸資料之一。
  4. 如申請專利範圍第1項所述的方法,更包括: 由該管理模組檢查該佇列中是否存在有該些傳輸資料其中之一,以在檢查到存在該些傳輸資料其中之一時,依據該傳送順序,自該些傳輸資料中取出其中之一。
  5. 一種存取資料的系統,包括:一元件;一內部整合電路匯流排,耦接至該元件;一處理單元,耦接至該內部整合電路匯流排,並經由該內部整合電路匯流排存取該元件;以及一儲存單元,耦接至該處理單元,且儲存有供該處理單元執行的多個模組,其中該些模組包括;一管理模組,自多個應用程式接收多筆傳輸資料與多個識別碼,並依據一接收順序將該些傳輸資料儲存至一佇列,且依據一傳送順序來傳送該些傳輸資料,其中該管理模組自各該些應用程式接收一註冊請求,藉以依據該註冊請求產生該些識別碼之一,並傳送對應該註冊請求的該些識別碼之一至各該些應用程式;以及一內部整合電路驅動模組,透過該管理模組與該些應用程式溝通,並且經由該內部整合電路匯流排存取該元件;其中,該管理模組依據該傳送順序,自該些傳輸資料中取出其中之一並傳送至該內部整合電路驅動模組;其中,該內部整合電路驅動模組經由該內部整合電路匯流排將上述所取出的傳輸資料傳送至該元件,並且,該內部整合 電路驅動模組將經由該內部整合電路匯流排而自該元件所接收的一回應資料,傳送至該管理模組,使得該管理模組依據上述所取出的傳輸資料對應的該些識別碼之一,將該回應資料傳送至對應的該些應用程式之一。
  6. 如申請專利範圍第5項所述的系統,其中當該管理模組自各該些應用程式接收一取消註冊請求時,取消該取消註冊請求對應的該些識別碼之一。
  7. 如申請專利範圍第5項所述的系統,其中各該些應用程式的一傳輸資料格式包括該些識別碼之一、一內部整合電路位址、一資料長度以及該些傳輸資料之一;而該佇列為先進先出佇列。
  8. 如申請專利範圍第5項所述的系統,其中該管理系統檢查該佇列中是否存在有該些傳輸資料其中之一,以在檢查到存在該些傳輸資料其中之一時,依據該傳送順序,自該些傳輸資料中取出其中之一。
TW102132604A 2013-09-10 2013-09-10 存取資料的方法及系統 TWI486783B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW102132604A TWI486783B (zh) 2013-09-10 2013-09-10 存取資料的方法及系統
CN201310443546.XA CN104424147B (zh) 2013-09-10 2013-09-25 存取数据的方法及系统
US14/151,818 US9418038B2 (en) 2013-09-10 2014-01-10 Method and system for accessing data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102132604A TWI486783B (zh) 2013-09-10 2013-09-10 存取資料的方法及系統

Publications (2)

Publication Number Publication Date
TW201510734A TW201510734A (zh) 2015-03-16
TWI486783B true TWI486783B (zh) 2015-06-01

Family

ID=52626679

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102132604A TWI486783B (zh) 2013-09-10 2013-09-10 存取資料的方法及系統

Country Status (3)

Country Link
US (1) US9418038B2 (zh)
CN (1) CN104424147B (zh)
TW (1) TWI486783B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI823680B (zh) * 2022-11-18 2023-11-21 新唐科技股份有限公司 資料傳輸裝置和方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200428221A (en) * 2003-06-06 2004-12-16 Mitac Int Corp Method for data transmission in the master device and the slave device
US20110213906A1 (en) * 2008-09-12 2011-09-01 Telefonaktiebolaget Lm Ericsson (Publ) Interrupt Controller and Methods of Operation
US20130166802A1 (en) * 2011-12-26 2013-06-27 Nec Corporation Transponder, method and recording medium containing instructions for controlling the same
TW201335763A (zh) * 2012-02-27 2013-09-01 Hon Hai Prec Ind Co Ltd 具有匯流排共用功能的電子裝置及方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768530A (en) * 1995-12-28 1998-06-16 Emc Corporation High speed integrated circuit interface for fibre channel communications
CN102375749B (zh) * 2010-08-24 2014-06-18 上海华虹集成电路有限责任公司 一种采用i2c总线快速下载和更新固件的方法
JP2012203750A (ja) * 2011-03-26 2012-10-22 Fujitsu Ltd サーバ管理装置、サーバ管理方法、及び、サーバ管理プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200428221A (en) * 2003-06-06 2004-12-16 Mitac Int Corp Method for data transmission in the master device and the slave device
US20110213906A1 (en) * 2008-09-12 2011-09-01 Telefonaktiebolaget Lm Ericsson (Publ) Interrupt Controller and Methods of Operation
US20130166802A1 (en) * 2011-12-26 2013-06-27 Nec Corporation Transponder, method and recording medium containing instructions for controlling the same
TW201335763A (zh) * 2012-02-27 2013-09-01 Hon Hai Prec Ind Co Ltd 具有匯流排共用功能的電子裝置及方法

Also Published As

Publication number Publication date
CN104424147B (zh) 2017-09-22
CN104424147A (zh) 2015-03-18
US20150074307A1 (en) 2015-03-12
US9418038B2 (en) 2016-08-16
TW201510734A (zh) 2015-03-16

Similar Documents

Publication Publication Date Title
TWI239187B (en) System and method for managing and validating remote keys which correspond to outstanding data transactions
US8713239B2 (en) Bus controller for handling split transactions
TWI613548B (zh) 遠端平台管理之計算裝置實施方法、保存用於遠端平台管理的電腦可執行指令之非暫時性媒體、以及遠端管理式計算裝置
WO2017056725A1 (ja) 車載制御装置
WO2016127552A1 (zh) 一种直接内存存取dma控制器及数据传输的方法
US9170963B2 (en) Apparatus and method for generating interrupt signal that supports multi-processor
JP2009527815A5 (zh)
CN107291641B (zh) 用于计算单元的存储器直接访问控制装置及其运行方法
US20060184708A1 (en) Host controller device and method
TWI486783B (zh) 存取資料的方法及系統
US8346975B2 (en) Serialized access to an I/O adapter through atomic operation
JP2008502977A (ja) バス・コントローラのための割り込み方式
EP2393013B1 (en) Method and apparatus for wireless broadband systems direct data transfer
US8185668B2 (en) System having processor and I/O controller
US20140223066A1 (en) Multi-Node Management Mechanism
US10185684B2 (en) System interconnect and operating method of system interconnect
US8462561B2 (en) System and method for interfacing burst mode devices and page mode devices
WO2008027092A1 (en) Computer communication
JP2004334840A (ja) システムバスの制御方法及び関連装置
TWI411922B (zh) 通用串列匯流排主機控制器和通用串列匯流排主機控制方法
JP6763307B2 (ja) 計算機、デバイス制御システムおよびデバイス制御方法
US20230236742A1 (en) NONVOLATILE MEMORY EXPRESS (NVMe) OVER COMPUTE EXPRESS LINK (CXL)
JP6631370B2 (ja) マイクロコンピュータ及び電子制御装置
JP2009157731A (ja) 仮想計算機システムおよび仮想計算機システムの制御方法
JP6138482B2 (ja) 組み込みシステム