TW200839532A - Data transmission systems and methods - Google Patents

Data transmission systems and methods Download PDF

Info

Publication number
TW200839532A
TW200839532A TW097100675A TW97100675A TW200839532A TW 200839532 A TW200839532 A TW 200839532A TW 097100675 A TW097100675 A TW 097100675A TW 97100675 A TW97100675 A TW 97100675A TW 200839532 A TW200839532 A TW 200839532A
Authority
TW
Taiwan
Prior art keywords
burst
data
equal
length
address
Prior art date
Application number
TW097100675A
Other languages
Chinese (zh)
Other versions
TWI363970B (en
Inventor
De-Jian Li
Wen-Bin Li
Original Assignee
Via Tech Inc
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 Via Tech Inc filed Critical Via Tech Inc
Publication of TW200839532A publication Critical patent/TW200839532A/en
Application granted granted Critical
Publication of TWI363970B publication Critical patent/TWI363970B/en

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

Landscapes

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

Abstract

Data transmission systems and methods are provided. The data transmission system comprises a bus, a slave, a master, and a master interface. The master transmits a request comprising transfer information comprising a start address and a length. The master interface receives the request from the master. The master interface determines a burst type of a first burst according to the transfer information, and transmits the first burst with the burst type to the slave via the bus, where the first burst is aligned to at least one address boundary of the slave. The master interface receives data corresponding to the first burst from the slave, and transmits the data to the master.

Description

200839532 九、發明說明: 【發明所屬之技術領域】 本發明係有關於一種資料傳輸,且特別有關於一種要 求特定長度與位址對齊(Address Aligned)之突發(Burst)的 資料傳送方法及系統。 【先前技術】 資料傳輸疋影響電腦系統效能的一個重要關鍵。硬體 設計者必須面對改善資料傳輸效率的挑戰。舉例來說,操 作軟體可以使用虛擬位址來表示資料儲存的位置。虛擬位 址可以對映至一相應之實體位址,實體位址係用以表示資 料實際在硬體(記憶體)中的位置。為了安全與其他理由,' 儲存於連續虛擬位址的資料可以被分割為對映至不同實體 位址之多個資料區塊。這些資料區塊可以隨機地在記憶體 中安排。當存取儲存於連續虛擬位址的資料時將會需要較 多的作業,且降低資料傳輸的效率。 舉例來說,上述資料傳輸可以在AMBA(Advanced Microcontroller Bus Architecture,進階微處理器匯流排架 構)中貝行’其中AMBA疋義一種晶片上之匯流排標準。 在AMBA中,多種的系統元件,如控制器、記憶體與周邊 介面等可以連接至匯流排上。在AMBA中,高頻寬匯流 排’如 AHB(Advanced High-performance Buses,進階高效 能匯流排)可以提供來在複數個主動裝置(Master)與從動裝 置(Slave)間進行資料傳輸。舉例來說,一控制器(主動裝置) 可以透過AHB存取一裝置(從動裝置),如記憶體。此裝置200839532 IX. Description of the Invention: [Technical Field] The present invention relates to a data transmission, and in particular to a data transmission method and system for a specific length and address alignment (Burst) . [Prior Art] Data transmission has an important key to the performance of computer systems. Hardware designers must face the challenge of improving data transfer efficiency. For example, the operating software can use virtual addresses to indicate where the data is stored. The virtual address can be mapped to a corresponding physical address, which is used to indicate the location of the data in the hardware (memory). For security and other reasons, 'data stored in consecutive virtual addresses can be split into multiple data blocks mapped to different physical addresses. These data blocks can be randomly arranged in memory. When accessing data stored in consecutive virtual addresses, more jobs will be required and the efficiency of data transfer will be reduced. For example, the above data transmission can be performed in an AMBA (Advanced Microcontroller Bus Architecture), in which AMBA depreciates a bus standard on a wafer. In AMBA, a variety of system components, such as controllers, memory and peripheral interfaces, can be connected to the busbar. In AMBA, high-frequency wide bus arrays such as AHB (Advanced High-performance Buses) can be used to transfer data between a plurality of masters and slaves. For example, a controller (active device) can access a device (slave device) such as a memory through the AHB. This device

Client’s Docket No.:VIC07-0002 TT^ Docket Ν〇:0608-Α41126-TW/Drafit-FinalYianhou/2007-12-18 200839532 可以疋支援大發與管線(Pipeline)資料傳輪程序 DMA(Direct Memory Access,記憶體直接存取)類型裝置之 貧料傳輸程序包括同意(Grant)、位址/控制、與資 週期。在同意週期中,-主動裝置首先要求對於匯二排進 行存取,且一仲裁器由主動裝置接收要求,且同意主動裴 置之要求,以在匯流排上進行傳輸操作。在位址與控制^ 期中,傳輸資訊,如傳輸之起始位址、方向與尺寸,以及 f.相應之封包類型會進行溝通。之後,在資料週期中進行資 、料傳輸。舉例來說,其中-個主動裝置可以被同意來擁二 匯級排。擁有匯流排的主動裝置可以透過匯流排傳送資料 至一從動裝置(寫操作),或是以一反方向透過匯流排由二 從動裝置要求一突發之資料(讀操作)。類似地,其中一個 從動裝置可以被同意來擁有匯流排。擁有匯流排的從動裝 置可以透過匯流排傳送資料,使得資料被要求此資料之主 動裝置進行讀取。 Γ 習知地,當具有特定長度之資料被要求,且資料的起 始位址並又有與§己憶體進行位址對齊(不在記憶體的雙字 組(DW,Double-Word)邊界,如 4DW/8DW/16DW 上)時, 主動I置可以使用一非特定長度之突發來由記憶體要求資 料。由於資料的起始位址並沒有位址對齊,主動裝置將會 要求一個跨越地址邊界的突發,如此的突發將會降低存取 的效能。由於非特定長度之突發無法提供長度資訊,也會 使得從動裝置的效能降低。另外,主動裝置可以使用更多 特定長度的突發來由記憶體要求資料。主動裝置會將一要Client's Docket No.:VIC07-0002 TT^ Docket Ν〇:0608-Α41126-TW/Drafit-FinalYianhou/2007-12-18 200839532 Can support Daihatsu and Pipeline data transfer program DMA (Direct Memory Access, memory The bulk transfer program of the type direct access type device includes Grant, address/control, and resource period. In the consent period, the active device first requires access to the second row of the sink, and an arbiter receives the request by the active device and agrees to the active device to perform the transfer operation on the bus. In the address and control period, information such as the starting address, direction and size of the transmission, and f. the corresponding packet type are communicated. After that, the materials and materials are transferred in the data cycle. For example, one of the active devices can be agreed to the second level. The active device with the bus bar can transmit data to a slave device (write operation) through the bus bar, or request a burst of data (read operation) from the second slave device through the bus bar in a reverse direction. Similarly, one of the slaves can be agreed to own the bus. A slave device with a bus bar can transmit data through the bus bar so that the data is read by the master device that requests the data.习 Conventionally, when a material with a specific length is required, and the starting address of the data is aligned with the address of the § memory (not in the double-word (DW, Double-Word) boundary of the memory, For example, on 4DW/8DW/16DW, the active I can use a burst of non-specific length to request data from the memory. Since the start address of the data is not aligned, the active device will require a burst across the address boundary, and such a burst will reduce the access efficiency. Since the burst of non-specific length cannot provide length information, the performance of the slave device is also reduced. In addition, the active device can use more bursts of a specific length to request data from the memory. The active device will have one

Client’s Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 6 200839532 求分為多個小要求,怂& # ^ ^ ^ 而使侍匯、飢排的效率降低。類似地, -個:越地:Γ=ΓΓ對Γ主動裝置將會要求 、大毛,如此的突發將會降低存取的效 月皂。 【發明内容】 接收施例所示之資料傳送方法首先由—主動裝置 訊之—要求,其中,傳輸資訊包括-起始 2。依據傳輸資訊決定-第一突發之一突發類 i荖弋、,轉對齊於從動裝置之至少-位址邊界。 動^―隱排將具有此突發_之第—突發傳送至 =實施例所示之資料傳送方法亦可用以由一記憶 體存取貧料,並中,却 ® ““ 且备一 目二 。思體被刀為複數個區段(Section), H 資料間隔之複數個位址邊界。告接收用 以貧料傳輸之-要求時’其中,要求包括相應―; 之-起始位置與一長度,依據起始位址二子取育料 一起始位址邊界,且依據起始位置與相庳 t定區段之 決定此選定區段之—結束位址邊界。依據料之長度 界,存取由起始位址邊界至結束位 5m之位址邊 起始位址落於起始位址邊界至結束貝;斗,其中, 本發明上述方法可以透過程4 收=中。 中。當程式碼被機器載入且執行時,機;:::體媒體 發明之裝置0 项^用从貧行本Client's Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 6 200839532 The score is divided into multiple small requirements, 怂&# ^ ^ ^ The efficiency of hunger is reduced. Similarly, the one: the more: Γ = ΓΓ ΓΓ Γ active device will require, large hair, such a burst will reduce access to the moon soap. SUMMARY OF THE INVENTION The data transmission method shown in the receiving embodiment is firstly requested by the active device, wherein the transmission information includes - start 2. According to the transmission information, it is determined that one burst of the first burst is aligned with at least the address boundary of the slave device. The data transfer method shown in the embodiment can also be used to transfer the poor material from a memory, and the medium is "" . The body is divided into a plurality of sections, and a plurality of address boundaries of the H data interval. Accepting the transmission of the poor material - when required, where the requirement includes the corresponding "; - the starting position and a length, according to the starting address, the second child takes the starting material address boundary, and according to the starting position and phase The decision of the selected section is the end of the selected section. According to the length boundary of the material, the address from the start address boundary to the end bit 5m is located at the start address boundary to the end of the address; the above method of the present invention can be processed through the process 4 = medium. in. When the code is loaded and executed by the machine, the machine;::: body media The device of the invention 0 item ^ used from the poor

Client’s Docket No.:VIC07-0002 TT5s Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-l§ 200839532 為使本發明之上述目的、特徵和優點能更明顯易懂, 下文特舉實施例,並配合所附圖示,詳細說明如下。 【實施方式】 凊參考第1圖,第1圖係依據本發明實施例所示之資 料傳送系統,其中,資料傳送系統100可以是一 AMBA系 統。 資料傳送系統100包括一 AHB主動裝置11 〇、一 AHB 主動介面120、與一 AHB從動裝置130 ;其中,AHB主動 裝置110例如是USB(Universal Serial Bus,通用序列匯排 流)主機控制器,AHB從動裝置13〇例如是記憶體等,而 AHB主動裝置no可以透過ahb主動介面120使用AHB 與AHB從動裝置13〇進行通信。 舉例來說,AHB主動裝置no可以透過AHB主動介 面120由AHB從動裝置130存取(讀/寫)資料。AHB主動 介面120由AHB主動裝置11〇接收包括傳輸資訊之要求, 且產生與傳送突發至AHB從動裝置130。AHB主動介面 120亦可由AHB從動裝置130接收相應之資料,且將資料 傳送至AHB主動裝置11〇。AHB主動介面120包括一突發 類型控制器121與一資料管理器122。突發類型控制器121 可以依據傳輸資訊來判斷至少一突發的突發類型,其中, 傳輸資訊包括在AHB從動裝置13〇中欲被存取之資料的一 起始位址與一長度。資料管理器122可以依據傳輸資訊將 由AHB從動裝置13〇所接收的資料中丟棄多餘的資料。 明參考弟2圖’第2圖係依據本發明實施例所示之資Client's Docket No.: VIC07-0002 TT5s Docket N〇: 0608-A41126-TW/Draft-FinalYianhou/2007-12-l§ 200839532 In order to make the above objects, features and advantages of the present invention more apparent, the following The embodiments, in conjunction with the accompanying drawings, are described in detail below. [Embodiment] Referring to Fig. 1, a first embodiment is a data transfer system according to an embodiment of the present invention, wherein the data transfer system 100 can be an AMBA system. The data transmission system 100 includes an AHB active device 11 , an AHB active interface 120 , and an AHB slave device 130 . The AHB active device 110 is, for example, a USB (Universal Serial Bus) host controller. The AHB slave device 13 is, for example, a memory or the like, and the AHB master device no can communicate with the AHB slave device 13 using the AHB active interface 120 using the AHB. For example, the AHB master device no can access (read/write) data from the AHB slave device 130 through the AHB active interface 120. The AHB active interface 120 receives the request to transmit information from the AHB active device 11 and generates and transmits a burst to the AHB slave device 130. The AHB active interface 120 can also receive corresponding data from the AHB slave device 130 and transmit the data to the AHB active device 11A. The AHB active interface 120 includes a burst type controller 121 and a data manager 122. The burst type controller 121 can determine the burst type of at least one burst according to the transmission information, wherein the transmission information includes a start address and a length of the data to be accessed in the AHB slave device 13A. The data manager 122 can discard the excess data from the data received by the AHB slave device 13 in accordance with the transmission information. The reference figure 2 is shown in the figure according to the embodiment of the present invention.

Client’s Docket No.:VIC07-0002 TT^ Docket No:〇6〇8-A41126-TW/Draft-FinalYianhou/2007-l2-18 8 200839532 料傳送方法。 如步驟S210,由一例如是AHB主動裝置110的匯流 排主動裝置,接收包括傳輸資訊之一要求;其中,傳輸資 訊包括一起始位置與一長度。 如步驟S220,依據傳輸資訊決定一突發之一突發類 型。注意的是,此突發係對齊於匯流排從動裝置,如AHB 從動裝置130的至少一位址邊界。在一些實施例中,位址 邊界可以是4DW(雙字組)、8DW與16DW。值得注意的是,Client’s Docket No.: VIC07-0002 TT^ Docket No: 〇6〇8-A41126-TW/Draft-FinalYianhou/2007-l2-18 8 200839532 Material transfer method. In step S210, a request for transmitting information is received by a bus active device such as the AHB active device 110; wherein the transmission information includes a starting position and a length. In step S220, a burst type of one burst is determined according to the transmission information. Note that this burst is aligned to the busbar slave, such as at least one address boundary of the AHB slave 130. In some embodiments, the address boundaries can be 4DW (double word), 8DW, and 16DW. It is worth noting that

C 一個要求可以產生多個突發。之後,如步驟S230,透過一 匯流排,如AHB將具有此突發類型之突發傳送至從動裝 置。 如步驟S240,判斷是否有資料由從動裝置接收。如果 沒有,繼續步驟S240的判斷。 如果由從動裝置接收到相應突發之資料,則如步驟 S250,依據傳輸資訊由接收之資料中找出多餘的資料,且 將其丟棄。值得注意的是,如果接收之資料中沒有多餘的 資料,則沒有資料會被丟棄。 如步驟S260,將資料傳送至主動裝置。 之後,如步驟S270,依據突發更新傳輸資訊。舉例來 說,將傳輸資訊中的長度減去相應目前突發之資料長度, 且起始位址加上相應目前突發之資料長度。 如步驟S280,判斷產生之突發是否已經完成相應之要 求(判斷相應要求之資料傳輸是否已經完成),即判斷更新 後傳輸資訊中的長度是否等於0。如果長度等於〇,則結束C A requirement can generate multiple bursts. Thereafter, in step S230, a burst having this burst type is transmitted to the slave device through a bus, such as AHB. In step S240, it is determined whether or not data is received by the slave device. If not, the judgment of step S240 is continued. If the data of the corresponding burst is received by the slave device, in step S250, the excess data is found out from the received data according to the transmission information, and is discarded. It is worth noting that if there is no extra information in the received data, no data will be discarded. In step S260, the data is transmitted to the active device. Thereafter, as in step S270, the information is transmitted in accordance with the burst update. For example, the length of the transmission information is subtracted from the length of the corresponding current burst, and the starting address is added to the data length of the corresponding current burst. In step S280, it is judged whether the generated burst has completed the corresponding request (determining whether the corresponding requested data transmission has been completed), that is, determining whether the length in the updated transmission information is equal to zero. End if the length is equal to 〇

Client’s Docket No.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-l8 9 200839532 資料傳輸程序。如果長度不等於〇,流程回到步驟S220, 直至資料傳輸程序結束。值得注意的是,在一些實施例中, 接收的資料可以先被收集且在一次傳輸中將資料傳送至主 動裝置。Client’s Docket No.: VIC07-0002 TT^ Docket No: 0608-A41126-TW/Draft-FinalYianhou/2007-12-l8 9 200839532 Data transfer program. If the length is not equal to 〇, the flow returns to step S220 until the data transfer program ends. It is noted that in some embodiments, the received data may be collected first and transmitted to the active device in one transmission.

在一些實施例中,突發類型控制器121可以包括一表 格300,用以記錄相應不同傳輸資訊之突發類型,如第3 圖所示。其中,列表示起始位址(後4位元),行表示長度 (DW),且列與行的交集為突發之類型。在表格300中,S r 表示具有一個DW長度之突發(或稱為一資料傳輸);IN4(增 額4)表示由一位址邊界開始之具有四個DW(4DWs)長度之 突發(或稱為一資料傳輸);IN8(增額8)表示由一位址邊界 開始之具有八個DW(8DWs)長度之突發(或稱為一資料傳 輸);以及IN16(增額16)表示由一位址邊界開始之具有十六 個DW(16DWs)長度之突發(或稱為一資料傳輸)。一旦由主 動裝置接收到傳輸資訊,一第一突發之類型便可以依據傳 , 輸資訊透過查詢表格來決定。類似地,後續突發之類型亦 i : 可以依據更新後之傳輸資訊決定。值得注意的是,第3圖 中之表格為一例子,本案並不限定於此。 第4圖顯示依據本發明實施例之記憶體中之區段。記 憶體被分為多個區段(Section),且每一區段具有在一列中 依序安排之多個單元(Unit)。在第4圖顯示之實施例中,每 一單元是一個DW的資料。為了容易理解,第4圖中區段 白勺起始位址為mmO, mrnl,mm2,···,mmf,其中n是一 十 六進位數字。為了資料傳輸的效率,記憶體中位址邊界的In some embodiments, the burst type controller 121 can include a table 300 for recording the burst type of the corresponding different transmission information, as shown in FIG. Among them, the column represents the starting address (the last 4 bits), the row represents the length (DW), and the intersection of the column and the row is of the type of burst. In table 300, S r represents a burst having a DW length (or referred to as a data transmission); IN 4 (increment 4) represents a burst of four DW (4DWs) lengths starting from a single address boundary ( Or a data transmission); IN8 (increment 8) represents a burst of eight DW (8DWs) length starting from a single address boundary (or called a data transmission); and IN16 (increment 16) A burst of sixteen DW (16DWs) lengths (or a data transmission) starting from a single address boundary. Once the transmission information is received by the active device, the type of the first burst can be determined based on the transmission and transmission information through the inquiry form. Similarly, the type of subsequent burst is also i: can be determined based on the updated transmission information. It is to be noted that the table in Fig. 3 is an example, and the present invention is not limited thereto. Figure 4 shows a section in a memory in accordance with an embodiment of the present invention. The memory is divided into a plurality of sections, and each section has a plurality of units arranged in a column. In the embodiment shown in Figure 4, each cell is a DW material. For easy understanding, the starting address of the section in Figure 4 is mmO, mrnl, mm2, ···, mmf, where n is a six-digit number. For the efficiency of data transmission, the boundary of the address in the memory

Client’s Docket N〇“VIC07-0002 TT5s Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 10 200839532 指定係依照記憶體的硬體設計與記憶體存取協定之定義來 進行。在此實施例中,IN16突發係由一位址邊界開始之具 有16DW長度之突發,如具有位址[nnn0_nnnf]之突發。IN8 突發係由一位址邊界開始之具有8DW長度之突發,如具有 位址[nnn0_nnn7]或[nnn8-nnnf]之突發。類似地,IN4突發 係由一位址邊界開始之具有4DW長度之突發,如具有位址 [nnn0-nnn3]、[nnn4-nnn7]、[nnn8-nnnb]或[ηηηοηηηί]之突 發。 請參考第5圖,第5圖顯示依據本發明實施例之資料 傳送方法。在此實施例中,突發類型控制器121可以依據 傳輸資訊直接決定突發之類型。 如步驟S402所示,首先判斷傳輸資訊中之長度是否大 於或等於16DW。若長度大於或等於i6DW,則如步驟 S404,判斷傳輸資訊中起始位址的最後第$個位元是否等 於1。右起始位址的最後第5個位元不等於1,則如步驟 ( S406 ’判定突發之類型為IN16突發。 若起始位址的最後第5個位元等於丨(步驟S404的 是)’則如步驟S408,判斷起始位址的最後第4個位元是 否等於0。若起始位址的最後第4個位元等於〇(步驟S408 的疋)’則如步驟S410,判定突發之類型為in8突發。 若起始位址的最後第4個位元不等於〇(步驟S408的 否)’如步驟S412,判定突發之類型為IN4突發。 接著,若長度不大於或不等於16DW(步驟S402的 否)’則如步驟S414,判斷長度是否大於或等於8DW。若Client's Docket N〇"VIC07-0002 TT5s Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 10 200839532 The designation is based on the hardware design of the memory and the definition of the memory access protocol. In this embodiment, the IN16 burst is a burst of 16DW length starting from a single address boundary, such as a burst with an address [nnn0_nnnf]. The IN8 burst is terminated by an address boundary with a length of 8DW. For example, a burst with an address [nnn0_nnn7] or [nnn8-nnnf]. Similarly, an IN4 burst is a burst of 4DW length starting from a single address boundary, such as having an address [nnn0-nnn3], [nnn4-nnn7], [nnn8-nnnb] or [nηηοηηηηί] burst. Please refer to Fig. 5, which shows a data transfer method according to an embodiment of the present invention. In this embodiment, a burst type controller The type of the burst can be directly determined according to the transmission information. As shown in step S402, it is first determined whether the length in the transmission information is greater than or equal to 16DW. If the length is greater than or equal to i6DW, then in step S404, the start bit in the transmission information is determined. Whether the last $bit of the address is equal to 1 If the last 5th bit of the right start address is not equal to 1, then the step is as follows (S406' determines that the type of the burst is IN16 burst. If the last 5th bit of the start address is equal to 丨 (step S404) Then, as in step S408, it is determined whether the last 4th bit of the start address is equal to 0. If the last 4th bit of the start address is equal to 〇 (疋 of step S408), then step S410 The type of the burst is determined to be an in8 burst. If the last 4th bit of the start address is not equal to 〇 (No in step S408)', as in step S412, it is determined that the type of the burst is an IN4 burst. If the length is not greater than or equal to 16DW (No in step S402), then as in step S414, it is determined whether the length is greater than or equal to 8DW.

Clienfs Docket No.:VIC〇7-〇〇〇2 TT s DocketN〇*.〇608-A41126-TW/Draft-FinalYianhou/2007-12-18 11 200839532 長度大於或等於8DW,則如步驟 旱始V S416,判斷起始位址的 取後弟5個位兀是否等於〇,且〜 a - η : & …束位址的最後第5個 位兀疋否專於1,其中,結束位 址寺於起始位址再加上長 若起始位址的最後第5個位元耸 曰怂馇-外 凡寺於〇,且結束位址的 取後弟5個位兀等於ι(步驟S41 ^ ^ ^ ^ 416的是),則如步驟S406, 判疋突發之類型為IN16突發。 =始位址的最後第5個位元不等於〇,或結束位址 的取後弟5個位元不等於i(步驟⑽的否),則如步驟 漏,判斷起純址的最後第4個位元是否等於g。如果 起始位址的最後第4個位元等於Q(步驟剛的是),則如 步驟S410,判定突發之類型為IN8突發。 如果起始位址的最後第4個位元不等於〇(步驟S4〇8 的否),則如步驟S412 ,判定突發之類型為IN4突發。 接著,若長度不大於或不等於8DW(步驟S414的否), 則如步驟S418,判斷長度是否大於或等於4DW。若長度 大於或專於4DW(步驟S418的是),則如步驟S420,判斷 起始位址的最後第5個位元是否等於〇,且結束位址的最 後第5個位元是否等於1。若起始位址的最後第5個位元 等於0,且結束位址的最後第5個位元等於1(步驟S42〇的 是),則如步驟S406,判定突發之類型為IN16突發。 右起始位址的最後弟5個位元不等於〇,或結束位址 的最後第5個位元不等於1(步驟S420的否),則如步驟 S422,判斷起始位址的最後第5個位元是否等於},且起Clienfs Docket No.: VIC〇7-〇〇〇2 TT s DocketN〇*.〇608-A41126-TW/Draft-FinalYianhou/2007-12-18 11 200839532 Length greater than or equal to 8DW, then step dry start V S416 , to determine whether the starting position of the 5th position of the younger brother is equal to 〇, and ~ a - η : & ... the last 5th position of the beam address is not specific to 1, wherein the ending address is in the temple The starting address is added to the last 5th bit of the starting address, and the other is the same as the ι (step S41 ^ ^) ^ ^ 416 is), then, as in step S406, the type of the burst is determined to be an IN16 burst. = The last 5th bit of the starting address is not equal to 〇, or the 5th bit of the ending address is not equal to i (No in step (10)), if the step is missing, the final 4th of the pure address is judged. Whether a bit is equal to g. If the last 4th bit of the start address is equal to Q (step yes), then as in step S410, it is determined that the type of the burst is an IN8 burst. If the last 4th bit of the start address is not equal to 〇 (No of step S4 〇 8), then in step S412, it is determined that the type of the burst is an IN4 burst. Next, if the length is not greater than or equal to 8DW (NO in step S414), then in step S418, it is determined whether the length is greater than or equal to 4DW. If the length is greater than or exclusively for 4DW (YES in step S418), then in step S420, it is determined whether the last 5th bit of the start address is equal to 〇, and whether the last 5th bit of the end address is equal to 1. If the last 5th bit of the start address is equal to 0, and the last 5th bit of the end address is equal to 1 (YES in step S42), then in step S406, it is determined that the type of the burst is an IN16 burst. . If the last 5th bit of the right start address is not equal to 〇, or the last 5th bit of the end address is not equal to 1 (No of step S420), then in step S422, the last bit of the start address is determined. Whether 5 bits is equal to }, and

