[go: up one dir, main page]

TW201111991A - Memory access system and method for virtualizing off-chip memory of a processor - Google Patents

Memory access system and method for virtualizing off-chip memory of a processor Download PDF

Info

Publication number
TW201111991A
TW201111991A TW98132035A TW98132035A TW201111991A TW 201111991 A TW201111991 A TW 201111991A TW 98132035 A TW98132035 A TW 98132035A TW 98132035 A TW98132035 A TW 98132035A TW 201111991 A TW201111991 A TW 201111991A
Authority
TW
Taiwan
Prior art keywords
command
memory
fixed
control
external memory
Prior art date
Application number
TW98132035A
Other languages
Chinese (zh)
Inventor
Wen-Guo Lin
Original Assignee
Tatung Co
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 Tatung Co filed Critical Tatung Co
Priority to TW98132035A priority Critical patent/TW201111991A/en
Publication of TW201111991A publication Critical patent/TW201111991A/en

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

The invention provides a memory access system and method for virtualizing off-chip memory of a processor. The system comprises an off-chip memory and a processor, wherein the processor includes an on-chip memory, an operating unit and a virtualizing memory managing unit. The operating unit is used to process programs and operations and make judgments. The method comprises dividing the off-chip into a fixed memory chunk and an unfixed memory chunk, receiving a control command and making a judgment by the operating unit, transferring the control command to the on-chip memory or the virtualizing memory managing unit, which depends on the judgment, and finally executing in the on-chip memory according to the control command, or transferring the control command to a control signal to execute in the off-chip memory.

Description

201111991 六、發明說明: 【發明所屬之技術領域】 本發明係關於記憶體存取之技術領域,尤指一種處理 器之外部記憶體之虛擬化存取系統及方法。 【先前技術】 科技日新月異的現在’對於例如嵌入式產品等具有處 理器的系統來說’其處理器的内部記憶體容量有限,因此 經常發生處理器的内部記憶體不敷使用的問題,在這種情 況下,只需增加一外部記憶體供處理器使用即可。處理器 可以直接存取内部記憶體,因此對於程式設計者來說在使 用上相當容易,相較之下由於處理器無法直接存取外部記 2體’因此必須下達的指令更為繁雜’造成程式設計者不 仔不先對外部§己憶體的規袼進行瞭解。目前習知已有數種 用以簡化處理器存取外部記憶體之過程的方法,例如以設 計地址產u區別内部記憶體及外部記憶體,並由驅動硬 體執行所需程式、將外部記憶體進行切割,並以頁面指令 進行存取、對外部記憶體作環形緩衝器的規劃並以配置 於外部記憶體中的程式機制進行存取等,但若欲使用上述 方法使用者必g先對其結構有_定程度的瞭解並且上 =的習知技術在使用上’仍然不如處理器對内部記憶體所 進行的直接存取簡易。另外,習 „ .. &知技術仍無法對外部記憶 體進行空間管理,例如盔法 ”,、法於其上執行存放表格等之應 201111991 用。由此可知,習知的虚押盟 的慝理裔之外部記憶體之存取方法仍 有諸多缺失而有予以改善之必要。 【發明内容】 本發明之目的係在提供—锸_畑— AL a 種處理益之外部記憶體之虛 擬化存取系統及方法,以類似於直接存取内部記憶體之方 法下達命令心處理㈣其外部記憶體進行存取、以及進 行資料管理。 依據本發明之-特色,本發明係提出一種處理器之外 部記憶體之虛擬化存取系統,包括:—外部記憶體,係經 規劃為一固定區塊、以及-非固定區塊;以及一處理器, $括-内部記憶體、一操作單元、以及一虛擬記憶體管理 早疋’其中該虛擬記憶體管理單㈣用以將所接收之一控 J -ρ 7轉換為控制化號以對該外部記憶體進行動作,該 操作單元用以處理程式及進行運算,以及對該控制命令進 :判斷並將其傳送至該内部記憶體、或該虛擬記憶體管理 早π,以對該内部記憶體執行配置、釋放、讀取及寫入之 動作、或由該虛擬記憶體管理單元進行處理。 依據本發明之另一特色,本發明係提出一種於處理器 卜。Ρ。己隐體之虛擬化存取系統進行存取之方法,該系統 包,一外部記憶體、以及一處理器,其中該處理器包括一 Ρ °己隐體、一操作單元、以及一虛擬記憶體管理單元, X操作單元用以處理程式及進行運算、以及對所接收之命 令進行判斷並將其傳送至該内部記憶體、或該虛擬記憶體 201111991 ::區rtrr步驟:(A)將該外部記憶體規劃 控制2 及—非固定區塊;⑻該操作單元接收- "P7並對該控制命令進行判斷,若判斷址果為1批 制命令係針對該㈣記憶體 # 5 ^ ^ * ⑴忒轴作早兀將該控制命令 相部記憶體,並依其對該内部記憶體執行動作.201111991 VI. Description of the Invention: [Technical Field] The present invention relates to the technical field of memory access, and more particularly to a virtualized access system and method for external memory of a processor. [Prior Art] The ever-changing technology nowadays 'for systems with processors such as embedded products, the internal memory capacity of the processor is limited, so the problem that the internal memory of the processor is not used often occurs. In this case, you only need to add an external memory for the processor to use. The processor can directly access the internal memory, so it is quite easy for the programmer to use. In contrast, the processor cannot directly access the external memory. Therefore, the instructions that must be issued are more complicated. The designer does not know the rules of the external § memory. At present, there are several methods for simplifying the process of the processor accessing the external memory, for example, designing the address to distinguish the internal memory and the external memory, and executing the required program by the driving hardware, and performing the external memory. Cutting, accessing with page instructions, planning the external memory as a circular buffer, and accessing the program mechanism configured in the external memory, but if you want to use the above method, you must first structure it. There is a degree of understanding and the prior art of the above is still not as easy to use as the processor's direct access to the internal memory. In addition, „.. & knowing technology still can't manage the external memory space, such as the helmet method, and the law should be used to store the form, etc. 201111991. It can be seen that there are still many shortcomings in the access methods of the external memory of the sacred patriots of the traditional smugglers. SUMMARY OF THE INVENTION The object of the present invention is to provide a virtualized access system and method for external memory of - 锸 畑 AL AL AL , , , , , , , , AL AL AL AL AL AL AL AL AL 虚拟 虚拟 虚拟 虚拟 虚拟 虚拟 虚拟 虚拟 虚拟 虚拟 虚拟Its external memory is accessed and data is managed. According to the features of the present invention, the present invention provides a virtualized access system for external memory of a processor, comprising: an external memory, which is planned as a fixed block, and a non-fixed block; The processor, $-internal memory, an operation unit, and a virtual memory management early, wherein the virtual memory management sheet (four) is used to convert the received one of the control J-ρ 7 into a control number to The external memory is operated, and the operation unit is configured to process the program and perform an operation, and determine the control command and transmit the same to the internal memory, or the virtual memory manages the early π to the internal memory. The body performs configuration, release, read, and write operations, or is processed by the virtual memory management unit. According to another feature of the invention, the invention is directed to a processor. Hey. A method for accessing a virtualized access system, the system package, an external memory, and a processor, wherein the processor includes a hidden body, an operating unit, and a virtual memory a management unit, the X operating unit is configured to process the program and perform operations, and to judge and transmit the received command to the internal memory, or the virtual memory 201111991::region rtrr step: (A) the external Memory planning control 2 and - non-fixed block; (8) The operating unit receives - "P7 and judges the control command, if the judgment result is 1 batch command for the (4) memory # 5 ^ ^ * (1) The axis is preliminarily controlled to command the phase memory, and the action is performed on the internal memory.

