TWI402673B - 記憶體控制器件和資訊處理裝置 - Google Patents
記憶體控制器件和資訊處理裝置 Download PDFInfo
- Publication number
- TWI402673B TWI402673B TW098116747A TW98116747A TWI402673B TW I402673 B TWI402673 B TW I402673B TW 098116747 A TW098116747 A TW 098116747A TW 98116747 A TW98116747 A TW 98116747A TW I402673 B TWI402673 B TW I402673B
- Authority
- TW
- Taiwan
- Prior art keywords
- address
- data
- area
- memory
- address value
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 157
- 230000010365 information processing Effects 0.000 title claims abstract description 12
- 238000000547 structure data Methods 0.000 claims description 40
- 239000000463 material Substances 0.000 claims description 19
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 24
- 238000012545 processing Methods 0.000 description 23
- 230000000694 effects Effects 0.000 description 8
- 238000012546 transfer Methods 0.000 description 5
- 239000003086 colorant Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Image Input (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本發明係關於一記憶體控制器件,且更特定言之,係關於一記憶體控制器件及一資訊處理裝置,其經組態以根據一記憶體之一位址值來執行位址轉換。
在影像處理中,像素資料(其係關於一影像之每一像素之明亮度或顏色之資訊)可被表達為結構資料。例如,一像素之像素資料被分類成指示所關注之像素之明亮度的明亮度分量及指示所關注之像素之顏色的一顏色分量。顏色分量可被分成各自顏色之分量。
假使待以上述之結構資料來執行資料處理,則可能需要從一記憶體讀出資料至一處理器內,以自所讀取之該資料中擷取元素資料以用於執行處理,且因此由於強加於處理器的負載及執行處理之時間將增加而可能存在一問題。另外,由於所需之資料係在該資料被讀出至該處理器內之後被擷取,所以非執行處理所需之資料亦連同該所需資料暫時經由匯流排被傳送,致使可能存在一問題在於由於該匯流排之存取容量將增加。
因此,為減少於上述處理中待執行的算術運算量,已提議一種器件,在該器件中之一算術單元被安裝於一匯流排中以用於根據一位址來選擇算術構件,該算術單元經組態以對已使用一多位址讀出的資料執行一給定算術運算,(例如,參見日本專利特許公開案第08-36520號(圖式1))。
然而,在上述[先前技術]之實例中,藉由使用一實體位址而從一記憶體中所讀出的資料僅經受一算術運算且作為一單獨單元予以傳送,且難以處置構成結構資料之元素資料作為一單元。因而,其難以減少該匯流排之存取容量。另外,歸因於該算術單元安裝於該資料匯流排中,其可能缺乏靈活性。
本發明係已鑑於上文提及之情勢而設想。因此,希望從所有待處置之結構資料中擷取特定之元素資料。
根據本發明之一實施例,提供一種資訊處理裝置,其包含:一記憶體,該記憶體經組態使得結構資料區域被分配給複數個記憶體庫,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成;一位址區域偵測單元,該位址區域偵測單元經組態以偵測用以存取該記憶體之一位址值是否被包含在一特定位址區域中,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,該位址轉換單元經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。結果,可導致操作效果而致使用以存取在一內部記憶體中之該特定位址區域之該位址值被轉換成用於該結構資料區域之該位址值,該記憶體係由該複數個記憶體庫構成。
根據上述之實施例,該複數筆元素資料可被封裝成一字,且複數個字之各者保存在該結構資料中作為一陣列之一元素,該複數個字可以逐字為基礎循序地分配給該複數個記憶體庫之不同記憶體庫,且該位址轉換單元經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值,以致使依一對一對應關係自該複數個記憶體庫同時存取經各自分配給該複數個記憶體庫的該結構資料中所包含之該複數筆元素資料。結果,可導致操作效果而致使對於存取該特定位址區域,依一對一對應關係自該複數個記憶體庫中同時存取該複數筆元素資料。
在上述實施例中,該裝置可進一步包含一寫入資料排序單元,其經組態以排序寫入資料使得,假使已偵測到該位址值係被包含在該特定位址區域中,則依一對一對應關係將與該結構資料大小相同之該寫入資料中所包含的元素資料寫入至該複數個記憶體庫中。結果,可導致操作效果而致使與該結構資料大小相同之該寫入資料中所包含的該元素資料依一對一對應關係被寫入至該複數個記憶體庫中。
在上述實施例中,該裝置可進一步包含一讀取資料排序單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則將依一對一對應關係自該複數個記憶體庫讀出的該元素資料作為與該結構資料大小相同之讀取資料。結果,可導致操作效果而致使供應依一對一對應關係自該複數個記憶體庫讀出的該元素資料來作為與該結構資料大小相同之讀取資料。
根據上述實施例,該結構資料可為一影像之像素資料,及該複數筆元素資料係關於該像素資料之一明亮度或一顏色的分量資料。在本發明之一實施例中,舉例而言,假定一Y分量指示出關於該像素資料之該明亮度,且分量R、G、B指示出關於該像素資料之該等顏色的分量資料。
根據本發明之另一實施例,提供一種記憶體控制器件,其包含:一位址區域偵測單元,其經組態以偵測存取一記憶體所使用之一位址值是否被包含在一特定位址區域中,該記憶體經組態使得結構資料區域被分配給複數個記憶體庫,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料之一位址值。結果,可導致操作效果,致使用以存取在該記憶體中之該特定位址區域之該位址值被轉換成用於該結構資料區域之該位址值,該記憶體係由該複數個記憶體庫構成。
根據本發明之一進一步之實施例,提供一種資訊處理裝置包含:一記憶體,其經組態使得分配結構資料區域,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成;一位址區域偵測單元,其經組態以偵測用以存取該記憶體之一位址值是否被包含在一特定位址區域中,該特定位址區域包含用以存取該複數筆元素資料之一位址;一位址轉換單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。結果,可導致操作效果,致使用以存取在一內部記憶體中之該特定位址區域之該位址值被轉換成用以該結構資料區域之該位址值。
根據本發明之一更進一步之實施例,提供一種記憶體控制器件,其包括:一位址區域偵測單元,其經組態以偵測存取一記憶體所使用之一位址值是否被包含在一特定位址區域中,該記憶體經組態使得分配結構資料區域,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,其經組態以假使已偵測到該位址係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。結果,可導致操作效果而致使用以存取在該記憶體中之該特定位址區域之該位址值被轉換成用於該結構資料區域之該位址值。
根據本發明,可獲得該等特定元素資料係一起自該結構資料予以擷取且予以處置之效果。
接下來,將參考該附圖以描述本發明之一較佳實施例。圖1係繪示根據本發明之一實施例之一種資訊處理裝置之一結構實例的方塊圖。該資訊處理裝置包含一影像處理器件100及一外部儲存單元200。該影像處理器件100經組態以對影像資料執行影像處理。該外部儲存單元200經組態以儲存待經受影像處理之影像資料。儲存於該外部儲存單元200之該影像資料係被提取至一記憶體內以對該影像資料執行影像處理,該記憶體係內建於該影像處理器件100中。該影像處理器件100包含一處理器110、一記憶體120、一記憶體控制單元130、一直接記憶體存取(DMA)控制單元140及一算術單元150。該處理器110、該記憶體120、該記憶體控制單元130、該DMA控制單元140及該算術單元150係經由一系統匯流排190相互連接。該外部儲存單元200亦連接至該系統匯流排190。
該處理器110經組態以執行用於影像處理執行所需之控制及算術運算。該記憶體120係經組態以保存待經受影像處理及工作區域之影像資料的一記憶體。該記憶體控制單元130經組態以控制對記憶體120之存取。該DMA控制單元140係一控制器,其經組態以控制在該外部儲存單元200與該記憶體120之間所執行的直接記憶體存取(DMA)之傳送。該算術單元150經組態以執行用於影像處理執行所需之控制及算術運算,且一般而言,其具有高於該處理器110的算術處理能力。該處理器110引起該算術單元150執行更高負載之算術運算以增加該影像處理器件100整體之處理效率。
根據本發明之一實施例,當待使用該資訊處理裝置來執行影像處理時,首先,從該外部儲存單元200傳送影像資料至該記憶體120。一般而言,在上述傳送中採用一DMA傳送系統。使用該DMA傳送系統之資料傳送係用該DMA控制單元140來控制。接著,假使待使用該處理器110來執行該影像資料中之算術運算,該算術運算使用一明亮度分量,則該明亮度分量從該記憶體120中被讀出至該處理器110。另一方面,假使待使用該算術單元150來執行該影像資料中之算術運算,該算術運算使用一顏色分量,則該顏色分量從記憶體120中被讀出至該算術單元150。
圖2係繪示根據本發明一實施例之一記憶體120及一記憶體控制單元130之一結構實例的方塊圖。
該記憶體120係由四個記憶體庫#0至#3(121至124)構成。該等記憶體庫#0至#3(121至124)之各者經組態以獨立操作且保存寬度為32個位元的複數個字。
該記憶體控制單元130包含一位址產生單元310、一寫入資料排序單元320及一讀取資料排序單元330。該位址產生單元310經組態以基於已輸入於其中的一位址A[15:0]產生待供應至各自記憶體庫#0至#3(121至124)之位址,該位址A[15:0]之寬度係16個位元。該寫入資料排序單元320經組態以排序已輸入其中之寫入資料WDATA[31:0]且將該已排序之資料供應至各自記憶體庫#0至#3(121至124),該寫入資料WDATA[31:0]之寬度係32個位元,該已排序資料之寬度為32個位元。該讀取資料排序單元330經組態以將自各自記憶體庫#0至#3(121至124)所讀出之該資料進行排序,且輸出該已排序之資料作為讀取資料RDATA[31:0],該讀取資料RDATA[31:0]之寬度為32個位元。
該位址產生單元310包含一位址區域偵測單元311及一位址轉換單元312。該位址區域偵測單元311經組態以偵測一位址區域,該位址區域由寬度為16個位元之該輸入位址A[15:0]指示。該位址轉換單元312經組態以在該位址偵測單元311偵測到該位址A[15:0]已被包含在一虛擬區域中時轉換該位址A[15:0]成用於一實體區域之一位址。
在圖2繪示之該實例中,使用該四個記憶體庫#0至#3(121至124)可實現寬度為128個位元之資料的同時存取。然而,寫入資料與讀取資料兩者皆被設定成寬度為32個位元之資料,使得該32個位元之寬度足以作為該系統匯流排190之資料寬度。接著,藉由有效率地供應資料至該系統匯流排的32位元資料區域,可實現有用之存取。
圖3係繪示根據本發明之一實施例之該記憶體120中位址與區域之間的一關係之一實例的圖表。在該實例中,自「0x0000」(「0x」意為隨後之數字係16進制,依此類推)至「0x3fff」之位址區域為實體區域,實體區域被分配作為實際保存資料之區域。另一方面,自「0x4000」至「0x7fff」之位址區域為虛擬區域,且於該等實體區域中映射該等虛擬區域之實體。
舉例而言,如圖4所示,假定影像資料中各個像素之像素資料係由四個分量之結構資料構成,即,由一指示明亮度之Y分量、一指示紅色像素值之R分量、一指示綠色像素值之G分量及一指示藍色像素值之B分量所構成。在此情形中,亦假定各個分量具有8個位元之寬度且該等分量構成總體寬度為32個位元D[31:0]之像素資料。在記憶體庫#0至#3(121至124)中,32位元像素資料被視為一個字之結構資料,並且以結構資料為單位來配置資料。因此,在該等實體區域中,根據記憶體庫#0至#3(121至124)中資料配置,以結構資料為單位來分配分量。
另一方面,在該等虛擬區域內,以像素資料之元素資料為單位來分配所有分量。即,8個位元寬之Y分量被相繼分配至自「0x4000」至「0x4fff」之位址區域;8個位元寬之R分量被相繼分配至自「0x5000」至「0x5fff」之位址區域;8個位元寬之G分量被相繼分配至自「0x6000」至「0x6fff」之位址區域;8個位元寬之B分量被相繼分配至自「0x7000」至「0x7fff」之位址區域。
圖5係繪示根據本發明之一實施例之元素資料、實體位址與虛擬位址之間的一對應關係之一實例的圖表。附帶言之,一實體位址代表用於一實體區域之一位址,且一虛擬位址代表用於一虛擬區域之一位址。
如上所述,以結構資料為單位來分配分量至實體區域中。因此,均根據該等實體位址之升序以順序Y0、R0、G0、B0、Y1、R1、G1、B1...分配元素資料。附帶言之,Yi係第i個像素資料之Y分量,Ri係第i個像素資料之R分量,Gi係第i個像素資料之G分量,Bi係第i個像素資料之B分量。
另一方面,在虛擬區域中各自分量係一起被分配且因此分配順序不同於實體區域之分配順序。換言之,Y0係被分配至一虛擬區域Y之頭位址「0x4000」,R0係被分配至一虛擬區域R之頭位址「0x5000」,G0係被分配至一虛擬區域G之頭位址「0x6000」及B0係被分配至一虛擬區域B之頭位址「0x7000」。同樣地,Y1係被分配至一虛擬區域Y之一位址「0x4001」,R1係被分配至一虛擬區域R之一位址「0x5001」,G1係被分配至一虛擬區域G之一位址「0x6001」及B1係被分配至一虛擬區域B之一位址「0x7001」。即,一個實體位址及一個虛擬位址被分配給各個元素資料。
圖6A及圖6B係繪示根據本發明之一實施例之元素資料與位址之間的一對應關係之實例的圖表。
如圖6A所繪示,在實體區域中,位址係以像素資料為單位予以分配且因此容許以像素資料為單位予以存取。舉例而言,假使位址「0x0000」已被指定,則容許同時存取32個位元之第0像素資料Y0、R0、G0及B0。
如圖6B所示,在虛擬區域中,位址係以元素資料為單位予以分配且因此容許以元素資料為單位予以存取。舉例而言,假使位址「0x4000」已被指定,則容許同時存取8位元Y分量Y0、Y1、Y2及Y3,該等分量寬度總計為32個位元。
如上所述,無論在實體區域或虛擬區域中,均容許存取32個位元寬之資料。換言之,假使使用像素資料作為結構資料以執行存取,則使用實體位址,而假使以元素資料為單位執行存取,則使用虛擬位址,藉此以容許無浪費地存取所需資料。
圖7A及圖7B係繪示根據本發明之一實施例之記憶體庫與位址之間的一對應關係之實例的方塊圖。
如圖7A所示,在記憶體庫#0至#3(121至124)之各者中,32位元像素資料被定義為一字之結構資料,且以結構資料為單位來配置資料。在此情形中,若在實體區域中以元素資料為單位來分配位址,,一較低序位之2位元位址A[1:0]將指示在各個記憶體庫中的一字中之一位址(一字中位址),一個2位元位址A[3:2]將指示一記憶體庫中的一位址,及一個10位元位址A[13:4]將指示一記憶體庫中的一位址(一記憶體庫中位址)。
另一方面,在虛擬區域中,如圖7B所示,位址係以元素資料為單位予以分配,以使一較低序位之2位元位址A[1:0]指示一記憶體庫之一位址,且一10位元位址A[11:2]指示一記憶體庫中的一位址(一記憶體庫中位址)。
圖8及圖9係繪示位址之位元配置的實例。在一16位元位址A[15:0]中,一較高序位之4位元位址A[15:12]指示一區域位址。即,一區域位址「0b00xx」(「0b」意為隨後數字係二進制,「x」意為一任意二進制數,依此類推)表明一所關注之區域係一實體區域。同樣地,一區域位址「0b0100」表明其為一虛擬區域Y,一區域位址「0b0101」表明其為一虛擬區域R,一區域位址「0b0110」表明其為一虛擬區域G及一區域位址「0b0111」表明其為一虛擬區域B。
假使一區域位址表明一所關注之區域係一實體區域則位址A[13:4]指示各個記憶體庫之記憶體庫中位址,位址A[3:2]指示各個記憶體庫之記憶體庫位址以及位址A[1:0]指示各個記憶體庫內之字中位址,如上文參考圖7A所述。然而,當假定待存取結構資料作為一組資料時,一般而言,該字中位址被忽略。因此,在以結構資料為基礎的資料存取中,不論位址「0x0000」至「0x0003」中之何者被指定,將存取32個位元之像素資料Y0、R0、G0及B0。
假使一區域位址表明一所關注之區域係一虛擬區域,則位址A[11:2]指示各個記憶體庫之記憶體庫中位址,位址A[1:0]指示各個記憶體庫之記憶體庫位址,如上文參考圖7B所述。即,可看出在一虛擬區域中的記憶體庫中位址及記憶體庫位址係藉由將一實體區域中之記憶體庫中位址及記憶體庫位址向右位移2位元而得到的。區域位址與該等經位移2位元的位址相加給多一虛擬區域中之一位址。因此,建立了如下關係:
虛擬位址=區域位址+(實體位址>>2)
其中「>>」指示向右位移且右側的一數字指示位移操作次數。
附帶言之,在一虛擬區域中,一字中位址係固定的。即,在虛擬區域Y中,字中位址為「0b00」,在虛擬區域R中,字中位址為「0b01」,在虛擬區域G中,字中位址為「0b10」,在虛擬區域B中,該字中位址為「0b11」。注意到,上述字中位址係用於一記憶體庫中之實體控制且因此一存取請求方(例如,該處理器110)可能不需要注意該等位址。
圖10係繪示根據本發明之一實施例之記憶體庫與元素資料之間的一對應關係的一實例。
該等記憶體庫#0至#3(121至124)之各者設定構成結構資料之32位元像素資料為一字且在其中保存像素資料作為一陣列之一元素。接著,以像素資料為單位循序地分配32位元資料至不同的記憶體庫,以作為該陣列之該等元素。即,第零像素資料被保存於記憶體庫#0(121)之頭個字中;第一像素資料被保存至記憶體庫#1(122)之頭字中;第二像素資料被保存至記憶體庫#2(123)之頭字中及第三像素資料被保存至記憶體庫#3(124)之頭字中。同樣地,第四像素資料被保存至記憶體庫#0(121)之第二字中;第五像素被保存至記憶體庫#1(122)之第二字中;第六像素被保存至記憶體庫#2(123)之第二字中及第七像素被保存至記憶體庫#3(124)之第二字中。
圖11A及圖11B係繪示根據本發明之一實施例之對一虛擬區域所執行的存取與記憶體庫之間的一對應關係的實例。
假使已指示在虛擬區域Y中寫入8位元資料Ya、Yb、Yc及Yd(總計為32個位元),則如圖11A所示,相應的資料被同時寫入至該字之較低序位之8位元資料(D[7:0]),該字由各個記憶體庫中之一位址A[11:2]指示。
假使已指示讀取資料至虛擬區域Y,則如圖11B所示,由位址A[11:2]所指示之字之較低序位8位元資料(D[7:0])的資料Ya、Yb、Yc及Yd(總計為32個位元)被同時讀取至各個記憶體庫。
在圖11A及11B所繪示之該等實例中,已描述虛擬區域Y之存取。然而,亦在其他虛擬區域執行與上述方式相同之存取。即,在虛擬區域R中,分別執行存取由位址A[11:2]指示之字之資料D[15:8]之8位元資料;在虛擬區域G中,分別執行存取由位址A[11:2]指示之字之資料D[23:16]之8位元資料;在虛擬區域B中,分別執行存取由位址A[11:2]指示之字之資料D[31:24]之8位元資料。
圖12係繪示根據本發明之一實施例之一寫入資料排序單元320之一結構實例的方塊圖。32個位元寫入資料WDATA[31:0]及一區域位址A[15:12]被施加至該寫入排序單元320。
該寫入資料排序單元320具有一選擇器326。該選擇器326經組態以從五組128位元之信號線321至325之一者中選擇資料且用以輸出所選組信號線之資料至128位元之信號線329。由分散32位元寫入資料WDATA[31:0]至四個資料而所獲之總計128個位元之資料被輸入至信號線321。即,假設經由信號線321輸入資料WD1[127:0],則可獲得以下資料:
WD1[31:0]=WDATA[31:0]
WD1[63:32]=WDATA[31:0]
WD1[95:64]=WDATA[31:0]
WD1[127:96]=WDATA[31:0]
圖式中「a」、「b」、「c」及「d」各自指示WDATA[7:0]、WDATA[15:8]、WDATA[23:16]及WDATA[31:24]。此外,藉由劃分且嵌入32位元寫入資料WDATA[31:0]之四個8位元資料所獲得的總計128個位元之資料被輸入至信號線322。即,假設經由信號線322輸入資料WD2[127:0],則可獲得以下資料:
WD2[7:0]=WDATA[7:0]
WD2[39:32]=WDATA[15:8]
WD2[71:64]=WDATA[23:16]
WD2[103:96]=WDATA[31:24]
該寫入資料排序單元320執行控制以使資料不覆寫於除上述外之位元資料,且因此在其他位元資料中維持原始資料內容。
藉由劃分且嵌入32位元寫入資料WDATA[31:0]之四個8位元資料所獲得的總計128個位元之資料被輸入至信號線323。即,假設經由信號線323輸入資料WD3[127:0],則可獲得以下資料:
WD3[15:8]=WDATA[7:0]
WD3[47:40]=WDATA[15:8]
WD3[79:72]=WDATA[23:16]
WD3[111:104]=WDATA[31:24]
該寫入資料排序單元320執行控制以使資料不覆寫於除上述外之位元資料,且因此在其他位元資料中維持原始資料內容。
藉由劃分且嵌入32位元寫入資料WDATA[31:0]之四個8位元資料所獲得的總計128個位元之資料被輸入至信號線324。即,假設經由信號線324輸入該資料WD4[127:0],則可獲得以下資料:
WD4[23:16]=WDATA[7:0]
WD4[55:48]=WDATA[15:8]
WD4[87:80]=WDATA[23:16]
WD4[119:112]=WDATA[31:24]
該寫入資料排序單元320執行控制以使資料不覆寫於除上述外之位元資料,且因此在其他位元資料中維持原始資料內容。
藉由劃分且嵌入32位元寫入資料WDATA[31:0]之四個8位元資料所獲得的總計128個位元之資料被輸入至信號線325。即,假設經由信號線325輸入該資料WD5[127:0],則可獲得以下資料:
WD5[31:24]=WDATA[7:0]
WD5[63:56]=WDATA[15:8]
WD5[95:88]=WDATA[23:16]
WD5[127:120]=WDATA[31:24]
該寫入資料排序單元320執行控制以使資料不覆寫於除上述外之位元資料,且因此在其他位元資料中維持原始資料內容。
該選擇器326根據該區域位址A[15:12]選擇五組信號線321至325中之一者。即,若區域位址A[15:12]為「0b00xx」,則將選擇該信號線321上之資料。同樣地,對於「0b0100」,則將選擇該信號線322上之資料,對於「0b0101」,則將選擇該信號線323上之資料,對於「0b0110」,則將選擇該信號線324上之資料,對於「0b0111」,則將選擇該信號線325上之資料。
將如此所選之資料輸出至信號線329。假設待輸出至信號線329之資料為資料WD9[127:0],則資料WD9[31:0]將被供應至該記憶體庫#0(121),資料WD9[63:22]將被供應至該記憶體庫#1(122),資料WD9[95:64]將被供應至該記憶體庫#2(123)且資料WD9[127:96]將被供應至該記憶體庫#3(124)。
圖13係繪示根據本發明之一實施例之一讀取資料排序單元330之一結構實例的方塊圖。四組32位元讀取資料RD0[31:0]、RD1[31:0]、RD2[31:0]與RD3[31:0]、區域位址A[15:12]及一記憶體庫位址A[3:2]被供應至該讀取資料排序單元330。該讀取資料排序單元330具有選擇器336及337。
該選擇器336經組態以選擇該四組32位元讀取資料RD0[31:0]、RD1[31:0]、RD2[31:0]及RD3[31:0]中之一者且輸出該所選之一組讀取資料至一信號線331。讀取資料RD0[31:0]係自記憶體庫#0(121)讀出之資料;讀取資料RD1[31:0]係自記憶體庫#1(122)讀出之資料;讀取資料RD2[31:0]係自記憶體庫#2(123)讀出之資料;且讀取資料RD3[31:0]係自記憶體庫#3(124)讀出之資料。
該選擇器336係以記憶體庫位址A[3:2]為基礎而選擇四組讀取資料之任何一者。即,若記憶體庫位址A[3:2]為「0b00」,則將選擇資料RD0[31:0]。同樣地,對於「0b01」,則將選擇資料RD1[31:0];對於「0b10」,則將選擇資料RD2[31:0]且對於「0b11」,則將選擇資料RD3[31:0]。
該選擇器337經組態以選擇五組32位元信號線331至335中之一者且輸出所選信號線上之資料以作為32位元讀取資料RDATA[31:0]。使用信號線331上之資料來處置使用一實體位址而自一實體區域讀出之資料。信號線332上之資料係藉由封裝8位元資料RD0[7:0]、RD1[7:0]、RD2[7:0]及RD3[7:0]而獲得,且該資料被用以處置自虛擬區域Y讀出之資料;信號線333上之資料係藉由封裝8位元資料RD0[15:8]、RD1[15:8]、RD2[15:8]及RD3[15:8]而獲得,且該資料被用以處置自虛擬區域R讀出之資料。信號線334上之資料係藉由封裝8位元資料RD0[23:16]、RD1[23:16]、RD2[23:16]及RD3[23:16]而獲得,且該資料被用以處置自讀出虛擬區域G之資料;信號線335上之資料係藉由封裝8位元資料RD0[31:24]、RD1[31:24]、RD2[31:24]及RD3[31:24]而獲得,且該資料被用以處置自虛擬區域B讀出之資料。
該選擇器337係以區域位址A[15:12]為基礎而選擇五組32位元信號線331至335之任何一者。即,若區域位址A[15:12]為「0b00xx」,則將選擇信號線331。同樣地,對於「0b0100」,則將選擇信號線332;對於「0b0101」,則將選擇信號線333;對於「0b0110」,則將選擇信號線334且對於「0b0111」,則將選擇信號線335。
如上所述,根據本發明之一實施例,當該位址區域偵測單元311偵測到該位址A[15:0]已被包含在一虛擬區域中時,該位址轉換單元312轉換該位址A[15:0]成用於一實體區域之一位址,以實現對結構資料之元素資料的存取。因此,假使存取資料作為結構資料,則使用用於實體區域之位址,而對於以元素資料為單位存取資料,則使用用於虛擬區域之位址,藉此實現在僅有所需之資料被封裝的情況下進行存取。結果,實現各自處理操作數量之縮減,連同實現系統匯流排訊務之縮減。更特定言之,在多種情況下,於影像過濾器中,僅有明亮度分量被一同處置,本發明之一實施例之應用所帶來的效果係顯而易見的。
在本發明之實施例中,與將功能散佈至單獨之算術單元的情況相比較,該記憶體控制單元130經組態以獨佔地執行裝置之功能,藉此達到靈活性及確定性。即,甚至假使需要延伸或修改,僅僅修改該記憶體控制單元130即充分可行,且因此簡化資訊處理裝置之設計。
在本發明之實施例中,作為結構資料之一實例,已描述由Y、R、G及B分量所構成之影像資料。然而,本發明並不限於此且本發明可被應用於其他資料。在本發明之實施例中,已描述由複數個記憶體庫構成之記憶體作為實例,然而,本發明並不限於此且本發明可被應用於不同於上述記憶體之組態的其他記憶體。
本申請案包含在2008年6月11日向日本專利局申請之日本優先權專利申請案JP2008-152642中揭示之相關標的,該案之全文以引用的方式併入本文中。
熟悉此項技術者應瞭解,雖然本發明之實施例闡釋用於體現本發明之一實例且與附隨申請專利範圍所界定之特定發明事物具有一對應關係,但是本發明不限於此且在附隨申請專利範圍或其等價物之範圍內,可進行各種修改、組合、子組合及替換實施例,其取決於設計需求及其它範圍內之因素。
100...影像處理器件
110...處理器
120...記憶體
121...記憶體庫#0
122...記憶體庫#1
123...記憶體庫#2
124...記憶體庫#3
130...記憶體控制單元
140...DMA控制單元
150...算術單元
190...系統匯流排
200...外部儲存單元
310...位址產生單元
311...位址區域偵測單元
312...位址轉換單元
320...寫入資料排序單元
321...信號線
322...信號線
323...信號線
324...信號線
325...信號線
326...選擇器
329...信號線
330...讀取資料排序單元
331...信號線
332...信號線
333...信號線
334...信號線
335...信號線
336...選擇器
337...選擇器
圖1係繪示根據本發明之一實施例之一資訊處理裝置之一結構實例的方塊圖;圖2係繪示根據本發明之一實施例之一記憶體120及一記憶體控制單元130之一結構實例的方塊圖;圖3係繪示根據本發明之一實施例之該記憶體120中位址與區域之一關係之一實例的圖表;圖4係繪示根據本發明之一實施例之像素資料之一格式之實例的方塊圖;圖5係繪示根據本發明之一實施例之元素資料、實體位址與虛擬位址之間的一對應關係之一實例的圖表;圖6A係繪示根據本發明之一實施例之元素資料與位址之間的一對應關係之一實例的圖表;圖6B係繪示根據本發明之一實施例之元素資料與位址之間的一對應關係之一實例的圖表;圖7A係繪示根據本發明之一實施例之記憶體庫與位址之間的一對應關係之一實例的方塊圖;圖7B係繪示根據本發明之一實施例之記憶體庫與位址之間的一對應關係之一實例的方塊圖;圖8係繪示根據本發明之一實施例之位址之一位元陣列之實例的方塊圖;圖9係繪示根據本發明之一實施例之區域位址與位址之位元陣列之間的一對應關係之一實例的圖表;圖10係繪示根據本發明之一實施例之記憶體庫與元素資料之間的一對應關係的一實例;圖11A係繪示根據本發明之一實施例之對一虛擬區域所執行的存取與記憶體庫之間的一對應關係的一實例;圖11B係繪示根據本發明之一實施例之對一虛擬區域所執行的存取與記憶體庫之間的一對應關係的一實例;圖12係繪示根據本發明之一實施例之一寫入資料排序單元320之一結構實例的方塊圖;及圖13係繪示根據本發明之一實施例之一讀取資料排序單元330之一結構實例的方塊圖。
100...影像處理器件
110...處理器
120...記憶體
130...記憶體控制單元
140...DMA控制單元
150...算術單元
190...系統匯流排
200...外部儲存單元
Claims (8)
- 一種資訊處理裝置,其包含:一記憶體,其經組態使得結構資料區域被分配給複數個記憶體,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成;一位址區域偵測單元,其經組態以偵測用以存取該記憶體之一位址值是否被包含在一特定位址區域中,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。
- 如請求項1之裝置,其中複數筆元素資料被封裝成一字,且複數個字之各者被保存在該結構資料中作為一陣列之一元素;複數個字係以逐字為基礎循序地分配給該複數個記憶體庫之不同記憶體庫,及該位址轉換單元經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值,使得依一對一對應關係自該複數個記憶體庫同時存取經各自分配給該複數個記憶體庫之該結構資料中所包含之該複數筆元素資料。
- 如請求項2之裝置,進一步包含:一寫入資料排序單元,其經組態以排序寫入資料,使得假使已偵測到該位址值係被包含在該特定位址區域中,則依一對一對應關係將與該結構資料大小相同之該寫入資料中所包含的元素資料寫入至該複數個記憶體庫中。
- 如請求項2之裝置,進一步包含:一讀取資料排序單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則將依一對一對應關係自該複數個記憶體庫讀出之該元素資料作為與該結構資料大小相同之讀取資料。
- 如請求項1之裝置,其中該結構資料是一影像之像素資料,且該複數筆元素資料係關於該像素資料之一明亮度或一顏色的分量資料。
- 一種記憶體控制器件,其包含:一位址區域偵測單元,其經組態以偵測存取一記憶體所使用之一位址值是否被包含在一特定位址區域中,該記憶體經組態使得結構資料區域被分配給複數個記憶體庫,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。
- 一種資訊處理裝置,其包含:一記憶體,其經組態使得分配結構資料區域,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成;一位址區域偵測單元,其經組態以偵測用以存取該記憶體之一位址值是否被包含在一特定位址區域中,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,其經組態以假使已偵測到該位址值係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。
- 一種記憶體控制器件,其包含:一位址區域偵測單元,其經組態以偵測存取一記憶體所使用之一位址值是否被包含在一特定位址區域中,該記憶體經組態使得分配結構資料區域,該等結構資料區域中保存結構資料,每一結構資料係由複數筆元素資料構成,該特定位址區域包含用以存取該複數筆元素資料之一位址;及一位址轉換單元,其經組態以假使已偵測到該位址係被包含在該特定位址區域中,則轉換該位址值成用於該結構資料區域之一位址值。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008152642A JP5292934B2 (ja) | 2008-06-11 | 2008-06-11 | メモリ制御装置および情報処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201003389A TW201003389A (en) | 2010-01-16 |
TWI402673B true TWI402673B (zh) | 2013-07-21 |
Family
ID=41415838
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098116747A TWI402673B (zh) | 2008-06-11 | 2009-05-20 | 記憶體控制器件和資訊處理裝置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8103848B2 (zh) |
JP (1) | JP5292934B2 (zh) |
KR (1) | KR101555545B1 (zh) |
CN (1) | CN101604294B (zh) |
TW (1) | TWI402673B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5598337B2 (ja) * | 2011-01-12 | 2014-10-01 | ソニー株式会社 | メモリアクセス制御回路、プリフェッチ回路、メモリ装置および情報処理システム |
CN108959105B (zh) * | 2017-05-17 | 2023-12-22 | 深圳市中兴微电子技术有限公司 | 一种实现地址映射的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1637719A (zh) * | 2004-01-05 | 2005-07-13 | 索尼株式会社 | 数据存储设备、数据存储控制设备、方法以及程序 |
TW200805065A (en) * | 2006-01-17 | 2008-01-16 | Nxp Bv | Region protection unit, instruction set and method for protecting a memory region |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05113928A (ja) * | 1991-10-23 | 1993-05-07 | Fuji Electric Co Ltd | 画像メモリ装置 |
JPH0836520A (ja) | 1994-07-25 | 1996-02-06 | Fuji Xerox Co Ltd | 多重アドレスを設定した情報処理装置 |
WO2006009019A1 (ja) * | 2004-07-21 | 2006-01-26 | Matsushita Electric Industrial Co., Ltd. | 画像処理装置 |
CN101416167B (zh) * | 2006-07-20 | 2012-07-25 | 日本电气株式会社 | 存储器访问控制设备、存储器访问控制方法、数据存储方法以及存储器访问控制程序 |
-
2008
- 2008-06-11 JP JP2008152642A patent/JP5292934B2/ja not_active Expired - Fee Related
-
2009
- 2009-05-20 TW TW098116747A patent/TWI402673B/zh not_active IP Right Cessation
- 2009-05-28 US US12/453,957 patent/US8103848B2/en not_active Expired - Fee Related
- 2009-06-10 KR KR1020090051296A patent/KR101555545B1/ko active IP Right Grant
- 2009-06-11 CN CN2009101459343A patent/CN101604294B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1637719A (zh) * | 2004-01-05 | 2005-07-13 | 索尼株式会社 | 数据存储设备、数据存储控制设备、方法以及程序 |
TW200805065A (en) * | 2006-01-17 | 2008-01-16 | Nxp Bv | Region protection unit, instruction set and method for protecting a memory region |
Also Published As
Publication number | Publication date |
---|---|
JP2009301169A (ja) | 2009-12-24 |
JP5292934B2 (ja) | 2013-09-18 |
KR20090129350A (ko) | 2009-12-16 |
CN101604294A (zh) | 2009-12-16 |
US8103848B2 (en) | 2012-01-24 |
CN101604294B (zh) | 2012-04-18 |
KR101555545B1 (ko) | 2015-10-06 |
TW201003389A (en) | 2010-01-16 |
US20090313450A1 (en) | 2009-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9542307B2 (en) | Shiftable memory defragmentation | |
CN101206635B (zh) | 处理器中执行掩码存储操作的方法和集成电路 | |
TWI425512B (zh) | 快閃記憶體控制電路及其儲存系統與資料傳輸方法 | |
WO2007149979A2 (en) | Unified virtual addressed register file | |
JP2006509306A (ja) | 関係アプリケーションへのデータ処理システム相互参照用セルエンジン | |
JP2009503729A5 (zh) | ||
TWI587214B (zh) | 資料儲存裝置、其控制單元及其任務排序方法 | |
US6721869B1 (en) | Method for deriving a word address and byte offset information | |
JP2004303204A (ja) | データプロセッサの結果レジスタの選択したサブワード位置に結果を送る並列サブワード命令 | |
US20120106287A1 (en) | Memory Arrangement for Accessing Matrices | |
KR100647160B1 (ko) | 컨트롤러 프로그래밍에 의한 하드웨어에서의 데이터마스크 매핑 | |
US20170017578A1 (en) | Generation of random address mapping in non-volatile memories using local and global interleaving | |
TWI402673B (zh) | 記憶體控制器件和資訊處理裝置 | |
JP2003296103A (ja) | 結果が分散される並列サブワード命令 | |
JP4855864B2 (ja) | ダイレクトメモリアクセスコントローラ | |
JP3166447B2 (ja) | 画像処理装置及び画像処理方法 | |
JPS58132855A (ja) | イメ−ジ処理システム | |
JPWO2005038655A1 (ja) | 半導体メモリ装置及びコントローラ並びにその読み書き制御方法 | |
JP2012008747A (ja) | 集積装置、メモリ割り当て方法、および、プログラム | |
US7124261B2 (en) | Access to bit values within data words stored in a memory | |
CN1071771A (zh) | 存储控制器与数据处理系统 | |
CN1504898A (zh) | 内部数据存储结构、寻址方法以及数字信号处理器 | |
JP5958195B2 (ja) | 仮想記憶管理システム、仮想記憶管理装置、仮想記憶初期化方法および仮想記憶初期化プログラム | |
JP4438739B2 (ja) | 画像形成装置 | |
JP2003280902A5 (zh) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |