TWI262435B - Microcomputer structure and method having direct memory access function - Google Patents

Microcomputer structure and method having direct memory access function Download PDF

Info

Publication number
TWI262435B
TWI262435B TW93100269A TW93100269A TWI262435B TW I262435 B TWI262435 B TW I262435B TW 93100269 A TW93100269 A TW 93100269A TW 93100269 A TW93100269 A TW 93100269A TW I262435 B TWI262435 B TW I262435B
Authority
TW
Taiwan
Prior art keywords
memory
register
memory access
bus
direct memory
Prior art date
Application number
TW93100269A
Other languages
English (en)
Other versions
TW200523797A (en
Inventor
Kan-Sheng Guan
Original Assignee
Winlead Integrated Circuit Des
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 Winlead Integrated Circuit Des filed Critical Winlead Integrated Circuit Des
Priority to TW93100269A priority Critical patent/TWI262435B/zh
Publication of TW200523797A publication Critical patent/TW200523797A/zh
Application granted granted Critical
Publication of TWI262435B publication Critical patent/TWI262435B/zh

Links

Landscapes

  • Microcomputers (AREA)

Description

1262435
五 '發明說明(1) 【發明所屬之技術領域】 本發明係關於_ # / 之架構及其方法,;二種,電腦系統内之直接記憶體存取 接記憶體存取牟是一種不影響微處理器工作之直 【先前技術】ϋ方法。 在各式各樣的電子 u ^ 功能不一的微電腦系 态產口口中,通吊其内部皆具有 功能,一般微電^ 击藉以控制電子電器產品之各項 憶體(ROM)、以及句一糸产\中六至少含一微處理器、一唯讀記 處理器是用以執行人\、存取記憶體(RAM)或暫存器,微 唯讀記憶體内存^二ί:處理資料及開始系統的控制, 料,而RAM式勒产。處理器之指令集及一些固定的資 的暫時性資料在一係此用^於存放微處理器運算過程中產生 的讀取或寫入俜由樹^ =早的系統裡,隨機存取記憶體 尺馬八係由微處理器所控制。 而在較複雜的系統中,外部系統經常需要 記憶體内之資料而不影響微處理器的工作,此種二:= 微處理器的參與而直接與記憶體做資料轉移稱為直接記 憶體存取(direct memory access,DMA),而已知直接^ 種則是時脈的延長(c 1 ock stretchings ,为一稽 用微處理器讀取指令的空隙進行直接記憶體存取。 微電腦系統在一般操作之下,無論是讀/寫控制、資 料、及位址等匯流排,皆是由微處理器所控制,而使用貝 匯流排控制轉移方法來完成直接記憶體存取的動作是透 憶體存取的方法有三種,一種是匯流排控制的轉移, s 另一種則是利 種則是時脈的延長(c 1 ock stretching),另一插如
第5頁 1262435 五 發明說明(2) 一直接記憶 時’此直接 理器’而微 流排的控制 時,外部裝置 結束使用記憶 ,制權還給微 疋當微處理器 態,一般中斷 讓微處理器閒 ^ 若是採用 器於收到直接 排的控制權而 止的狀態,讓 裝置存取動作 時脈繼續工作 上述兩種 運算的延遲’ 要避免造成微 含從唯讀記憶 存器中存取資 憶體與隨機存 匯流排是分開 流排並不會同 過 體 處 匯 體存 記憶 處理 權暫 即可 體時 處理 被中 要儲 置到 時脈 記憶 暫時 外部 結束 取控制 體存取 器則會 時交給 與記憶 ’直接 器。使 斷之後 存暫存 直接記 延長的 體存取 停止目 裝置可 ,將匯 器, 控制 於目 直接 體進 記憶 用直 ,它 器、 憶體 直接 的請 前的 自由 流排 當外 器會 前匯 記憶 行資 體存 接記 用不 程式 存取 記憶 求時 工作 的存 控制 部裝置需要存取記憶 發送一請求訊號給微 流排週期結束後,將 體存取控制器,此 料轉移,當外部裝置 取控制器再將匯流排 憶體存取的方法,就 著儲存微處理器的狀 計數器等狀態,而是 完畢。 體存取方法,微處理 ’即馬上釋放出匯流 ’由於時脈係處理停 取記憶體,直到外部 權交還微處理器並讓 直接記憶體 而第三種直 處理器運算 體讀取指令 料,大部分 取記憶體的 的,故唯讀 時處於忙碌 的方法皆會造成微處理器 5己憶體存取方法的目的即是 的延遲,微處理器的操作中包 认^及從隨機存取記憶體或暫 ^電腦系統架構中,唯讀記 :憶H制:資#、以及位址等 的狀態ϋ存取記憶體的匯 1262435 五、發明說明(3) 存取的方法即是於微處理器讀取唯讀記憶體内的指令或 進行指令解碼時,利用此時隨機存取記憶體匯流排的空 檔,來存取隨機存取記憶體或暫存器,故此種方法並不 會造成微處理器的延遲,但每次只能進行小部分資料之 存取。然而,於有些微處理器的架構下,例如管線架構 (pipeline architecture),唯讀記憶體與隨機存取記憶 體可能隨時處於忙碌的狀態下,故沒有空檔進行直接記 憶體存取。 由上述的說明可知,習知的直接記憶體存取方法皆 存在一些缺點,主要就是會延遲微處理器的工作,而本 發明之目的即是針對此一缺點提出改進的方法及架構。 【發明内容】 本發明之主要目的係在提供一種微電腦系統内直接 記憶體存取的方法,使其不會延遲微處理器的工作。 本發明之另一目的係在提供一種微電腦架構,使其 可在不延遲微處理器工作的情況下,進行直接記憶體存 取的動作。 本發明之又一目的係在提供一種可提昇周邊裝置與 記憶體間資料轉移效率的直接記憶體存取方法。 為達到上述目的,本發明提出一種具有直接記憶體 存取功能的微電腦架構,其係包括:一微處理器,用以 控制系統及執行運算功能;一記憶體,分為第一部分及 第二部分,並使其分別具有獨立之記憶體匯流排;一暫 存器,分為第一部分及第二部分,並使其分別具有獨立
1262435 五、發明說明(4) 之έ己憶體匯流排,以及’一直接記憶體存取控制器,用 以控制直接記憶存取之動作,當需要使用記憶體&行資 料轉移時,直接記憶體存取控制器會先檢查^憶體兩部 为中之其中一部分及其ό己憶體匯流排是否為微處理器使 用中··若是,則直接記憶體存取控制器則可選擇等j寺微 處理器使用結束再使用該部分之記憶體及其記憶體匯流 排或是直接使用記憶體之另一部分及其記憶體匯流排; 右否’則直接s己憶體存取控制|§則可直接使用該部分之 記憶體及其記憶體匯流排;當需要使用暫存器進行S料 轉移時’直接記憶體存取控制器會先檢查暫I器兩4分 中之其中一部分及其暫存器匯流排是否為微處理器j吏用 中:若是,則直接記憶體存取控制器則可選擇等待微产 理器使用結束再使用該部分之暫存器及其暫存器匯流$ 或是直接使用該暫存器之另一部分及其暫存器^流^; 若否,則直接記憶體存取控制器則可直接使用該 暫存器及其暫存器匯流排。 為達到於微電系統内進行直接記憶體存取,本發 提出將記憶體及暫存器各分成兩部分的方法,並使其 具有獨立之匯流排,再藉由一直接記憶體存取控制器來 控制直接記憶體存取之動作,而此直接記憶體存取控 器之運作方式則可為上述之過程,透過將記愧體、暫存 器、及其相對應之匯流排分別兩部分的方式,直接記情 體存取控制器有較多的時間於不干擾微處理器的情況〜 下,進行直接記憶體存取之資料轉移。 /
附的圖式詳加說明,當 技術内容、特點及其所達成 1262435 五、發明說明(5) ~底下藉由具體實施例配合所 t容易瞭解本發明之目的 之功效。 【實施方式】 為了能在不中斷微處理器工 體與暫存器或周邊裝置間資料的 存取記憶體及暫存器皆分成兩部 立之匯流排,其第一部分用以存 料’而第二部分則用以存放其它 ^用第一部分的記憶體與暫存 分’藉由此種設計,直接記憶體 間來使用第二部分的記憶體與暫 移’而無須中斷微處理器的工作 請參考第一圖,其係本發明 圖’此架構包括:一微處理器1 〇 各項裝置及執行運算的功能,此 14及暫存器16進行資料的存取, 憶體1 4、暫存器丨6、及其連接記 f ’具有較高的優先權;一記憶 記憶體141及第二部分記憶體ι4 3 ^ 一記憶體匯流排1 4 1 0及第二記 =憶體資料傳輸的通道;一暫存 分暫存器161及第二部分暫存器i 之第一暫存器匯流排1 6 1 0及第二 作的情況下,進行記憶 轉移,本發明係將隨機 分,並使其分別具有獨 放微處理常使用的資 資料,故微處理器會常 器,而很少使用第二部 存取控制器則有較多時 存器,以進行資料轉 〇 提出之微電腦系統架構 ,用以控制整個系統之 微處理器1 0可對記憶體 通常,微處理器1 〇對記 憶體或暫存器之匯流 體14,分成了第一部分 ’其係分別具有獨立之 憶體匯流排1 43 0,作為 器16 ’亦分成了第一部 6 3,其係分別具有獨立 暫存器匯流排1 6 3 0 ,作
第9頁 1262435
五、發明說明⑻ ^器12器=料傳輸的通道;以及,一直接記憶體存取控 ’用控制直接記憶體存取的動作。 分,ί Γ Γ f系統内之記憶體14及暫存器1 6各分成兩部 的通道ΐ母部分皆具有獨立之匯流排,作為資料傳輸 1 4或暫t的,此,當微處理器1 〇工作時,若有用到記憶體 一 6時,同一時間内僅會佔據記憶體14之其中 此睹刀1暫存器之其中一部分,及其相對應之匯流排, 一 ^ i ί其它裝置則可使用另一部分之記憶體u及另 你11之暫存器16,而此系統内之直接記憶體存取之動 卞係由直接記憶體存取控制器1 2所控制。請參者篦一 圖’其係此系統操作時之示意圖,如:“參工内 之微處理器正在存取第一部分記憶體内之資料,同時, 直接記憶體存取控制器則於第二部分記憶體與第二部分 暫存器之間進行資料轉移。 >請同時參考第一圖及第三圖,第三圖係為此系統直 接記憶體存取之流程,步驟S1 〇,當系統收到一DMA(直接 記憶體存取)請求時,在此假設是要存取第二部分記憶體 1 4 3 ’則進行步驟S 1 2,直接記憶體存取控制器1 2會先檢 查微處理器10是否正在使用第二部分記憶體143,若正在 使用,則直接記憶體存取控制器1 2可選擇等待微處理器 1 0使用結束後,再使用第二部分記憶體1 4 3,即步驟 S14,或是進行步驟S16,直接使用另一部分之記憶體, 即第一部分記憶體1 4 1 ,而若微處理器此時並無使用第二 部分記憶體1 4 3 ’則進行步驟s丨8,直接記憶體存取控制
第10頁 1262435 發明說明(7) 器12可直接使用該部分之記憶體進行資料轉移。上 流程適用於當DMA請求存取記憶體之任一部分 任一部分時。 $仔态之 請再參考第一圖,由於整個微電腦系統内,微處理 器10對於記憶體14、暫存器16及其對應之匯流排,皆且 有較高之優先權,因此直接記憶體存取控制器丨2之 寫的週期必須與微處理器10同步,以避免因週期不同/、 步,而發生當微處理器10將進行下週期的工作時,其可 能是要存取直接記憶體存取控制器丨2正在使用的記憶體 部分或暫存器部分,但此時,直接記憶體存取控制器i 2 因工作週期未結束,故尚未完成讀/寫之動作,進而造 延遲微處理器10工作的情況。 為了提昇此系統之資料轉移效率,其記憶體丨4分判 方式主要依據微處理器1 0的使用頻率,第一部分記憶& 141包含微處理器1〇常用的低階位址之記憶體區,而第二 部分記憶體1 43則包含微處理器丨〇不常用之記憶體區,而 暫存器16的分割方式亦同,將微處理器1〇常用的部分放 在第一部分暫存器内161 ,如:累加器(ACC)暫存器及堆 疊指示(SP)暫存器等,而微處理器1〇不常用的部分放在 第一部分暫存器163内,如:串列埠資料緩衝器(SBUF)、 及ADR (A/D-result)暫存器等,藉由此種方式,直接記憶 體存取控制器1 2可有較多的時間使用第二部分記憶體丨4 3 及第二部分暫存器1 6 3,以增進系統資料轉移的效率。 上述之直接記憶體存取方法可用於微電腦系統内之
第11頁 1262435 五 -發明說明(8) ^憶體1 4與暫存器1 6間之資料轉移,除此之外,直接記 =體存取控制器12更可外接一周邊裝置2〇,請參考第四 ^伽透過直接記憶體存取控制器1 2,此周邊裝置20便能 = 存器16直接進行資料轉移,而無須使 1 〇正2第ί2控制。在此系統之架構下,當微處理器 部分Ϊ存記憶體m、第二部分記憶體143、第一 之其中之二、隹一、次第二部分暫存器163、或周邊裝置20中 則可於其它任Ξ: I! ί移! 2接記憶體存取控制器12 器16更可八占=ί間進仃貝料轉移。而記憶體14與暫存 流排,夢^成:固以上的區域,並使其皆具有獨立的匯 區域及:六 接記憶體存取控制器便可在這此呓情體 率域及暫存器區域間做資料轉移,以提昇資料轉移= 的微ϊϊίΐ:具有直接記憶體存取功能 匯流排” i區分成兩部分,並使其分別具in的 提,由於圮愔駟動•作—以不影響微處理器工作為前 部分,故直存器、及其對應之匯流排皆分成兩 微處理器的情^ $體:Ί制器有較多的時間於不干擾 工作不會被中•,又ΐ:二資料轉移,由於微處理器的 :明提出之微ΐ腦間做資料轉移,故本 構,其資料II '、 昇政能可超過習知t架 4轉移的效率亦高於習知之架構。之架
$ 12頁 1262435 五、發明說明(9) 惟以上所述者,僅為本發明之較佳實施例而已,並 非用來限定本發明之實施範圍。故即凡依本發明申請專 利範圍所述之構造、特徵及精神所為之均等變化或修 飾,均應包括於本發明之申請專利範圍内。 圖號說明: 10 微處理器 12 直接記憶體存取控制器 14 記憶體 141 第一部分記憶體 1410 第一記憶體匯流排
1 43 0 第二記憶體匯流排 143 第二部分記憶體 16 暫存器 161 第一部分暫存器 163 第二部分暫存器 1610 第一暫存器匯流排 1 6 3 0 第二暫存器匯流排 20 周邊裝置
第13頁 1262435 圖式簡單說明 第一圖為本發明之具有直接記憶體存取功能的微電腦架 構圖。 第二圖為第一圖之微電腦架構操作之示意圖。 第三圖為本發明之直接記憶體存取流程圖。 第四圖為本發明之另一實施例架構圖。
第14頁

Claims (1)

1262435 、申請專利範圍 六 犯图 括 種具有直接記憶體存取功能的微電腦架構,其係包 一,處理器,用以控制整個系統並執行運算功能; 一記憶严,分為第一部分及第二部分,並使其分別 具有獨立之记憶體匯流排,用以進行資料之傳輸; 一暫存器,分為第一部分及第二部分,並使其分別 具有獨立之暫存器匯流排,用以進行資料之傳輸;以及 一直接,憶體存取控制器,用以控制直接記憶體存 取之動!!丄§需要使用該記憶體進行資料轉移時,該直 接記憶體二取控制器會先檢查該記憶體兩部分中之1中 一部=ΐ:憶體匯流排是否為該微處理器使用中?若 是,則該直接記憶體存取控制器則可選擇等待微 使用結束=使用該部分之記憶體及其記憶體匯流排: 直接使用=己憶體之另-部分及其記憶體匯流排;匕疋 否,則該直接記憶體存取控制器則可直接 ^右 記憶體及其記憶體匯流排;當需要使用該暫;η 料轉移時’ ^接記憶體存取控制器會:::貝 擇等待微處理器使用結束再使用該部^器則可選 存器匯流排或是直接使用該暫存器之另一器及其暫 器匯流排,·若否,則該直接記憶&存==及其暫存 使用該部分之暫存器及其暫存器匯流排;制器則可直接 2.如申請專利範圍第!項所述之微電腦架構 中,該 1262435 六、申請專利範圍 微電腦架構更可包括一周邊裝置,其係與該直接記憶體 存取控制器連接,透過該直接記憶體存取控制器,該周 邊裝置可直接與該記憶體及該暫存器進行資料轉移。 3. 如申請專利範圍第1項所述之微電腦架構,其中,該 直接記憶體存取控制器可於該記憶體與該暫存器間進行 資料轉移。 4. 如申請專利範圍第1項所述之微電腦架構,其中,該 記憶體之第一部分包含該微處理器常用的低階位址之記 憶體區,而該記憶體之第二部分則包含該微處理器不常 用之記憶體區。 5. 如申請專利範圍第1項所述之微電腦架構,其中,該 暫存器之第一部分包含累加器(ACC)暫存器及堆疊指示 (SP)暫存器等。 6. 如申請專利範圍第5項所述之微電腦架構,其中,該 暫存器之第二部分包含串列埠資料緩衝器(SBUF)、及ADR 暫存器。 7. 如申請專利範圍第1項所述之微電腦架構,其中,該 記憶體更可分成三部分以上之記憶區,並使其分別具有 獨立之記憶體匯流排。 8. 如申請專利範圍第1項所述之微電腦架構,其中,該 暫存器更可分成三部分以上之暫存區,並使其分別具有 獨立之暫存器匯流排。 9. 一種用於微電腦系統内直接記憶體存取之方法,其方 法包括:
第16頁 1262435 六、申請專利範圍 將微電腦系統内之記憶體分成兩部分,並使其分別 具有獨立之記憶體匯流排; 將微電腦系統内之暫存器分成兩部分,並使其分別 具有獨立之暫存器匯流排; 微處理器工作時,若使用該記憶體,同一時間内僅 會使用到該記憶體之其中一部分並僅使用連接該部分之 記憶體匯流4非,則另一記憶體部分及其記憶體匯流排則 可供其它裝置使用; 微處理器工作時,若使用該暫存器,同一時間内僅 會使用到該暫存器之其中一部分並僅使用連接該部分之 暫存器匯流排,則另一暫存器部分及其暫存器匯流排則 可供其它裝置使用; 當需要使用直接記憶體存取方式對該記憶體進行資 料轉移時,該微電腦系統内之直接記憶體存取控制器會 先檢查該記憶體兩部分中之其中一部分是否為該微處理 器使用中:若是,則該直接記憶體存取控制器可選擇等 待微處理器使用結束再使用該部分之記憶體或是直接使 用該記憶體之另一部分;若否,則該直接記憶體存取控 制器則可直接使用該部分之記憶體;以及 當需要使用直接記憶體存取方式對該暫存器進行資 料轉移時,該微電腦系統内之直接記憶體存取控制器會 先檢查該暫存器兩部分中之其中一部分是否為該微處理 器使用中:若是,則該直接記憶體存取控制器可選擇等 待微處理器使用結束再使用該部分之暫存器或是直接使
第17頁 1262435 六、申請專利範圍 用該暫存器之另一部分;若否,則該直接記憶體存取控 制器則可直接使用該部分之暫存器。 10. 如申請專利範圍第9項所述之直接記憶體存取之方 法,其中,該方法可用於該微電腦系統之記憶體與一周 邊裝置進行資料轉移。 11. 如申請專利範圍第9項所述之直接記憶體存取之方 法,其中,該方法可用於該微電腦系統之暫存器與一周 邊裝置進行資料轉移。 12. 如申請專利範圍第9項所述之直接記憶體存取之方 法,其中,該方法可用於該微電腦系統之記憶體與暫存 器間之資料轉移。
第18頁
TW93100269A 2004-01-06 2004-01-06 Microcomputer structure and method having direct memory access function TWI262435B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW93100269A TWI262435B (en) 2004-01-06 2004-01-06 Microcomputer structure and method having direct memory access function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW93100269A TWI262435B (en) 2004-01-06 2004-01-06 Microcomputer structure and method having direct memory access function

Publications (2)

Publication Number Publication Date
TW200523797A TW200523797A (en) 2005-07-16
TWI262435B true TWI262435B (en) 2006-09-21

Family

ID=37987727

Family Applications (1)

Application Number Title Priority Date Filing Date
TW93100269A TWI262435B (en) 2004-01-06 2004-01-06 Microcomputer structure and method having direct memory access function

Country Status (1)

Country Link
TW (1) TWI262435B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114385528A (zh) * 2020-10-16 2022-04-22 瑞昱半导体股份有限公司 直接记忆体存取控制器、使用其之电子装置以及操作其的方法

Also Published As

Publication number Publication date
TW200523797A (en) 2005-07-16

Similar Documents

Publication Publication Date Title
US7650453B2 (en) Information processing apparatus having multiple processing units sharing multiple resources
US7581054B2 (en) Data processing system
JP2006268801A (ja) メモリアクセス制御回路
JP2008009817A (ja) 半導体装置及びデータ転送方法
US6272583B1 (en) Microprocessor having built-in DRAM and internal data transfer paths wider and faster than independent external transfer paths
US20050273538A1 (en) Data processor
JP3803196B2 (ja) 情報処理装置、情報処理方法および記録媒体
TWI262435B (en) Microcomputer structure and method having direct memory access function
JP3830438B2 (ja) メモリアクセスアービタ、メモリ制御装置
US20040034748A1 (en) Memory device containing arbiter performing arbitration for bus access right
JP2003281083A (ja) バスコントロール回路
JP2000227895A (ja) 画像データ転送装置および画像データ転送方法
JP2985496B2 (ja) Dma転送方式
JPH05250250A (ja) デュアルポートramのアクセス制御方法
JPS6054065A (ja) 同期制御装置
JP3903872B2 (ja) 多重アクセス制御回路
JP2000322377A (ja) データ転送制御装置
TW512277B (en) Core logic of a computer system and control method of the same
JPH0333934A (ja) レジスタ退避復帰方式
JP2570271B2 (ja) 半導体メモリ制御装置
JP2010140440A (ja) バス調停装置
JP2001243170A (ja) データ転送装置
Khoo et al. Scalable storage architecture in modular hardware accelerators
JP2002182901A (ja) コプロセッサデータアクセス制御装置、その方法およびその命令フォーマット
JPH05334233A (ja) データ転送装置

Legal Events

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