(=步驟(B)mm結果為該控制命令係針對該外部記 =If«作單元將該控制命令傳送至該虛擬記憶體管 早疋,以及(D)該虛擬記憶體管理單元將該控制命令轉換 為一控制料並傳送至料料憶體,料部記憶體接收 邊控制信號並依其進行動作。 在本發明之-實施例中,虛擬記憶體管理單元依所接 收之配置命令提供—配置編號以供下達釋放、讀取及寫入 命令。 在本發明之一實施例中,虛擬記憶體管理單元係用以 對所接收之固定配置命令、固定釋放命令、固定讀取命令、 及固定寫入命令進行轉換,以分別對該固定區塊執行配 置、釋放、讀取、及寫入之動作,以及對所接收之非固定 配置命令、非固定釋放命令、非固定讀取命令、及非固定 寫入命令進行轉換,以對該非固定區塊執行配置、釋放、 讀取、及寫入之動作。 在本發明之一實施例中,虛擬記憶體管理單元更包括 緩衝器,用以暫時儲存欲寫入外部記憶體之資訊、以及 由外部記憶體中讀取之資訊。 201111991 在本發明之一實施例中,外部記憶體之規劃係以複數 個固疋地址將固定區塊劃分為複數個子固定區&,以供虛 擬。己隐體官理單兀依據複數個固定地址對複數個子固定區 塊執行配置、釋放'讀取、及寫人之動作。 在本發明之一實施例中,固定區塊係以資料結構之技 術而建構,以由虛擬記憶體管理單元對固定區塊執行添 加刪除、比較、搜尋之動作。在一實施例中,固定區塊 係以鏈結串列建構。 【實施方式】 "月先照圖1 ’圖1係本發明之處理器之外部記憶體之虛 擬化存取系統之示意圖,其係包括處理器i、以及外部記憶 體2處理益1包括操作單元n、内部記憶體、以及虛擬 記憶體管理單元丨3’外部記憶體2經規劃為非固定區塊I 以及固定區塊22,虛擬記憶體管理單元13包括緩衝器i3i。 ”中’ #作早7L 11用以處理程式及進行運算,以及對控制 t令Ϊ行判斷並將其傳送至内部記憶㈣、或虚擬記憶體 官理早兀13 ’以對内部記憶體12執行配置、釋放、讀取及 寫入的動作、或由虛擬記憶體管理單元13進行處理;虛擬 記憶體管理單元13用以將所接收的控制命令轉換為控制信 破以對外部記憶體2騎動作,諸㈣㈣接收之配置命 令提供-配置編號以供使用者下達釋放、讀取及寫入命 令,對所接收的固定配置命令、固定釋放命令、固定讀取 叩令、及IU定^命令進行㈣以分料岐區塊22執行 201111991 配置、釋放、# XT* 配(/、及寫人的動作,並對所接收的非固定 寫:二定釋放命令、非固定讀取命令、及非固定 敗仃轉換以對非固定區塊21執行配置、釋放'讀 取、及寫入的動作·垣淑D。Μ …沾- 31用以暫時儲存欲寫入外部記 憶體2的-貝訊、以及由外部記憶體2中所讀取的資訊。 :青參照圖2’圖2係本發明之處理器之外部記憶體之虛 =化子取方法之流程圖,本發明之方法首先係將外部記憶 體2規劃為非固定ρ·换)(=Step (B) mm results in that the control command transmits the control command to the virtual memory tube for the external record = If«, and (D) the virtual memory management unit uses the control command Converted into a control material and transmitted to the material recall body, the material memory receives the side control signal and operates according to it. In the embodiment of the invention, the virtual memory management unit provides the configuration command according to the received configuration command. Numbered for release release, read and write commands. In one embodiment of the invention, the virtual memory management unit is configured to receive the fixed configuration command, the fixed release command, the fixed read command, and the fixed write. The input command is converted to perform configuration, release, read, and write operations on the fixed block, and the received non-fixed configuration command, non-fixed release command, non-fixed read command, and non-fixed The write command performs a conversion to perform a configuration, release, read, and write operation on the non-fixed block. In one embodiment of the present invention, the virtual memory management unit A buffer is included for temporarily storing information to be written to the external memory and information read from the external memory. 201111991 In an embodiment of the present invention, the external memory is planned by a plurality of fixed addresses. The fixed block is divided into a plurality of sub-fixed areas & for virtual. The hidden body official unit performs configuration on a plurality of sub-fixed blocks according to a plurality of fixed addresses, and releases the 'read, write and write actions. In an embodiment of the present invention, the fixed block is constructed by the technology of the data structure, so that the virtual memory management unit performs an action of adding, deleting, comparing, and searching for the fixed block. In an embodiment, the fixed block is fixed. The embodiment is constructed by a chain of links. [Embodiment] FIG. 1 is a schematic diagram of a virtualized access system of an external memory of a processor of the present invention, which includes a processor i and an external The memory 2 processing benefit 1 includes an operation unit n, an internal memory, and a virtual memory management unit 丨 3 'the external memory 2 is planned as a non-fixed block I and a fixed block 22, virtual The memory management unit 13 includes a buffer i3i. The "middle" #7 early 7L 11 is used to process the program and perform operations, and to determine the control command and transmit it to the internal memory (4), or the virtual memory officially.兀13' is performed by performing an operation of arranging, releasing, reading, and writing to the internal memory 12, or by the virtual memory management unit 13; the virtual memory management unit 13 is configured to convert the received control command into a control The letter breaks the external memory 2 riding action, and the (four) (four) receiving configuration commands provide a configuration number for the user to release the release, read and write commands, the received fixed configuration command, the fixed release command, and the fixed read. The command and the IU determine the command to perform (4) to perform the 201111991 configuration, release, #XT* allocation (/, and the write action of the person in the split block 22, and to receive the non-fixed write: the second release command, The non-fixed read command and the non-fixed failover are performed to perform configuration on the non-fixed block 21, and release the 'read, write, and write actions.沾 ... 沾 - 31 is used to temporarily store the -besue to be written to the external memory 2, and the information read from the external memory 2. FIG. 2 is a flow chart of the method of taking the virtual memory of the external memory of the processor of the present invention. The method of the present invention firstly plans the external memory 2 to be non-fixed.

疋&鬼21、以及固定區塊22(步驟S1),當使 用者下達控制命令’操作單元η接收並對控制命令進行判 斷(步驟S2)’若其判斷結果為控制命令係針對内部記憶體 12則操作單元! j將控制命令傳送至内部記憶體η,並依 其對内部記憶體12執行動作(步驟S3),若其判斷結果為控制 命令係針對外冑記憶體2,則操作將控料令傳送至 虛擬。己憶體官理單元13(步驟S4),虚擬記憶體管理單元j3 將控制命令轉換為控制信號並傳送至外部記憶體2,外部記 隱體2接收控制信號並依其進行動作(步驟$ $ )。 使用者所下達的控制命令’較佳係為固定配置命令 (Mem一Fix_Alloc)、固定釋放命令(Mem_Fix—Free)、固定讀 取命令(Mem_Fix_Read)、固定寫入命令(Mem_Fix—Write)、 非固定配置命令(Mem_Var_Alloc)、非固定釋放命令 (Mem Var一Free)、非固定讀取命令(Mem_Var一Read)、非固 定寫入命令(Mem—Var_Write)。 當使用者下達一固定配置命令時,操作單元U接收並 進行判斷,然後將此固定配置命令傳送至虛擬記憶體管理 201111991 單元13 ;虛擬記憶體管理單元13建立一配置編號,並將此 固定配置命令轉換為一控制信號,其中包括所建立的配置 編號’然後將此控制信號傳送至外部記憶體2 ;外部記憶體 2接收此控制彳5號’並於固定區塊2 2中對配置編號配置相對 應的一配置空間。 當使用者下達一固定釋放命令時,操作單元u接收並 進行判斷,然後將此固定釋放命令傳送至虛擬記憶體管理 單元13;虛擬記憶體管理單元13將此固定釋放命令轉換為 一控制信號,然後將此控制信號傳送至外部記憶體2 ;外部 記憶體2接收此控制信號並於固定區塊22中執行其所相對 應之空間的釋放。 當使用者下達一固定讀取命令時,操作單元u接收並 ,行判斷,錢將此岐讀#命令傳送至虛擬記憶體管理 早疋13 ;虛擬記憶體管理單元13將此固定讀取命令轉換為 —控制信號並傳送至外部記憶體2 ;外部記憶體2接收此控 制信號並依其於固定區塊22中進行讀取1後將所讀取出 的資訊暫時儲存於緩衝器131中;虛擬記憶體管理單元㈣ 暫存於緩衝器131中的資訊傳送至操作單元u。 當使用者下達-固定寫入命令時,操作單元"接收並 ,行判斷1後將此固定寫人命令傳送至虛擬記憶體管理 早凡13 ;虛擬記憶體管理單元13將此固定寫入命令中所欲 :入的資訊暫存於緩衝器131中,然後將此固定寫入命令轉 換為一控制信號並傳送至外部記憶體2 ;外部記憶體2接收 201111991 此控制信號,並依其將緩衝器131中的資訊寫入固定區塊22 中。 當使用者下達一非固定配置命令時,操作單元n接收 並進行判斷,然後將此非固定配置命令傳送至虛擬記憶體 管理單元13;虛擬記憶體管理單元13建立—配置編號,並 將此固定配置命令轉換為一控制信號,其中包括所建立的 配置編號,然後將此控制信號傳送至外部記憶體2 ;外部記 憶體2接收此控制信號,並於非固定區塊以中對配置編號配 攀置相對應的一配置空間。 當使用者下達一非固定釋放命令時,操作單元n接收 =進=判斷,然後將此非固定釋放命令傳送至虛擬記憶體 s理單元13;虛擬記憶體管理單元13將此非固定釋放命令 轉換為一控制信號,然後將此控制信號傳送至外部記憶體 2 ;外部記憶體2接收此控制信號並於非固定區塊21中執行 其所相對應之空間的釋放。 當使用者下達一非固定讀取命令時,操作單元u接收 • 並進行判斷,然後將此非固定讀取命令傳送至虛擬記憶體 管理單元13 ;虛擬記憶體管理單元13將此非固定讀取命令 轉換為一控制信號並傳送至外部記憶體2 ;外部記憶體2接 收此控制信號並依其於非固定區塊21中進行讀取然後將 所讀取出的資訊暫時儲存於緩衝器131中;虛擬記憶體管理 單元13將暫存於緩衝器131中的資訊傳送至操作單元n。 §使用者下達一非固定寫入命令時,操作單元11接收 並進行判斷,然後將此非固定寫入命令傳送至虛擬記憶體 201111991 笞理單元13,虛擬記憶體管一 中所欲寫入的資吨暫“。心將此非固定寫入命令 、Λ暫存於緩衝器13ι 缺 入命令轉換為—控制 Τ,,,、後將此非固疋寫 ^ 。唬並傳迗至外部記憶體2;外部記# 體2接收此㈣錢,絲魏 = 固定區塊21中。 丫叼貝Λ冩入非 ^參照圖3,圖3係本發明之處理器之外部記憶體之虛 η操作範例。利用本發明之系統,使用者可 求’以類似於直接存取處理器的内部記憶體12的方 式下達命令以由處理器對外部記憶體2進行存取。如圓3所 不’首先直接宣告變數及緩衝器,㈣下達—非固定配置 :令Mem—Var_Alloc以取得一整數空間,接著下達一非固定 讀取命令Mem一Var_Read以讀取外部記憶體中的f料,最後 下達一非固定寫入命令Mem一Var—Write以將資料寫入外部 記憶體。 使用者亦可由本發明之系統對處理器的外部記憶體2 進行官理,請參照圖4A及圖4B,圖4A及圖4B係本發明之處 理器之外部記憶體之虛擬化存取系統之固定區塊22之管理 之不意圖。請先參照圖4A,使用者可用地址來對固定區塊 22進行管理’其較佳係以複數個固定地址將固定區塊22劃 分為複數個子固定區塊221,以供虛擬記憶體管理單元丨3依 據複數個固定地址對所劃分出的複數個子固定區塊221執 行配置、釋放、讀取、及寫入之動作。舉例來說,固定區 塊22的大小為η位元’取整數的log2(n)地址位元後的地址來 作ID,比方當n=21,整數的log2(21)是5,則可將地址表示 201111991 為Idxxxxx ’而若1D為1,則100000即為存放ID為1的子固定 區塊221的啟始位置。請參照圖4B,固定區塊22亦可以例如 鏈結串列(link list)等的資料結構的技術進行建構,以由虛 擬記憶體管理單元13對固定區塊22執行添加、刪除、比較、 搜尋等的動作。 由前述說明可知,相較於習知使用者必須熟悉新增的 外部記憶體、或先對用以簡化存取過程的方法進行瞭解後疋 & ghost 21, and fixed block 22 (step S1), when the user releases the control command 'operation unit n receives and judges the control command (step S2)' if the result of the determination is that the control command is for the internal memory 12 operating units! j transmits a control command to the internal memory η, and performs an action on the internal memory 12 according to it (step S3). If the result of the judgment is that the control command is for the external memory 2, the operation transmits the control command to the virtual . The memory unit 13 (step S4), the virtual memory management unit j3 converts the control command into a control signal and transmits it to the external memory 2, and the external body 2 receives the control signal and operates according to it (step $$) ). The control command issued by the user is preferably a fixed configuration command (Mem-Fix_Alloc), a fixed release command (Mem_Fix-Free), a fixed read command (Mem_Fix_Read), a fixed write command (Mem_Fix-Write), and a non-fixed command. Configuration command (Mem_Var_Alloc), non-fixed release command (Mem Var-Free), non-fixed read command (Mem_Var-Read), non-fixed write command (Mem-Var_Write). When the user issues a fixed configuration command, the operation unit U receives and determines, and then transfers the fixed configuration command to the virtual memory management 201111991 unit 13; the virtual memory management unit 13 establishes a configuration number, and fixes the configuration The command is converted into a control signal including the established configuration number 'and then this control signal is transmitted to the external memory 2; the external memory 2 receives the control number 5' and configures the configuration number in the fixed block 2 2 Corresponding to a configuration space. When the user issues a fixed release command, the operation unit u receives and determines, and then transmits the fixed release command to the virtual memory management unit 13; the virtual memory management unit 13 converts the fixed release command into a control signal. This control signal is then transmitted to the external memory 2; the external memory 2 receives the control signal and performs the release of its corresponding space in the fixed block 22. When the user issues a fixed read command, the operation unit u receives and judges, and the money transfers the read # command to the virtual memory management early 13; the virtual memory management unit 13 converts the fixed read command The control signal is transmitted to the external memory 2; the external memory 2 receives the control signal and performs reading 1 in the fixed block 22, and temporarily stores the read information in the buffer 131; The memory management unit (4) temporarily stores the information stored in the buffer 131 to the operation unit u. When the user releases the fixed write command, the operation unit " receives and judges 1 and transfers the fixed write command to the virtual memory management 13; the virtual memory management unit 13 writes the fixed write command The desired information is temporarily stored in the buffer 131, and then the fixed write command is converted into a control signal and transmitted to the external memory 2; the external memory 2 receives the control signal of 201111991 and buffers it accordingly. The information in the device 131 is written in the fixed block 22. When the user issues a non-fixed configuration command, the operation unit n receives and makes a judgment, and then transfers the non-fixed configuration command to the virtual memory management unit 13; the virtual memory management unit 13 establishes a configuration number and fixes the The configuration command is converted into a control signal, which includes the established configuration number, and then the control signal is transmitted to the external memory 2; the external memory 2 receives the control signal, and the configuration number is matched in the non-fixed block. Set a corresponding configuration space. When the user issues a non-fixed release command, the operation unit n receives === judgment, and then transfers the non-fixed release command to the virtual memory processing unit 13; the virtual memory management unit 13 converts the non-fixed release command As a control signal, this control signal is then transmitted to the external memory 2; the external memory 2 receives the control signal and performs the release of its corresponding space in the non-fixed block 21. When the user issues a non-fixed read command, the operating unit u receives and determines, and then transfers the non-fixed read command to the virtual memory management unit 13; the virtual memory management unit 13 reads the non-fixed read The command is converted into a control signal and transmitted to the external memory 2; the external memory 2 receives the control signal and reads in the non-fixed block 21 and then temporarily stores the read information in the buffer 131. The virtual memory management unit 13 transfers the information temporarily stored in the buffer 131 to the operation unit n. § When the user issues a non-fixed write command, the operating unit 11 receives and determines, and then transfers the non-fixed write command to the virtual memory 201111991 processing unit 13, which is to be written in the virtual memory tube 1.资吨 temporarily ". Heart this non-fixed write command, Λ temporarily stored in the buffer 13ι missing command converted to - control Τ,,, then write this non-solid ^ ^ 唬 and pass it to the external memory 2; external note # body 2 receives this (four) money, silk Wei = fixed block 21. 丫叼贝Λ冩入不^ Refer to Figure 3, Figure 3 is the virtual η operation example of the external memory of the processor of the present invention With the system of the present invention, the user can ask for a command to access the external memory 2 by a processor in a manner similar to directly accessing the internal memory 12 of the processor. For example, the circle 3 does not directly Declare variables and buffers, (4) Release - non-fixed configuration: Let Mem-Var_Alloc get an integer space, then issue a non-fixed read command Mem-Var_Read to read the f material in the external memory, and finally release a non-fixed Write command Mem-Var-Write The data can be written into the external memory. The user can also use the system of the present invention to manage the external memory 2 of the processor. Referring to FIG. 4A and FIG. 4B, FIG. 4A and FIG. 4B are external memories of the processor of the present invention. The management of the fixed block 22 of the virtualized access system is not intended. Referring first to FIG. 4A, the user can manage the fixed block 22 by using an address, which is preferably a fixed block with a plurality of fixed addresses. 22 is divided into a plurality of sub-fixed blocks 221 for the virtual memory management unit 执行3 to perform configuration, release, read, and write operations on the plurality of divided sub-fixed blocks 221 according to the plurality of fixed addresses. For example, the size of the fixed block 22 is an address of the η-bit 'taken the integer log2(n) address bit, for example, when n=21, and the integer log2(21) is 5, the address can be It is indicated that 201111991 is Idxxxxx ' and if 1D is 1, 100000 is the starting position of the sub-fixed block 221 storing the ID 1. Referring to FIG. 4B, the fixed block 22 may also be, for example, a link list. The structure of the data structure is constructed to The pseudo memory management unit 13 performs an operation of adding, deleting, comparing, searching, etc. to the fixed block 22. As can be seen from the foregoing description, the user must be familiar with the newly added external memory or the first pair to simplify After understanding the method of accessing the process

才能下達指令,本發明;需切花f時間及精神而可直接 以類似存取内部記憶體的方式下達命令,卩由處理器對其 外部記憶體進行存取’對使用者來說相當方便。另外,本 發明更可㈣制相需求1料表格或㈣結構的方 式對外部記憶體的結構進行切割或管理,更能以提升外部 記憶體的存取效率。 上述實施例僅係為了方俤约ηΒ二m ,丨 乃便說明而舉例而已,本發明所 主張之權利範圍自應以申請專 月寻利乾圍所述為準,而非僅限 於上述實施例。 ΓIn order to be able to issue instructions, the present invention; it takes a lot of time and effort to directly issue commands in a manner similar to accessing internal memory, and accessing the external memory by the processor is quite convenient for the user. In addition, the present invention can cut or manage the structure of the external memory by (4) phase requirement 1 material table or (4) structure mode, and can improve the access efficiency of the external memory. The above embodiments are only for the purpose of illustration and description, and the scope of the claims claimed herein is based on the application of the special month, and is not limited to the above embodiments. . Γ

【圖式簡單說明】 之外部記憶體之虛擬化存取系 統之 圖1係本發明之處理器 示意圖。 圖2係本發明之處理器之外部 流程圖。 圖3係本發明之處理器之外部 操作範例。 記憶體之虛擬化存取方法之 記憶體之虛擬化存取系 統之 201111991 圖4A及圖4B係本發明之處理器之外 a 取系統之固定區塊之管理夕_立 。s己憶體之虛擬化存 <不意圖。 【主要元件符號說明】 1處理器 12内部記憶體 11操作單元 131緩衝器 13 虛擬記憶體管理單元 21不固定區塊 2外部記憶體 221固定子區塊 22固定區塊BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic diagram of a processor of the present invention. Figure 2 is an external flow diagram of the processor of the present invention. Fig. 3 is an external operation example of the processor of the present invention. Memory Virtualization Access Method of Memory Virtualization Access System 201111991 Figures 4A and 4B are outside the processor of the present invention a. The management of the fixed block of the system is taken. s memory of virtual memory <not intended. [Main component symbol description] 1 processor 12 internal memory 11 operation unit 131 buffer 13 virtual memory management unit 21 unfixed block 2 external memory 221 fixed sub-block 22 fixed block

Sl~S5步驟 φSl~S5 step φ

1212

Claims (1)

201111991 七、申請專利範圍: 1. 一種處理器之外加 卜。P記憶體之虛擬化存取系統,包 括: 一外部記憶體,係姑 '人規劃為一固定區塊、以及一非固 定區塊;以及 & # u 一處理器,包括—命* 内。P記憶體、一操作單元、以及一 虛擬記憶體管理單元,复占#上 ”中S亥虛擬記憶體管理單元俦用 將所接收之-控制命令辕Μ “…’凡係用以 奐為一控制k號以對該外部記惟 體進行動作,該操作單元用以處理程式及進行運算以^ 對該控制命令進行判斷並將其傳送至該内部記憶體、或咳 虛擬記憶體官理單元’以對該内部記憶體執行配置、釋放、 讀取及寫人之動作、或由該虛擬記㈣管理單元進行處理。 2·如申請專利範圍第1所述之系統,其中 憶體管理單线所接收之配置命令提供—配置編號以^ 達釋放、讀取及寫入命令。 3. 如申請專利範圍第〗項所述之系統,其中該虛擬纪 憶體管理單元更包括一緩衝器’用卩暫時儲存欲寫入該外 部記憶體之資訊、以及由該外部記憶體中讀咨1 § < W訊。 4. 如申請專利範圍第1項所述之系統,其中該声^ 憶體管理單元係用以對所接收之固定配罟A Α 擬。己 •a* °P 7、固定釋放 命令、固定讀取命令 '及固定寫入命令進行轉換,以八 對該固定區塊執行配置、釋放、讀取、;5奁χ 刀1J 久禺入之動作,以 及對所接收之非固定配置命令、非固定釋放命八 飞 非固定 13 201111991 讀取命令'及非@定寫人命令進行轉換’以對該非固定區 塊執行配置、釋放、讀取'及寫入之動作。 5.如申請專利範圍第1項所述之系統,其中該外部記 憶體之規劃係以複數個®定地址將該固㈣塊劃^為複數 個子固定區塊’以供該虛擬記憶體管理單核據該複數個 固定地址對該複數個子固定區塊執行配置、釋放、讀取、 及寫入之動作。 6·如申請專利範圍^項所述之系統,其中該固定區 塊係以資料結構之技術而建構’以由該虛擬記憶體管理單 兀對該固定區塊執行添加、刪除、比較 '搜尋之動作。 7.如申請專利_第6項所述之系統,其中該固定 塊係以鏈結串列建構。 ^ 8.—201111991 VII. Patent application scope: 1. A processor is added. The virtual access system of the P memory includes: an external memory, the person is planned to be a fixed block, and a non-fixed block; and &# u a processor, including - life*. P memory, an operation unit, and a virtual memory management unit, the re-occupation #上"中SVirtual memory management unit uses the received control command 辕Μ "..." Controlling the k number to operate on the external logger, the operating unit is configured to process the program and perform an operation to determine the control command and transmit the control command to the internal memory or the cough virtual memory official unit The internal memory is configured, released, read, and written, or processed by the virtual (4) management unit. 2. The system of claim 1, wherein the configuration command received by the memory management line provides a configuration number to release, read, and write commands. 3. The system of claim 1, wherein the virtual memory management unit further comprises a buffer for temporarily storing information to be written to the external memory and reading from the external memory. Consultation 1 § < W News. 4. The system of claim 1, wherein the voice management unit is adapted to receive the fixed configuration A. ••a* °P 7, fixed release command, fixed read command 'and fixed write command to convert, to perform configuration, release, read, and 5 for the fixed block; 5 刀 knife 1J for a long time Action, and the non-fixed configuration command received, the non-fixed release command, the non-fixed release command, the 2011111991 read command 'and the non-definite writer command to convert' to perform configuration, release, and read on the non-fixed block. And the action of writing. 5. The system of claim 1, wherein the planning of the external memory is to divide the solid block into a plurality of sub-fixed blocks for the virtual memory management list by using a plurality of addresses. The action of configuring, releasing, reading, and writing to the plurality of sub-fixed blocks is performed according to the plurality of fixed addresses. 6. The system of claim 2, wherein the fixed block is constructed by a technique of data structure to perform addition, deletion, and comparison of the fixed block by the virtual memory management unit. action. 7. The system of claim 6, wherein the fixed block is constructed in a chain. ^ 8.- 種™,之外部記憶體之虛擬化存取系心 仃子取之方法’该糸統包括一外部記憶體、以及一處理 其中該處理器包括-内部記憶體、一操作單元 ^記憶體管料元,㈣料元^處卿式及料 :、以及對所接收之命令進行判斷並將其傳送至該内 憶體、或該虛擬記憶體管理單元,該方法包括下列步驟^ ⑷將該外部記憶體規㈣1 =職作單元接收-控制命令,並對該控制命令 二情結果為該控制命令係針對該内部記憶體 對^早兀將該控制命令傳送至該内部記憶體,並依 對4内部記憶體執行動作; 14 201111991 :£H:F=::=== 官理單元將該控制命令轉換為一控 5己憶體’該外部記憶體接收該控制 八传為口 範圍第8項所述之方法,其中該控制命TM, the virtual memory of the external memory, the method of taking the core device, the system includes an external memory, and a processing in which the processor includes - internal memory, an operating unit ^ memory tube And (4) the material element and the material: and the judgment of the received command and transmitted to the internal memory, or the virtual memory management unit, the method includes the following steps ^ (4) the external memory Body gauge (4) 1 = job unit receives - control command, and the result of the control command is that the control command is for the internal memory pair to send the control command to the internal memory, and the internal control is Memory execution action; 14 201111991 : £H:F=::=== The official unit converts the control command into a control 5 memory. The external memory receives the control and the eighth transmission is the eighth item. Method of controlling the life 7係為一固定配置命令,且步驟(D)包括: 制二L:虛擬5己憶體管理單元建立該配置編號,將該控 哕㈣,丨作味為該控制化號,其中包括該配置編號,然後將 傳运至該外部記憶體;該外部記憶體接收該控 罢“,’朗該配置編號配置該固定區塊中 一配 置空間。 +π專範圍第8項所述之方法,其中該控制命 令係為-非固定配置命令,且步驟(D)包括: ⑼該虛擬記㈣管理單域立置編號,將該控7 is a fixed configuration command, and step (D) includes: system 2: the virtual 5 memory management unit establishes the configuration number, and the control (4) is used as the control number, including the configuration. The number is then transferred to the external memory; the external memory receives the control, and the configuration number is configured to configure a configuration space in the fixed block. The control command is a non-fixed configuration command, and the step (D) includes: (9) the virtual record (4) manages the single domain stand number, and the control (D)该虛擬記憶體 制信號並傳送至該外部 偽號並依其進行動作。 制換為該控制仏號,其中包括該配置編號,然後將 。《制u傳送至該外部記憶體;該外部記憶體接收該控 制l號ϋ對该西己置編號配置該非固定區塊中相對應之一 配置空間。 11.如申凊專利範圍第8項所述之方法其中該控制命 令係為-固定釋放命令,且步驟(D)包括: (D) β虛擬$憶體管理單元將該控制命令轉換為該控 制U並將該控制信號傳送至該外部記憶體,該外部記 15 201111991 u體接收4控制㈣並依其執行制定區塊中之空間之釋 放。 12. 如申。月專利知圍第8項所述之方法,其中該控制命 令係為一非固定釋放命令,且步驟(D)包括: ⑼該虛擬記憶體管理單元將該控制命令轉換為該控 制信號,並將馳制錢料至該料記㈣,該外部記 憶體接收龍制錢並依其執行該非固定區塊中之空間之 釋放。 13. 如申請專利範圍第8項所述之方法,其中該虛擬記 憶體管理單元更包括一緩衝器,用以暫時儲存欲寫入該外 部記憶體之資訊、以及由該外部記憶體中讀取之資訊。 14. 如申請專利範圍第13項所述之方法’其中該控制 命令係為一固定讀取命令,且步驟(D)包括下列步驟: (D1)該虛擬記憶體管理單元將該控制命令轉換為一 控制信號並傳送至該外部記憶體,該外部記憶體接收該控 制信號並依其於該固定區塊中進行讀取; (D2)該外部記憶體將所讀取出之資訊暫時儲存於該 緩衝器中;以及 (D3)該虛擬記憶體管理單元將暫存於該緩衝器中之 資§11傳送至該操作單元。 15. 如申請專利範圍第13項所述之方法,其中該控制 命令係為一非固定讀取命令,且步驟(D)包括下列步驟: 201111991 擬記憶體管理單元將該控制命令轉換為- 二至該外部記憶體’該外部記憶體接收該控 制k唬並依其於該非固定區塊中進行讀取 緩衝憶想將所讀取出之資訊暫時储存於該 一(D3)該虛擬記憶體管理單元將暫存於該緩衝器中之 資訊傳送至該操作單元。(D) The virtual memory signal is transmitted to the external pseudo-number and operates accordingly. Change to the control apostrophe, which includes the configuration number, and then . The system u transfers to the external memory; the external memory receives the control number 1 and configures the west to set a corresponding configuration space in the non-fixed block. 11. The method of claim 8, wherein the control command is a fixed release command, and the step (D) comprises: (D) the beta virtual $ memory management unit converts the control command into the control U and the control signal is transmitted to the external memory, the external record 15 201111991 u body receives 4 control (4) and according to its execution to make the release of the space in the block. 12. If you apply. The method of claim 8, wherein the control command is a non-fixed release command, and the step (D) comprises: (9) the virtual memory management unit converts the control command into the control signal, and The money is rushed to the material (4), and the external memory receives the dragon money and executes the release of the space in the non-fixed block. 13. The method of claim 8, wherein the virtual memory management unit further comprises a buffer for temporarily storing information to be written to the external memory and reading from the external memory. Information. 14. The method of claim 13, wherein the control command is a fixed read command, and the step (D) comprises the following steps: (D1) the virtual memory management unit converts the control command into a control signal is transmitted to the external memory, the external memory receives the control signal and reads in the fixed block; (D2) the external memory temporarily stores the read information in the And (D3) the virtual memory management unit transfers the asset §11 temporarily stored in the buffer to the operating unit. 15. The method of claim 13, wherein the control command is a non-fixed read command, and the step (D) comprises the following steps: 201111991 The memory management unit converts the control command to -2 Up to the external memory, the external memory receives the control and performs a read buffer in the non-fixed block to temporarily store the read information in the (D3) virtual memory management The unit transmits information temporarily stored in the buffer to the operating unit. 16.如申。月專利範圍第】3項所述之方法,其中該控 命令係為該固^寫人命令,且步驟⑼包括下列步驟: (D1)該虛擬記憶體管理單元將該控制命令中之所欲 寫入之資訊暫存於該緩衝器中; (D2)該虛擬記憶體管理單元將該控制命令轉換為一 控制信號並傳送至該外部記憶體;以及 (D3)該外部記憶體接收該控制信號,並依其將該緩衝 器中之資訊寫入該固定區塊。 17 ·如申請專利範圍第13項所述之方法,其中該控制 命令係為該非固定寫入命令,且步驟(D)包括下列步驟: (D1)該虛擬記憶體管理單元將該控制命令中之所欲 寫入之資訊暫存於該緩衝器中; (D2)該虛擬記憶體管理單元將該控制命令轉換為— 控制信號並傳送至該外部記憶體;以及 (D3)該外部記憶體接收該控制信號,並依其將該緩衝 器中之資訊寫入該非固定區塊。 17 201111991 二申請專利範圍第8項所述之方法,其中該外部記 係以複數個固^地址將該以區塊劃分為複數 =广區塊,以供該虛擬記憶體管理單元依據該複數個 二地址對該複數個子固定區塊執行配置、釋放、讀取、 及寫入之動作。 塊請專利範圍第8項所述之方法,其中該固定區 構’…該虛擬記憶體管理單 兀…*疋區塊執仃添加、刪除、比較、搜尋之動 20.如中請專利範圍第19項所述之方法,其° 區塊係以鏈結串列建構。 。豕U疋16. If you apply. The method of claim 3, wherein the control command is the write command, and the step (9) comprises the following steps: (D1) the virtual memory management unit writes the control command The input information is temporarily stored in the buffer; (D2) the virtual memory management unit converts the control command into a control signal and transmits the control signal to the external memory; and (D3) the external memory receives the control signal, And according to the information in the buffer is written into the fixed block. The method of claim 13, wherein the control command is the non-fixed write command, and the step (D) comprises the following steps: (D1) the virtual memory management unit is in the control command The information to be written is temporarily stored in the buffer; (D2) the virtual memory management unit converts the control command into a control signal and transmits to the external memory; and (D3) the external memory receives the Controlling the signal and writing the information in the buffer to the non-stationary block. The method of claim 8, wherein the external record divides the block into a plurality of blocks by a plurality of fixed addresses, for the virtual memory management unit to use the plurality of blocks. The second address performs the operations of configuring, releasing, reading, and writing to the plurality of sub-fixed blocks. Please refer to the method described in the eighth item of the patent scope, wherein the fixed area structure '...the virtual memory management unit...*疋 block is added, deleted, compared, searched. In the method of item 19, the ° block is constructed in a chain. .豕U疋
TW98132035A 2009-09-23 2009-09-23 Memory access system and method for virtualizing off-chip memory of a processor TW201111991A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW98132035A TW201111991A (en) 2009-09-23 2009-09-23 Memory access system and method for virtualizing off-chip memory of a processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW98132035A TW201111991A (en) 2009-09-23 2009-09-23 Memory access system and method for virtualizing off-chip memory of a processor

Publications (1)

Publication Number Publication Date
TW201111991A true TW201111991A (en) 2011-04-01

Family

ID=44909088

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98132035A TW201111991A (en) 2009-09-23 2009-09-23 Memory access system and method for virtualizing off-chip memory of a processor

Country Status (1)

Country Link
TW (1) TW201111991A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110858128A (en) * 2018-08-23 2020-03-03 慧荣科技股份有限公司 Data storage device and method for sharing memory in a controller

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110858128A (en) * 2018-08-23 2020-03-03 慧荣科技股份有限公司 Data storage device and method for sharing memory in a controller
TWI703499B (en) * 2018-08-23 2020-09-01 慧榮科技股份有限公司 Data storage device and method for sharing memory of controller thereof
US11334415B2 (en) 2018-08-23 2022-05-17 Silicon Motion, Inc. Data storage device and method for sharing memory of controller thereof
CN110858128B (en) * 2018-08-23 2023-04-18 慧荣科技股份有限公司 Data storage device and method for sharing memory in controller

Similar Documents

Publication Publication Date Title
JP7252789B2 (en) FPGA-based acceleration module and system for SSD and method of operation
US9727503B2 (en) Storage system and server
KR102403489B1 (en) Method of managing input/output (i/o) queues by non volatile memory express (nvme) controller
US9696942B2 (en) Accessing remote storage devices using a local bus protocol
US10402335B2 (en) Method and apparatus for persistently caching storage data in a page cache
TWI702500B (en) System, method and article for using multi-streaming
CN102411549A (en) Memory system, host controller and method for controlling DMA
CN111108487B (en) Hypervisor direct memory access
CN103870312B (en) Establish the method and device that virtual machine shares memory buffers
CN109871182A (en) Storage device and its operating method and the method for issuing order
KR20210035910A (en) Memory sub-system supporting non-deterministic commands
JP5287301B2 (en) Descriptor transfer device, I/O controller, and descriptor transfer method
CN110275840A (en) Distributed process on memory interface executes and file system
CN116431528A (en) Low-latency input data staging for running kernels
KR101636878B1 (en) Method and driver for processing data in virtualization
CN108647278B (en) A file management method and system
US9760577B2 (en) Write-behind caching in distributed file systems
CN117472273A (en) Data reading and writing method, device and storage medium
CN104793892B (en) A method of accelerating disk stochastic inputs output (IO) read-write
CN110515861B (en) Memory device for processing flash command and method thereof
TW201111991A (en) Memory access system and method for virtualizing off-chip memory of a processor
WO2017072868A1 (en) Storage apparatus
TW202203016A (en) Key value storage device and method for sorting key
EP3136245B1 (en) Computer
KR20240032680A (en) Systems and methods for integrating fully homomorphic encryption(fhe) with a storage device