IP Library Granted Patent US 8,937,624
Granted Patent B2
US 8,937,624 · App. 13/297,492 · Granted Jan 20, 2015

Method and apparatus for translating memory access address

Inventors: Gi Ho Park (Seoul, KR); Won Chang Lee (Seongnam-si, KR); Shi Hwa Lee (Seoul, KR); Do Hyung Kim (Hwaseong-si, KR); Joon Ho Song (Hwaseong-si, KR); Sung Uk Jeong (Seoul, KR)
Assignees: Samsung Electronics Co., Ltd.; Industry-Academia Cooperation Group of Sejong University
G06F12/0607G06F12/0207G06F2212/1024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,937,624
App. No.
13/297,492
Granted
Jan 20, 2015
Kind
B2
Abstract

A memory access address translating apparatus and method may each classify pixels included in an input image into a plurality of tiles, and may generate a new memory for each of the successive tiles to enable the successive tiles, among a plurality of tiles, to be stored in different banks.

Claims (46)

1. An apparatus for translating a memory access address, the apparatus comprising:

an address allocating unit to classify a plurality of pixels included in an input image based on a tile unit and to allocate a memory address to each of a plurality of tiles, wherein each of the plurality of tiles includes pixel information associated with the plurality of pixels included in the input image;

an address generating unit to generate a new memory address for each successive tile among the plurality of tiles based on a corresponding memory address allocated to each of the plurality of tiles, the new memory address being configured to enable the successive tiles to be stored in different memory banks,

wherein the address generating unit generates new memory addresses by performing a logical operation on a bit indicating a Y coordinate address of a tile and a bit indicating an X coordinate address of the tile in the corresponding memory address allocated to each of the plurality of tiles; and

a memory controller to store each of the successive tiles in a corresponding new memory address.

2. The apparatus of claim 1 ,

wherein the corresponding memory address allocated to each of the plurality of tiles includes frame information associated with a frame that is associated with pixels included in the tile, the Y coordinate address of the tile, and the X coordinate address of the tile.

3. The apparatus of claim 1 , wherein the address generating unit performs an exclusive or (XOR) operation with respect to at least one of the least significant two bits indicating a Y coordinate address of a tile and at least one of the most significant two bits indicating an X coordinate address of the tile respectively, and allocates results of the XOR operation to the most significant two bits indicating an X coordinate address of the new memory address, respectively.

4. The apparatus of claim 1 , wherein the memory controller stores, in different banks based on the new memory addresses, the successive tiles that are successive in a direction of an up, down, left, or right alignment based on a tile of the plurality of tiles.

5. The apparatus of claim 1 , further comprising:

a tile reading unit to read, from different banks, the successive tiles of the plurality of tiles; and

a tile outputting unit to output the read tiles.

6. The apparatus of claim 5 , wherein the tile reading unit reads a subsequent tile that is stored in a different bank, while a current tile is being outputted among the successive tiles.

7. The apparatus of claim 5 , wherein the tile outputting unit outputs the subsequent tile when the outputting of the current tile among the successive tiles has been completed.

8. A method of translating a memory access address, the method comprising:

classifying a plurality of pixels included in an input image based on a tile unit and allocating a memory address to each of a plurality of tiles, wherein each of the plurality of tiles includes pixel information associated with the plurality of pixels included in the input image;

generating a new memory address for each of the successive tiles among the plurality of tiles based on a corresponding memory address allocated to each of the plurality of tiles, the new memory address being configured to enable successive tiles of the plurality of tiles to be stored in different memory banks,

wherein the generating of the new memory addresses further comprises performing a logical operation on a bit indicating a Y coordinate address of a tile and a bit indicating an X coordinate address of the tile in the corresponding memory address allocated to each of the plurality of tiles; and

storing, by way of a memory controller, each of the successive tiles in a corresponding new memory address.

9. The method of claim 8 ,

wherein the corresponding memory address allocated to each of the plurality of tiles includes frame information associated with a frame that is associated with pixels included in the tile, the Y coordinate address of the tile, and the X coordinate address of the tile.

10. The method of claim 8 , wherein the generating comprises:

performing an exclusive or (XOR) operation with respect to at least one of the least significant two bits indicating a Y coordinate address of a tile and at least one of the most significant two bits indicating an X coordinate address of the tile, respectively; and

allocating results of the XOR operation to the most significant two bits indicating an X coordinate address of the new memory address, respectively.

11. The method of claim 8 , wherein the storing comprises:

storing, in different banks based on the new memory addresses, the successive tiles that are successive in a direction of an up, down, left, or right alignment based on a tile of the plurality of tiles.

12. The method of claim 8 , further comprising:

reading, from different banks, the successive tiles of the plurality of tiles; and

outputting the read tiles.

13. The method of claim 12 , wherein the reading comprises:

reading a subsequent tile that is stored in a different bank, while a current tile is being outputted among the successive tiles.

14. The method of claim 12 , wherein the outputting comprises:

outputting the subsequent tile when the outputting of the current tile among the successive tiles has been completed.

15. A non-transitory computer-readable medium comprising a program for instructing a computer to perform the method of claim 8 .

16. An apparatus for translating a memory access address, the apparatus comprising:

an address allocating unit to classify a plurality of pixels included in an input image based on a tile unit, and to allocate a memory address to each of a plurality of tiles, wherein each of the plurality of tiles includes pixel information associated with the plurality of pixels included in the input image;

an address generating unit to generate, for each successive tile among the plurality of tiles, a new respective memory address by performing a logical operation on a corresponding memory address allocated to each successive tile among the plurality of tiles,

wherein the address generating unit generates new memory addresses by performing a logical operation on a bit indicating a Y coordinate address of a tile and a bit indicating an X coordinate address of the tile in the corresponding memory address allocated to each of the plurality of tiles; and

a memory controller to store each of the successive tiles in different memory banks based on the new respective memory address.

17. The apparatus of claim 16 , wherein the address generating unit performs an exclusive or (XOR) operation on one of a least significant two bits indicating a Y coordinate address of a tile and on one of a most significant two bits indicating an X coordinate address of the tile, and allocates results of the XOR operation to one of the most significant two bits indicating an X coordinate address of the new respective memory address.

18. A method for translating a memory access address, the method comprising:

classifying a plurality of pixels included in an input image based on a tile unit;

allocating a memory address to each of a plurality of tiles, wherein each of the plurality of tiles includes pixel information associated with the plurality of pixels included in the input image;

generating, for each successive tile among the plurality of tiles, a new respective memory address by performing a logical operation on a corresponding memory address allocated to each successive tile among the plurality of tiles,

wherein the generating further comprises generating new memory addresses by performing a logical operation on a bit indicating a Y coordinate address of a tile and a bit indicating an X coordinate address of the tile in the corresponding memory address allocated to each of the plurality of tiles; and

storing, by way of a memory controller, each of the successive tiles in different memory banks based on the new respective memory address.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2011
From: PARK, GI HO; LEE, WON CHANG; LEE, SHI HWA; KIM, DO HYUNG; SONG, JOON HO; JEONG, SUNG UK
To: SAMSUNG ELECTRONICS CO., LTD.; INDUSTRY-ACADEMIA COOPERATION GROUP OF SEJONG UNIVERSITY
Reel/Frame 027242/0020 →
Priority Claims (1)
KR 10-2010-0114020 · Nov 16, 2010 · national
Continuity (1)
Related Publication 20120124324A1 · May 17, 2012