Clienfs Docket No. :VIC07-0002 TT^ Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 12 200839532 始位址的最後第4個位元是否等於1。如果起始位址的最 後第5個位元等於1,且起始位址的最後第4個位元等於 1(步驟S422的是),如步驟S412,判定突發之類型為IN4 突發。如果起始位址的最後第5個位元不等於1,或起始 位址的最後第4個位元不等於1(步驟S422的否),如步驟 S410,判定突發之類型為IN8突發。 若長度不大於或不等於4DW(步驟S418的否),如步驟 , S424,判斷長度是否等於1DW。若長度不等於1DW(步驟 % S424的否),如步驟S426,判斷起始位址的最後第5個位 元是否等於0,且結束位址的最後第5個位元是否等於1。 若起始位址的最後第5個位元等於,且結束位址的最後第 5個位元等於1(步驟S426的是),則如步驟S406,判定突 發之類型為IN16突發。 若起始位址的最後第5個位元不等於〇,或結束位址 的最後第5個位元不等於1(步驟S426的否),則如步驟 , S428,判斷起始位址的最後第4個位元是否等於〇,且結 束位址的最後第4個位元是否等於1。如果起始位址的最 後第4個位元等於〇,且結束位址的最後第4個位元等於 1(步驟S428的是),則如步驟S410,判定突發之類型為IN8 突發。 如果起始位址的最後第4個位元不等於〇,或結束位 址的最後第4個位元等於1(步驟S428的否),則如步驟 S412,判定突發之類型為IN4突發。 若長度等於1DW(步驟S424的是),則如步驟S430,Clienfs Docket No. :VIC07-0002 TT^ Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 12 200839532 Whether the last 4th bit of the starting address is equal to 1. If the last 5th bit of the start address is equal to 1, and the last 4th bit of the start address is equal to 1 (YES in step S422), as in step S412, it is determined that the type of the burst is an IN4 burst. If the last 5th bit of the start address is not equal to 1, or the last 4th bit of the start address is not equal to 1 (No in step S422), as in step S410, it is determined that the type of the burst is IN8. hair. If the length is not greater than or equal to 4DW (NO in step S418), as in step S424, it is judged whether the length is equal to 1DW. If the length is not equal to 1DW (NO in step % S424), as in step S426, it is judged whether or not the last 5th bit of the start address is equal to 0, and whether the last 5th bit of the end address is equal to 1. If the last 5th bit of the start address is equal and the last 5th bit of the end address is equal to 1 (YES in step S426), then in step S406, the type of the burst is determined to be an IN16 burst. If the last 5th bit of the start address is not equal to 〇, or the last 5th bit of the end address is not equal to 1 (No in step S426), then in step S428, the last of the start address is determined. Whether the 4th bit is equal to 〇 and whether the last 4th bit of the end address is equal to 1. If the last 4th bit of the start address is equal to 〇, and the last 4th bit of the end address is equal to 1 (YES in step S428), then in step S410, it is determined that the type of the burst is an IN8 burst. If the last 4th bit of the start address is not equal to 〇, or the last 4th bit of the end address is equal to 1 (NO in step S428), then in step S412, it is determined that the type of the burst is an IN4 burst. . If the length is equal to 1 DW (YES in step S424), then in step S430,

Client’s Docket No·:VIC07-0002 TT's Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 13 200839532 判定突發之類型為S突發(單一 DW突發)。需要注意的是, 當突發之類型為S突發時,則流程結束。 在突發類型決定且相應之資料接收之後,則如步驟 S432,依據突發決定且丟棄多餘的資料,且更新長度。接 著,如步驟S434,判斷相應要求之資料傳輸是否已經完成 (更新後之長度等於〇)。如果尚未完成,流程則回到步驟 S402 ;如果相應要求之資料傳輸已經完成,則結束流程。 請參考第6圖,第6圖顯示相應記憶體之一資料傳送 f 例子。記憶體的第一個區段610係由位址0000至000f。記 憶體的第二個區段620係由位址0010至001f。每一資料位 址具有1個雙字組之容量。當一匯流排主動裝置想要存取 儲存於記憶體中位址0009-0011的資料,如長度為9個雙 字組的資料時,匯流排主動裝置將會發出相應資料傳輸之 一要求給匯流排介面。相應資料傳輸之要求中包括傳輸資 訊,如資料的起始位址為0009且資料長度為9。匯流排介 ( 面定位至起始位址所處於之第一區段610,且由於在位址 \ 0008起端的位址邊界是最接近起始位址0009,因此,選擇 在位址0007尾端與在位址0008起端的開始位址邊界。依 據資料的起始位址與長度可以知道有其他資料在其他的區 塊中。因此,結束位址邊界選擇為位址000f的尾端。依據 開始位址邊界與結束位址邊界,匯流排介面發出一 IN8突 發給記憶體,如要求由位址0008至000f之資料傳輸。由 於突發長度為8DW且起始位址為0009,因此,匯流排介 面可以知道存取資料中包括了多餘的1DW資料(ED)以及Client's Docket No:: VIC07-0002 TT's Docket No: 0608-A41126-TW/Draft-FinalYianhou/2007-12-18 13 200839532 The type of the burst is determined to be an S burst (single DW burst). It should be noted that when the type of the burst is an S burst, the flow ends. After the burst type is determined and the corresponding data is received, then in step S432, the excess data is determined and discarded according to the burst, and the length is updated. Next, in step S434, it is judged whether or not the corresponding requested data transmission has been completed (the updated length is equal to 〇). If not, the process returns to step S402; if the corresponding requested data transfer has been completed, the process ends. Please refer to Figure 6, which shows an example of data transfer f in the corresponding memory. The first segment 610 of memory is addressed by the address 0000 to 000f. The second section 620 of the memory is represented by addresses 0010 through 001f. Each data address has a capacity of 1 double word. When a bus active device wants to access data stored in the address 0009-0011 in the memory, such as 9 double-word data, the bus active device will issue a request for the corresponding data transmission to the sink. The interface. The corresponding data transmission requirements include transmission of information, such as the starting address of the data is 0009 and the data length is 9. The bus interface is located in the first sector 610 where the start address is located, and since the address boundary at the beginning of the address \ 0008 is the closest to the start address 0009, the selection is at the end of the address 0007. The start address boundary at the beginning of the address 0008. According to the start address and length of the data, other data can be known to be in other blocks. Therefore, the end address boundary is selected as the end of the address 000f. The address boundary and the end address boundary, the bus interface sends an IN8 burst to the memory, if the data transmission from the address 0008 to 000f is required. Since the burst length is 8DW and the start address is 0009, the convergence The interface can know that the access data includes extra 1DW data (ED) and

