亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

利用直接存儲(chǔ)器存取控制來(lái)傳輸數(shù)據(jù)的方法和裝置的制作方法

文檔序號(hào):6610786閱讀:211來(lái)源:國(guó)知局
專利名稱:利用直接存儲(chǔ)器存取控制來(lái)傳輸數(shù)據(jù)的方法和裝置的制作方法
技術(shù)領(lǐng)域
與本發(fā)明 一致的方法和裝置涉及利用直接存儲(chǔ)器存取控制來(lái)傳輸數(shù)據(jù)。
背景技術(shù)
直接存儲(chǔ)器存取(DMA)控制是一種控制存儲(chǔ)在源存儲(chǔ)器中的數(shù)據(jù)以 便不經(jīng)過(guò)中央處理單元(CPU)而直接傳輸數(shù)據(jù)到目的存儲(chǔ)器的方法。
為了利用DMA方法,需要將DMA控制設(shè)備安裝在系統(tǒng)總線上。
圖1是說(shuō)明相關(guān)技術(shù)的DMA控制裝置120操作的示意框圖。參考圖1, 將中央處理單元(CPU) 110、 DMA控制裝置120、源存儲(chǔ)器130和目的存 儲(chǔ)器140連接到總線150上。DMA控制裝置120從CPU IIO取得系統(tǒng)控制 權(quán)并且處理CPU110的系統(tǒng)控制功能。為了完成此過(guò)程,例如,如果所述的 系統(tǒng)控制功能是讀或?qū)憯?shù)據(jù)塊,CPU 110通過(guò)總線150將讀/寫操作命令、 源存儲(chǔ)器130的地址、目的存儲(chǔ)器140的地址以及有關(guān)例如傳輸數(shù)據(jù)量的信 息發(fā)送給DMA控制裝置120。在向DMA控制裝置120發(fā)送了所述的命令 和信息之后,CPU 110執(zhí)行其它操作。
DMA控制裝置120控制存儲(chǔ)在源存儲(chǔ)器130中的數(shù)據(jù)以便不經(jīng)過(guò)CPU 110傳輸數(shù)據(jù)而將所述數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器140中。當(dāng)執(zhí)行上述控制時(shí), DMA控制裝置120的控制模式可以是單一模式或突發(fā)模式。
單一模式表示這樣的一種模式,在此模式下,如果在向目的存儲(chǔ)器140 傳輸數(shù)據(jù)期間產(chǎn)生高級(jí)別中斷,先處理高級(jí)別中斷,然后再恢復(fù)所述的數(shù)據(jù) 傳輸。突發(fā)模式表示這樣的一種模式,在此模式下,完成所有連續(xù)的數(shù)據(jù)塊 傳輸而不響應(yīng)中斷。因此,在單一模式下,當(dāng)獲得存取允許時(shí)傳輸和接收一 塊數(shù)據(jù)。在突發(fā)模式下,當(dāng)獲得存取允許時(shí)傳輸和接收多塊數(shù)據(jù)。
將參考圖1詳細(xì)描述在突發(fā)模式下DMA控制裝置120的操作。首先, DMA控制裝置120向源存儲(chǔ)器130發(fā)送表示DMA控制裝置120想接收具 有與當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值對(duì)應(yīng)的長(zhǎng)度的數(shù)據(jù)的信號(hào)。例如,當(dāng)突發(fā)長(zhǎng)度值 是4個(gè)字時(shí),DMA控制裝置120向源存儲(chǔ)器130發(fā)送表示想要傳輸4個(gè)字
長(zhǎng)度的數(shù)據(jù)的信號(hào)。
作為對(duì)來(lái)自DMA控制裝置120的所述信號(hào)的響應(yīng),源存儲(chǔ)器130從要 傳輸?shù)臄?shù)據(jù)中傳輸4個(gè)字長(zhǎng)度的數(shù)據(jù)到DMA控制裝置120。 DMA裝置120 將從源存儲(chǔ)器130接收的4個(gè)字長(zhǎng)度的數(shù)據(jù)存儲(chǔ)在包括在DMA裝置120中 的先入先出(FIFO)存儲(chǔ)器中。
然后,DMA裝置120向目的存儲(chǔ)器140發(fā)送表示4個(gè)字長(zhǎng)度的數(shù)據(jù)傳 輸?shù)男盘?hào),然后將4個(gè)字長(zhǎng)度的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器140。重復(fù)此傳輸過(guò) 程直到將存儲(chǔ)在源存儲(chǔ)器130中的所有數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器140為止。
圖2是說(shuō)明由圖1的相關(guān)技術(shù)的DMA控制裝置120所執(zhí)行的數(shù)據(jù)傳輸 的示意圖。當(dāng)突發(fā)長(zhǎng)度值是4個(gè)字并且在4個(gè)字單元傳輸重復(fù)之后與剩余在 源存儲(chǔ)器130中的數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)是6個(gè)字時(shí),執(zhí)行圖2所示的數(shù)據(jù)傳 輸。
參考圖2,在時(shí)段210中,在數(shù)據(jù)傳輸開始之前,在源存儲(chǔ)器130中存 儲(chǔ)與6個(gè)字對(duì)應(yīng)的數(shù)據(jù),并且突發(fā)長(zhǎng)度值被設(shè)置為4個(gè)字。
在時(shí)段220中,從剩余在源存儲(chǔ)器130中的6個(gè)字?jǐn)?shù)據(jù)中傳輸其中與突 發(fā)長(zhǎng)度值相應(yīng)的4個(gè)字?jǐn)?shù)據(jù)到目的存儲(chǔ)器140,這樣,2個(gè)字?jǐn)?shù)據(jù)保留在源 存儲(chǔ)器130中。因?yàn)橥话l(fā)長(zhǎng)度值被固定為4個(gè)字,所以在突發(fā)模式下無(wú)法傳 輸剩余的2個(gè)字?jǐn)?shù)據(jù)。
在時(shí)段230中,在CPU110將突發(fā)模式改為單一模式后,從剩余的2個(gè) 字?jǐn)?shù)據(jù)中傳輸與 一 個(gè)字相應(yīng)的數(shù)據(jù)。
在時(shí)段240中,在時(shí)段230之后將剩余在存儲(chǔ)器130中的1個(gè)字?jǐn)?shù)據(jù)傳 輸?shù)侥康拇鎯?chǔ)器140中。因此,完成了存儲(chǔ)在源存儲(chǔ)器130中的所有數(shù)據(jù)的 傳輸。
如上所述,在傳統(tǒng)DMA控制方法中,在突發(fā)模式下突發(fā)長(zhǎng)度值被固定, 這樣,具有小于固定突發(fā)長(zhǎng)度值的長(zhǎng)度的數(shù)據(jù)必須在單一模式下被傳輸。因 此,CPU必須執(zhí)行改變模式的附加操作以便在單一模式下傳輸剩余數(shù)據(jù)。此 外,除非最初設(shè)計(jì)了芯片,否則沒(méi)有辦法檢查在數(shù)據(jù)傳輸期間的傳輸效率。 換言之,僅在初始設(shè)計(jì)芯片的操作中,才能夠檢查傳輸效率。

