Abstract:
PURPOSE: A device for controlling a buffer memory of a computer system is provided to implement a buffer system of a low-power effectively and use an internal memory as a scratch pad memory by partially activating a bank of an internal buffer memory according to a flow of the current data and the number of entry numbers of a queue and applying an adaptability in a queue system for connecting two components which create and consume data. CONSTITUTION: An output latch(40) is operated as a virtual queue when data stored in a buffer memory(20) are transmitted to a consumption component(30) or the buffer memory(20) is used as a scratch pad memory. A buffer controller(50) controls data of the buffer memory(20), and delays an operation of a processor(10) or the component(30) when an overflow or underflow of the buffer memory(20) is generated. The buffer controller(50) decides an active point(Act_point) according to the number of internal entry numbers of the buffer memory(20) and the number of necessary bank numbers. The buffer controller(50) separates an output latch(40) for using the buffer memory(20) as the scratch pad memory. A bank controller(60) activates a bank of the buffer memory(20) as a circular form by the active point(Act_point) of the buffer controller(50).
Abstract:
PURPOSE: An accelerator for processing multimedia using a coprocessor on a portable system is provided to efficiently process a multimedia data stream with a small power by using a stream buffer including a system interface unit for enabling the coprocessor equipped with a program memory to directly invoke a main processor and being used as an operation register. CONSTITUTION: A coprocessor interface unit(201) connects the main processor(100) and the coprocessor(200). An internal program memory(207) stores the program. A state control unit(208) makes the coprocessor execute instructions of the main processor and requests the needed operation to the main processor. The stream buffer(203) has the system bus interface(202) for directly connecting to a system bus for the multimedia data stream, and reads/stores data on the next stream when the coprocessor performs a stream processing program. A register mapping unit(204) performs mapping in order to make the coprocessor use contents of the stream buffer as an operation register. An SIMD(Single Instruction Multiple Data) data path(206) performs an SIMD operation in order to make the coprocessor process multiple data at one instruction.
Abstract:
PURPOSE: A multimedia process accelerating system is provided to embed an automatic code processing function in an assistant processor, and to process a single instruction of a main processor via a memory manager so that it extends an instruction system for a multimedia process. CONSTITUTION: The system comprises a coprocessor interface unit(101), a state control unit(104), a program control unit(202), an internal program memory(201), a pipeline follower(102), a decoder(103), a stream control unit(203), a multi mode SIMD(Single Instruction Multiple Data) register file(301), an adjuster(302), an SIMD data path(105), a precision degree control unit(303), and a memory manager(205). The coprocessor interface unit(101) connects a main processor to an assistant processor. The state control unit(104) controls an overall operations of the assistant processor, and stores a current state. The program control unit(202) and the internal program memory(201) store a program for executing the assistant processor and control an execution of the assistant processor. The pipeline follower(102) synchronizes an instruction pipeline of the main processor with that of the assistant processor. The decoder(103) decodes the instruction of the main processor, and generates a control signal on an overall data path of the assistant processor. The stream control unit(203) controls a process on an multimedia data stream in a memory area. The multi mode SIMD register file(301) makes it possible setting each data value for each mode. The adjuster(302) adjusts a vector register value read from the multi mode SIMD register file(301). The SIMD data path(105) processes plural data with a single instruction. The precision degree control unit(303) adjusts a dynamic range of a calculation result. The memory manager(205) controls both the main memory and the assistant memory to access the same memory.
Abstract:
PURPOSE: A memory mapping method and a virtually spanning 2D(2-Dimensional) array structure for an embedded 3D graphic accelerator are provided to use wide memory width in an EML(Embedded Memory Logic) technology, so as to enhance the performance of the embedded 3D graphic accelerator. CONSTITUTION: In a structure used in an embedded 3D graphic accelerator, processors composed of one or several two-rank layers are indirectly connected to memories through a memory interface circuit to form a physical 1D array, and another 1D array is formed according to pipelining of a first processor thereby forming virtually spanning 2D array structure. For a polygon cut to an N-by-N size, a screen is divided into N-by-1 LBs(Line Blocks). Mutually adjacent line blocks, for the divided line blocks, are mapped with mutually different memories using SALBA(Selective and Alternative Line-Block Activation) memory mapping, thereby reducing power consumption and enabling continuous and simultaneous RMW(Read-Modify-Write). And power consumption in an I/O drive is reduced according to a shape of the polygon, when reading and writing data from the memory allocated to one line block.
Abstract:
PURPOSE: A multimedia process accelerating system is provided to embed an automatic code processing function in an assistant processor, and to process a single instruction of a main processor via a memory manager so that it extends an instruction system for a multimedia process. CONSTITUTION: The system comprises a coprocessor interface unit(101), a state control unit(104), a program control unit(202), an internal program memory(201), a pipeline follower(102), a decoder(103), a stream control unit(203), a multi mode SIMD(Single Instruction Multiple Data) register file(301), an adjuster(302), an SIMD data path(105), a precision degree control unit(303), and a memory manager(205). The coprocessor interface unit(101) connects a main processor to an assistant processor. The state control unit(104) controls an overall operations of the assistant processor, and stores a current state. The program control unit(202) and the internal program memory(201) store a program for executing the assistant processor and control an execution of the assistant processor. The pipeline follower(102) synchronizes an instruction pipeline of the main processor with that of the assistant processor. The decoder(103) decodes the instruction of the main processor, and generates a control signal on an overall data path of the assistant processor. The stream control unit(203) controls a process on an multimedia data stream in a memory area. The multi mode SIMD register file(301) makes it possible setting each data value for each mode. The adjuster(302) adjusts a vector register value read from the multi mode SIMD register file(301). The SIMD data path(105) processes plural data with a single instruction. The precision degree control unit(303) adjusts a dynamic range of a calculation result. The memory manager(205) controls both the main memory and the assistant memory to access the same memory.
Abstract:
PURPOSE: A dividing unit of a three dimensional computer graphic system is provided to eliminate MSBs(Most Significant Bits) of a dividend as many as leading zeros of a divisor when a perspective division operation needed in a texture mapping is performed. CONSTITUTION: The unit comprises a leading zero detector(110), a UV formatter(120), and a divider(130). The leading zero detector(110) receives a value of a divisor, which is a texture address value, and counts the number of the divisor. The UV formatter(120) receives values of dividends, which are also texture address values, eliminates MSBs of the dividends as many as counted zeros of the divisor or pads zeros under LSBs(Least Significant Bits) as many as the number of the eliminated ciphers. The divider(130) divides the newly formatted dividends with the divisor.
Abstract:
PURPOSE: A texture memory access device of a three-dimensional computer graphic system is provided to improve texture mapping performance to produce more vivid three-dimensional computer graphics. CONSTITUTION: A texture memory access device of a three-dimensional computer graphic system includes a texture address aligner(210), a texture address comparator(220), a texture memory controller(230), a texture data register(240), and a texture data aligner(250). The texture address aligner receives a plurality of texture memory addresses from texture units(110) and aligns identical texture addresses. The texture address comparator compares the aligned addresses with addresses stored at the previous clock cycle to align identical texture addresses. The texture memory controller controls a texture memory using texture addresses output from the comparator. The texture data register temporarily stores data read from the texture memory. The texture data aligner realigns texture data according to control signals output from the texture address aligner and the texture address comparator to send the texture data to the texture units.
Abstract:
PURPOSE: A three dimensional computer graphics operation system is provided to install a bandwidth equalizer between a main operation processor and three dimensional computer graphics accelerators having different bandwidths for a high efficient data transmission so that it can implement a real time three dimensional computer graphics at a portable terminal. CONSTITUTION: The system comprises three dimensional computer graphics accelerators(300), a moving picture regeneration accelerator(410), and a bandwidth equalizer (200). The moving picture regeneration accelerator(410), connected to a main operation processor(100) via the bandwidth equalizer(200), accelerates a display of the three dimensional computer graphics. The three dimensional computer graphics accelerators(300) are workstation level hardwares for accelerating three dimensional graphic display with a high speed. The bandwidth equalizer(200) is a bus structure for connecting the three dimensional computer graphic accelerator(300) and the moving picture regeneration accelerator(410) to the main operation processor(100). The bandwidth equalizer(200) synchronizes the bandwidth of the three dimensional computer graphics accelerator(300) to that of the main operation processor(100) for enabling a data transmission between them. Also, the bandwidth equalizer(200) synchronizes the bandwidth of the moving picture regeneration accelerator(410) with that of the main operation processor(100).
Abstract:
PURPOSE: A memory mapping method and a virtually spanning 2D(2-Dimensional) array structure for an embedded 3D graphic accelerator are provided to use wide memory width in an EML(Embedded Memory Logic) technology, so as to enhance the performance of the embedded 3D graphic accelerator. CONSTITUTION: In a structure used in an embedded 3D graphic accelerator, processors composed of one or several two-rank layers are indirectly connected to memories through a memory interface circuit to form a physical 1D array, and another 1D array is formed according to pipelining of a first processor thereby forming virtually spanning 2D array structure. For a polygon cut to an N-by-N size, a screen is divided into N-by-1 LBs(Line Blocks). Mutually adjacent line blocks, for the divided line blocks, are mapped with mutually different memories using SALBA(Selective and Alternative Line-Block Activation) memory mapping, thereby reducing power consumption and enabling continuous and simultaneous RMW(Read-Modify-Write). And power consumption in an I/O drive is reduced according to a shape of the polygon, when reading and writing data from the memory allocated to one line block.
Abstract:
A Row-After-Column memory addressing method. The memory addressing method changes the order of addressing so as to enhance the efficiency of memory addressing. The Row-After-Column memory addressing method of the present invention comprises the steps of activating a column path by generating the column address when the address is input for data access, and activating a row path by generating the row address according to the address. Therefore, pipeline stall arising from inputting the column address (/CAS) subsequent to input of the row address (/RAS) can be eliminated and the speed of memory access can be enhanced.