Clienfs Docket No.:VIC07-0002 TT5s Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 14 200839532 貧料存取長度為7DW。更具體的說,多餘的資料(ED)是在 相應記憶體中位址為0008的資料。由記憶體接收到資料之 後,匯/瓜排介面將多餘資料(ED)忽略,再將剩餘的資料傳 送至匯流排主動裝置。匯流排介面也會依據存取資料的長 度更新傳輸資訊。舉例來說,起始位址被更新為〇〇1(),且 長度被更新為2。前述步驟重複,由於起始位址〇〇 1 〇在區 段620中,因此匯流排介面選擇第二個區段620。起始位 ^ 址邊界選擇為位址的起端,且結束位址邊界選擇為位 1 址〇013的尾端。之後,匯流排介面發出一 IN4突發給記憶 體,以存取由位址〇〇1〇至〇〇13之資料。類似地,在由記 憶體接收到資料之後,匯流排介面將會忽略2DW的多餘資 料,再將剩餘的資料傳送至匯流排主動裝置。透過此實施 例之步驟,可以利用一個IN8突發與一個IN4突發來完成 由6己憶體存取位址0009-0011的資料。值得注意的是,所 有的突發都會對齊至位址邊界。 ί ¥主動t置存取從動裝置時,將會產生具有一特定長 度之至少一突發,如s(單一 DW),IN4、IN8與IN16突發。 其中’突發的起始位址會對齊於位址邊界,如4DW、8DW 與16DW。在本案中,當相應資料傳輸之要求跨越快取記 體(Cache)線(Line)與容量,如ικ邊界時,主動裝置不需 要分割相應資料傳輸之要求。另外,要求小量資料之要求 的數目將會降低’從而改善匯流排效率與系統效能。 本發明之方法,或特定型態或其部份,可以以程式碼 的型悲包含於貫體媒體,如軟碟、光碟片、硬碟、或是任Clienfs Docket No.: VIC07-0002 TT5s Docket N〇: 0608-A41126-TW/Draft-FinalYianhou/2007-12-18 14 200839532 The poor material access length is 7DW. More specifically, the redundant data (ED) is the data with the address 0008 in the corresponding memory. After receiving the data from the memory, the sink/guyer interface ignores the excess data (ED) and then transfers the remaining data to the bus master. The bus interface also updates the transmission information based on the length of the access data. For example, the start address is updated to 〇〇1() and the length is updated to 2. The foregoing steps are repeated, since the start address 〇〇 1 〇 is in the segment 620, the bus segment interface selects the second segment 620. The start bit address boundary is selected as the start of the address, and the end address boundary is selected as the end of bit 1 address 013. Thereafter, the bus interface sends an IN4 burst to the memory to access the data from the address 〇〇1〇 to 〇〇13. Similarly, after receiving the data from the memory, the bus interface will ignore the 2DW excess data and transfer the remaining data to the bus master. Through the steps of this embodiment, an IN8 burst and an IN4 burst can be used to complete the data of the address 0009-0011. It is worth noting that all bursts are aligned to the address boundary. ί When the active slave is accessed, at least one burst with a specific length, such as s (single DW), IN4, IN8, and IN16 bursts, is generated. The 'starting address of the burst' will be aligned to the address boundary, such as 4DW, 8DW and 16DW. In this case, when the corresponding data transmission requirements span the cache line (Line) and the capacity, such as the ικ boundary, the active device does not need to split the corresponding data transmission requirements. In addition, the number of requirements for small amounts of data will be reduced, thereby improving bus efficiency and system performance. The method of the present invention, or a specific type or part thereof, may be included in the media in the form of a code, such as a floppy disk, a CD, a hard disk, or any