發(fā)明內(nèi)容
本發(fā)明提供了 一種直接存儲(chǔ)器存取控制裝置和方法,該方法和裝置通過(guò)
動(dòng)態(tài)改變突發(fā)長(zhǎng)度值來(lái)使得數(shù)據(jù)傳輸更加高效,并且用戶通過(guò)測(cè)量數(shù)據(jù)傳輸 效率能夠確定數(shù)據(jù)傳輸?shù)男省?br> 根據(jù)本發(fā)明的 一個(gè)方面,提供了 一種在存儲(chǔ)要傳輸數(shù)據(jù)的源存儲(chǔ)器和存 儲(chǔ)所傳輸數(shù)據(jù)的目的存儲(chǔ)器之間利用DMA控制來(lái)執(zhí)行數(shù)據(jù)傳輸?shù)姆椒ǎ?br> 方法包括檢查與在將存儲(chǔ)在源存儲(chǔ)器中的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器之后所剩 余數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)的長(zhǎng)度值、以及當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;在檢查結(jié)果 的基礎(chǔ)上,把剩余數(shù)據(jù)的長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值進(jìn)行比較;以及在 比較結(jié)果的基礎(chǔ)上選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)到目 的存儲(chǔ)器。
在選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值并且傳輸數(shù)據(jù)的過(guò)程中,如果當(dāng) 前設(shè)置的突發(fā)長(zhǎng)度值大于剩余數(shù)據(jù)長(zhǎng)度值,可以將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改 為小于或等于剩余數(shù)據(jù)的長(zhǎng)度值,并且傳輸與所改變的突發(fā)長(zhǎng)度值相應(yīng)的數(shù)據(jù)。
在選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值并且傳輸數(shù)據(jù)的過(guò)程中,可以將 突發(fā)長(zhǎng)度值改為在小于或等于剩余數(shù)據(jù)長(zhǎng)度值中的最大值。
在選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值并且傳輸數(shù)據(jù)的過(guò)程中,如果當(dāng) 前設(shè)置的突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)的長(zhǎng)度值,可以不改變當(dāng)前設(shè)置的 突發(fā)長(zhǎng)度值。
數(shù)據(jù)傳輸方法可以進(jìn)一步包括,在檢查剩余數(shù)據(jù)長(zhǎng)度的操作之前,從中 央處理單元接收新的突發(fā)長(zhǎng)度值并且將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為所接 收的新突發(fā)長(zhǎng)度值。
在將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為所接收的新突發(fā)長(zhǎng)度值的過(guò)程中,當(dāng) 當(dāng)前正在進(jìn)行的數(shù)據(jù)讀/寫操作完成時(shí),可以將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為 所接收的新突發(fā)長(zhǎng)度值。
數(shù)據(jù)傳輸方法可以進(jìn)一步包括,檢查從數(shù)據(jù)從源存儲(chǔ)器到目的存儲(chǔ)器傳 輸開始到傳輸完成所需的總時(shí)間段,以及在所檢查結(jié)果的基礎(chǔ)上估計(jì)數(shù)據(jù)傳 輸?shù)男省?br> 可以在時(shí)鐘信號(hào)的基礎(chǔ)上測(cè)量所需要的總時(shí)間段。 總時(shí)間段的檢查可以進(jìn)一步包括在從傳輸開始到傳輸完成期間針對(duì)每 個(gè)突發(fā)長(zhǎng)度值所執(zhí)行的數(shù)據(jù)讀/寫操作數(shù)。
總時(shí)間段的檢查可以進(jìn)一步包括從源存儲(chǔ)器到目的存儲(chǔ)器的傳輸開始
到傳輸完成的針對(duì)每個(gè)突發(fā)長(zhǎng)度值所需要的時(shí)間段。
根據(jù)本發(fā)明的另一個(gè)方面,本發(fā)明提供DMA控制裝置,用于控制在存 儲(chǔ)要傳輸數(shù)據(jù)的源存儲(chǔ)器和存儲(chǔ)所傳輸數(shù)據(jù)的目的存儲(chǔ)器之間的數(shù)據(jù)傳輸,
直接存儲(chǔ)器存取控制裝置包括計(jì)數(shù)單元,檢查與在將源存儲(chǔ)器中的數(shù)據(jù)傳 輸?shù)侥康拇鎯?chǔ)器之后剩余的數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)的長(zhǎng)度值、以及當(dāng)前設(shè)置的 突發(fā)長(zhǎng)度值;比較單元,在計(jì)數(shù)單元所檢查結(jié)果的基礎(chǔ)上把剩余數(shù)據(jù)的長(zhǎng)度 值與當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值進(jìn)行比較;突發(fā)長(zhǎng)度值設(shè)置單元,在比較結(jié)果的 基礎(chǔ)上選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值,并將數(shù)據(jù)發(fā)送到目的存儲(chǔ)器; 以及突發(fā)信號(hào)傳輸單元,傳輸用于傳輸與所改變的突發(fā)長(zhǎng)度值相應(yīng)的數(shù)據(jù)的 突發(fā)信號(hào)。
直接存儲(chǔ)器存取控制裝置可以進(jìn)一步包括寄存器,用于存儲(chǔ)從中央處理 單元接收的新的突發(fā)長(zhǎng)度值。突發(fā)長(zhǎng)度值設(shè)置單元可以將當(dāng)前設(shè)置的突發(fā)長(zhǎng) 度值設(shè)置為所接收的新突發(fā)長(zhǎng)度值。
當(dāng)從源存儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸完成時(shí),計(jì)數(shù)單元可以檢查從源 存儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸開始到傳輸結(jié)束所需要的總時(shí)間段。
當(dāng)從源存儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸完成時(shí),計(jì)數(shù)單元可以檢查在從 源存儲(chǔ)器到目的存儲(chǔ)器的傳輸開始到傳輸完成期間針對(duì)每個(gè)突發(fā)長(zhǎng)度值所 執(zhí)行的數(shù)據(jù)讀/寫操作數(shù)。
當(dāng)從源存儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸完成時(shí),計(jì)數(shù)單元可以檢查在從 源存儲(chǔ)器到目的存儲(chǔ)器的傳輸開始到傳輸完成期間針對(duì)每個(gè)突發(fā)長(zhǎng)度值所 需要的時(shí)間段。
直接存儲(chǔ)器存取控制裝置可以進(jìn)一步包括傳輸效率確定單元,在計(jì)數(shù)單 元檢查結(jié)果的基礎(chǔ)上估計(jì)數(shù)據(jù)傳輸?shù)男省?br> 根據(jù)本發(fā)明的另 一個(gè)方面,本發(fā)明提供在其上已經(jīng)存儲(chǔ)了用于利用 DMA控制執(zhí)行前述數(shù)據(jù)傳輸方法的程序的計(jì)算機(jī)可讀記錄介質(zhì)。


