TW200842593A - Content-terminated DMA - Google Patents

Content-terminated DMA Download PDF

Info

Publication number
TW200842593A
TW200842593A TW097102668A TW97102668A TW200842593A TW 200842593 A TW200842593 A TW 200842593A TW 097102668 A TW097102668 A TW 097102668A TW 97102668 A TW97102668 A TW 97102668A TW 200842593 A TW200842593 A TW 200842593A
Authority
TW
Taiwan
Prior art keywords
data
dma
transfer
circuit
terminate
Prior art date
Application number
TW097102668A
Other languages
English (en)
Inventor
Kevin Allen Sapp
James Norris Dieffenderfer
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200842593A publication Critical patent/TW200842593A/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • 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/32Handling requests for interconnection or transfer for access to input/output bus using combination of interrupt and burst mode transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

200842593 九、發明說明: 【發明所屬之技術領域】 本發明大體上係關於計算 (DMA)電路,且尤其係關於回 止資料傳送的DMA。 系統中之直接記憶體存取 應於所傳送之資料之值而終 【先前技術】 現代計算系統-包括可攜式電子裳置中之計算系統—處 理大量資料,諸如,表示像片、圖形影像、視訊、音訊及 其類似者之數位資料。必須在計算系統内傳送此資料,諸 如自輸入/輸出(1/〇)周邊裝置傳送至記憶體中,自記憶體 傳送至圖形訊框緩衝器中,自記憶體之一區域傳送至另一 區域-通常,自資料來源傳送至資料目的地。在不對處理 裔造成負擔之情況下完成系助資料傳送之已知技術包括 直接記憶體存取(DMA)電路,亦稱作DMA控制器。 處理器用來源及目的地資訊(其任一者可包含記憶體位 址或周邊裝置埠)及傳送計數來初始化DMA控制器,諸 如,藉由將該資訊寫入至DMA控制器中之控制暫存器,或 藉由在記憶體中寫入控制區塊且在DMA控制器暫存器中將 才曰標指向該等控制區塊。在自處理器接收到G〇指示或命 令後,DMA控制器自主地自來源讀取資料且將其寫入至目 的地’重複該過程直至已傳送指定數目個資料單元為止。 尖端的DMA控制器可包括多個通道,且可處理許多低階資 料傳送任務(諸如分散/收集(scatter/gather)操作)以在具有 不同字大小之單元之間傳送資料。其亦被稱作鏈式Dma傳 128664.doc 200842593 送。在鏈式操作中,將用於隨後DMA傳送之資訊(例如, 新的來源、目的地、計數及其類似者)提供或導引至DMA 控制器,此開始於正在進行之DMA傳送終止後。 處理器不能總是先驗地獲知要求在計算系統内傳送的資 料之集合之長度。舉例而言,為了複製字元串(諸如, ”Hello world”),自來源位置擷取每一字元,將其置於暫存 為中’且與零(C語言串終止字元)相比較。若比較失敗, 則將子元寫入至目的地位置且讀取並比較下一字元。當處 理器碰到字元串中之零時,資料傳送完成。此為處理器密 集型任務,且另外為包括極大量之記憶體存取的任務。若 來源及/或目的地位址為不可快取的,則cpu可能花費相當 多的時間纟等待記憶體操作,尤纟是在記憶體存取比 處理器執行慢得多之系統巾。此使處理器效能嚴重降級。 務卸載至習知DMA控制器 傳送之資料,且”盲目地”月 的地。藉由將每一字元與( 串之長度。此比趫習4从 因為字兀串之長度為未知的,所以通常不將資料傳送任 。習知DMA控制器不能檢查其
128664.doc 200842593 其他協定以多個字元來終止資料串。舉例而言,在超文 字標記語言(HTML)中,藉由序列办來終止接收某 些格式化或處理之串,此要求偵測複數個連續之字元比 較。 【發明内容】 在本文所揭示且主張之一或多項實施例中,内容終止直 接記憶體存取(CT-DMA)電路執行未知長度之資料的dma 傳送’基於資料之内容來終止傳送。在資料傳送之前,將 ( 篩選準則提供至ct-dma。篩選準則包括與傳送資料相比 較之型樣資料及用於解譯比較結果之傳送終止規則。CT_ DMA自來源讀取資料且將其寫入至目的地直至滿足筛選準 則為止。 ^ -實施例係關於—種CT_DMA電路。該電路包括可操作 以自來源讀取資料及/或將資料寫入至目的地之資料傳送 介面,及可操作以儲存篩選準則之記憶體。該ct_dma電 &另外包括可操作以將傳送資料與—或多個㈣Μ相比 C 較之比較器,及可操作以回應於比較器輸出而終止DMA傳 送之控制器。 另-實施例係關於-種將未知量之資料自來源傳送至目 的地之方法。自來源連續地讀取資料且將其與預定型樣資 料相比較。回應於該比較而做出何時終止傳送之判定將 資料連續地寫入至目的地,直至終止傳送為止。此等方法 步驟由處理器自主地執行。 又-實施例係關於-種計算系統。該系統包括可操作以 128664.doc 200842593 提供資料之資料來源,及可操作以接收資料 〜貝科目的 地。該系統亦包括一 CT-DMA電路,其可操作以執行自來 源至目的地之DMA資料傳送且進一步可操作以回應:傳送 資料之一或多個值而終止DMA傳送。該系統進一步包括口 操作以初始化CT-DMA電路之處理器。 【實施方式】 根據一或多項實施例,内容終止直接記憶體存取 DMA)電路將未知長度之資料自來源傳送至目的地,且藉 f 由”在空中,,將篩選準則應用於資料來終止傳送。篩選準^ 包括與所傳送之資料相比較的型樣資料,及用於回應於該 比較而終止傳送的規則。 圖1描繪大體由數字10指示之代表性計算系統。計算系 統10包括處理器12,處理器12可包括一階(L1)快取記憶體 14。如此項技術中已知’處理器12可包含所错存程式之微 處理器、數位信號處理器(DSP)或其類似者。乙丨快取記憶 體14可在記憶體階層中由L2快取記憶體16支持。在一實施 J 例中,記憶體之包含L2快取記憶體16之部分由處理器12用 作緊密搞合式記憶體(TCM)18。TCM 18為記憶體階層中主 要記憶體位址空間之部分,但其在實體上及邏輯上更緊密 地耦合至處理器12—例如,處理器不需進行仲裁而使系統 匯流排20存取TCM 18qL2快取記憶體16&ct_dma %在 系統匯流排20上讀取並寫入主要記憶體22。tcm 18及輸 =/輸出(i/o)周邊裝置24(諸如,NIC卡、無線通信收發 器1芽介面或其類似者)為系統匯流排2〇上之從屬裝 128664.doc 200842593 置。I/O周邊裝置24可將資料傳送至及/或傳送出計算系統 10 ° CT-DMA電路26為系統匯流排20上之主控裝置(master device) ’其可藉由匯流排2〇來讀取並寫入主要記憶體22、 TCM 18及I/O周邊裝置24。ct_dmA電路26可另外或其他 直接連接至I/O周邊裝置24之資料埠。此外,在圖1所描繪 之實施例中,CT-DMA電路26與處理器12緊密地整合且可 直接存取TCM 18(諸如藉由在處理器12與(:;丁-〇]\4人26之間 將位址位元多工傳輸至TCM 1 8)。 在由處理器I2進行初始化後,CT_DMA電路26在計算系 統10内將資料自來源傳送至目的地,回應於該資料之一或 多個值而終止傳送。作為一說明性實例,處理器12可指導 CT-DMA電路26將未知長度之字元串自主要記憶體22傳送 至TCM 18中’其中處理器12可更有效地對字元串進行操 作0 在-或多項實施例中,當CT-DMA電路26回應於所傳送 之資料而判定傳送完成時,其終止傳送且可直接地或經由 中斷控制器28來中斷處理器12。在其他實施例中,ct_ 簡A電路26可在控制暫存^中設定—旗標,且依賴於處理 器12輪詢該旗標之狀態來判定資料傳送完成。在其他實施 例中’ CT-DMA電路26可以熟習此項技術者容易想出之滿 足任何特定實施之需求或偏好的各種方式向處理器。通知 完成之資料傳送操作。 記憶體位置22 如本文中所使用 資料來源指代任何 128664.doc 200842593 18、周邊裝置24之資料璋,或可由CT.A電路%在系統 匯流排20上或藉由直接連接來存取的其他資料來源。如本 文中所使用,資料目的地類似地指代任何記憶體22、18或 周邊裝置24。另外,資料目的地可為空_叫目的地, 在此種情況下丢棄傳送資料。出於各種原目,可有利地將 資料"傳送"至空目的地,諸如,以便判定字元串之長度(例 如,C語言操作以r/e…。 圖2為功能方塊圖,其經提出以說明代表性ct_dma電 路26之一實施例之資料比較功能性之態樣。請注意,圖2 不意欲表示任何給定CT_DMA電路26之實際硬體。此外, 圖2功能性地描繪CT_DMA電路26之子集;為清楚起見, 自圖2省略了與論述無密切關係之許多DMA電路及功能。 在一實施例中,CT-DMA電路26包括先進先出(FIF〇)資 料緩衝器3 0,其在所描繪之實例中包含八個儲存位置。如 此項技術中所知,儲存位置可包含暫存器或記憶體,且可 被組織成各種操作緩衝器3 〇中之任一者。儲存位置可按需 要或要求具有任何寬度(例如,位元組、半字(halfw〇rd)、 字等),且儲存於每一儲存位置中之資料在本文中被稱作 資料π單元’’。當然,緩衝器30可按需要或要求包含比八個 以上或以下的儲存位置。將在CT_DMA資料傳送期間自來 源讀取之資料輸入至FIF0 3〇,且是比較操作之結果而 定,可將其寫入至目的地。此等資料在本文中被稱作傳送 資料。 CT-DMA電路26包括型樣資料儲存器32。處理器12可在 128664.doc 200842593 起始CT-DMA資料傳送之前將預定資 料儲1樣寫入至型樣資 科儲存位置32。在圖2所描繪之實施例中, 器32在儲存位置之數目及其 貝科儲存
了見度方面反映出FIFO 3〇。在其他實施例中’館存位置之數目可不匹配。詳+ 之,在一實施例中,FIF0 30可包含一或多個儲存位置: 且型樣資料儲存!可包含大於酬辦之數目
:儲存位置。在此種情況下,控制電路(諸如,狀態機)可 連縯地比較聊30中之每一傳送資料單元與一個 :料型樣單元。在一實施例中’無論資料儲存位置之數目 是否匹配’ FIFO 3〇與型樣資料錯存器以間的資料單元 寬度均可為不同的。舉例而言,單個位元組之型樣資料可 m例如)每一傳送資料字之同一位元組、每一資料傳送字 之母-位兀組’或其類似者相比較。此等資料比較程序可 為可程式化的且可包括於篩選準則中。在一實施例中,諸 如用於應用程式之特定型樣資料為已知的實施例中,型樣 貝料儲存器32可包含一或多個硬接線式位元型樣。 在傳送資料流㈣3〇時,將其與績元比較器34中之 相應型樣資料相比較(其中”匹配資料單元寬度—即,打阳 30及型樣資料32項之寬度)。對比較^34之輸出—起進行 邏輯AND以偵測傳送資料與型樣資料的一或多個單元之間 的匹配。在一實施例中,如圖2所描繪,將AND函式36與 提供至傳送終止決策邏輯38之每一中間輸出予以級聯。在 所描繪之實施例中,傳送終止決策邏輯38可㈣包含1 八個貝料早疋之傳送終止比較。舉例而言,傳送終止規則 128664.doc -12- 200842593 可要求在字元串中高達八個字元以特定次序匹配預定字 元,以便終止傳送。 傳达終止決朿邏輯38操作所依據之規則由處理器U提供 至CT-DMA控制邏輯4〇,控制邏輯⑽又組態傳送終止決策 €輯38。此等傳送終止規則連同型樣資料在本文中被稱作 師選準則。一般而言,發明性CT-DMA電路26可支援豐富 的時&準貝j之集合,從而提供廣泛範圍之傳送終止功能 性。以下列表提供由CT-DMA電路26之實施例藉由更改篩 ($準則及資料目的地而提供的功能性之-些代表性且非限 制性實例;一些函式包括可由相關聯之功能性直接實施的 C語言命令: •由預定密鑰終止之資料傳送(以 •空目的地··不執行或放棄複製(价㈣户); •判定傳送之長度(〃以^幻一伴隨於傳送或藉由傳送至空目 的地而僅執行計數; •最大長度可與傳送相關聯; k ·由多元密鑰終止之資料傳送⑺^ΓΜΖ襻鹰); •對不同密鑰之比較結果的邏輯組合(AND、0R); •傳送資料與型樣資料匹配達預定次數; 反向匹配情況(即’當傳送資料未能匹配型樣資料時終 止傳送)。 控制邏輯40另外包括各種狀態暫存器、計數器及邏輯 (未圖示)以實施習知DMA傳送功能性及豐富的内容終止 DMA之集合。舉例而言,藉由控制位址產生電路〇,控制 128664.doc -13- 200842593 邏輯40可支援廣泛範圍之CT-DMA傳送功能性,諸如·· 遞A或不遞增來源及/或目的地位址(例如,串流資料)· •執行为散/收集操作以在具有不同字寬度之來源與目的 地之間傳送資料; •遞升或遞降傳送(即,遞增或遞減連續位址); •跨步設置(列/行變換),包括使用空目的地來選擇性地傳 送型樣或不受 •内容控制之鏈式DMA傳送。 C 可以各種方式由傳送資料之内容來控制鏈式DMA傳送。 舉例而言,當前DMA操作中之傳送資料之一或多個值可判 定將哪一 DMA通道用於一後續DMA操作。作為另一實 例,後續DMA操作之來源及/或目的地、跨步及/或計數可 藉由傳送資料之值判定。在一實施例中,傳送資料與型樣 資料之匹配可藉由將CT-DMA引導至含有DMA控制參數之 不同記憶體位置(來源、目的地等)來控制後續DMA操作。 圖3描繪自處理器12(左)及CT-DMA電路26(右)之觀點將 未知量之資料自來源傳送至目的地之方法的流程圖。方法 開始於處理器12藉由將初始化資訊(諸如,來源及目的地 位址或識別符及筛選準則(包括型樣資料及傳送終止規則)) 提供至CT_DMA電路26(步驟1〇〇)來設置傳送。此可包含將 該資訊寫入至CT-DMA電路26上之暫存器及/或型樣資料儲 存器32,或替代地將該資訊寫入至記憶體且將一指向記憶 體位置之指標寫入至CT-DMA電路26暫存器。CT-DMA電 路26相應地接受初始化資訊(步驟丨〇2),直接地或藉由自記 128664.doc -14- 200842593 憶體讀取該資訊。處理器12接著將G〇指示發送至CT-DMA 電路26(步驟103)以開始傳送。G〇指示可包含將一旗標寫 入至CT-DMA控制邏輯4〇中之控制暫存器、在處理器12與 CT-DMA電路26之間確證一信號,或藉由此項技術中已知 之其他方式。 CT-DMA電路26藉由自可包含記憶體位置或周邊裝置埠 之來源將資料單元讀取至諸如FIFO 30之緩衝器中(步驟 104)而開始傳送。視來源資料介面之寬度而定,資料單元 讀取可要求針對該來源之一或多個讀取操作。ct_dma電 路26比較FIFO 30中之傳送資料與由處理器12提供之型樣 資料32(步驟1()6)。CT_DMA電路辦之傳送終止決策邏輯 38將由處S器12提供之傳送終止規則應用於比較之結果 (步驟108)。若傳送終止決㈣輯獅示残終止傳送(步 驟110),則CT-DMA電路26將資料單元寫入至目的地記= 體位址或周邊裝置埠(步驟112),其可要求針對目的地= =多個寫人操作。CT_DMA電路26接著更新傳送計數㈣如 藉由使計數器遞增或遞減)(步驟114), 7 9水綠碩取另一 傳送資料單元(步驟104)。 當CT-DMA電路26基於將傳送終止規則應用於傳送 與型樣育料之比較結果判定傳送應終止 、" T 关通知處理哭 12。如上所述,此通知可包含確證一中 ° 他預定資料寫入至預定位置(諸如,控制邏輯4:標或其 暫存器或記憶體22中之預定位置),或其他通知,狀態 在處理器12希望維護作為資料傳送之 二 刀之終止密鑰的 128664.doc -15- 200842593 一或多項實施例中,終止傳送決策(步驟11〇)可使ct_dma 電路26停止自來源讀取資料(步驟1〇4),但繼續將傳送資料 寫入至目的地(步驟Π2)且更新傳送計數(步驟114),直至 已傳运終止密鑰為止。在一些實施例中,終止行為係可程 <化的-即’是否寫人作為傳送之部分之終止請的決策 係作為初始化資訊之部分由處理器12指定的。 圖3中之虛線描繪處理器12與^〇乂八電路%之間的同 步。自處理器I2發出GO指示(步驟1〇3)時直至(:丁_〇]^八電 ( 路26通知處理器12傳送完成(步驟116)為止,處理器12自由 地執行其他任務(步驟118),或在無其他任務未決的情況下 進入休眠模式。在自CT-DMA電路26接收到傳送完成之通 知(步驟U6)後,處理器可在目的地處處理傳送資料(步驟 !2〇),或以其他方式繼續進行資料傳送後活動。 CT-DMA電路26之實施例可藉由執行未知長度之常式資 料傳送(及相關操作,諸如判定串長度)、使處理器12自由 地執行其他任務來顯著地改良處理器效能。另外,CT_ L DMA電路26可(諸如)藉由避免在與自來源讀取且寫入至目 的地之每一資料單元相關聯WL1快取記憶體14及12快取記 憶體1 6中的重複查找而節省功率。 當然,在不脫離本發明之本質特徵之情況下,可以除本 文中特定陳述方式以外的其他方式來執行本發明。應認為 當前實施例在所有方面為說明性且非限制性的,且屬於隨 附申請專利範圍之含義及等效範圍内的所有改變意欲包含 於其中。 128664.doc -16· 200842593 【圖式簡單說明】 圖1為包括CT-DMA電路之計算系統的功能方塊圖。 圖2為CT-DMA電路中之資料比較電路的功能方塊圖。 圖3為將未知量之資料自來源傳送至目的地之方法的流 程圖。 【主要元件符號說明】 10 計算系統 12 處理器 14 一階快取記憶體 16 二階快取記憶體 18 緊密麵合記憶體 20 系統匯流排 22 主要記憶體 24 輸入/輸出周邊裝置 26 CT-DMA 28 中斷控制器 30 先進先出資料緩衝器 32 型樣資料儲存器 34 比較器 38 傳送終止決策邏輯 40 CT-DMA控制邏輯 42 控制位址產生電路 128664.doc -17-

Claims (1)

  1. 200842593 十、申請專利範圍: 種内各終止直接記憶體存取(CT-DMA)電路,其包 含: 至少一資料傳送介面; 一兄憶體’其可操作以儲存篩選準則; 一比較器,其可操作以比較傳送資料與一或多個篩選 • 準則;及 一控制器,其可操作以回應於比較器輸出而終止一 ζ·^ DMA傳送。 2·如明求項1之CT-DMA電路,其中該資料傳送介面包含一 糸統匯流排介面。 3·如請求項1之CT-DMA電路,其中該資料傳送介面包含一 至另一電路之專用資料介面。 4·如請求項1之CT_DMA電路,其中該記憶體包含一或多個 暫存器。 5·如請求項4之CT-DMA電路,其中該等暫存器係經由一處 I’ 理器所執行之共處理器暫存器存取指令而得以存取。 6·如請求項4之CT-DMA電路,其中該等暫存器經記憶體映 - 射。 Ί·如請求項1之ct-dma電路,其中該記憶體包含硬接線式 資料型樣。 8·如請求項1之CT-DMA電路,其中該篩選準則包含一或多 個型樣資料單元,且其中該比較器可操作以比較一或多 個傳送資料單元與該型樣資料。 128664.doc 200842593 9·如請求項8之CT_DMA電路,其中該比較器可操作以比較 一傳送資料單元與兩個或兩個以上型樣資料單元。 10·如請求項8之CT-DMA電路,其中該控制器可操作以在一 或多個傳送資料單元匹配該型樣資料時終止一 傳 送。 11·如請求項8之CT-DMA電路,其中該控制器可操作以在一 或多個傳送資料單元未能匹配該型樣資料時終止一 DMA 傳送。 12·如請求項8之CT-DMA電路,其中該控制器可操作以在一 或多個傳送資料單元匹配該型樣資料達一預定次數時終 止一 DMA傳送。 13_如請求項1之^〇河八電路,其中該控制器可操作以藉由 確證一中斷而終止一 DMA傳送。 14. 如請求項1之〇:丁_1)厘八電路,其中該控制器可操作以藉由 將一預定值寫入至一預定位置而終止一 DMa傳送。 15. 如請求項1之^〇^1八電路,其中該控制器可進一步操作 以回應於該比較器輸出而起始另一 DMa傳送。 16. 如請求項152CT_DMA電路,其中回應於該比較器輪出 :起始另一 DMA傳送包含自一回應於該比較器輸出而判 定之記憶體位置讀取DMA控制參數。 17· —種將一未知量之資料自一來源傳送至一目的地之方 法,其包含: 自該來源連續地讀取傳送資料; 比較傳送資料與預定型樣資料; 128664.doc 200842593 回應於該比較來判定何時終止一傳送;及 將傳送資料連續地寫入至該目的地直至終止該傳送為 止; " 其中此等方法步驟由一處理器自主地執行。 18.如請求項17之方法,其中回應於該比較而判定何時終止 一傳送包含:判定在一或多個傳送資料單元匹配該型樣 資料時終止該傳送。 19·如請求項17之方法,其中回應於該比較而判定何時終止 一傳送包含:判定在一或多個傳送資料單元未能匹配該 型樣資料時終止該傳送。 2〇·如請求項17之方法,其中回應於該比較而判定何時終止 一傳送包含:判定在一或多個傳送資料單元匹配該型樣 資料達一預定次數時終止該傳送。 21·如請求項17之方法,其進一步包含接收篩選準則。 22·如請求項21之方法,其中該篩選準則包含該型樣資料。 23·如請求項22之方法,其中該篩選準則進一步包含用於組 合傳送資料與型樣資料比較之規則。 24· —種計算系統,其包含: 一資料來源,其可操作以提供資料; 一資料目的地,其可操作以接收資料; 一内容終止直接記憶體存取(CT_DMA)電路,其可操 作以執行一自該來源至該目的地之傳送資料,且進一步 可操作以回應於該傳送資料之一或多個值而終止該資料 傳送;及 128664.doc 200842593 一處理器,其可操作以初始化該CT-DMA電路。 25. 如請求項24之系統,其中該處理器藉由將篩選準則寫入 至該CT-DMA電路中之一或多個記憶體位置而初始化該 CT-DMA電路。 26. 如請求項24之系統,其中該CT-DMA電路比較傳送資料 與篩選準則,且回應於該比較而終止該資料傳送。 27. 如請求項24之系統,其中該處理器藉由將篩選準則寫入 至記憶體且向該CT-DMA電路提供一指向該記憶體之指 標而初始化該CT-DMA電路。 128664.doc
TW097102668A 2007-01-24 2008-01-24 Content-terminated DMA TW200842593A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/626,414 US7934025B2 (en) 2007-01-24 2007-01-24 Content terminated DMA

Publications (1)

Publication Number Publication Date
TW200842593A true TW200842593A (en) 2008-11-01

Family

ID=39366882

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097102668A TW200842593A (en) 2007-01-24 2008-01-24 Content-terminated DMA

Country Status (8)

Country Link
US (1) US7934025B2 (zh)
EP (1) EP2126710B1 (zh)
JP (1) JP5185289B2 (zh)
KR (1) KR101064101B1 (zh)
CN (1) CN101589377B (zh)
AT (1) ATE540362T1 (zh)
TW (1) TW200842593A (zh)
WO (1) WO2008092044A2 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7831746B2 (en) * 2007-03-13 2010-11-09 Sgi International, Inc. Direct memory access engine for data transfers
JP4985599B2 (ja) * 2008-09-18 2012-07-25 Necエンジニアリング株式会社 Dma転送制御システム
US8055816B2 (en) * 2009-04-09 2011-11-08 Micron Technology, Inc. Memory controllers, memory systems, solid state drives and methods for processing a number of commands
US20110093099A1 (en) * 2009-10-16 2011-04-21 Newport Controls Controller system adapted for spa
US8589603B2 (en) * 2010-08-30 2013-11-19 International Business Machines Corporation Delaying acknowledgment of an operation until operation completion confirmed by local adapter read operation
JP5635621B2 (ja) * 2010-09-10 2014-12-03 株式会社日立製作所 ストレージシステム及びストレージシステムのデータ転送方法
US20130205105A1 (en) * 2010-09-21 2013-08-08 Mitsubishi Electric Corporation Dma controller and data readout device
US11797474B2 (en) * 2011-02-17 2023-10-24 Hyperion Core, Inc. High performance processor
US9454367B2 (en) * 2012-03-15 2016-09-27 International Business Machines Corporation Finding the length of a set of character data having a termination character
US8943239B2 (en) 2012-07-30 2015-01-27 Qualcomm Incorporated Data snooping direct memory access for pattern detection
US10049061B2 (en) * 2012-11-12 2018-08-14 International Business Machines Corporation Active memory device gather, scatter, and filter
EP2923279B1 (en) 2012-11-21 2016-11-02 Coherent Logix Incorporated Processing system with interspersed processors; dma-fifo
DE102013109978A1 (de) * 2013-09-11 2015-03-12 Technische Universität Dresden Verfahren und Vorrichtung zum Vor-Auswählen, Filtern und Verteilen von Daten in Datenbank-Management-Systemen
JP6205386B2 (ja) * 2015-05-18 2017-09-27 長瀬産業株式会社 半導体装置及び情報書込/読出方法
US10599208B2 (en) * 2015-09-08 2020-03-24 Toshiba Memory Corporation Memory system and controller

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6072057A (ja) * 1983-09-28 1985-04-24 Nec Corp Dmaコントロ−ラ
JPS6426964A (en) * 1987-07-23 1989-01-30 Fujitsu Ltd Memory writing device for code data
JPH03156659A (ja) * 1989-11-15 1991-07-04 Hitachi Ltd ダイレクトメモリアクセスコントローラ
JPH0535656A (ja) * 1991-07-30 1993-02-12 Oki Electric Ind Co Ltd データ検索方式
JPH08287003A (ja) * 1995-04-11 1996-11-01 Mitsubishi Electric Corp Dmaコントローラ
US5784390A (en) * 1995-06-19 1998-07-21 Seagate Technology, Inc. Fast AtA-compatible drive interface with error detection and/or error correction
US6081852A (en) * 1996-04-26 2000-06-27 Texas Instruments Incorporated Packet data transferring system for autonomously operating a DMA by autonomous boot mode select signal wherein the DMA is enabled to at least one program control list
US6185634B1 (en) * 1996-09-27 2001-02-06 Emc Corporation Address triggered DMA controller with an indicative signal including circuitry for calculating a new trigger address value based on the sum of the current trigger address and the descriptor register data with a trigger address register
US6157971A (en) * 1998-06-02 2000-12-05 Adaptec, Inc. Source-destination re-timed cooperative communication bus
JP3765931B2 (ja) * 1998-10-15 2006-04-12 富士通株式会社 バッファ制御方法及びバッファ制御装置
US6611879B1 (en) * 2000-04-28 2003-08-26 Emc Corporation Data storage system having separate data transfer section and message network with trace buffer
US6681273B1 (en) * 2000-08-31 2004-01-20 Analog Devices, Inc. High performance, variable data width FIFO buffer
US6901468B1 (en) * 2000-09-27 2005-05-31 Emc Corporation Data storage system having separate data transfer section and message network having bus arbitration
US6831916B1 (en) * 2000-09-28 2004-12-14 Balaji Parthasarathy Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
US6775719B1 (en) * 2000-09-28 2004-08-10 Intel Corporation Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
GB2377139A (en) 2001-06-29 2002-12-31 Zarlink Semiconductor Ltd Network gateway utilising DMA controller to transfer data between buffers
US6981073B2 (en) * 2001-07-31 2005-12-27 Wis Technologies, Inc. Multiple channel data bus control for video processing
US6754733B2 (en) * 2001-08-23 2004-06-22 Texas Instruments Incorporated Shared memory architecture for increased bandwidth in a printer controller
US6904473B1 (en) * 2002-05-24 2005-06-07 Xyratex Technology Limited Direct memory access controller and method of filtering data during data transfer from a source memory to a destination memory
US20040153911A1 (en) * 2002-12-24 2004-08-05 Alon Regev Testing of a CAM
US7200688B2 (en) * 2003-05-29 2007-04-03 International Business Machines Corporation System and method asynchronous DMA command completion notification by accessing register via attached processing unit to determine progress of DMA command
JP4373255B2 (ja) * 2004-03-23 2009-11-25 富士通株式会社 ダイレクトメモリアクセス制御装置および方法
JP2005149519A (ja) * 2004-12-14 2005-06-09 Ricoh Co Ltd 情報処理装置
JP4972932B2 (ja) * 2005-12-26 2012-07-11 富士通株式会社 メモリアクセス装置
US7721018B2 (en) * 2006-08-24 2010-05-18 Microchip Technology Incorporated Direct memory access controller with flow control
US20080140963A1 (en) * 2006-12-11 2008-06-12 Thomason Ronald G Methods and systems for storage system generation and use of differential block lists using copy-on-write snapshots
US8117475B2 (en) * 2006-12-15 2012-02-14 Microchip Technology Incorporated Direct memory access controller

Also Published As

Publication number Publication date
CN101589377A (zh) 2009-11-25
KR101064101B1 (ko) 2011-09-08
CN101589377B (zh) 2012-05-23
WO2008092044A2 (en) 2008-07-31
JP2010517182A (ja) 2010-05-20
US20080177909A1 (en) 2008-07-24
US7934025B2 (en) 2011-04-26
EP2126710B1 (en) 2012-01-04
EP2126710A2 (en) 2009-12-02
KR20090102870A (ko) 2009-09-30
JP5185289B2 (ja) 2013-04-17
ATE540362T1 (de) 2012-01-15
WO2008092044A3 (en) 2008-12-18

Similar Documents

Publication Publication Date Title
TW200842593A (en) Content-terminated DMA
US10795844B2 (en) Multicore bus architecture with non-blocking high performance transaction credit system
TWI419045B (zh) 用於管理裝置之端序模式之系統及方法
TWI486810B (zh) 在狀態機晶格中之計數器操作
US20080043563A1 (en) Flexibly controlling the transfer of data between input/output devices and memory
US11635902B2 (en) Storage device processing stream data, system including the same, and operation method
US7844752B2 (en) Method, apparatus and program storage device for enabling multiple asynchronous direct memory access task executions
US11803505B2 (en) Multicore bus architecture with wire reduction and physical congestion minimization via shared transaction channels
US9092275B2 (en) Store operation with conditional push of a tag value to a queue
US11675326B2 (en) Method and apparatus for remote field programmable gate array processing
JP2001117859A (ja) バス制御装置
KR20200017364A (ko) PCIe 메모리 요청들의 라우팅을 촉진하기 위해 NVMe 물리적 영역 페이지 목록 포인터들 및 데이터 포인터들을 수정
JP2006338538A (ja) ストリームプロセッサ
TWI722009B (zh) 用於在遠端處理器上進行基元動作之硬體機制
US20030172229A1 (en) Systems and methods for detecting and compensating for runt block data transfers
US10853255B2 (en) Apparatus and method of optimizing memory transactions to persistent memory using an architectural data mover
JP5341198B2 (ja) 通信インタフェースにおけるビット反転
JP4431492B2 (ja) 複数のコヒーレンシー・グラニュールをサポートするデータ転送ユニット
US20040111537A1 (en) Method, system, and program for processing operations
JP2001229074A (ja) メモリ制御装置と情報処理装置及びメモリ制御チップ
KR20220083849A (ko) 메모리 컨트롤러