Client’s Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 15 200839532 何其他機器可讀取(如電腦可讀取)儲存媒體,其中,當程 式碼被機器,如電腦載入且執行時,此機器變成用以參與 本發明之裝置。本發明之方法與裝置也可以以程式碼型態 透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸 型態進行傳送,其中,當程式碼被機器,如電腦接收、載 入且執行時,此機器變成用以參與本發明之裝置。當在一 般用途處理器實作時,程式碼結合處理器提供一操作類似 於應用特定邏輯電路之獨特裝置。 'f 雖然本發明已以較佳實施例揭露如上,然其並非用以 限定本發明,任何熟悉此項技藝者,在不脫離本發明之精 神和範圍内,當可做些許更動與潤飾,因此本發^之保= 範圍當視後附之申請專利範圍所界定者為準。 【圖式簡單說明】 第1圖為一示意圖係顯示依據本發明實施例之資料傳 送系統。 ’ 、、 ( 第2圖為一流程圖係顯示依據本發明實施例之資料 、 送方法。 、”、 第3圖顯示記錄相應傳輸資訊之突發類型。 第4圖為一示意圖係顯示依據本發明實施例之記憶體 中之區段。 """ 弟5A與5B圖為流程圖係顯示依據本發明實施例之次 料傳送方法。 ' 第6圖顯示相應記憶體之一資料傳送例子。 【主要元件符號說明】Client's Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 15 200839532 Any other machine readable (such as computer readable) storage media, where When the code is loaded and executed by a machine, such as a computer, the machine becomes a device for participating in the present invention. The method and apparatus of the present invention can also be transmitted in a code format through some transmission medium such as a wire or cable, an optical fiber, or any transmission type, wherein the code is received, loaded, and executed by a machine such as a computer. At this time, the machine becomes a device for participating in the present invention. When implemented in a general purpose processor, the code in conjunction with the processor provides a unique means of operating similar to the application specific logic. The present invention has been described above by way of a preferred embodiment, and is not intended to limit the invention, and it is to be understood that those skilled in the art can make some modifications and refinements without departing from the spirit and scope of the invention. The scope of this issue is subject to the definition of the scope of the patent application. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a schematic view showing a data transfer system in accordance with an embodiment of the present invention. ', (Fig. 2 is a flow chart showing the data, sending method according to the embodiment of the present invention.), and Fig. 3 shows the burst type for recording the corresponding transmission information. Fig. 4 is a schematic diagram showing the basis Sections in the memory of the embodiment of the invention. """"" Example. [Main component symbol description]

Client’s Docket N〇.:VIC07-0002 TT s DocketNo:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 16 200839532 100〜資料傳送系統; 110〜AHB主動裝置; 120〜AHB主動介面; 121〜突發類型控制器; 122〜資料管理器; 130〜AHB從動裝置; AHB〜進階高效能匯流排; S210、S220、…、S280〜步驟; 3 00〜表格; S、IN4、IN8、IN16〜突發類型; S402、S404、…、S434〜步驟; 610、620〜記憶體區段; ED〜多餘資料。Client's Docket N〇.:VIC07-0002 TT s DocketNo:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 16 200839532 100~ data transfer system; 110~AHB active device; 120~AHB active interface; 121~ Burst type controller; 122~ data manager; 130~AHB slave; AHB~ advanced high efficiency bus; S210, S220, ..., S280~ steps; 3 00~ table; S, IN4, IN8, IN16 ~ burst type; S402, S404, ..., S434~ steps; 610, 620~ memory segments; ED~ redundant data.

Clienfs Docket N〇.:VIC07-0002 TT5s Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-18Clienfs Docket N〇.:VIC07-0002 TT5s Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-18

Claims (1)

200839532 十、申請專利範圍: 1. 一種資料傳送方法,包括下列步驟: 由一主動裝置(Master)接收包括傳輸資訊之一要求,其 中該傳輸資訊包括一起始位置與一長度; 依據該傳輸資訊決定一第一突發(Burst)之一突發類 型,其中該第一突發對齊於一從動裝置(Slave)之至少一位 址邊界; 透過一匯流排將具有該突發類型之該第一突發傳送至 f 該從動裝置; 由該從動裝置接收相應該第一突發之資料;以及 將該資料傳送至該主動裝置。 2. 如申請專利範圍第1項所述之資料傳送方法,更包 括下列步驟: 依據該傳輸資訊判斷該資料中之多餘資料;以及 由該資料中丟棄該多餘資料。 3. 如申請專利範圍第1項所述之資料傳送方法,更包 r i 括下列步驟: 判斷該第一突發是否完成該要求; 若該第一突發並未完成該要求,依據該第一突發更新 該傳輸貧訊; 依據更新過之該傳輸資訊決定一第二突發之一突發類 型; 透過該匯流排將具有該突發類型之該第二突發傳送至 該從動裝置; Clienfs Docket No.:VIC07-0002 TT,s Docket N〇:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 18 200839532 由該從動裝置接收相應該第二突發之資料;以及 將相應該第二突發之該資料傳送至該主動裝置。 4. 如申請專利範圍第1項所述之資料傳送方法,其中 該突發類型包括一單一突發、一增額4(IN4)突發、一增額 8(IN8)突發、與一增額16(IN16)突發。 5. 如申請專利範圍第4項所述之資料傳送方法,更包 括下列步驟: 檢查該長度是否大於或等於16雙字組(DW); f 1 若該長度大於或等於16雙字組,檢查該起始位址之最 後第五個位元是否等於1;以及 若起始位址之最後第五個位元不等於1,決定該第一 突發之該突發類型為該增額16突發。 6. 如申請專利範圍第5項所述之資料傳送方法,其中 當該長度不大於或不等於16雙字組時,更包括下列步驟: 檢查該長度是否大於或等於8雙字組; ^ 若該長度大於或等於8雙字組,檢查該起始位址之最 v 後第五個位元是否等於0,且一結束位址之最後第五個位 元是否等於1,其中該結束位址等於該起始位址加上該長 度;以及 若該起始位址之最後第五個位元等於0,且該結束位 址之最後第五個位元等於1,決定該第一突發之該突發類 型為該增額16突發。 7. 如申請專利範圍第6項所述之資料傳送方法,更包 括下列步驟: Clienfs Docket No.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 19 200839532 檢查該起始位址之最後第四個位元是否等於ο ;以及 若該起始位址之最後第四個位元不等於〇,決定該第 一突發之該突發類型為該增額4突發。 8. 如申請專利範圍第6項所述之資料傳送方法,其中 當該長度不大於或不等於8雙字組時,更包括下列步驟: 檢查該長度是否大於或等於4雙字組; 若該長度大於或等於4雙字組,檢查該起始位址之最 後第五個位元是否等於0,且該結束位址之最後第五個位 f 元是否等於1 ;以及 若該起始位址之最後第五個位元等於0,且該結束位 址之最後第五個位元等於1,決定該第一突發之該突發類 型為該增額16突發。 9. 如申請專利範圍第8項所述之資料傳送方法,其中 當該長度不大於或不等於4雙字組時,更包括下列步驟: 檢查該長度是否等於1雙字組;以及 , 若該長度等於1雙字組,決定該第一突發之該突發類 ' 型為該單一突發。 10. 如申請專利範圍第9項所述之資料傳送方法,其中 當該長度不等於1雙字組時,更包括下列步驟: 檢查該起始位址之最後第五個位元是否等於0,且該 結束位址之最後第五個位元是否等於1 ;以及 若該起始位址之最後第五個位元等於0,且該結束位 址之最後第五個位元等於1,決定該第一突發之該突發類 型為該增額16突發。 Clients Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 20 200839532 11. 一種資料傳送方法,用以由一記憶體存取資料,其 中該記憶體被分為複數區段,且每一區段具有一資料間隔 之複數位址邊界,該方法包括下列步驟: 接收用以資料傳輸之一要求,其中該要求包括相應一 存取資料之一起始位置與一長度; 依據該起始位址選擇該等區段中之一者; 依據該起始位址決定相應該選定區段之一起始位址邊 界; f 依據該起始位置與相應該存取資料之該長度,決定相 應該選定區段之一結束位址邊界;以及 存取由該起始位址邊界至該結束位址邊界之一資料, 其中該起始位址落於該起始位址邊界至該結束位址邊界之 中〇 12. 如申請專利範圍第11項所述之資料傳送方法,更 包括依據該起始位址與該結束位址邊界決定一資料存取長 度。 " 13.如申請專利範圍第11項所述之資料傳送方法,更 包括依據該起始位址與該起始位址邊界由該資料中丟棄一 多餘資料。 14. 如申請專利範圍第12項所述之資料傳送方法,更 包括當該資料存取長度小於該存取資料的該長度時,依據 該資料存取長度更新相應該存取資料之該起始位址與該程 度。 15. 如申請專利範圍第11項所述之資料傳送方法,其 Client5s Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 21 200839532 中該起始位址邊界係在該起始位址之前,且最接近該起始 位址之一位址邊界。 16. 如申請專利範圍第11項所述之資料傳送方法,其 中每一該等區段具有16雙字組之長度,且該資料間隔具有 4雙字組之長度。 17. 如申請專利範圍第16項所述之資料傳送方法,其 中由該起始位址邊界至該結束位址邊界之該資料具有4雙 字組、8雙字組、或16雙字組之長度。 1 18.如申請專利範圍第11項所述之資料傳送方法,更 包括當該存取資料之該長度為1時,存取由該起始位址指 定之資料。200839532 X. Patent application scope: 1. A data transmission method, comprising the following steps: receiving, by an active device (Master), a request including transmission information, wherein the transmission information includes a starting position and a length; determining according to the transmission information a burst type of a first burst, wherein the first burst is aligned with at least one address boundary of a slave device; the first type having the burst type through a bus bar Bursting to f the slave device; receiving, by the slave device, data corresponding to the first burst; and transmitting the data to the master device. 2. The method for transmitting data as described in item 1 of the patent application further includes the following steps: judging the excess information in the data based on the transmission information; and discarding the redundant data from the data. 3. The method for transmitting data according to item 1 of the patent application scope includes the following steps: determining whether the first burst completes the request; if the first burst does not complete the request, according to the first Summing up the transmission of the poor message; determining, according to the updated transmission information, a burst type of the second burst; transmitting, by the bus, the second burst having the burst type to the slave device; Clienfs Docket No.: VIC07-0002 TT, s Docket N〇: 0608-A41126-TW/Draft-FinalYianhou/2007-12-18 18 200839532 The slave device receives the data corresponding to the second burst; The data of the second burst should be transmitted to the active device. 4. The data transmission method according to claim 1, wherein the burst type includes a single burst, an increment 4 (IN4) burst, an increment 8 (IN8) burst, and an increase. The amount of 16 (IN16) burst. 5. For the data transmission method described in claim 4, the method further includes the following steps: Check whether the length is greater than or equal to 16 double words (DW); f 1 if the length is greater than or equal to 16 double words, check Whether the last fifth bit of the start address is equal to 1; and if the last fifth bit of the start address is not equal to 1, determining the burst type of the first burst is the increment of 16 bursts hair. 6. The data transfer method of claim 5, wherein when the length is not greater than or equal to 16 double blocks, the method further comprises the steps of: checking whether the length is greater than or equal to 8 double blocks; The length is greater than or equal to 8 double blocks, checking whether the fifth bit of the starting address is equal to 0, and whether the last fifth bit of an ending address is equal to 1, wherein the ending address Equal to the start address plus the length; and if the last fifth bit of the start address is equal to 0, and the last fifth bit of the end address is equal to 1, the first burst is determined The burst type is the burst of 16 increments. 7. For the data transmission method described in claim 6, the following steps are included: Clienfs Docket No.: VIC07-0002 TT^ Docket No: 0608-A41126-TW/Draft-FinalYianhou/2007-12-18 19 200839532 Check if the last fourth bit of the start address is equal to ο; and if the last fourth bit of the start address is not equal to 〇, determine the burst type of the first burst as the increase The amount of 4 bursts. 8. The data transmission method according to claim 6, wherein when the length is not greater than or equal to 8 double blocks, the method further comprises the steps of: checking whether the length is greater than or equal to 4 double words; The length is greater than or equal to 4 double blocks, checking whether the last fifth bit of the start address is equal to 0, and whether the last fifth bit of the end address is equal to 1; and if the start address The last fifth bit is equal to 0, and the last fifth bit of the end address is equal to 1, and the burst type of the first burst is determined to be the increment of 16 bursts. 9. The data transfer method of claim 8, wherein when the length is not greater than or equal to 4 double blocks, the method further comprises the steps of: checking whether the length is equal to 1 double word; and, if The length is equal to 1 double block, and the burst type of the first burst is determined to be the single burst. 10. The data transfer method according to claim 9, wherein when the length is not equal to 1 double block, the method further comprises the steps of: checking whether the last fifth bit of the start address is equal to 0, And whether the last fifth bit of the end address is equal to 1; and if the last fifth bit of the start address is equal to 0, and the last fifth bit of the end address is equal to 1, The burst type of the first burst is the burst of 16 increments. Clients Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 20 200839532 11. A data transmission method for accessing data from a memory, wherein The memory is divided into a plurality of segments, and each segment has a complex address boundary of a data interval, the method comprising the steps of: receiving a request for data transmission, wherein the request includes a corresponding access data a start position and a length; selecting one of the segments according to the start address; determining, according to the start address, a start address boundary corresponding to the selected segment; f according to the start position and corresponding Accessing the length of the data, determining an end address boundary corresponding to one of the selected segments; and accessing data from the start address boundary to the end address boundary, wherein the start address falls The starting address boundary is in the boundary of the ending address. 12. The data transmission method described in claim 11 further includes determining a data access length according to the starting address and the ending address boundary. " 13. The method for transmitting data according to claim 11 of the patent application, further comprising discarding a redundant data from the data according to the start address and the start address boundary. 14. The data transfer method of claim 12, further comprising updating the corresponding start of the access data according to the data access length when the data access length is less than the length of the access data. The address and the extent. 15. For the data transmission method described in claim 11, the client5s Docket N〇.:VIC07-0002 TT^ Docket No:0608-A41126-TW/Draft-FinalYianhou/2007-12-18 21 200839532 The start address boundary is before the start address and is closest to the address boundary of one of the start addresses. 16. The data transfer method of claim 11, wherein each of the sections has a length of 16 double blocks and the data interval has a length of 4 double blocks. 17. The data transfer method of claim 16, wherein the material from the start address boundary to the end address boundary has 4 double words, 8 double words, or 16 double words. length. 1 18. The data transfer method of claim 11, further comprising accessing the data specified by the start address when the length of the access data is one. Client’s Docket No.:VIC07-0002 TT^ Docket Ν〇:0608-Α41126-TW/Draft-FinalYianhou/2007-12-18Client’s Docket No.:VIC07-0002 TT^ Docket Ν〇:0608-Α41126-TW/Draft-FinalYianhou/2007-12-18
TW097100675A 2007-03-30 2008-01-08 Data transmission methods TWI363970B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/693,752 US7743179B2 (en) 2007-03-30 2007-03-30 Data transmission methods

Publications (2)

Publication Number Publication Date
TW200839532A true TW200839532A (en) 2008-10-01
TWI363970B TWI363970B (en) 2012-05-11

Family

ID=39796263

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097100675A TWI363970B (en) 2007-03-30 2008-01-08 Data transmission methods

Country Status (2)

Country Link
US (1) US7743179B2 (en)
TW (1) TWI363970B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107957969A (en) * 2016-10-17 2018-04-24 佛山市顺德区顺达电脑厂有限公司 Judge the method for equipment connection status and device type

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5759276B2 (en) * 2011-06-09 2015-08-05 キヤノン株式会社 Processing apparatus and information processing method
US10162751B2 (en) * 2016-04-26 2018-12-25 Macronix International Co., Ltd. Nested wrap-around memory access with fixed offset
US10860509B1 (en) * 2019-07-23 2020-12-08 Texas Instruments Incorporated Multi-device burst update method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4370712A (en) 1980-10-31 1983-01-25 Honeywell Information Systems Inc. Memory controller with address independent burst mode capability
US6330623B1 (en) * 1999-01-08 2001-12-11 Vlsi Technology, Inc. System and method for maximizing DMA transfers of arbitrarily aligned data
US7583732B2 (en) * 2002-12-06 2009-09-01 Broadcom Corporation Managing bursts of data
DE602004012563T2 (en) * 2004-10-11 2009-05-07 Texas Instruments Inc., Dallas Multi-threaded DMA
JP4936506B2 (en) * 2005-12-08 2012-05-23 ルネサスエレクトロニクス株式会社 Memory control circuit and memory control method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107957969A (en) * 2016-10-17 2018-04-24 佛山市顺德区顺达电脑厂有限公司 Judge the method for equipment connection status and device type

Also Published As

Publication number Publication date
TWI363970B (en) 2012-05-11
US20080244132A1 (en) 2008-10-02
US7743179B2 (en) 2010-06-22

Similar Documents

Publication Publication Date Title
US10120586B1 (en) Memory transaction with reduced latency
US8041871B2 (en) System and method for providing address decode and virtual function (VF) migration support in a peripheral component interconnect express (PCEI) multi-root input/output virtualization (IOV) environment
JP5241737B2 (en) Method and apparatus enabling identification of resource assignments at the instruction level in a processor system
US20150019798A1 (en) Method and Apparatus for Providing Dual Memory Access to Non-Volatile Memory
US20100228885A1 (en) Apparatus and method for block-based data striping to solid-state memory modules with optional data format protocol translation
JP4906917B2 (en) To provide an address format that is compatible with the different addressing formats used to address different sized address spaces
WO2014124576A1 (en) Memory management method, memory management device and numa system
WO2013170730A1 (en) Dma transmission method and system
JP2005050324A (en) Interface conversion system and its method
JP6222227B2 (en) Storage node, storage node management apparatus, storage node logical capacity setting method, program, recording medium, and distributed data storage system
AU2013388031A1 (en) Data processing system and data processing method
TW200305808A (en) ATA/SATA combined controller
KR20190052546A (en) Key-value storage device and method of operating the key-value storage device
CN112632069B (en) Hash table data storage management method, device, medium and electronic equipment
US20180314467A1 (en) Storage device, computing system including the storage device, and method of operating the storage device
CN110716691B (en) Scheduling method and device, flash memory device and system
JP2011243142A (en) Communication control device, data communication method and program
US7460531B2 (en) Method, system, and program for constructing a packet
TW202015044A (en) Data management method and storage controller using the same
TW200839532A (en) Data transmission systems and methods
US11029847B2 (en) Method and system for shared direct access storage
US7856540B2 (en) System and article of manufacture for removing alias addresses from an alias address pool
US20060026328A1 (en) Apparatus And Related Method For Calculating Parity of Redundant Array Of Disks
JP2008118630A (en) System managing bus port router
WO2019244656A1 (en) Storage device