通過(guò)參考附圖對(duì)本發(fā)明的示例實(shí)施例的詳細(xì)描述,本發(fā)明的以上和其它 方面將變得更加顯而易見。
圖1是說(shuō)明相關(guān)技術(shù)的DMA控制裝置操作的示意圖。
圖2是說(shuō)明由圖1的相關(guān)技術(shù)的DMA控制裝置所執(zhí)行的數(shù)據(jù)傳輸?shù)氖疽鈭D。
圖3是根據(jù)本發(fā)明示例實(shí)施例的DMA控制裝置的框圖。
圖4是根據(jù)本發(fā)明示例實(shí)施例的、說(shuō)明圖3的DMA控制裝置中包含的
傳輸效率確定單元的操作的示意圖。
圖5是根據(jù)本發(fā)明示例實(shí)施例的說(shuō)明通過(guò)改變突發(fā)長(zhǎng)度值來(lái)傳輸數(shù)據(jù)的
方法的示意圖。
圖6是根據(jù)本發(fā)明示例實(shí)施例的說(shuō)明將當(dāng)前突發(fā)長(zhǎng)度值改為CPU設(shè)置 的新突發(fā)長(zhǎng)度值的方法的示意圖。
圖7是根據(jù)本發(fā)明另一個(gè)示例實(shí)施例的利用DMA控制傳輸數(shù)據(jù)的方法 的流程圖。
具體實(shí)施例方式
現(xiàn)在將參考附圖更加全面描述本發(fā)明,附圖中給出本發(fā)明的示例實(shí)施例。
圖3是根據(jù)本發(fā)明示例實(shí)施例的DMA控制裝置的框圖。參考圖3,DMA 控制裝置包括計(jì)數(shù)單元310、比較單元320、突發(fā)長(zhǎng)度值設(shè)置單元330、突發(fā) 信號(hào)傳輸單元340、傳輸效率確定單元350和寄存器360。
計(jì)數(shù)單元310檢查剩余數(shù)據(jù)的長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值。
剩余數(shù)據(jù)是指在將存儲(chǔ)于源存儲(chǔ)器中的數(shù)據(jù)傳輸?shù)酱鎯?chǔ)所接收數(shù)據(jù)的 目的存儲(chǔ)器(未示出)后剩余在源存儲(chǔ)器(未示出)中的數(shù)據(jù)。
例如,當(dāng)7個(gè)字長(zhǎng)的數(shù)據(jù)存儲(chǔ)于源存儲(chǔ)器中并且與4個(gè)字相應(yīng)的數(shù)據(jù)被 傳輸?shù)侥康拇鎯?chǔ)器時(shí),剩余數(shù)據(jù)的長(zhǎng)度為3個(gè)字。傳輸?shù)侥康拇鎯?chǔ)器的數(shù)據(jù) 長(zhǎng)度對(duì)應(yīng)于突發(fā)長(zhǎng)度值,因此,突發(fā)長(zhǎng)度值為4個(gè)字。
數(shù)據(jù)長(zhǎng)度的單位不限于字,可以使用各種其他單位作為數(shù)據(jù)長(zhǎng)度單位, 例如,字節(jié)、半字、多個(gè)字。
比較單元320在計(jì)數(shù)單元檢查結(jié)果的基礎(chǔ)上,把剩余數(shù)據(jù)的長(zhǎng)度值與當(dāng) 前突發(fā)長(zhǎng)度值進(jìn)行比較。
突發(fā)長(zhǎng)度值設(shè)置單元330根據(jù)由比較單元320所執(zhí)行的比較結(jié)果選擇性 地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值。
更具體地,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)的長(zhǎng)度值, 則當(dāng)前突發(fā)長(zhǎng)度值保持不變。如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值大于剩余數(shù)據(jù)的長(zhǎng) 度值,則將當(dāng)前突發(fā)長(zhǎng)度值改為比剩余數(shù)據(jù)長(zhǎng)度值小的值。
例如,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值為16個(gè)字并且剩余數(shù)據(jù)長(zhǎng)度值為32
個(gè)字,則當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值保持為16個(gè)字。然而,如果當(dāng)前設(shè)置的突 發(fā)長(zhǎng)度值為16個(gè)字并且剩余數(shù)據(jù)長(zhǎng)度值為14個(gè)字,則將當(dāng)前設(shè)置的突發(fā)長(zhǎng) 度值改為小于14個(gè)字的值。
當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值所能夠改變到的值取決于數(shù)據(jù)傳輸中所使用的 協(xié)議類型。例如,當(dāng)使用支持突發(fā)模式和單一模式的高級(jí)高性能總線(AHB) 協(xié)議時(shí),能夠選擇16個(gè)字值、8個(gè)字值和4個(gè)字值中的一個(gè)作為當(dāng)前設(shè)置的 突發(fā)長(zhǎng)度值被改變到的值。因此,在上述例子中,當(dāng)改變當(dāng)前設(shè)置的突發(fā)長(zhǎng) 度值時(shí),應(yīng)當(dāng)將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改為8個(gè)字值和4個(gè)字值中的一個(gè), 因?yàn)橹挥羞@兩個(gè)值小于16個(gè)字的當(dāng)前突發(fā)長(zhǎng)度值。
更具體地,將當(dāng)前突發(fā)長(zhǎng)度值改為小于或等于剩余數(shù)據(jù)長(zhǎng)度值中的最大 突發(fā)長(zhǎng)度值。這是因?yàn)楫?dāng)將當(dāng)前突發(fā)長(zhǎng)度值改為相對(duì)于剩余數(shù)據(jù)的長(zhǎng)度值的 較大的突發(fā)長(zhǎng)度值時(shí),能夠在一次傳輸中傳輸比剩余數(shù)據(jù)大的數(shù)據(jù)量。這種
要的時(shí)間。因此,在上述例子中,從8個(gè)字值和4個(gè)字值中選擇8個(gè)字值作 為新突發(fā)長(zhǎng)度值。
突發(fā)信號(hào)傳輸單元340根據(jù)所改變的突發(fā)長(zhǎng)度值傳輸用于傳輸數(shù)據(jù)的突 發(fā)信號(hào)。
例如,當(dāng)當(dāng)前突發(fā)長(zhǎng)度值為16個(gè)字并且被改為8個(gè)字時(shí),突發(fā)信號(hào)傳 輸單元340向源存儲(chǔ)器傳輸用于將16個(gè)字的突發(fā)長(zhǎng)度值改為8個(gè)字的信號(hào)。 換句話說(shuō),突發(fā)信號(hào)傳輸單元340向源存儲(chǔ)器傳輸表示希望以8個(gè)字單位接 收數(shù)據(jù)的信號(hào)。
這種情況下,在完成了當(dāng)前的讀寫數(shù)據(jù)操作后,源存儲(chǔ)器以與所改變的 突發(fā)長(zhǎng)度值相應(yīng)的8個(gè)字單位傳輸數(shù)據(jù)。
寄存器360存儲(chǔ)從CPU (未示出)接收的突發(fā)長(zhǎng)度值。當(dāng)用戶通過(guò)輸入 設(shè)備輸入將突發(fā)長(zhǎng)度值改為任意值的命令時(shí),可從CPU接收新突發(fā)長(zhǎng)度值。
當(dāng)用戶確定當(dāng)前DMA控制裝置已經(jīng)使用數(shù)據(jù)傳輸系統(tǒng)總線很長(zhǎng)時(shí)間 時(shí),將當(dāng)前突發(fā)長(zhǎng)度值改為比當(dāng)前突發(fā)長(zhǎng)度值小的值,因?yàn)閭鬏攩卧獢?shù)據(jù)所 需要的時(shí)間短,于是,除DMA控制裝置外的其他設(shè)備能夠在單元數(shù)據(jù)傳輸 完成到下一次傳輸開始之間使用總線。
當(dāng)用戶輸入用于將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改變?yōu)樾峦话l(fā)長(zhǎng)度值的輸入
信號(hào)時(shí),已經(jīng)接收到所述輸入信號(hào)的CPU針對(duì)存儲(chǔ)到DMA控制裝置的寄存 器360中的值來(lái)順序控制新突發(fā)長(zhǎng)度值。DMA控制裝置將當(dāng)前突發(fā)長(zhǎng)度值 改為存儲(chǔ)于寄存器360中的新突發(fā)長(zhǎng)度值。
然而,即使如上所述當(dāng)CPU已經(jīng)接收到新突發(fā)長(zhǎng)度值時(shí),當(dāng)前突發(fā)長(zhǎng) 度值也不是立即更改為新突發(fā)長(zhǎng)度值,而是在正在執(zhí)行的數(shù)據(jù)讀/寫操作完成 時(shí)進(jìn)行更改。
此外,即使當(dāng)當(dāng)前突發(fā)長(zhǎng)度值被改為新突發(fā)長(zhǎng)度值時(shí),被CPU設(shè)置的 新突發(fā)長(zhǎng)度值也不是自動(dòng)被用作當(dāng)前突發(fā)長(zhǎng)度值,只有當(dāng)被CPU設(shè)置的新 突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)的長(zhǎng)度值時(shí),才將當(dāng)前突發(fā)長(zhǎng)度值改為被 CPU設(shè)置的新突發(fā)長(zhǎng)度值。
例如,如果當(dāng)前突發(fā)長(zhǎng)度值為16個(gè)字,被CPU接收到的突發(fā)長(zhǎng)度值為 8個(gè)字,并且剩余數(shù)據(jù)長(zhǎng)度是7個(gè)字,則不自動(dòng)使用被CPU設(shè)置的8個(gè)字的 突發(fā)長(zhǎng)度值,而是將8個(gè)字突發(fā)長(zhǎng)度值改為比8個(gè)字小的4個(gè)字。
傳輸效率確定單元350在以下參數(shù)的基礎(chǔ)上確定數(shù)據(jù)傳輸效率,例如, 從數(shù)據(jù)傳輸開始到數(shù)據(jù)傳輸完成所需要的總時(shí)間,在總時(shí)間中每個(gè)突發(fā)長(zhǎng)度 值所執(zhí)行的數(shù)據(jù)讀寫操作數(shù),以及每個(gè)突發(fā)長(zhǎng)度值從數(shù)據(jù)傳輸開始到數(shù)據(jù)傳 輸完成所需要的持續(xù)時(shí)間。在當(dāng)前的示例實(shí)施例中,能夠在時(shí)鐘信號(hào)的基礎(chǔ) 上測(cè)量所需要的持續(xù)時(shí)間。換句話說(shuō),能夠以時(shí)鐘信號(hào)的時(shí)鐘周期為單位而 不是以秒或分為單位測(cè)量所需要的持續(xù)時(shí)間,例如, 一個(gè)時(shí)鐘周期、兩個(gè)時(shí) 鐘周期等。
圖4是根據(jù)本發(fā)明示例實(shí)施例的、說(shuō)明圖3的DMA控制裝置的傳輸效 率確定單元350操作的示意圖。參考圖4,示出了在數(shù)據(jù)傳輸期間突發(fā)長(zhǎng)度 值的變化410以及時(shí)鐘信號(hào)420。
在時(shí)段431 、 433和435執(zhí)行DMA控制。在時(shí)段432、 434不執(zhí)行DMA 控制。換句話說(shuō),除了 DMA控制裝置的其他設(shè)備占據(jù)了系統(tǒng)總線。
參考圖4,從傳輸開始到傳輸完成所需要的整個(gè)持續(xù)時(shí)間對(duì)應(yīng)于從時(shí)段 431到435的總和。當(dāng)以時(shí)鐘信號(hào)420為單位測(cè)量整個(gè)持續(xù)時(shí)間時(shí),所需要 的整個(gè)持續(xù)時(shí)間為10.5個(gè)時(shí)鐘周期。傳輸是否高效可以^F又決于所需要的整個(gè)
門限比值。
例如,如果門限持續(xù)時(shí)間為6個(gè)時(shí)鐘周期并且傳輸存儲(chǔ)在源存儲(chǔ)器中的 所有數(shù)據(jù)所需要的整個(gè)持續(xù)時(shí)間大于6個(gè)時(shí)鐘周期,則確定數(shù)據(jù)傳輸?shù)男?低。另外,如果假定當(dāng)非激活時(shí)段占據(jù)的所需要整個(gè)持續(xù)時(shí)間的百分比小于
10%時(shí)傳輸效率高,可以確定圖4中所示的傳輸效率低,因?yàn)樗枰恼麄€(gè) 持續(xù)時(shí)間為10.5個(gè)時(shí)鐘周期,而不執(zhí)行DMA控制的非激活時(shí)段為4.5個(gè)時(shí)
鐘周期。
雖然沒(méi)有在圖4中示出,可以對(duì)突發(fā)長(zhǎng)度值分別為16個(gè)字、8個(gè)字和4 個(gè)字的時(shí)段431、 433和435的每個(gè)時(shí)段所執(zhí)行的讀和寫操作數(shù)進(jìn)行計(jì)數(shù), 并且與門限值進(jìn)行比較,從而確定傳輸效率高還是低。
最后,可以測(cè)量突發(fā)長(zhǎng)度值分別為16個(gè)字、8個(gè)字和4個(gè)字的時(shí)段431、 433和435所需要的持續(xù)時(shí)間,并且與門限值進(jìn)行比較,從而確定傳輸效率 高還是低。
然而,根據(jù)本發(fā)明的示例實(shí)施例,門限值可以變化。
圖5是根據(jù)本發(fā)明示例實(shí)施例說(shuō)明通過(guò)改變突發(fā)長(zhǎng)度值來(lái)傳輸數(shù)據(jù)的方 法的示意圖。參考圖5,說(shuō)明存儲(chǔ)在寄存器360的突發(fā)長(zhǎng)度值510、當(dāng)前突 發(fā)長(zhǎng)度值520以及剩余數(shù)據(jù)長(zhǎng)度值530。
當(dāng)初始數(shù)據(jù)傳輸開始時(shí)CPU將突發(fā)長(zhǎng)度值510存儲(chǔ)在寄存器360中, 并且在數(shù)據(jù)傳輸期間,當(dāng)CPU改變突發(fā)長(zhǎng)度值時(shí),將突發(fā)長(zhǎng)度值510改為 新突發(fā)長(zhǎng)度值。更具體地,當(dāng)CPU最初在寄存器360中存儲(chǔ)突發(fā)長(zhǎng)度值時(shí), DMA控制裝置將當(dāng)前突發(fā)長(zhǎng)度值520設(shè)置為存儲(chǔ)在寄存器360中的突發(fā)長(zhǎng) 度值510。當(dāng)即使在數(shù)據(jù)傳輸期間新突發(fā)長(zhǎng)度值被存儲(chǔ)在寄存器360中時(shí), DMA控制裝置將當(dāng)前突發(fā)長(zhǎng)度值改為該新突發(fā)長(zhǎng)度值。然而,即使如上所 述當(dāng)CPU將新突發(fā)長(zhǎng)度值存儲(chǔ)在寄存器360中時(shí),當(dāng)前突發(fā)長(zhǎng)度值也不是 立即被改為新突發(fā)長(zhǎng)度值,而是在當(dāng)前正在進(jìn)行的數(shù)據(jù)讀/寫操作完成后才改 變當(dāng)前突發(fā)長(zhǎng)度值。
在時(shí)段541,將當(dāng)前突發(fā)長(zhǎng)度值設(shè)置為與存儲(chǔ)在寄存器360中的突發(fā)長(zhǎng) 度值對(duì)應(yīng)的8個(gè)字。
在時(shí)段542,從13個(gè)字的剩余數(shù)據(jù)中傳輸與作為當(dāng)前突發(fā)長(zhǎng)度值的8 個(gè)字對(duì)應(yīng)的數(shù)據(jù),然后把當(dāng)前突發(fā)長(zhǎng)度值與剩余數(shù)據(jù)的長(zhǎng)度值進(jìn)行比較。同 樣地,剩余數(shù)據(jù)的長(zhǎng)度值為5個(gè)字而突發(fā)長(zhǎng)度值為8個(gè)字,這樣,對(duì)于8個(gè) 字的突發(fā)長(zhǎng)度值,不傳輸5個(gè)字的剩余數(shù)據(jù)。
在時(shí)段543,根據(jù)比較結(jié)果將8個(gè)字的當(dāng)前突發(fā)長(zhǎng)度值改為4個(gè)字,然 后傳輸數(shù)據(jù)。同樣,把4個(gè)字的當(dāng)前突發(fā)長(zhǎng)度值與剩余數(shù)據(jù)的長(zhǎng)度值進(jìn)行比 較。在時(shí)段543,剩余數(shù)據(jù)的長(zhǎng)度值為1個(gè)字,突發(fā)長(zhǎng)度值為4個(gè)字。因此, 對(duì)于4個(gè)字的突發(fā)長(zhǎng)度值,不傳輸1個(gè)字的剩余數(shù)據(jù)。
在時(shí)段544,將DMA控制裝置的控制模式從突發(fā)模式改為單一模式, 然后傳輸l個(gè)字的剩余數(shù)據(jù)。結(jié)果,將存儲(chǔ)在源存儲(chǔ)器中的全部數(shù)據(jù)完全傳 輸?shù)侥康拇鎯?chǔ)器。
圖6是根據(jù)本發(fā)明示例實(shí)施例的說(shuō)明將當(dāng)前突發(fā)長(zhǎng)度值改為CPU設(shè)置 的新突發(fā)長(zhǎng)度值的方法的示意圖。參考圖6,說(shuō)明存儲(chǔ)在寄存器360中的突 發(fā)長(zhǎng)度值610、當(dāng)前突發(fā)長(zhǎng)度值620和剩余數(shù)據(jù)長(zhǎng)度值630。
在時(shí)段641,將當(dāng)前突發(fā)長(zhǎng)度值620設(shè)置為與存儲(chǔ)在寄存器360中的突 發(fā)長(zhǎng)度值610對(duì)應(yīng)的16個(gè)字。
在時(shí)段642,根據(jù)當(dāng)前突發(fā)長(zhǎng)度值傳輸48個(gè)字的剩余數(shù)據(jù),這樣,剩余 數(shù)據(jù)為32個(gè)字。在時(shí)段642, CPU在寄存器360中存儲(chǔ)新突發(fā)長(zhǎng)度值。此 時(shí),沒(méi)有立即將當(dāng)前突發(fā)長(zhǎng)度值620改為存儲(chǔ)在寄存器360中的新突發(fā)長(zhǎng)度 值,而是在完成當(dāng)前正在進(jìn)行的數(shù)據(jù)讀/寫操作后改變。換句話說(shuō),在完成讀 /寫操作后,突發(fā)信號(hào)傳輸單元340傳輸用于將當(dāng)前突發(fā)長(zhǎng)度值620改為由 CPU設(shè)置的突發(fā)長(zhǎng)度值的信號(hào)。
在時(shí)段642完成數(shù)據(jù)讀/寫操作后,在時(shí)段643,將當(dāng)前突發(fā)長(zhǎng)度值620 改為存儲(chǔ)于寄存器360中的新突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)到目的存儲(chǔ)器。用 箭頭指示當(dāng)前突發(fā)長(zhǎng)度值620從16個(gè)字改為8個(gè)字的時(shí)間。箭頭所指的時(shí) 間是當(dāng)前正在進(jìn)行的數(shù)據(jù)讀/寫操作完成的時(shí)間。突發(fā)信號(hào)傳輸單元340傳輸 用于將16個(gè)字的當(dāng)前突發(fā)長(zhǎng)度值620改為8個(gè)字的信號(hào)。
換句話說(shuō),在從突發(fā)信號(hào)傳輸單元340接收到所述信號(hào)后,源存儲(chǔ)器并 不立即傳輸與存儲(chǔ)于寄存器360中的所改變的突發(fā)長(zhǎng)度值對(duì)應(yīng)的數(shù)據(jù),而是 在從DMA控制裝置接收到指示與所改變的突發(fā)長(zhǎng)度值相應(yīng)的數(shù)據(jù)接收的信 號(hào)后的一小段時(shí)間之后。
在時(shí)段644,以與所改變的突發(fā)長(zhǎng)度值對(duì)應(yīng)的8個(gè)字的長(zhǎng)度單位繼續(xù)數(shù) 據(jù)傳輸。
圖7是根據(jù)本發(fā)明另一個(gè)示例實(shí)施例的利用DMA存取控制進(jìn)行傳輸數(shù) 據(jù)的方法的流程圖。在操作710中,檢查與將存儲(chǔ)于源存儲(chǔ)器的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器之后剩余的數(shù)據(jù)對(duì)應(yīng)的剩余數(shù)據(jù)的長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng) 度值。
在操作720中,在操作710的檢查結(jié)果的基礎(chǔ)上,把剩余數(shù)據(jù)的長(zhǎng)度值 與當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值進(jìn)行比較。
在操作730中,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值大于剩余數(shù)據(jù)的長(zhǎng)度值,將 當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改為突發(fā)長(zhǎng)度值中低一級(jí)的長(zhǎng)度值。然后,重復(fù)操作 720以便確定當(dāng)前突發(fā)長(zhǎng)度值是否大于剩余數(shù)據(jù)的長(zhǎng)度值。
如果與低一級(jí)的長(zhǎng)度值相對(duì)應(yīng)的當(dāng)前突發(fā)長(zhǎng)度值仍然大于剩余數(shù)據(jù)的 長(zhǎng)度值,則將當(dāng)前突發(fā)長(zhǎng)度值改變?yōu)橥话l(fā)長(zhǎng)度值中更低一級(jí)的長(zhǎng)度值。以這 種方式,連續(xù)地改變當(dāng)前突發(fā)長(zhǎng)度值直到當(dāng)前突發(fā)長(zhǎng)度值小于或等于剩余數(shù) 據(jù)的長(zhǎng)度值。如果當(dāng)前突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)的長(zhǎng)度值,所述方法 前進(jìn)到操作740。
例如,當(dāng)當(dāng)前突發(fā)長(zhǎng)度值為32個(gè)字并且剩余數(shù)據(jù)的長(zhǎng)度值為7個(gè)字時(shí), 根據(jù)所述比較的結(jié)果,依次改變當(dāng)前突發(fā)長(zhǎng)度值,例如,按照16個(gè)字、8 個(gè)字和4個(gè)字的順序。
在操作740中,當(dāng)當(dāng)前突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)的長(zhǎng)度值時(shí),將 當(dāng)前突發(fā)長(zhǎng)度值設(shè)置為所改變的突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)。
重復(fù)710到740的操作,直到將存儲(chǔ)在源存儲(chǔ)器中的所有數(shù)據(jù)傳輸?shù)侥?的存儲(chǔ)器為止。
在本發(fā)明中,通過(guò)動(dòng)態(tài)地改變突發(fā)長(zhǎng)度值來(lái)有效地傳輸數(shù)據(jù),并且用戶 能夠通過(guò)測(cè)量數(shù)據(jù)傳輸?shù)男蕘?lái)確定數(shù)據(jù)傳輸效率。
可以將本發(fā)明的示例實(shí)施例寫為計(jì)算機(jī)程序,并且本發(fā)明能夠在使用計(jì) 算機(jī)可讀記錄介質(zhì)執(zhí)行程序的通用數(shù)字計(jì)算機(jī)中實(shí)現(xiàn)。計(jì)算機(jī)可讀記錄介質(zhì) 的例子包括磁存儲(chǔ)介質(zhì)(例如,ROM、軟盤、硬盤等)和光記錄介質(zhì)(CD-ROM 或DVD )。
盡管參考本發(fā)明示例實(shí)施例詳細(xì)說(shuō)明和描述了本發(fā)明,本領(lǐng)域的技術(shù)人 員應(yīng)當(dāng)理解,在不脫離由本發(fā)明下面的權(quán)利要求所定義的精神和范圍的情況 下可以對(duì)細(xì)節(jié)和形式進(jìn)行各種改變。
權(quán)利要求
1.一種在存儲(chǔ)要傳輸數(shù)據(jù)的源存儲(chǔ)器和存儲(chǔ)所傳輸數(shù)據(jù)的目的存儲(chǔ)器之間利用直接存儲(chǔ)器存取DMA控制執(zhí)行數(shù)據(jù)傳輸?shù)姆椒ǎ龇椒òz查與存儲(chǔ)在源存儲(chǔ)器中的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器之后所剩余的數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)長(zhǎng)度值、以及當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;基于檢查結(jié)果比較剩余數(shù)據(jù)長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;以及基于比較結(jié)果選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)到目的存儲(chǔ)器。
2. 如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其中,在選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值以及傳輸數(shù)據(jù)的過(guò)程中,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值大于剩余數(shù)據(jù)的長(zhǎng)度值,則將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改為小于或等于剩余數(shù)據(jù)長(zhǎng)度值的突發(fā)長(zhǎng)度值,并且傳輸與所改變的突發(fā)長(zhǎng)度值相應(yīng)的數(shù)據(jù)。
3. 如權(quán)利要求2所述的數(shù)據(jù)傳輸方法,其中,在選擇性地改變當(dāng)前設(shè) 置的突發(fā)長(zhǎng)度值以及傳輸數(shù)據(jù)的過(guò)程中,將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改為小于 或等于剩余數(shù)據(jù)長(zhǎng)度值的突發(fā)長(zhǎng)度值當(dāng)中的最大值。
4. 如權(quán)利要求2所述的數(shù)據(jù)傳輸方法,其中,在選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值以及傳輸數(shù)據(jù)的過(guò)程中,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)的長(zhǎng)度值,則不改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值。
5. 如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,在檢查剩余數(shù)據(jù)的長(zhǎng)度值之前, 進(jìn)一步包括從中央處理單元接收新突發(fā)長(zhǎng)度值;以及將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為所接收的新突發(fā)長(zhǎng)度值。
6. 如權(quán)利要求5所述的數(shù)據(jù)傳輸方法,其中,在將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為所接收的新突發(fā)長(zhǎng)度值的過(guò)程中,當(dāng)完成當(dāng)前正在進(jìn)行的數(shù)據(jù)讀或?qū)懖僮鲿r(shí),將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為所接收的新突發(fā)長(zhǎng)度值。
7. 如權(quán)利要求1所述的數(shù)據(jù)傳輸方法,進(jìn)一步包括 檢查從源存儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸開始到數(shù)據(jù)傳輸完成所需要的整個(gè)時(shí)間段;以及基于該整個(gè)時(shí)間段的檢查結(jié)果估計(jì)數(shù)據(jù)傳輸?shù)男省?br> 8. 如權(quán)利要求7所述的數(shù)據(jù)傳輸方法,其中,基于時(shí)鐘信號(hào)測(cè)量所需要的整個(gè)時(shí)間段。
9. 如權(quán)利要求7所述的數(shù)據(jù)傳輸方法,其中,整個(gè)時(shí)間段的檢查進(jìn)一步包括檢查在從數(shù)據(jù)傳輸開始到傳輸完成期間針對(duì)每個(gè)突發(fā)長(zhǎng)度值所執(zhí)行的數(shù)據(jù)讀或?qū)懖僮鞯臄?shù)量。
10. 如權(quán)利要求7所述的數(shù)據(jù)傳輸方法,其中,整個(gè)時(shí)間段的檢查進(jìn)一步包括檢查從源存儲(chǔ)器到目的存儲(chǔ)器的傳輸開始到傳輸完成的針對(duì)每個(gè)突發(fā)長(zhǎng)度值所需要的時(shí)間段。
11. 一種直接存儲(chǔ)器存取DMA控制裝置,用于控制在存儲(chǔ)要傳輸數(shù)據(jù)的源存儲(chǔ)器和存儲(chǔ)所傳輸數(shù)據(jù)的目的存儲(chǔ)器之間的數(shù)據(jù)傳輸,所述的DMA控制裝置包括計(jì)數(shù)單元,檢查與將存儲(chǔ)在源存儲(chǔ)器中的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器之后所剩余數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)長(zhǎng)度值、以及當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;比較單元,基于計(jì)數(shù)單元的檢查結(jié)果比較剩余數(shù)據(jù)長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;突發(fā)長(zhǎng)度值設(shè)置單元,基于比較結(jié)果選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)到目的存儲(chǔ)器;以及突發(fā)信號(hào)傳輸單元,傳輸用于傳輸與所改變的突發(fā)長(zhǎng)度值相應(yīng)的數(shù)據(jù)的突發(fā)信號(hào)。
12. 如權(quán)利要求11所述的直接存儲(chǔ)器存取控制裝置,其中,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值大于剩余數(shù)據(jù)長(zhǎng)度值,突發(fā)長(zhǎng)度值設(shè)置單元將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值改為小于或等于剩余數(shù)據(jù)長(zhǎng)度值的突發(fā)長(zhǎng)度值。
13. 如權(quán)利要求12所述的直接存儲(chǔ)器存取控制裝置,其中,突發(fā)長(zhǎng)度值設(shè)置單元將所述的突發(fā)長(zhǎng)度值改為在小于或等于剩余數(shù)據(jù)長(zhǎng)度值的突發(fā)長(zhǎng)度值當(dāng)中的最大值。
14. 如權(quán)利要求12所述的直接存儲(chǔ)器存取控制裝置,其中,如果當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值小于或等于剩余數(shù)據(jù)長(zhǎng)度值,突發(fā)長(zhǎng)度值設(shè)置單元不改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值。
15. 如權(quán)利要求11所述的直接存儲(chǔ)器存取控制裝置,進(jìn)一步包括存儲(chǔ)從中央處理單元接收的新突發(fā)長(zhǎng)度值的寄存器,其中,突發(fā)長(zhǎng)度值設(shè)置單元將當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值設(shè)置為所接收的新突發(fā)長(zhǎng)度值。
16. 如權(quán)利要求11所述的直接存儲(chǔ)器存取控制裝置,其中,當(dāng)從源存 儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸完成時(shí),計(jì)數(shù)單元檢查從源存儲(chǔ)器到目的存儲(chǔ) 器的數(shù)據(jù)傳輸開始到傳輸完成所需要的總時(shí)間段。
17. 如權(quán)利要求11所述的直接存儲(chǔ)器存取控制裝置,其中,當(dāng)從源存儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸完成時(shí),計(jì)數(shù)單元檢查從源存儲(chǔ)器到目的存儲(chǔ) 的數(shù)量。
18. 如權(quán)利要求11所述的直接存儲(chǔ)器存取控制裝置,其中,當(dāng)從源存 儲(chǔ)器到目的存儲(chǔ)器的數(shù)據(jù)傳輸完成時(shí),計(jì)數(shù)單元檢查從源存儲(chǔ)器到目的存儲(chǔ) 器傳輸開始到傳輸完成的針對(duì)每個(gè)突發(fā)長(zhǎng)度所需要的時(shí)間段。
19. 如權(quán)利要求16所述的直接存儲(chǔ)器存取控制裝置,其中,計(jì)數(shù)單元 基于時(shí)鐘信號(hào)測(cè)量所需要的時(shí)間段。
20. 如權(quán)利要求16所述的直接存儲(chǔ)器存取控制裝置,進(jìn)一步包括傳輸 效率確定單元,基于計(jì)數(shù)單元的檢查結(jié)果估計(jì)數(shù)據(jù)傳輸?shù)男省?br> 21. —種在其上存儲(chǔ)程序的計(jì)算機(jī)可讀記錄介質(zhì),所述程序執(zhí)行利用在 存儲(chǔ)要傳輸數(shù)據(jù)的源存儲(chǔ)器和存儲(chǔ)所傳輸數(shù)據(jù)的目的存儲(chǔ)器之間執(zhí)行的直 接存儲(chǔ)器存取DMA控制的數(shù)據(jù)傳輸方法,所述方法包括檢查與存儲(chǔ)在源存儲(chǔ)器中的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器之后所剩余的數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)的長(zhǎng)度值、以及當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;基于檢查結(jié)果比較剩余數(shù)據(jù)長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;以及 基于比較結(jié)果選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)到目的存儲(chǔ)器。
全文摘要
一種直接存儲(chǔ)器存取控制方法包括檢查與存儲(chǔ)在源存儲(chǔ)器中的數(shù)據(jù)傳輸?shù)侥康拇鎯?chǔ)器之后所剩余的數(shù)據(jù)相應(yīng)的剩余數(shù)據(jù)的長(zhǎng)度值、以及當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;基于檢查結(jié)果比較剩余數(shù)據(jù)長(zhǎng)度值和當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值;以及基于比較結(jié)果選擇性地改變當(dāng)前設(shè)置的突發(fā)長(zhǎng)度值,并且傳輸數(shù)據(jù)到目的存儲(chǔ)器。
文檔編號(hào)G06F13/20GK101174248SQ20071012705
公開日2008年5月7日 申請(qǐng)日期2007年6月28日 優(yōu)先權(quán)日2006年11月3日
發(fā)明者樸炳雄, 李桐洙 申請(qǐng)人:三星電子株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1