TW201403461A - 資料轉送裝置、資料轉送方法以及資料轉送程式產品 - Google Patents

資料轉送裝置、資料轉送方法以及資料轉送程式產品 Download PDF

Info

Publication number
TW201403461A
TW201403461A TW102106366A TW102106366A TW201403461A TW 201403461 A TW201403461 A TW 201403461A TW 102106366 A TW102106366 A TW 102106366A TW 102106366 A TW102106366 A TW 102106366A TW 201403461 A TW201403461 A TW 201403461A
Authority
TW
Taiwan
Prior art keywords
read
data
write
transfer
buffer
Prior art date
Application number
TW102106366A
Other languages
English (en)
Other versions
TWI524267B (zh
Inventor
Kanako Yamamoto
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of TW201403461A publication Critical patent/TW201403461A/zh
Application granted granted Critical
Publication of TWI524267B publication Critical patent/TWI524267B/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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/08Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations, the intermediate ones not being accessible for either enqueue or dequeue operations, e.g. using a shift register
    • G06F5/085Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations, the intermediate ones not being accessible for either enqueue or dequeue operations, e.g. using a shift register in which the data is recirculated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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/14Handling requests for interconnection or transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

目的在於若資料的轉送來源區域與轉送目的端區域相重疊時,即使在使用叢發轉送功能來進行轉送的情形下,亦防止發生資料破壞。將由轉送來源區域所讀出的資料暫時寫入至環狀緩衝區,將被寫入在環狀緩衝區的資料寫入至轉送目的端區域。此時,根據藉由環狀緩衝區中的資料寫入所致之環繞次數、與藉由讀出資料所致之環繞次數的大小關係,來控制來自環狀緩衝區的資料讀出。

Description

資料轉送裝置、資料轉送方法以及資料轉送程式產品
本發明係關於將被記憶在轉送來源區域的資料轉送至轉送目的端區域的資料轉送技術。
在資料轉送技術係有一種被稱為DMA(Direct Memory Access,直接記憶存取)轉送的技術。
在DMA轉送中,首先,CPU(Central Processing Unit,中央處理單元)將資料轉送來源位址、資料轉送目的端位址、資料轉送尺寸等轉送所需的DMA資訊設定在DMA轉送控制裝置的暫存器。接著,若CPU對DMA轉送控制裝置指示開始轉送時,DMA轉送控制裝置係按照被設定在暫存器的DMA資訊來執行轉送處理。DMA轉送控制裝置係若一完成被設定在暫存器的轉送尺寸份的資料轉送,即將DMA轉送結束中斷插入至CPU。CPU係若偵測DMA轉送結束中斷時,讀入DMA轉送控制裝置的暫存器的資訊,來確認DMA轉送的結果或狀態。
DMA轉送控制裝置正在執行轉送處理的期間,並不需要進行藉由CPU所為之轉送控制。因此,在DMA轉送中,與經由CPU來進行資料轉送的情形相比,可高速進行資料轉送。此外,在DMA轉送中,可減少CPU的負擔。
在一般的DMA轉送中,按每個被設定的尺寸(單位量)進 行所需資料的讀出,且進行之後的寫入。由於寫入的開始時序為在讀出完成後,因此轉送至延遲(Latency)較大的元件時,轉送效率不佳。
有一種使用AXI(Advanced eXtensible Interface) 匯流排的DMA轉送控制裝置。
AXI匯流排係包括:讀取專用匯流排、及寫入專用匯流排,可平行執行:來自使用讀取專用匯流排的資料轉送來源區域的資料取得、及對使用寫入專用匯流排的資料轉送目的端區域的資料轉送。
此外,AXI匯流排係包括叢發轉送功能。叢發轉送功能係可利用1次讀取要求來取得複數單位量的讀取資料,且可利用1次寫入要求來執行複數單位量的寫入的功能。
在使用AXI匯流排的DMA轉送控制裝置中,可藉由使用上述讀/寫專用匯流排或叢發轉送功能,來進行高速轉送。
(先前技術文獻)
(專利文獻)
【專利文獻1】日本特開平10-116245號公報
【專利文獻2】日本特開2008-83911號公報
在DMA轉送中,若資料的轉送來源區域與轉送目的端區域相重疊時,會有發生資料破壞的情形。尤其,若使用叢發轉送功能來進行轉送時,難以防止資料破壞。
本發明之目的在防止資料的轉送來源區域與轉送目的端 區域相重疊時發生資料破壞。尤其,目的在即使在使用叢發轉送功能來進行轉送的情形下,亦防止發生資料破壞。
本發明之資料轉送裝置係將被記憶在轉送來源區域的資料轉送至轉送目的端區域的資料轉送裝置,其特徵在於包括:轉送來源讀取控制部,其係輸出讀出前述被記憶在轉送來源區域的資料的讀取指令;緩衝區寫入控制部,其係取得藉由前述轉送來源讀取控制部所輸出的讀取指令所被讀出的資料而寫入至環狀緩衝區;緩衝區讀取控制部,其係由前述環狀緩衝區讀出前述緩衝區寫入控制部所寫入的資料,且傳送至前述轉送目的端區域;轉送目的端寫入控制部,其係輸出將前述緩衝區讀取控制部傳送至前述轉送目的端區域的資料,寫入至前述轉送目的端區域的寫入指令;寫入周期計數部,其係對藉由前述緩衝區寫入控制部所致之環繞的次數進行計數;讀取周期計數部,其係對藉由前述緩衝區讀取控制部所致之環繞的次數進行計數;及資料非破壞控制部,其係由前述寫入周期計數部所計數的次數、與前述讀取周期計數部所計數的次數的大小關係,判定可否許可對前述轉送目的端區域寫入資料,前述緩衝區讀取控制部係若前述資料非破壞控制部判定為許可寫入時,由前述環狀緩衝區讀出資料, 前述轉送目的端寫入控制部係若前述資料非破壞控制部判定為許可寫入時,輸出前述寫入指令,將前述緩衝區讀取控制部傳送至前述轉送目的端區域的資料寫入在前述轉送目的端區域。
藉由本發明之資料轉送裝置,可藉由調整來自緩衝區區域的資料讀出時序,來防止發生資料破壞。
10‧‧‧DMA轉送系統
100‧‧‧DMA轉送控制裝置
110‧‧‧轉送來源讀取控制部
120‧‧‧緩衝區寫入控制部
130‧‧‧內部緩衝區
140‧‧‧緩衝區讀取控制部
150‧‧‧轉送目的端寫入控制部
160‧‧‧資料非破壞控制部
161‧‧‧轉送類型設定暫存器
162‧‧‧緩衝區寫入完成指標設定暫存器
163‧‧‧緩衝區讀取指標設定暫存器
164‧‧‧第1緩衝區準備完成判斷部
165‧‧‧第2緩衝區準備完成判斷部
166‧‧‧環繞次數一致判斷部
167‧‧‧選擇器
170‧‧‧緩衝區寫入周期計數部
171‧‧‧環繞檢測部
172‧‧‧環繞次數計數部
180‧‧‧緩衝區讀取周期計數部
181‧‧‧環繞檢測部
182‧‧‧環繞次數計數部
191‧‧‧資料非破壞功能ON/OFF設定暫存器
192‧‧‧轉送來源位址設定暫存器
193‧‧‧轉送目的端位址設定暫存器
194‧‧‧轉送尺寸設定暫存器
195‧‧‧轉送類型判斷部
200‧‧‧CPU
300‧‧‧記憶體
第1圖係發生資料破壞時的說明圖。
第2圖係發生資料破壞時的說明圖。
第3圖係使用叢發轉送功能時之資料轉送順序的說明圖。
第4圖係實施形態1之DMA轉送系統10的構成圖。
第5圖係實施形態1之DMA轉送控制裝置100的構成圖。
第6圖係實施形態1之資料非破壞控制部160的構成圖。
第7圖係實施形態1之緩衝區寫入周期計數部170的構成圖。
第8圖係實施形態1之緩衝區讀取周期計數部180的構成圖。
第9圖係顯示實施形態1之DMA轉送控制裝置100全體的動作流程圖。
第10圖係顯示實施形態1之轉送來源讀取控制部110的動作流程圖。
第11圖係顯示實施形態1之緩衝區寫入控制部120的動作 流程圖。
第12圖係顯示緩衝區讀取控制部140的動作流程圖。
第13圖係顯示實施形態1之轉送目的端寫入控制部150的動作流程圖。
第14圖係顯示實施形態1之資料非破壞控制部160的動作流程圖。
第15圖係顯示實施形態1之緩衝區寫入周期計數部170的動作流程圖。
第16圖係顯示實施形態1之緩衝區讀取周期計數部180的動作流程圖。
第17圖係顯示DMA轉送時之資料的變化圖(1-1)。
第18圖係顯示DMA轉送時之資料的變化圖(1-2)。
第19圖係顯示DMA轉送時之資料的變化圖(1-3)。
第20圖係顯示DMA轉送時之資料的變化圖(1-4)。
第21圖係顯示DMA轉送時之資料的變化圖(1-5)。
第22圖係顯示DMA轉送時之資料的變化圖(2-1)。
第23圖係顯示DMA轉送時之資料的變化圖(2-2)。
第24圖係顯示DMA轉送時之資料的變化圖(2-3)。
第25圖係顯示DMA轉送時之資料的變化圖(2-4)。
第26圖係顯示DMA轉送時之資料的變化圖(2-5)。
第27圖係顯示DMA轉送時之資料的變化圖(3-1)。
第28圖係顯示DMA轉送時之資料的變化圖(3-2)。
第29圖係顯示DMA轉送時之資料的變化圖(3-3)。
第30圖係顯示DMA轉送時之資料的變化圖(3-4)。
第31圖係顯示DMA轉送時之資料的變化圖(3-5)。
第32圖係實施形態2之資料非破壞控制部160的構成圖。
第33圖係顯示實施形態2之DMA轉送控制裝置100全體的動作的流程圖。
實施形態1.
第1圖、第2圖係發生資料破壞時的說明圖。尤其,第1圖係資料的轉送來源區域與轉送目的端區域以順向偏移時的說明圖。第2圖係資料的轉送來源區域與轉送目的端區域以逆向偏移時的說明圖。
根據第1圖,說明資料的轉送來源區域與轉送目的端區域的一部分相重疊的同時,資料的轉送來源區域與轉送目的端區域以順向偏移的情形。轉送來源區域與轉送目的端區域以順向偏移係指轉送來源區域的前頭位址的位址值小於轉送目的端區域的前頭位址的位址值的情形。
在第1圖中,轉送來源區域與轉送目的端區域為相同元件中的區域,區域B相重疊。此外,在第1圖中,轉送來源區域的前頭位址亦即區域A的前頭位址的位址值係小於轉送目的端區域的前頭位址亦即區域B的前頭位址的位址值,轉送來源區域與轉送目的端區域以順向偏移。
此時,若朝向位址值的遞增次序方向(增量方向)依序進行資料轉送時,首先,區域A的資料被寫入至區域B,之後,區域B的資料被寫入至區域C。此時,區域B的資料被寫入至區域C之前,區域A的資料被寫入至區域B,原本被記憶在區域B 的資料即遭受破壞。
因此,此時,朝向位址值的遞降次序方向(減量方向)依序進行資料轉送。如此一來,首先,區域B的資料被寫入至區域C,之後,區域A的資料被寫入至區域B。因此,不會有資料被破壞的情形,而可進行轉送。
根據第2圖,說明資料的轉送來源區域與轉送目 的端區域的一部分一面相重疊,資料的轉送來源區域與轉送目的端區域一面以逆向偏移的情形。轉送來源區域與轉送目的端區域以逆向偏移係指轉送來源區域的前頭位址的位址值大於轉送目的端區域的前頭位址的位址值的情形。
在第2圖中亦與第1圖同樣地,轉送來源區域與轉送目的端區域為相同元件中的區域,區域B相重疊。但是,在第2圖中,轉送來源區域的前頭位址亦即區域B的前頭位址的位址值係大於轉送目的端區域的前頭位址亦即區域A的前頭位址的位址值,轉送來源區域與轉送目的端區域以逆向偏移。
此時,若朝位址值的遞降次序方向(減量方向)依序進行資料轉送時,首先,區域C的資料被寫入至區域B,之後,區域B的資料被寫入至區域A。此時,區域B的資料被寫入至區域A之前,區域C的資料被寫入至區域B,原本被記憶在區域B的資料即受到破壞。
因此,此時,朝位址值的遞增次序方向(增量方向)依序進行資料轉送。如此一來,首先,區域B的資料被寫入至區域A,之後,區域C的資料被寫入至區域B。因此,資料不會被破壞而可進行轉送。
亦即,轉送來源區域與轉送目的端區域以順向偏 移時,若可進行朝向位址值的遞降次序方向依序進行資料轉送的減量轉送,並不會發生資料破壞。另一方面,若轉送來源區域與轉送目的端區域以逆向偏移時,若可進行朝位址值的遞增次序方向依序進行資料轉送的增量轉送,並不會發生資料破壞。
第3圖係使用叢發轉送功能時的資料轉送順序的 說明圖。在第3圖中係顯示使用叢發轉送功能來進行減量方向的資料轉送的情形。
在一般的資料轉送中,可僅利用1次讀/寫要求來進行1個單位量的資料轉送。相對於此,若使用叢發轉送功能時,可利用1次讀/寫要求來進行複數個單位量的資料轉送。
在第3圖中,假想進行資料1~8的8個單位量的資料轉送的情形。因此,在一般的資料轉送中,必須進行8次讀/寫要求。 相對於此,若使用叢發轉送功能時,可利用2次讀/寫要求來進行轉送。其中,在此,假想可利用1次讀/寫要求來進行4個單位量的資料轉送的4叢發轉送。
在此,叢發讀取指令(交易)的發行順序可為增量方向,亦可為減量之方向。但是,叢發讀取指令內的資料讀出順序僅可為增量方向。因此,如第3圖所示,即使按照讀出資料5~8的4叢發讀取指令為第1個、讀出資料1~4的4叢發讀取指令為第2個的減量方向的順序發行叢發讀取指令,資料的讀出順序亦形成為資料5、6、7、8、1、2、3、4的順序。亦即,並無法依資料8、7、6、5、4、3、2、1的順序進行讀出。
因此,在轉送來源區域與轉送目的端區域以順向偏移的情形下,若使用叢發轉送功能進行資料轉送時,即使使用減量轉送,亦無法防止資料破壞。
其中,若為叢發寫入指令的情形亦與叢發讀取指令的情形同樣地,叢發寫入指令的發行順序可為增量方向,亦可為減量方向。但是,叢發寫入指令內的資料寫入順序僅可為增量方向。
第4圖係實施形態1之DMA轉送系統10的構成 圖。
DMA轉送系統10係包括:DMA轉送控制裝置100(資料轉送裝置)、CPU200、記憶體300。
DMA轉送控制裝置100係按照藉由CPU200等的使用者而被設定在暫存器的DMA資訊,在記憶體300進行存取而進行資料轉送的裝置。
CPU200係將指定轉送來源區域的轉送來源位址、指定轉送目的端區域的轉送目的端位址、指定轉送資料的尺寸的轉送尺寸、轉送類型(增量轉送或減量轉送)的DMA資訊設定在DMA轉送控制裝置100的暫存器,使DMA轉送控制裝置100執行資料轉送。在此係由CPU200設定DMA資訊,但是亦可由其他裝置或系統來設定DMA資訊,而非為CPU200。
記憶體300係成為資料轉送的轉送來源區域及轉送目的端區域的對象資源。
第5圖係實施形態1之DMA轉送控制裝置100的 構成圖。
其中,在第5圖中,實線表示資料流動的資料線,虛線表 示控制訊號流動的控制線。
DMA轉送控制裝置100係包括:轉送來源讀取控制部110、緩衝區寫入控制部120、內部緩衝區130(環狀緩衝區)、緩衝區讀取控制部140、轉送目的端寫入控制部150、資料非破壞控制部160、緩衝區寫入周期計數部170、緩衝區讀取周期計數部180。
轉送來源讀取控制部110係將讀出被記憶在記憶 體300的轉送來源區域的資料的轉送來源讀取指令輸出至記憶體300。
轉送來源讀取指令係將讀取位址、讀取位址有效訊號(或讀取要求訊號)、其他(叢發尺寸、叢發長)訊號彙總後的資訊。
緩衝區寫入控制部120係透過讀取專用匯流排來 取得藉由轉送來源讀取控制部110所輸出的轉送來源讀取指令所被讀出的轉送來源讀取資料。
此外,緩衝區寫入控制部120係將所取得的轉送來源讀取資料作為緩衝區寫入資料而輸出至內部緩衝區130,在藉由內部緩衝區130中的緩衝區寫入指標所指定的位置寫入緩衝區寫入資料。緩衝區寫入指標係表示現在的緩衝區寫入目的端的資訊。
緩衝區寫入控制部120係將緩衝區寫入資料的寫入已完成的位置作為緩衝區寫入完成指標,且通知資料非破壞控制部160。換言之,緩衝區寫入完成指標係表示內部緩衝區130中的讀出準備已完成的完成區域的資訊。
內部緩衝區130係被內置於DMA轉送控制裝置 100的轉送資料儲存用資源。
緩衝區讀取控制部140係由藉由內部緩衝區130 中的緩衝區讀取指標所指定的位置,讀出資料作為緩衝區讀取資料。緩衝區讀取指標係顯示現在的緩衝區讀取目的端的資訊。
此外,緩衝區讀取控制部140係將所讀出的緩衝區讀取資料作為轉送目的端寫入資料,透過寫入專用匯流排而輸出至記憶體300。
緩衝區讀取控制部140係對資料非破壞控制部160通知緩衝區讀取指標。
轉送目的端寫入控制部150係對記憶體300輸出 轉送目的端寫入指令,將緩衝區讀取控制部140所輸出的轉送目的端寫入資料寫入至轉送目的端區域。
轉送目的端寫入指令係將寫入位址、寫入位址有效訊號(或寫入要求訊號)、寫入資料有效訊號、其他(叢發尺寸、叢發長、閃控訊號)訊號加以彙整的資訊。
資料非破壞控制部160係將藉由CPU200所被設定 的轉送類型(增量轉送或減量轉送)通知各控制部、各計數部。 其中,各控制部係指轉送來源讀取控制部110、緩衝區寫入控制部120、緩衝區讀取控制部140、轉送目的端寫入控制部150。此外,各計數部係指緩衝區寫入周期計數部170、緩衝區讀取周期計數部180。
此外,資料非破壞控制部160係若進行減量轉送時,根據 「緩衝區寫入周期計數部170所計數的環繞次數(緩衝區寫入 周期計數器值)、與緩衝區讀取周期計數部180所計數的環繞次數(緩衝區讀取周期計數器值)的大小關係」、及「緩衝區寫入完成指標的值、與緩衝區讀取指標的值的大小關係」,來判定是否已進行緩衝區讀取指標所示位置的資料讀出準備。接著,資料非破壞控制部160係若判定出已進行資料讀出準備時,將轉送目的端可寫入指示輸出至緩衝區讀取控制部140、轉送目的端寫入控制部150。其中,資料非破壞控制部160係若為增量轉送的情形,則無關於緩衝區寫入完成指標或緩衝區讀取指標,恒為輸出轉送目的端可寫入指示。
緩衝區讀取控制部140係若由資料非破壞控制部160接收轉送目的端可寫入指示時,由內部緩衝區130讀出資料。此外,轉送目的端寫入控制部150係若由資料非破壞控制部160接收轉送目的端可寫入指示時,即輸出轉送目的端寫入指令。
緩衝區寫入周期計數部170係若進行減量轉送 時,將緩衝區寫入完成指標作環繞的次數進行計數的計數器。
緩衝區讀取周期計數部180係若進行減量轉送 時,將緩衝區讀取指標作環繞的次數進行計數的計數器。
其中,讀取專用匯流排係流通轉送來源讀取指 令、轉送來源讀取資料的匯流排,寫入專用匯流排係流通轉送目的端寫入指令、轉送目的端寫入資料的匯流排。在讀取專用匯流排與寫入專用匯流排並不具依存關係,可平行進行動作。
第6圖係實施形態1之資料非破壞控制部160的 構成圖。
資料非破壞控制部160係包括:轉送類型設定暫存器161、緩衝區寫入完成指標設定暫存器162、緩衝區讀取指標設定暫存器163、第1緩衝區準備完成判斷部164、第2緩衝區準備完成判斷部165、環繞次數一致判斷部166、選擇器167。
在轉送類型設定暫存器161係由CPU200被設定轉送類型。轉送類型設定暫存器161所設定的轉送類型由資料非破壞控制部160被通知至各控制部。
在緩衝區寫入完成指標設定暫存器162係由緩衝區寫入控制部120被設定緩衝區寫入完成指標。
在緩衝區讀取指標設定暫存器163係由緩衝區讀取控制部140被設定緩衝區讀取指標。
第1緩衝區準備完成判斷部164係根據轉送類型、緩衝區寫入完成指標、緩衝區讀取指標,來判斷來自內部緩衝區130的資料讀出準備是否已完成。若判定出資料讀出準備已完成時,判定為未發生資料破壞,對選擇器167輸出轉送目的端可寫入指示(指標)。
第2緩衝區準備完成判斷部165係根據由緩衝區寫入周期計數部170所得的緩衝區寫入周期計數器值、及由緩衝區讀取周期計數部180所得的緩衝區讀取周期計數器值,來判斷來自內部緩衝區130的資料讀出準備是否已完成。若判定出資料讀出準備已完成時,判定為未發生資料破壞,且將轉送目的端可寫入指示(計數器)輸出至選擇器167。
環繞次數一致判斷部166係判斷由緩衝區寫入周期計數部170所得的緩衝區寫入周期計數器值、與由緩衝區讀取周期計 數部180所得的緩衝區讀取周期計數器值是否相一致。
選擇器167係根據環繞次數一致判斷部166的判斷結果,選擇將由第1緩衝區準備完成判斷部164所被輸出的轉送目的端可寫入指示(指標)、及由第2緩衝區準備完成判斷部165所被輸出的轉送目的端可寫入指示(計數器)的哪一者輸出作為轉送目的端可寫入指示。選擇器167係將所選擇的轉送目的端可寫入指示輸出至緩衝區讀取控制部140及轉送目的端寫入控制部150。
第7圖係實施形態1之緩衝區寫入周期計數部170 的構成圖。
緩衝區寫入周期計數部170係包括:環繞檢測部171、環繞次數計數部172。
環繞檢測部171係若進行減量轉送時,即檢測緩衝區寫入完成指標是否已環繞。
環繞次數計數部172係若環繞檢測部171檢測出環繞時,即將緩衝區寫入周期計數器值進行+1正數。接著,環繞次數計數部172係將所正數的緩衝區寫入周期計數器值輸出至資料非破壞控制部160。
第8圖係實施形態1之緩衝區讀取周期計數部180 的構成圖。
緩衝區讀取周期計數部180係包括:環繞檢測部181、環繞次數計數部182。
環繞檢測部181係若進行減量轉送時,檢測緩衝區讀取指標是否已環繞。
環繞次數計數部182係若環繞檢測部181檢測出環繞時,即將緩衝區讀取周期計數器值進行+1正數。接著,環繞次數計數部182係將已進行正數的緩衝區讀取周期計數器值輸出至資料非破壞控制部160。
接著,說明DMA轉送控制裝置100的動作。
第9圖係顯示實施形態1之DMA轉送控制裝置100全體的動作的流程圖。
在S11中,CPU200在DMA轉送控制裝置100的暫存器設定DMA資訊,且將DMA轉送控制裝置100起動。如此一來,在S12中,DMA轉送控制裝置100的資料非破壞控制部160將暫存器(轉送類型設定暫存器161)所設定的轉送類型(增量轉送、或減量轉送)通知各控制部。若在暫存器設定增量轉送時,將處理進至S13,若設定減量轉送時,則將處理進至S14。
在S13中,DMA轉送控制裝置100對記憶體300進行增量轉送。另一方面,在S14中,DMA轉送控制裝置100對記憶體300進行減量轉送。
接著,在S15中,若已轉送結束DMA轉送控制裝置100所被指定的資料長的資料時等,有DMA轉送停止要因時,即停止轉送動作。
第10圖係顯示實施形態1之轉送來源讀取控制部 110的動作的流程圖。其中,第10圖係顯示第9圖中的S13或S14中的轉送來源讀取控制部110的動作。
在S21中,轉送來源讀取控制部110根據由資料非破壞控制部160所被傳送的轉送類型,來判定為增量轉送或減量轉送。 若判定為增量轉送時,將處理進至S22,若判定為減量轉送時,則將處理進至S23。
在S22及S23中,轉送來源讀取控制部110生成1個叢發讀取指令作為轉送來源讀取指令。叢發讀取指令係如根據第3圖所做之說明所示,按每個單位量的資料將預定個單位量的資料由讀取開始位址以位址值的遞增次序讀出的指令。
接續S22、S23,在S24中,轉送來源讀取控制部110係藉由儲存藉由轉送來源讀取指令所被讀出的資料的空白區域是否位於內部緩衝區130,來判定是否可進行讀取存取。若判定為可讀取存取時(S24中為YES),將處理進至S25。另一方面,若判定為不可讀取存取時(S24中為NO),將處理返回至S24,在經過預定時間後,判定可否讀取存取。
在S25中,對記憶體300發行轉送來源讀取控制部110所生成的轉送來源讀取指令,由轉送來源區域讀出資料。
接著,在S26中,轉送來源讀取控制部110依是否已將讀出轉送尺寸份的資料的轉送來源讀取指令傳送至記憶體300,來判定是否結束對記憶體300的讀取存取。若判定為結束讀取存取時(S26中為YES),即結束處理。另一方面,若判定為未結束讀取存取時(S26中為NO),將處理返回至S21。
其中,在S22中,轉送來源讀取控制部110係朝 增量方向生成叢發讀取指令。亦即,以叢發讀取指令的讀取開始位址的位址值成為遞增次序的方式生成叢發讀取指令。
另一方面,在S23中,轉送來源讀取控制部110係朝減量方向生成叢發讀取指令。亦即,以叢發讀取指令的讀取開始位址 的位址值成為遞降次序的方式生成叢發讀取指令。
第11圖係顯示實施形態1之緩衝區寫入控制部 120的動作的流程圖。其中,第11圖係顯示第9圖中的S13或S14中的緩衝區寫入控制部120的動作。
在S31中,緩衝區寫入控制部120根據由資料非破壞控制部160所被傳送的轉送類型,來判定為增量轉送或減量轉送。若判定為增量轉送時,將處理進至S32,若判定為減量轉送時,則將處理進至S33。
在S32及S33中,緩衝區寫入控制部120生成與1個轉送來源讀取指令相對應的1個叢發寫入指令作為緩衝區寫入指令。該緩衝區寫入指令係將相對應的轉送來源讀取指令的讀取開始位址所對應的內部緩衝區130中的位址作為寫入開始位址,由寫入開始位址以位址值的遞增次序寫入資料的指令。
其中,此時,緩衝區寫入控制部120係由轉送來源讀取控制部110取得要發行讀取開始位址、或讀出幾個單位量的資料的轉送來源讀取指令等資訊,生成與轉送來源讀取指令相對應的緩衝區寫入指令。或者,緩衝區寫入控制部120亦可依與轉送來源讀取控制部110相同的邏輯,判定要發行讀取開始位址、或轉送來源讀取控制部110讀出幾個單位量的資料的轉送來源讀取指令等,來生成與轉送來源讀取指令相對應的緩衝區寫入指令。
此外,在S33中,緩衝區寫入控制部120係將緩衝區寫入完成指標設定在資料非破壞控制部160的緩衝區寫入完成指標設定暫存器162。此時,緩衝區寫入完成指標係表示在緩衝區寫 入指標所示之位址值,加上以該寫入指令所寫入的資料尺寸份的位址值的位址值。
接續S32、S33,在S34中,緩衝區寫入控制部120對內部緩衝區130發行緩衝區寫入指令。藉此,將藉由1個轉送來源讀取指令而由轉送來源區域所被讀出的資料寫入至內部緩衝區130。
接著,在S35中,緩衝區寫入控制部120係依是否已將寫入轉送尺寸份的資料的緩衝區寫入指令傳送至內部緩衝區130,來判定是否結束對內部緩衝區130的寫入存取。若判定為結束寫入存取時(S35中為YES),即結束處理,若判定為未結束寫入存取時(S35中為NO),則將處理返回至S31。
其中,在S35中,若判定為結束寫入存取時(S35中為YES),緩衝區寫入控制部120係將最後發行的叢發寫入指令中的寫入開始位址作為緩衝區寫入完成指標,在設定在緩衝區寫入完成指標設定暫存器162之後,結束處理。
第12圖係顯示緩衝區讀取控制部140的動作的流 程圖。其中,第12圖係顯示第9圖中的S13或S14中的緩衝區讀取控制部140的動作。
在S41中,緩衝區讀取控制部140根據由資料非破壞控制部160所被傳送的轉送類型,來判定為增量轉送或減量轉送。若判定為增量轉送時,將處理進至S42,若判定為減量轉送時,將處理進至S43。
在S42及S43中,緩衝區讀取控制部140生成與1個轉送目的端寫入指令相對應的1個叢發讀取指令作為緩衝區讀取指令。 該緩衝區讀取指令係將相對應的轉送目的端寫入指令的寫入開始位址所對應之內部緩衝區130中的位址作為讀取開始位址,由讀取開始位址以位址值的遞增次序讀出資料的指令。
其中,此時,緩衝區讀取控制部140係由轉送目的端寫入控制部150取得要發行寫入開始位址、或寫入幾個單位量的資料的轉送目的端寫入指令等資訊,生成與轉送目的端寫入指令相對應的緩衝區讀取指令。或者,緩衝區讀取控制部140亦可藉由與轉送目的端寫入控制部150相同的邏輯,判定要發行寫入開始位址、或轉送目的端寫入控制部150寫入幾個單位量的資料的轉送目的端寫入指令等,來生成與轉送目的端寫入指令相對應的緩衝區讀取指令。
此外,在S42及S43中,緩衝區讀取控制部140係在生成緩衝區讀取指令時,將表示該緩衝區讀取指令的讀取開始位址的緩衝區讀取指標設定在資料非破壞控制部160的緩衝區讀取指標設定暫存器163。
接續S42、S43,在S44中,緩衝區讀取控制部140判定可否進行讀取存取。緩衝區讀取控制部140係若(1)僅藉由轉送目的端寫入指令而被寫入的資料被儲存在內部緩衝區130,而且(2)由資料非破壞控制部160接收到轉送目的端可寫入指示時,判定為可讀取存取。若判定為可讀取存取時(S44中為YES),將處理進至S45。另一方面,若判定為不可讀取存取時(S44中為NO),即將處理返回至S44,判定是否在經過預定的時間後可再次讀取存取。
在S45中,緩衝區讀取控制部140對內部緩衝區130發行緩 衝區讀取指令。藉此,將藉由1個轉送目的端寫入指令而被寫入至轉送目的端區域的資料,由內部緩衝區130讀出且傳送至記憶體300。
接著,在S46中,緩衝區讀取控制部140係依是否已將讀出轉送尺寸份的資料的緩衝區讀取指令傳送至內部緩衝區130,來判定是否結束對內部緩衝區130的讀取存取。若判定為結束讀取存取時(S46中為YES),結束處理,若判定為未結束讀取存取時(S46中為NO),則將處理恢復成S41。
第13圖係顯示實施形態1之轉送目的端寫入控制 部150的動作的流程圖。其中,第13圖係顯示第9圖中的S13或S14中的轉送目的端寫入控制部150的動作。
在S51中,轉送目的端寫入控制部150根據由資料非破壞控制部160所被傳送的轉送類型,判定為增量轉送或減量轉送。 若判定為增量轉送時,將處理進至S52,若判定為減量轉送時,則將處理進至S53。
在S52及S53中,轉送目的端寫入控制部150生成1個叢發寫入指令作為轉送目的端寫入指令。叢發寫入指令係如根據第3圖所作說明所示,按每個單位量的資料將預定個單位量的資料由寫入開始位址依位址值的遞增次序寫入的指令。
接續S52、S53,在S54中,轉送目的端寫入控制部150藉由與緩衝區讀取控制部140判定可否讀取存取的條件為相同的條件,來判定可否寫入存取。亦即,轉送目的端寫入控制部150係若(1)僅藉由轉送目的端寫入指令而被寫入的資料被儲存在內部緩衝區130,而且(2)由資料非破壞控制部160接收到 轉送目的端可寫入指示時,判定為可寫入存取。若判定為可寫入存取時(S54中為YES),將處理進至S55。另一方面,若判定為不可寫入存取時(S54中為NO),將處理返回至S54,在經過預定時間後,再次判定可否寫入存取。
在S55中,轉送目的端寫入控制部150對記憶體300發行所生成的轉送目的端寫入指令,且對轉送目的端區域寫入資料。
接著,在S56中,轉送目的端寫入控制部150係依是否已對記憶體300傳送寫入轉送尺寸份的資料的轉送目的端寫入指令,來判定是否結束對記憶體300的寫入存取。若判定為結束寫入存取時(S56中為YES),即結束處理。另一方面,若判定為未結束寫入存取時(S56中為NO),則將處理返回至S51,生成接下來的轉送目的端寫入指令,且傳送至記憶體300而寫入資料。
其中,在S52中,轉送目的端寫入控制部150係 以增量方向生成叢發寫入指令。亦即,以叢發寫入指令的寫入開始位址的位址值成為遞增次序的方式生成叢發寫入指令。
另一方面,在S53中,轉送目的端寫入控制部150係以減量方向生成叢發寫入指令。亦即,以叢發寫入指令的寫入開始位址的位址值成為遞降次序的方式生成叢發寫入指令。
第14圖係顯示實施形態1之資料非破壞控制部 160的動作的流程圖。其中,第14圖係顯示第9圖中的S13或S14中的資料非破壞控制部160的動作。
在S61中,資料非破壞控制部160按照被設定在轉送類型設定暫存器161的轉送類型,來判定為增量轉送或減量轉送。若 判定為減量轉送時,將處理進至S62,若判定為增量轉送時,則將處理進至S66。
在S62中,資料非破壞控制部160判定緩衝區寫入周期計數部170所計數的緩衝區寫入周期計數器值是否大於緩衝區讀取周期計數部180所計數的緩衝區讀取周期計數器值。若緩衝區寫入周期計數器值大於緩衝區讀取周期計數器值時(S62中為NO),將處理進至S63,若緩衝區寫入周期計數器值大於緩衝區讀取周期計數器值時(S62中為YES),則將處理進至S66。
S63中,資料非破壞控制部160判定緩衝區寫入周期計數部170所計數的緩衝區寫入周期計數器值是否小於緩衝區讀取周期計數部180所計數的緩衝區讀取周期計數器值。若緩衝區寫入周期計數器值不小於緩衝區讀取周期計數器值時(S63中為NO),則將處理進至S64。若緩衝區寫入周期計數器值小於緩衝區讀取周期計數器值時(S63中為YES),將處理進至S65。
在S64中,資料非破壞控制部160判定緩衝區寫入完成指標設定暫存器162所設定的緩衝區寫入完成指標所示之位址值,是否為緩衝區讀取指標設定暫存器163所設定的緩衝區讀取指標所示之位址值以下。若緩衝區寫入完成指標所示之位址值非為緩衝區讀取指標所示之位址值以下時(S64中為NO),將處理進至S65。另一方面,若緩衝區寫入完成指標所示之位址值為緩衝區讀取指標所示之位址值以下時(S64中為YES),將處理進至S66。
在S65中,資料非破壞控制部160係判定為緩衝區讀出的準備未完成,且未傳送轉送目的端可寫入指示。另一方面,在S66 中,資料非破壞控制部160係判定緩衝區讀出的準備已完成,且將轉送目的端可寫入指示傳送至緩衝區讀取控制部140及轉送目的端寫入控制部150。
在S67中,資料非破壞控制部160係依轉送尺寸份的資料的轉送是否已完成,來判定是否結束處理。若判定為結束處理時(S67中為YES),則結束處理。另一方面,若判定為未結束處理時(S67中為NO),則將處理返回至S61,且再次判定緩衝區的準備是否已完成。
亦即,若為增量轉送時,則恒被判定為緩衝區準 備完成。
另一方面,若為減量轉送的情形, (1)「緩衝區寫入周期計數器值>緩衝區讀取周期計數器值」成立時,以及(2)「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」成立,而且「緩衝區寫入完成指標所示之位址值≦緩衝區讀取指標所示之位址值」成立時,即被判定為緩衝區準備完成。
第15圖係顯示實施形態1之緩衝區寫入周期計數 部170的動作的流程圖。其中,第15圖係顯示第9圖中的S13或S14中的緩衝區寫入周期計數部170的動作。
在S71中,緩衝區寫入周期計數部170根據由資料非破壞控制部160所被傳送的轉送類型,來判定為增量轉送或減量轉送。若判定為減量轉送時,將處理進至S72,若判定為增量轉送時,將處理進至S74。
在S72中,緩衝區寫入周期計數部170判定緩衝區寫入控制 部120所生成的緩衝區寫入完成指標是否已環繞。若判定為已環繞時(S72中為YES),將處理進至S73。若判定為未環繞時(S72中為NO),將處理進至S74。
在S73中,緩衝區寫入周期計數部170將計數器進行+1正數。
在S74中,緩衝區寫入周期計數部170依轉送尺寸份的資料的轉送是否已完成,來判定是否結束處理。若判定為結束處理時(S74中為YES),即結束處理。另一方面,若判定為未結束處理時(S74中為NO),將處理返回至S71,且再次判定計數器是否進行正數。
第16圖係顯示實施形態1之緩衝區讀取周期計數 部180的動作的流程圖。其中,第16圖係顯示第9圖中的S13或S14中的緩衝區讀取周期計數部180的動作。
在S81中,緩衝區讀取周期計數部180根據由資料非破壞控制部160所被傳送的轉送類型,來判定為增量轉送或減量轉送。若判定為減量轉送時,將處理進至S82,若判定為增量轉送時,則將處理進至S84。
在S82中,緩衝區讀取周期計數部180判定緩衝區讀取控制部140所生成的緩衝區讀取指標是否已環繞。若判定為已環繞時(在S82中為YES),將處理進至S83。若判定為未環繞時(在S82中為NO),將處理進至S84。
在S83中,緩衝區讀取周期計數部180將計數器進行+1正數。
在S84中,緩衝區讀取周期計數部180依轉送尺寸份的資料 的轉送是否已完成,來判定是否結束處理。若判定為結束處理時(S84中為YES),即結束處理。另一方面,若判定為未結束處理時(S84中為NO),將處理返回至S81,且再次判定是否將計數器進行正數。
接著,說明DMA轉送控制裝置100的具體動作例。 第17圖至第21圖係將尺寸大於內部緩衝區130的尺寸的資料進行DMA轉送,緩衝區寫入完成指標先環繞時的顯示DMA轉送時之資料的變化圖。亦即,第17圖至第21圖係顯示成為「緩衝區寫入周期計數器值>緩衝區讀取周期計數器值」時的資料變化圖。
在第17圖至第21圖之例中,係將內部緩衝區130的尺寸設為64位元組,表示1位數2位元組。此外,第17圖至第21圖的轉送來源與轉送目的端係形成為相同元件,1位數係表示2位元組。
在第17圖至第21圖之例中,將轉送來源的位址00h~58h的區域的資料由轉送目的端的位址20h減量轉送至78h的區域。 DMA轉送控制裝置100對轉送來源,以讀取1(4叢發讀取)、讀取2(4叢發讀取)、讀取3(4叢發讀取)的順序發行。此外,DMA轉送控制裝置100對轉送目的端,以寫入1(4叢發寫入)、寫入2(4叢發寫入)、寫入3(4叢發寫入)的順序發行。
第17圖至第21圖的轉送來源的右橫所示讀取順序係表示DMA轉送控制裝置100取得讀取資料的順序,依R1~R12的順序接收讀取資料,以同樣的順序寫入至內部緩衝區130。轉送目的端的右橫所示寫入順序係表示DMA轉送控制裝置100對轉 送目的端輸出資料的順序,以W1~W12的順序由內部緩衝區130接收寫入資料,以同樣的順序寫入至轉送目的端。
第17圖至第21圖的緩衝區寫入完成指標係表示在內部緩衝區130已準備好資料的區域,緩衝區讀取指標係表示在內部緩衝區130讀取的區域。緩衝區寫入周期計數器係顯示緩衝區寫入完成指標的環繞次數,緩衝區讀取周期計數器係顯示緩衝區讀取指標的環繞次數。兩指標均在每次環繞時即分別以+1進行正數。
首先,在S11中,在DMA轉送控制裝置100係被設定以下設定資訊。
轉送來源位址:00h
轉送目的端位址:20h
轉送尺寸:96位元組
轉送類型:減量轉送
接著,在S12中,藉由資料非破壞控制部160對各控制部以及各計數部通知為減量轉送。接著,進至S14,執行藉由減量轉送所為之DMA轉送。
在第17圖所示順序1中,轉送來源讀取控制部110對轉送來源的位址40h~58h的區域發行讀取1(4叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取1相對應的緩衝區寫入1,且在位址20h~38h的區域寫入讀取資料。緩衝區寫入控制部120係若緩衝區寫入1一完成,即將緩衝區寫入完成指標更新為20h。
緩衝區讀取控制部140係將緩衝區讀取指標設定在20h(以 對轉送目的端所發行的寫入1(4叢發寫入)進行輸出的資料的讀出區域)。
在第18圖所示之順序2中,轉送來源讀取控制部 110係對轉送來源的位址20h~38h的區域發行讀取2(4叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取2相對應的緩衝區寫入2,且對位址00h~18h的區域寫入讀取資料。緩衝區寫入控制部120係若緩衝區寫入2一完成,即將緩衝區寫入完成指標更新為00h。
與上述轉送來源讀取並列地,資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」而且「緩衝區寫入完成指標值≦緩衝區讀取指標值」,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若一檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址20h~38h的區域發行緩衝區讀取1而讀出轉送目的端寫入資料。轉送目的端寫入控制部150係對轉送目的端的位址60h~78h的區域發行寫入1(4叢發寫入)。
在第19圖所示之順序3中,轉送來源讀取控制部 110係對轉送來源的位址00h~18h的區域發行讀取3(4叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取3相對應的緩衝區寫入3,且對位址20h~38h的區域寫入讀取資料。若緩衝區寫入3一完成,緩衝區寫入完成指標更新為20h且發生環繞。緩衝區寫入周期計數部170係檢測緩衝區寫入完成指標的環繞,且將緩衝 區寫入周期計數器值進行+1正數。
緩衝區讀取控制部140係若一完成緩衝區讀取1,即將緩衝區讀取指標更新為00h。資料非破壞控制部160係檢測「緩衝區寫入周期計數器值>緩衝區讀取周期計數器值」,判定為資料準備完成,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址00h~18h的區域發行緩衝區讀取2。轉送目的端寫入控制部150係對轉送目的端的位址40h~58h的區域發行寫入2(4叢發寫入)。
在第20圖所示之順序4中,緩衝區讀取控制部140 係若一完成緩衝區讀取2,即將緩衝區讀取指標更新為20h,且發生環繞。緩衝區讀取周期計數部180係檢測環繞,且將緩衝區讀取周期計數器值進行+1正數。資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」而且「緩衝區寫入完成指標值≦緩衝區讀取指標值」,判定為資料準備完成,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若一檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址20h~38h的區域發行緩衝區讀取3。轉送目的端寫入控制部150係對轉送目的端的位址20h~38h的區域發行寫入3(4叢發寫入)。
在第21圖所示之順序5中,顯示DMA轉送結果。 如轉送目的端所示,不會有發生資料破壞的情形,而完成資料的轉送。
第22圖至第26圖係顯示將尺寸大於內部緩衝區 130的尺寸的資料進行DMA轉送,緩衝區讀取指標先環繞時之DMA轉送時之資料變化圖。亦即,第22圖至第26圖係顯示成為「緩衝區寫入周期計數器值<緩衝區讀取周期計數器值」時的資料變化圖。
在第22圖至第26圖之例中,將內部緩衝區130的尺寸形成為64位元組,表示1位數2位元組。此外,第22圖至第26圖的轉送來源與轉送目的端係形成為相同元件,1位數係表示2位元組。
在第22圖至第26圖之例中,將轉送來源的位址08h~58h的區域的資料由轉送目的端的位址20h減量轉送至70h的區域。 DMA轉送控制裝置100對轉送來源以讀取1(4叢發讀取)、讀取2(4叢發讀取)、讀取3(3叢發讀取)的順序發行。此外,DMA轉送控制裝置100對轉送目的端以寫入1(3叢發寫入)、寫入2(4叢發寫入)、寫入3(4叢發寫入)的順序發行。其中,讀取目的端、寫入目的端的位址跨越32位元組交界時,發行3叢發以下的叢發轉送指令作為修整處理。
第22圖至第26圖的轉送來源的右橫所示讀取順序係表示DMA轉送控制裝置100取得讀取資料的順序,以R1~R11的順序接收讀取資料,以同樣的順序寫入在內部緩衝區130。轉送目的端的右橫所示寫入順序係表示DMA轉送控制裝置100對轉送目的端輸出資料的順序,以W1~W11的順序接收內部緩衝區130寫入資料,以同樣的順序寫入至轉送目的端。
第22圖至第26圖的緩衝區寫入完成指標係顯示在內部緩衝區130已準備好資料的區域,緩衝區讀取指標係顯示在內部 緩衝區130所讀取的區域。緩衝區寫入周期計數器係顯示緩衝區寫入完成指標的環繞次數,緩衝區讀取周期計數器係顯示緩衝區讀取指標的環繞次數。兩指標均在每次環繞時即各+1進行正數。
首先,在S11中,在DMA轉送控制裝置100係被設定以下設定資訊。
轉送來源位址:08h
轉送目的端位址:20h
轉送尺寸:88位元組
轉送類型:減量轉送
接著,在S12中,藉由資料非破壞控制部160被通知減量轉送至各控制部及各計數部。接著,進至S14,執行藉由減量轉送所為之DMA轉送。
在第22圖所示之順序1中,轉送來源讀取控制部110對轉送來源的位址40h~58h的區域發行讀取1(4叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取1相對應的緩衝區寫入1,且在位址20h~38h的區域寫入讀取資料。若緩衝區寫入1一完成,緩衝區寫入控制部120係將緩衝區寫入完成指標更新為20h。
緩衝區讀取控制部140係將緩衝區讀取指標設定在以對轉送目的端發行的寫入1(3叢發寫入)進行輸出的資料的讀出區域(28h)。資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」而且「緩衝區寫入完成指 標值≦緩衝區讀取指標值」,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若檢測出轉送目的端可寫入指示,即對內部緩衝區130的位址28h~38h的區域發行緩衝區讀取1而讀出轉送目的端寫入資料。轉送目的端寫入控制部150係對轉送目的端的位址60h~70h的區域發行寫入1(3叢發寫入)。
在第23圖所示之順序2中,轉送來源讀取控制部110係對轉送來源的位址20h~38h的區域發行讀取2(4叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取2相對應的緩衝區寫入2,且在位址00h~18h的區域寫入讀取資料。若緩衝區寫入2一完成,緩衝區寫入控制部120係將緩衝區寫入完成指標更新為00h。
緩衝區讀取控制部140係若緩衝區讀取1一完成,即將緩衝區讀取指標更新為08h。資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」而且「緩衝區寫入完成指標值≦緩衝區讀取指標值」,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址08h~20h的區域發行緩衝區讀取2而讀出轉送目的端寫入資料。轉送目的端寫入控制部150係對轉送目的端的位址40h~58h的區域發行寫入2(4叢發寫入)。
在第24圖所示之順序3中,轉送來源讀取控制部110係對轉送來源的位址08h~18h的區域發行讀取3(3叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120 係對內部緩衝區130發行與讀取3相對應的緩衝區寫入3,且在位址28h~38h的區域寫入讀取資料。在此,緩衝區寫入3為未完成,緩衝區寫入完成指標係設為並未被更新。
緩衝區讀取控制部140由於已完成緩衝區讀取2,因此將緩衝區讀取指標更新為28h,而發生環繞。緩衝區讀取周期計數部180係檢測環繞,將緩衝區讀取周期計數器值進行+1正數。 資料非破壞控制部160係檢測「緩衝區寫入周期計數器值<緩衝區讀取周期計數器值」,判定為資料準備未完成,且未輸出轉送目的端可寫入指示(轉送目的端寫入不許可)。緩衝區讀取控制部140係未檢測轉送目的端可寫入指示,因此不發行對內部緩衝區130之接下來的緩衝區讀取。轉送目的端寫入控制部150亦同樣地,對轉送目的端未發行接下來的寫入3(4叢發寫入)。
在第25圖所示之順序4中,緩衝區寫入3即完成。 接著,緩衝區寫入控制部120係將緩衝區寫入完成指標更新為28h,而發生環繞。緩衝區寫入周期計數部170係檢測緩衝區寫入完成指標的環繞,將緩衝區寫入周期計數器值進行+1正數。
資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」且「緩衝區寫入完成指標值≦緩衝區讀取指標值」,判定為資料準備完成,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址28h~00h的區域發行緩衝區讀取3而讀出轉送目的端寫入資料。轉送目的端寫入控制部 150係對轉送目的端的位址20h~38h的區域發行寫入3(4叢發寫入)。
在第26圖所示之順序5中,顯示DMA轉送結果。 如轉送目的端所示,不會有發生資料破壞的情形,而完成資料的轉送。
第27圖至第31圖係顯示將尺寸小於內部緩衝區 130的尺寸的資料進行DMA轉送,兩指標未環繞時之DMA轉送時之資料變化圖。亦即,第27圖至第31圖係顯示成為「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」時之資料變化圖。其中,在此為簡化,列舉兩指標未環繞的情形為具體例,但是即使為兩指標進行相同次數的環繞時,亦可得同樣的效果。
在第27圖至第31圖之例中,將內部緩衝區130的尺寸設為64位元組,表示1位數2位元組。此外,第27圖至第31圖的轉送來源與轉送目的端係形成為相同元件,1位數係表示2位元組。
在第27圖至第31圖之例中,將轉送來源的位址00h~30h的區域的資料進行減量轉送至轉送目的端的位址18h~48h的區域。DMA轉送控制裝置100對轉送來源以讀取1(3叢發讀取)、讀取2(4叢發讀取)的順序發行。DMA轉送控制裝置100對轉送目的端以寫入1(4叢發寫入)、寫入2(3叢發寫入)的順序發行。其中,讀取目的端、寫入目的端的位址跨越32位元組交界時,發行3叢發以下的叢發轉送指令作為修整處理。
第27圖至第31圖的轉送來源的右橫所示讀取順序係表示DMA轉送控制裝置100取得讀取資料的順序,以R1~R7的順序 接收讀取資料,以同樣的順序寫入至內部緩衝區130。轉送目的端之右橫所示寫入順序係表示DMA轉送控制裝置100對轉送目的端輸出資料的順序,以W1~W7的順序由內部緩衝區130接收寫入資料,以同樣的順序寫入至轉送目的端。
第27圖至第31圖的緩衝區寫入完成指標係顯示在內部緩衝區130已準備好資料的區域,緩衝區讀取指標係顯示在內部緩衝區130所讀取的區域。緩衝區寫入周期計數器係顯示緩衝區寫入完成指標的環繞次數,緩衝區讀取周期計數器係顯示緩衝區讀取指標的環繞次數。兩指標均在每次環繞時以各+1進行正數。
首先,在S11中,在DMA轉送控制裝置100係被 設定以下設定資訊。
轉送來源位址:00h
轉送目的端位址:30h
轉送尺寸:56位元組
轉送類型:減量轉送
接著,在S12中,藉由資料非破壞控制部160,對各控制部以及各計數部通知為減量轉送。接著,進至S14,執行藉由減量轉送所為之DMA轉送。
在第27圖所示之順序1中,轉送來源讀取控制部 110對轉送來源的位址20h~30h的區域發行讀取1(3叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取1相對應的緩衝區寫入1,在位址28h~38h的區域寫入讀取資料。若緩衝區寫入1一完成, 緩衝區寫入控制部120係將緩衝區寫入完成指標更新為28h。
緩衝區讀取控制部140係將緩衝區讀取指標設定在以對轉送目的端所發行的寫入1(4叢發寫入)進行輸出的資料的讀出區域(20h)。
在第28圖所示之順序2中,轉送來源讀取控制部 110係對轉送來源的位址00h~18h的區域發行讀取2(4叢發讀取)。若由轉送來源接收到讀取資料,緩衝區寫入控制部120係對內部緩衝區130發行與讀取2相對應的緩衝區寫入2,且在位址08h~20h的區域寫入讀取資料。在此,緩衝區寫入2為未完成,緩衝區寫入控制部120係設為緩衝區寫入完成指標並未被更新。
資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」且「緩衝區寫入完成指標值>緩衝區讀取指標值」,判定為資料準備未完成,且未輸出轉送目的端可寫入指示。緩衝區讀取控制部140由於未檢測轉送目的端可寫入指示,因此未發行緩衝區讀取1。轉送目的端寫入控制部150亦同樣地未發行寫入1。其中,在順序2的狀態中,雖然有接下來寫入1所需的資料量(4叢發份),但是所需資料種類(13~28的資料)並未備齊,因此判斷為資料準備未完成。
在第29圖所示之順序3中,緩衝區寫入2完成,緩衝區寫入控制部120係將緩衝區寫入完成指標更新為08h。
資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」且「緩衝區寫入完成指標值≦緩衝區讀取指標值」,判定為資料準備完成,且輸出轉送目的端可 寫入指示。緩衝區讀取控制部140係若一檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址20h~38h的區域發行緩衝區讀取1且讀出轉送目的端寫入資料。轉送目的端寫入控制部150係對轉送目的端的位址30h~48h的區域發行寫入1(4叢發寫入)。
在第30圖所示之順序4中,緩衝區讀取控制部140 係若緩衝區讀取1完成,即將緩衝區讀取指標更新為08h。資料非破壞控制部160係檢測「緩衝區寫入周期計數器值=緩衝區讀取周期計數器值」而且「緩衝區寫入完成指標值≦緩衝區讀取指標值」,判定為資料準備完成,且輸出轉送目的端可寫入指示。緩衝區讀取控制部140係若檢測到轉送目的端可寫入指示,即對內部緩衝區130的位址08h~18h的區域發行緩衝區讀取2而讀出轉送目的端寫入資料。轉送目的端寫入控制部150係對轉送目的端的位址18h~28h的區域發行寫入2(3叢發寫入)。
在第31圖所示順序5中,顯示DMA轉送結果。 如轉送目的端所示,不會有發生資料破壞的情形,而完成資料的轉送。
實施形態2.
在實施形態1中,指定出CPU200進行增量轉送、或進行減量轉送。亦即,必須進行在CPU200側應進行增量轉送、或應進行減量轉送的判斷。
在實施形態2中,係說明DMA轉送控制裝置100按照轉送來源區域與轉送目的端區域的重疊狀態,適當判斷應進行增量轉 送、或應進行減量轉送的方法。
實施形態2之DMA轉送控制裝置100係僅有實施 形態1之DMA轉送控制裝置100、及資料非破壞控制部160的構成不同。
第32圖係實施形態2之資料非破壞控制部160的 構成圖。實施形態2之資料非破壞控制部160並未包括實施形態1之資料非破壞控制部160所包括的轉送類型設定暫存器161。取而代之,實施形態2之資料非破壞控制部160係包括:資料非破壞功能ON/OFF設定暫存器191、轉送來源位址設定暫存器192、轉送目的端位址設定暫存器193、轉送尺寸設定暫存器194、轉送類型判斷部195。
在資料非破壞功能ON/OFF設定暫存器191係被設為有將資料非破壞功能形成為ON(有效)、或形成為OFF(無效)。
在轉送來源位址設定暫存器192係被設定轉送來源區域的前頭位址。在轉送目的端位址設定暫存器193係被設定轉送目的端區域的前頭位址。在轉送尺寸設定暫存器194係被設定轉送資料的尺寸。
轉送類型判斷部195係若在資料非破壞功能ON/OFF設定暫存器191被設定為ON時,如以下所示判斷轉送類型,且通知各控制部。
(A)若轉送來源區域與轉送目的端區域不相重疊時,判斷為增量轉送。
(B)若轉送來源區域與轉送目的端區域相重疊時,則如以下(a)至(c)所示進行判斷。
(a)轉送來源區域與轉送目的端區域若為完全相同的區域,則判斷為增量轉送。
(b)若被設定在轉送來源位址設定暫存器192的位址(轉送來源區域的前頭位址)的位址值小於被設定在轉送目的端位址設定暫存器193的位址(轉送目的端區域的前頭位址)的位址值,則判斷為減量轉送。
(c)若被設定在轉送來源位址設定暫存器192的位址(轉送來源區域的前頭位址)的位址值大於被設定在轉送目的端位址設定暫存器193的位址(轉送目的端區域的前頭位址)的位址值,則判斷為增量轉送。
另一方面,轉送類型判斷部195係若在資料非破壞功能ON/OFF設定暫存器191被設定為OFF時,則恒對各控制部通知增量轉送。
第33圖係顯示實施形態2之DMA轉送控制裝置 100全體的動作流程圖。
S71係與第9圖的S11相同。此時,在暫存器亦設定將資料非破壞功能形成為ON、或形成為OFF。
在S72中,資料非破壞控制部160判定暫存器(資料非破壞功能ON/OFF設定暫存器191)的設定是否為ON。若為ON,將處理進至S73,若為OFF,則對各控制部通知為增量轉送,且將處理進至S75。
在S73中,資料非破壞控制部160判定為增量轉送、或減量轉送。若為減量轉送,對各控制部通知為減量轉送,且將處理進至S74。另一方面,若為增量轉送,則對各控制部通知為增 量轉送,且將處理進至S75。
在S74中,DMA轉送控制裝置100對記憶體300進行減量轉送。另一方面,在S75中,DMA轉送控制裝置100對記憶體300進行增量轉送。
接著,在S76中,若DMA轉送控制裝置100轉送完所被指定的資料長的資料時等,在有DMA轉送停止要因時,即停止轉送動作。
如以上所示,藉由實施形態2之DMA轉送控制裝置100,CPU200無須指示轉送類型,在DMA轉送控制裝置100側判斷出適當的轉送類型之後,可進行資料轉送。
其中,在以上說明中,各控制部亦可藉由例如電路等所構成,且將「~部」換讀成「~電路」。
100‧‧‧DMA轉送控制裝置
110‧‧‧轉送來源讀取控制部
120‧‧‧緩衝區寫入控制部
130‧‧‧內部緩衝區
140‧‧‧緩衝區讀取控制部
150‧‧‧轉送目的端寫入控制部
160‧‧‧資料非破壞控制部
170‧‧‧緩衝區寫入周期計數部
180‧‧‧緩衝區讀取周期計數部
300‧‧‧記憶體

Claims (7)

  1. 一種資料轉送裝置,將被記憶在轉送來源區域的資料轉送至轉送目的端區域,其特徵在於包括:轉送來源讀取控制部,其係輸出讀出前述被記憶在轉送來源區域的資料的讀取指令;緩衝區寫入控制部,其係取得藉由前述轉送來源讀取控制部所輸出的讀取指令所被讀出的資料而寫入至環狀緩衝區;緩衝區讀取控制部,其係由前述環狀緩衝區讀出前述緩衝區寫入控制部所寫入的資料,且傳送至前述轉送目的端區域;轉送目的端寫入控制部,其係輸出將前述緩衝區讀取控制部傳送至前述轉送目的端區域的資料,寫入至前述轉送目的端區域的寫入指令;寫入周期計數部,其係對藉由前述緩衝區寫入控制部所致之環繞的次數進行計數;讀取周期計數部,其係對藉由前述緩衝區讀取控制部所致之環繞的次數進行計數;及資料非破壞控制部,其係由前述寫入周期計數部所計數的次數、與前述讀取周期計數部所計數的次數的大小關係,判定可否許可對前述轉送目的端區域寫入資料,前述緩衝區讀取控制部係若前述資料非破壞控制部判定為許可寫入時,由前述環狀緩衝區讀出資料, 前述轉送目的端寫入控制部係若前述資料非破壞控制部判定為許可寫入時,輸出前述寫入指令,將前述緩衝區讀取控制部傳送至前述轉送目的端區域的資料寫入在前述轉送目的端區域。
  2. 如申請專利範圍第1項之資料轉送裝置,其中,前述資料非破壞控制部係另外由前述緩衝區寫入控制部已完成資料寫入的前述環狀緩衝區中的位址值、與前述緩衝區讀取控制部欲讀出資料的前述環狀緩衝區中的位址值的大小關係,來判定可否許可對前述轉送目的端區域寫入資料。
  3. 如申請專利範圍第2項之資料轉送裝置,其中,前述轉送來源讀取控制部係將按每個單位量的資料將預定個單位量的資料由讀取開始位址依位址值的遞增次序讀出的讀取指令,以前述讀取開始位址的位址值成為遞降次序的方式生成複數個而依序輸出,前述緩衝區寫入控制部係針對前述轉送來源讀取控制部所輸出的各讀取指令,依前述轉送來源讀取控制部輸出讀取指令的順序,按每個單位量取得藉由該讀取指令所讀出的資料,由該讀取指令中的讀取開始位址所對應的環狀緩衝區中的位址,以位址值的遞增次序寫入,並且藉由該讀取指令所被讀出的資料對於前述環狀緩衝區的寫入結束時,在前述讀取開始位址所對應的環狀緩衝區中的位址設定寫入完成指標,前述轉送目的端寫入控制部係按每個單位量的資料,將預定個單位量的資料由寫入開始位址以位址值的遞增次序寫 入的寫入指令,以前述寫入開始位址的位址值成為遞降次序的方式生成複數個而依序輸出,前述緩衝區讀取控制部係在前述轉送目的端寫入控制部接下來輸出的寫入指令中的寫入開始位址所對應的前述環狀緩衝區中的位址設定讀取指標,前述資料非破壞控制部係若前述寫入周期計數部所計數的次數多於前述讀取周期計數部所計數的次數時,及前述寫入周期計數部所計數的次數與前述讀取周期計數部所計數的次數相同,而設定有前述讀取指標的位址的位址值為被設定在前述寫入完成指標的位址的位址值以上時,判定為許可寫入,前述緩衝區讀取控制部係若前述資料非破壞控制部判定為許可寫入時,由設定有前述讀取指標的位址,以位址值的遞增次序按每個單位量讀出資料,前述轉送目的端寫入控制部係若前述資料非破壞控制部判定為許可寫入時,輸出接下來的寫入指令。
  4. 如申請專利範圍第3項之資料轉送裝置,其中,前述資料非破壞控制部係若前述轉送來源區域與前述轉送目的端區域重複時,且表示前述轉送來源區域的前頭位置的前頭位址的位址值為表示前述轉送目的端區域的前頭位置的前頭位址的位址值以下時,判定為進行減量轉送,若為其他情形,則判定為進行增量轉送,前述轉送來源讀取控制部係若前述資料非破壞控制部判定為進行減量轉送時,以前述讀取開始位址的位址值成為遞 降次序的方式,生成複數個前述讀取指令而依序進行輸出,若前述資料非破壞控制部判定為進行增量轉送時,以前述讀取開始位址的位址值成為遞增次序的方式生成複數個前述讀取指令而依序輸出,前述轉送目的端寫入控制部係若前述資料非破壞控制部判定為進行減量轉送時,以前述寫入開始位址的位址值成為遞降次序的方式生成複數個前述寫入指令而依序輸出,若前述資料非破壞控制部判定為進行增量轉送時,以前述寫入開始位址的位址值成為遞增次序的方式生成複數個前述寫入指令而依序輸出,前述資料非破壞控制部係若判定為進行減量轉送時,在前述寫入周期計數部所計數的次數多於前述讀取周期計數部所計數的次數時、及前述寫入周期計數部所計數的次數與前述讀取周期計數部所計數的次數相同且設定有前述讀取指標的位址的位址值為前述寫入完成指標所設定的位址的位址值以上時,判定為許可寫入,若判定為進行增量轉送時,則無關於前述讀取指標與前述寫入完成指標所設定的位址,而判定為許可寫入。
  5. 如申請專利範圍第1至4項中任一項之資料轉送裝置,其中,前述緩衝區寫入控制部係透過讀取用匯流排來取得藉由讀取指令所被讀出的資料,前述緩衝區讀取控制部係將由前述環狀緩衝區所讀出的資料,透過與前述讀取用匯流排不同的寫入用匯流排來傳送至轉送目的端區域。
  6. 一種資料轉送方法,將被記憶在轉送來源區域的資料轉送至轉送目的端區域,其特徵在於包括:轉送來源讀取控制步驟,其係輸出讀出前述被記憶在轉送來源區域的資料的讀取指令;緩衝區寫入控制步驟,其係取得藉由在前述轉送來源讀取控制步驟所輸出的讀取指令所被讀出的資料而寫入至環狀緩衝區;緩衝區讀取控制步驟,其係由前述環狀緩衝區讀出在前述緩衝區寫入控制步驟所寫入的資料,且傳送至前述轉送目的端區域;轉送目的端寫入控制步驟,其係輸出將在前述緩衝區讀取控制步驟傳送至前述轉送目的端區域的資料,寫入至前述轉送目的端區域的寫入指令;寫入周期計數步驟,其係對藉由前述緩衝區寫入控制步驟所致之環繞的次數進行計數;讀取周期計數步驟,其係對藉由前述緩衝區讀取控制步驟所致之環繞的次數進行計數;及資料非破壞控制步驟,其係由前述寫入周期計數步驟所計數的次數、與前述讀取周期計數步驟所計數的次數的大小關係,判定可否許可對前述轉送目的端區域寫入資料,在前述緩衝區讀取控制步驟中,若在前述資料非破壞控制步驟中判定為許可寫入時,由前述環狀緩衝區讀出資料,在前述轉送目的端寫入控制步驟中,若在前述資料非破壞 控制步驟判定為許可寫入時,輸出前述寫入指令,將在前述緩衝區讀取控制步驟傳送至前述轉送目的端區域的資料寫入在前述轉送目的端區域。
  7. 一種資料轉送程式產品,將被記憶在轉送來源區域的資料轉送至轉送目的端區域,其特徵在於使電腦執行以下處理:轉送來源讀取控制處理,其係輸出讀出前述被記憶在轉送來源區域的資料的讀取指令;緩衝區寫入控制處理,其係取得藉由在前述轉送來源讀取控制處理所輸出的讀取指令所被讀出的資料而寫入至環狀緩衝區;緩衝區讀取控制處理,其係由前述環狀緩衝區讀出在前述緩衝區寫入控制處理所寫入的資料,且傳送至前述轉送目的端區域;轉送目的端寫入控制處理,其係輸出將在前述緩衝區讀取控制處理傳送至前述轉送目的端區域的資料,寫入至前述轉送目的端區域的寫入指令;寫入周期計數處理,其係對藉由前述緩衝區寫入控制處理所致之環繞的次數進行計數;讀取周期計數處理,其係對藉由前述緩衝區讀取控制處理所致之環繞的次數進行計數;及資料非破壞控制處理,其係由在前述寫入周期計數處理所計數的次數、與在前述讀取周期計數處理所計數的次數的大小關係,判定可否許可對前述轉送目的端區域寫入資料, 在前述緩衝區讀取控制處理中,若在前述資料非破壞控制處理中判定為許可寫入時,由前述環狀緩衝區讀出資料,在前述轉送目的端寫入控制處理中,若在前述資料非破壞控制處理中判定為許可寫入時,輸出前述寫入指令,將在前述緩衝區讀取控制處理傳送至前述轉送目的端區域的資料寫入在前述轉送目的端區域。
TW102106366A 2012-02-29 2013-02-23 Data transfer devices, data transfer methods and data transfer program products TWI524267B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012043994 2012-02-29
PCT/JP2013/052451 WO2013129031A1 (ja) 2012-02-29 2013-02-04 データ転送装置、データ転送方法及びデータ転送プログラム

Publications (2)

Publication Number Publication Date
TW201403461A true TW201403461A (zh) 2014-01-16
TWI524267B TWI524267B (zh) 2016-03-01

Family

ID=49082235

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102106366A TWI524267B (zh) 2012-02-29 2013-02-23 Data transfer devices, data transfer methods and data transfer program products

Country Status (7)

Country Link
US (1) US9727504B2 (zh)
JP (1) JP5769868B2 (zh)
KR (1) KR101593865B1 (zh)
CN (1) CN104145255B (zh)
DE (1) DE112013001213T5 (zh)
TW (1) TWI524267B (zh)
WO (1) WO2013129031A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10841297B2 (en) 2013-12-16 2020-11-17 Amazon Technologies, Inc. Providing multi-factor authentication credentials via device notifications
US10362026B2 (en) 2013-12-16 2019-07-23 Amazon Technologies, Inc. Providing multi-factor authentication credentials via device notifications
US9473491B1 (en) * 2014-12-16 2016-10-18 Amazon Technologies, Inc. Computing device with integrated authentication token
US10866711B1 (en) 2013-12-16 2020-12-15 Amazon Technologies, Inc. Providing account information to applications
US9819673B1 (en) 2015-06-24 2017-11-14 Amazon Technologies, Inc. Authentication and authorization of a privilege-constrained application
US9864852B2 (en) 2015-07-27 2018-01-09 Amazon Technologies, Inc. Approaches for providing multi-factor authentication credentials
TWI615770B (zh) * 2015-11-17 2018-02-21 群聯電子股份有限公司 資料存取方法、記憶體控制電路單元與記憶體儲存裝置
JP6206524B2 (ja) * 2016-03-14 2017-10-04 日本電気株式会社 データ転送装置、データ転送方法、プログラム
US10162751B2 (en) * 2016-04-26 2018-12-25 Macronix International Co., Ltd. Nested wrap-around memory access with fixed offset
US20180018999A1 (en) * 2016-07-12 2018-01-18 Mediatek Inc. Video processing system using ring buffer and racing-mode ring buffer access control scheme
CN112098770A (zh) * 2020-08-20 2020-12-18 深圳市宏旺微电子有限公司 针对动态耦合故障模拟极端环境下的测试方法和装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61214047A (ja) 1985-03-20 1986-09-22 Fujitsu Ltd メモリデ−タ転送回路
JPH083850B2 (ja) * 1985-03-20 1996-01-17 キヤノン株式会社 画像処理装置
JP2703417B2 (ja) 1991-04-05 1998-01-26 富士通株式会社 受信バッファ
JP3176236B2 (ja) * 1994-11-30 2001-06-11 株式会社ソニー・コンピュータエンタテインメント 信号再生装置及び信号再生方法
JPH08292874A (ja) 1995-04-25 1996-11-05 Nec Eng Ltd メモリ状態検出回路
JP3181515B2 (ja) * 1996-09-11 2001-07-03 株式会社沖データ データ転送方法及びその方法を用いたデータ転送装置
JPH10116245A (ja) 1996-10-14 1998-05-06 Fujitsu Ltd Dma制御装置
US6311237B1 (en) 1998-01-05 2001-10-30 Canon Kabushiki Kaisha System including single host buffer for transmit and receive data and reception buffer in interface device having stand-by area for use by host buffer when abnormal state is detected
JP3768668B2 (ja) 1998-01-05 2006-04-19 キヤノン株式会社 インターフェース装置及び制御方法及び印刷装置
JP4292598B2 (ja) 1998-08-26 2009-07-08 富士通マイクロエレクトロニクス株式会社 Fifo回路及びマルチプロセッサシステム
US6571301B1 (en) 1998-08-26 2003-05-27 Fujitsu Limited Multi processor system and FIFO circuit
JP3765931B2 (ja) * 1998-10-15 2006-04-12 富士通株式会社 バッファ制御方法及びバッファ制御装置
EP1152342B1 (en) * 1999-01-12 2009-01-07 Fujitsu Limited Access control device and method for controlling access to recording medium
JP2000293480A (ja) 1999-04-12 2000-10-20 Oki Data Corp Dma転送装置
JP2001142841A (ja) 1999-11-12 2001-05-25 Nec Corp Dma転送制御方式
JP3461327B2 (ja) 2000-05-17 2003-10-27 Necマイクロシステム株式会社 トレースメモリに制限されない長時間トレースシステム
JP2002342262A (ja) 2001-05-11 2002-11-29 Fujitsu Ltd ダイレクトメモリアクセス制御装置およびダイレクトメモリアクセス制御方法
JP4749657B2 (ja) * 2003-03-20 2011-08-17 パナソニック株式会社 Dma制御装置
US7519747B1 (en) * 2003-09-11 2009-04-14 Xilinx, Inc. Variable latency buffer and method of operation
US20050289254A1 (en) * 2004-06-28 2005-12-29 Chih-Feng Chien Dynamic buffer allocation method
US20060129714A1 (en) 2004-12-10 2006-06-15 Fujitsu Limited Method and apparatus for transferring data
JP4451837B2 (ja) 2004-12-10 2010-04-14 富士通株式会社 データ転送装置およびデータ転送方法
US20070204076A1 (en) * 2006-02-28 2007-08-30 Agere Systems Inc. Method and apparatus for burst transfer
US7721018B2 (en) * 2006-08-24 2010-05-18 Microchip Technology Incorporated Direct memory access controller with flow control
JP2008083911A (ja) 2006-09-27 2008-04-10 Matsushita Electric Ind Co Ltd Dma転送制御装置および半導体集積回路装置
FR2913785B1 (fr) * 2007-03-13 2009-06-12 St Microelectronics Sa Gestion de memoire tampon circulaire
US9032113B2 (en) * 2008-03-27 2015-05-12 Apple Inc. Clock control for DMA busses
WO2011155096A1 (ja) * 2010-06-11 2011-12-15 パナソニック株式会社 データ転送制御装置とその集積回路とデータ転送制御方法、データ転送終了通知装置とその集積回路とデータ転送終了通知方法、およびデータ転送制御システム

Also Published As

Publication number Publication date
JPWO2013129031A1 (ja) 2015-07-30
DE112013001213T5 (de) 2014-12-04
KR101593865B1 (ko) 2016-02-12
CN104145255A (zh) 2014-11-12
KR20140128370A (ko) 2014-11-05
TWI524267B (zh) 2016-03-01
CN104145255B (zh) 2017-03-08
WO2013129031A1 (ja) 2013-09-06
JP5769868B2 (ja) 2015-08-26
US20150039803A1 (en) 2015-02-05
US9727504B2 (en) 2017-08-08

Similar Documents

Publication Publication Date Title
TWI524267B (zh) Data transfer devices, data transfer methods and data transfer program products
US7159048B2 (en) Direct memory access (DMA) transfer buffer processor
US8683093B2 (en) Memory system having high data transfer efficiency and host controller
TWI616884B (zh) 自記憶體讀取資料同時將寫入資料傳送至該記憶體之系統及方法
US5313588A (en) SCSI controller and method for use on an information processing system
US7707346B2 (en) PCI express multi-root IOV endpoint retry buffer controller
US20220012190A1 (en) Methods and Apparatus for Improving SPI Continuous Read
JP5518103B2 (ja) 伝送制御装置及び前記伝送制御装置を備えたplc
JP3824122B2 (ja) Dma装置
JP2017004430A5 (zh)
US20070198754A1 (en) Data transfer buffer control for performance
TW200303470A (en) Data transmission control device
JP2020077246A (ja) データ転送装置、撮像装置およびデータ転送方法
JP2007219874A (ja) データ転送制御装置及びデータ転送制御方法
JP2005228188A (ja) 情報処理システム
JP2017199287A (ja) 情報処理装置および情報処理方法
JP2018032320A (ja) バスシステム及びバスシステムの制御方法
JP2010287185A (ja) Dma転送制御装置およびdma転送制御方法
JPS63187943A (ja) 通信制御装置
JPH01145753A (ja) ダイレクトメモリアクセス・コントローラ
JP2005182312A (ja) デバイス制御回路
JPS6349256B2 (zh)

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees