WO2009107954A2 - 그래픽 가속기 및 그래픽 가속 방법 - Google Patents

그래픽 가속기 및 그래픽 가속 방법 Download PDF

Info

Publication number
WO2009107954A2
WO2009107954A2 PCT/KR2009/000850 KR2009000850W WO2009107954A2 WO 2009107954 A2 WO2009107954 A2 WO 2009107954A2 KR 2009000850 W KR2009000850 W KR 2009000850W WO 2009107954 A2 WO2009107954 A2 WO 2009107954A2
Authority
WO
WIPO (PCT)
Prior art keywords
memory
processor
write command
frame memory
display device
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2009/000850
Other languages
English (en)
French (fr)
Other versions
WO2009107954A3 (ko
Inventor
강세진
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HT Inc
Original Assignee
HT Inc
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 HT Inc filed Critical HT Inc
Priority to US12/919,307 priority Critical patent/US20110010472A1/en
Priority to GB1014376A priority patent/GB2469607A/en
Publication of WO2009107954A2 publication Critical patent/WO2009107954A2/ko
Publication of WO2009107954A3 publication Critical patent/WO2009107954A3/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/08Power processing, i.e. workload management for processors involved in display operations, such as CPUs or GPUs

Definitions

  • the present invention relates to a graphics accelerator, and more particularly, to a graphics accelerator including a frame memory and having an interface such as a memory of a processor.
  • the multimedia processor transmits data to an externally connected display device so that the user can visually check the contents.
  • data to be displayed eg, an object, video data, a graphical user interface (GUI), etc.
  • the display is implemented by reading and outputting recorded data by performing a direct memory access (DMA) operation or the like connected to the multimedia processor.
  • the processor may be provided in a mobile device (mobile communication terminal, smartphone, etc.), and the display device may be an LCD, a TV, a projector, a monitor, or the like.
  • FIG. 1 is a block diagram illustrating a processor connected to a display device and sharing a memory
  • FIG. 2 is a block diagram illustrating a processor having a separate frame memory therein.
  • the processor 100 includes a processor core 101, a 2D / 3D graphics processor 102, a video codec 103, a JPEG processor 104, an image signal processor 105, a display DMA 106, and the like.
  • the memory 110 is shared and accessed through the memory controller 107.
  • the processor core 101 controls each component of the processor 100, controls communication with an external device (eg, the display device 120, etc.), and performs basic functions of the processor 100. .
  • the 2D / 3D graphic processing unit 102 performs a function related to a 2D graphic or a 3D graphic having values of points (vectors), lines, and colors using values of plane coordinates and colors.
  • the video codec 103 performs encoding and / or decoding of multimedia data using a predetermined encoding scheme.
  • the JPEG processing unit 104 compresses still images such as photographs according to a JPEG compression technique.
  • the image signal processing unit 105 processes the image signal input from an image sensor or the like so as to be utilized by another processing unit.
  • the display DMA 106 transmits the data stored in the predetermined area of the memory 110 to the display device 120 to be displayed by DMA transfer.
  • a separate area in which data to be displayed on the display device 120 is stored is divided, which is called a frame memory area.
  • the display DMA 330 continuously outputs the data in the frame memory area to the display device 120 connected to the outside.
  • the frame memory area of the memory 110 should be output periodically according to the refresh rate. More refresh rates may be required for TVs or display devices with larger screen sizes.
  • Periodically outputting the frame memory area according to the refresh rate affects the computing power of the processor core 101.
  • a bottleneck occurs when the processor core 101 inputs / outputs data to the memory 110, and the computing power is reduced. It will weaken. That is, the memory bandwidth is weakened due to the external display device 120.
  • the memory bandwidth refers to the frequency or bandwidth of accessing (reading or writing) data to the memory at a unit time, and the unit is also expressed as a byte value (bytes / sec) per second. That is, it shows the amount of data that can be accessed within a predetermined time.
  • Each processor of the processor 100 can access a data rate, i.e., a memory bandwidth, that is accessible to a shared memory 110, which is always less than the maximum data rate that a single processor can access, i.e., the maximum memory bandwidth. You can only use it. Therefore, the memory bandwidth that can be shared and used by each processing unit, that is, the amount of data that can be accessed within a unit time, may increase as the number of processing units sharing the memory 110 decreases.
  • the frame memory 108 is separated from the memory 110 and is provided in the processor 100 as a separate memory space in FIG. 2.
  • the screen size that can be displayed is limited according to the size of the frame memory 108. Therefore, if the user wants to display on a wider screen, the frame memory needs to be made larger, so that a chip corresponding to the processor 100 must be manufactured separately.
  • the present invention provides a graphics accelerator and a graphics acceleration method in which data corresponding to the frame memory is written to a graphics accelerator provided outside the processor so that the memory bandwidth of the processor is not reduced even by a continuous read operation by a DMA transfer of a display device. To provide.
  • the present invention provides a graphics accelerator and a graphics acceleration method that can easily improve the configuration of the system because it is possible to change the interface with the display device from the outside with minimal changes without changing the processor itself.
  • the present invention provides a graphic accelerator and a graphic acceleration method capable of improving the refresh rate and realizing a larger display resolution.
  • a graphics accelerator connected between a processor and a display device.
  • a graphics accelerator includes a frame memory; An accelerator controller having an input interface identical to that of the memory of the processor and writing data to be transmitted from the processor to the display device in the frame memory; And a display DMA for transferring data recorded in the frame memory to the display device.
  • the accelerator controller may input and output the data from the processor through an SDRAM interface.
  • the accelerator controller may analyze a write command of the processor to the memory, and copy data corresponding to the write command to the frame memory when the write command is a write command to a predetermined area in the memory.
  • the data may be recorded in the frame memory by a memory map access method located on an extended memory map of the memory of the processor.
  • the accelerator controller may receive a chip select signal for selecting a memory of the processor.
  • the predetermined area may be a frame memory area of the memory.
  • the accelerator controller compares first position information of a frame memory area of the memory previously input with second position information of the memory corresponding to the analyzed write command, so that the write command is applied to the frame memory area of the memory. It can be determined whether it is a write command.
  • the apparatus may further include at least one of a camera signal processor and a graphic signal processor connected to the frame memory to perform an update.
  • the display DMA may transmit the data to the display device according to a refresh rate or a request of the display device.
  • a graphics acceleration method of a graphics accelerator connected between a processor and a display device and a recording medium on which a program for performing the graphics acceleration method is recorded.
  • Graphic acceleration method the step of receiving a write command from the processor; And writing data to be transmitted from the processor to the display apparatus in a frame memory when the write command is input.
  • the method may further include transmitting direct memory access (DMA) data recorded in the frame memory to the display apparatus according to a refresh rate of the display apparatus or a request.
  • DMA direct memory access
  • a graphic acceleration method comprising: determining whether a write command to a memory of the processor is input; Determining whether the write command is a write command to a frame memory area in the memory when the write command is input; And if the write command is a write command to the frame memory area, copying data corresponding to the write command to the frame memory.
  • the method may further include transmitting direct memory access (DMA) data recorded in the frame memory to the display apparatus according to a refresh rate of the display apparatus or a request.
  • DMA direct memory access
  • the determining whether the write command is input may be determined by receiving a chip select signal for selecting a memory of the processor.
  • determining whether the write command is a write command to a frame memory area in the memory corresponds to first position information of a frame memory area of the memory input in advance and the analyzed write command.
  • the second position information of the memory may be compared to determine whether the write command is a write command to a frame memory area of the memory.
  • 1 is a configuration block diagram of a processor connected to a display device and sharing a memory
  • FIG. 2 is a block diagram illustrating a processor having a separate frame memory therein.
  • FIG. 3 is a block diagram illustrating a graphics accelerator connected between a processor and a display device according to an embodiment of the present invention.
  • FIG. 4 is a diagram illustrating a signal connection relationship between a first memory and a second memory using a general memory map connection method
  • FIG. 5 is a diagram illustrating a signal connection relationship between a graphic accelerator and a memory and a processor having the same memory interface according to an embodiment of the present invention.
  • FIG. 6 is a diagram illustrating a connection relationship between a processor, a graphic accelerator, and a display device according to the present invention.
  • FIG. 7 is a flowchart of a graphic acceleration method of a graphic accelerator according to an embodiment of the present invention.
  • FIG. 8 is a flowchart of a graphic acceleration method of a graphic accelerator according to another embodiment of the present invention.
  • FIG. 9 is a block diagram illustrating a graphic accelerator connected between a processor and a display device according to another embodiment of the present invention.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
  • the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
  • FIG. 3 is a block diagram illustrating a graphic accelerator connected between a processor and a display device according to an embodiment of the present invention.
  • 4 is a diagram illustrating a signal connection relationship between a first memory and a second memory by a general memory map connection method
  • FIG. 5 is a signal of a graphic accelerator, a memory, and a processor having the same memory interface according to an embodiment of the present invention. It is a figure which shows the connection relationship.
  • 6 is a diagram illustrating a connection relationship between a processor, a graphic accelerator, and a display device according to the present invention.
  • the graphics accelerator 300 is connected to the processor 100 and the display device 120 between the processor 100 and the display device 120.
  • the processor 100 is a multimedia processor including a graphics processor, a video codec, a JPEG processor, an image signal processor, and the like, and may be a processor provided in a mobile device (mobile communication terminal, smart phone, etc.).
  • the display device 120 refers to a device capable of implementing a display by receiving data such as an LCD, a TV, a projector, a monitor, and the like.
  • the graphics accelerator 300 includes an accelerator controller 310, a frame memory 320, and a display DMA 330.
  • the processor 100 does not write data to be transmitted to the display apparatus 120 to the graphic accelerator 300 directly, instead of writing the data to the memory 110 shared by each processing unit as before.
  • the accelerator controller 310 has the same interface as the memory 110 on the input side.
  • the memory 110 of the processor 100 may be a single data rate (SDR) or a double data rate (DDR) SDRAM. Accordingly, the accelerator controller 310 may input / output data from the processor 100 through an SDRAM interface such as SDR or DDR.
  • the accelerator controller 310 receives a write command directly from the processor 100 and writes data corresponding to the write command in the frame memory 320.
  • the data recorded in the frame memory 320 is the content that the processor 100 wants to display through the display device 120, that is, a predetermined screen (still image or video, etc.) or updated content of a screen already displayed. Is related to.
  • the display DMA 120 transmits the data recorded in the frame memory 320 to the display device 120.
  • the display DMA 120 may transmit data recorded in the frame memory 320 to the display device 120 according to a refresh rate or a request of the display device 120.
  • the read operation to the display device 120 is performed through the frame memory 320 of the graphic accelerator 300. This is performed regardless of the memory 110 shared by the processor 100, so that the memory bandwidth of the memory 110 may not be reduced.
  • graphics accelerator 300 includes accelerator controller 310, frame memory 320, and display DMA 330. It is assumed that the processor 100 includes a memory 110 shared by respective processing units, and a predetermined area of the memory 110 is allocated as a frame memory area for display. Accordingly, the processor 100 accesses the frame memory area of the memory 110 to record data when displaying a predetermined screen (still image or moving image, etc.) or updating an already displayed screen. Update.
  • the accelerator controller 310 has the same interface as the memory 110 connected to the processor 100 on the input side.
  • the accelerator controller 310 may recognize this.
  • the write operation may also include an update.
  • the accelerator controller 310 may be connected to the processor 100 through a memory bus or a separate external serial bus. When connected through a memory bus, some of the memory buses connected between the processor 100 and the memory 110 may be shared.
  • the accelerator controller 310 After the accelerator controller 310 recognizes a write command from the processor 100 to the memory 110, the accelerator controller 310 determines whether the corresponding write command is a write command to an area allocated to the frame memory area of the memory 110. In the case of a write command to the frame memory area, the accelerator controller 310 copies data corresponding to the write command stored in the frame memory area of the memory 110 to the frame memory 320.
  • the read operation to the display device 120 is performed only in the frame memory 320 of the graphic accelerator 300, not in the memory 110. Through this, the memory bandwidth of the memory 110 shared by the processor 100 may not be reduced.
  • the accelerator controller 310 has an SDRAM interface such as SDR or DDR on the input side, which is preferably the same as the memory 110 of the processor 100.
  • the memory map access method is a method of distinguishing data access by a chip select signal while two or more memories write a control signal and a data signal at the same time, and is mainly used to increase the capacity of the memory.
  • the control signal includes a readable signal (REN), a writable signal (WEN), a row address strobe (RAS), a column address strobe (CAS), an address signal (ADDRESS), and the data signal is a data input / output line (DATA_IO). Is passed through).
  • the chip select signals CS1 and CS2 are a kind of control signal, but are used for selecting a specific memory.
  • the first chip select signal CS1 selects the first memory 210 and the second chip select signal CS2 selects the second memory 220.
  • the first chip select signal and the second chip select signal are not simultaneously accessed by the general attributes of the memory controller included in the processor 100.
  • One memory is selected only when the memory address is mapped to another memory address. For example, from 0 to 1M, only the first memory 210 is activated by the first chip select signal, and the second memory 220 is operated as if it is not disabled.
  • the memory 110 shared by the processor 100 corresponds to the first memory 210
  • the graphics accelerator 300 corresponds to the second memory 220.
  • the graphics accelerator 300 detects that a write operation is performed at a corresponding address when a predetermined area of the memory 110 is written (including an update) to the frame memory area, and the same contents are stored in the internal frame memory 320. Operate to be recorded.
  • the first chip select signal CS1 should be additionally connected.
  • the graphics accelerator 300 detects that the write operation of the processor 100 to the memory 110 is performed through the memory bus. This operation is performed in the accelerator controller 310.
  • the accelerator controller 310 includes a separate storage unit, and first location information about an address and a size of a frame memory area located in the memory 110 is input in advance.
  • the accelerator controller 310 detects that the write operation is performed to the memory 110, the accelerator controller 310 obtains second position information of the memory 110 related to the current write operation through the memory bus. Thus, the accelerator controller 310 compares the first position information with the second position information. That is, information about the address of the memory 110 associated with performing the write operation and the address and size of the frame memory area located in the memory 110 that are input in advance are compared. When the write operation is currently performed in the frame memory area, the copy operation of the same data is executed by the frame memory 320 inside the graphic accelerator 300.
  • the accelerator controller 310 performs a current write operation via an external serial bus 109 (eg, a serial peripheral interface (SPI), etc.) of the processor 100. Information about the address of the memory 110 being used may be received.
  • an external serial bus 109 eg, a serial peripheral interface (SPI), etc.
  • the display DMA 330 of the graphics accelerator 300 DMA transfers the data recorded in the frame memory 320 to the display device 120 periodically or by request.
  • the display device 120 does not access the memory 110 of the processor 100, but accesses only the frame memory 320 of the graphic accelerator 300 to perform a read operation.
  • the display DMA 330 of the graphics accelerator 300 performs the above-described operation, the display DMA 330 of the processor may be suspended. In this case, since only the function of the display DMA 330 provided in the existing processor 100 needs to be stopped, there is an advantage of minimizing a software change in the processor 100 for applying the present invention.
  • the accelerator controller 310 has the same interface as the memory 110 of the processor 100 and is connected to the processor 100.
  • the accelerator controller 310 may also receive a write command from the processor 100 (step 710).
  • the write command also includes a command for updating data recorded in the frame memory 320.
  • the accelerator controller 310 stores data input from the processor 100 in the frame memory 320 according to the input write command (step 720).
  • the data stored in the frame memory 320 may be DMA transferred to the display device 120 by a periodic request or an arbitrary request according to the refresh rate of the display device 120 (step 730).
  • FIG. 8 is a flowchart of a graphic acceleration method of a graphic accelerator according to another embodiment of the present invention.
  • the accelerator controller 310 is connected to the memory controller 107 of the processor 100 through a memory bus.
  • the first chip selection signal for selecting the memory 110 of the processor 100 is also input to the accelerator controller 310.
  • the accelerator controller 310 determines whether a write operation to the memory 110 of the processor 100 is being performed according to whether the first chip selection signal is input (step 810). If the write operation is not being performed, step 810 is repeated until the first chip select signal is input.
  • the accelerator controller 310 determines whether the area of the memory 110 associated with the write operation is a frame memory area associated with the display. It is determined whether or not (step 820). If a write operation is performed in an area other than the frame memory area, the process returns to step 810 not related to the present invention.
  • Whether the area in which the write operation is being performed is the frame memory area may be determined based on the address and the size of the frame memory area previously input to the accelerator controller 310.
  • the accelerator controller 310 may write data written to the memory 110 of the processor 100 through the memory bus to the frame memory (eg, the graphics accelerator 300). The same is also copied to 320 (step 830).
  • the data copied to the frame memory 320 of the graphic accelerator 300 may be DMA-transferred to the display apparatus 120 according to the refresh rate of the display apparatus 120 or on request (step 840).
  • the memory bandwidth utilization in the processor can be freed, and the display and frame memory are frequently updated. It can accommodate various requirements related to functions.
  • LCDs mainly use a parallel bus, which is changing to a new serial interface such as a mobile industry processor interface (MIPI) or a mobile display digital interface (MDDI). to be.
  • MIPI mobile industry processor interface
  • MDDI mobile display digital interface
  • MIPI mobile industry processor interface
  • MDDI mobile display digital interface
  • the refresh rate can be improved and a larger display resolution can be realized because the memory bandwidth is high by utilizing the frame memory of the graphic accelerator. If the refresh rate is high, it is possible to produce a display device with a more natural feeling because the screen does not feel interrupted even on a large screen.
  • the graphic acceleration method of the graphic accelerator described above with reference to FIG. 7 or 8 may be created by a computer program. Codes and code segments constituting the program can be easily inferred by a computer programmer in the art.
  • the program is stored in a computer readable media, and read and executed by a computer, thereby implementing a graphic acceleration method of a graphic accelerator.
  • the information storage medium includes a magnetic recording medium, an optical recording medium, and a carrier wave medium.
  • FIG. 9 is a block diagram illustrating a graphic accelerator connected between a processor and a display device according to another embodiment of the present invention.
  • the functions of the accelerator controller 310, the frame memory 320, and the display DMA 330 are the same as those shown in FIG. 3, and thus a detailed description thereof will be omitted.
  • the graphics accelerator 300 may further include a camera signal processor 340 and / or a graphic signal processor 350, which should frequently update the frame memory 320.
  • the camera signal processor 340 and / or the 2D / 3D graphic signal processor 350 connected to the camera module may be provided in the graphic accelerator 300 separately from the processor 100 to frequently update the frame memory 320.
  • the memory bandwidth of the processor 100 may not be affected.
  • a graphic accelerator and a graphic acceleration method write data corresponding to a frame memory in a graphic accelerator provided outside the processor so that the memory bandwidth of the processor is not reduced even by a continuous read operation by a DMA transfer of a display device. It works.
  • the configuration of the system can be easily improved since the interface with the display device can be changed externally with minimal changes without changing the processor itself.
  • the present invention can improve the refresh rate and realize a larger display resolution.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)
  • Digital Computer Display Output (AREA)

Abstract

프레임 메모리를 포함하고 프로세서의 메모리와 같은 인터페이스를 가지는 그래픽 가속기 및 그래픽 가속 방법에 관한 것이다. 일 실시예에 따른 그래픽 가속기는, 프레임 메모리; 입력측에 상기 프로세서의 메모리와 동일한 인터페이스를 가지고, 상기 프로세서로부터 상기 디스플레이 장치로 전송하고자 하는 데이터를 상기 프레임 메모리에 기록하는 가속기 컨트롤러; 및 상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 디스플레이 DMA를 포함할 수 있다. 프로세서 외부에 구비된 그래픽 가속기에 프레임 메모리에 해당하는 데이터가 기록됨으로써 디스플레이 장치의 DMA 전송 등에 의한 연속적인 읽기 동작에 의해서도 프로세서의 메모리 대역폭을 저감시키지 않도록 하는 효과가 있다.

Description

그래픽 가속기 및 그래픽 가속 방법
본 발명은 그래픽 가속기에 관한 것으로, 보다 상세하게는 프레임 메모리를 포함하고 프로세서의 메모리와 같은 인터페이스를 가지는 그래픽 가속기 및 그래픽 가속 방법에 관한 것이다.
멀티미디어 프로세서는 외부에 연결된 디스플레이 장치로 데이터를 전송하여 사용자가 해당 내용을 시각적으로 확인할 수 있게 한다. 이 경우 프로세서 내에 구비되거나 프로세서에 연결된 메모리는 내부의 특정 영역에 디스플레이될 데이터(예를 들어, 객체(object), 비디오 데이터, GUI(Graphic User Interface) 등)가 기록된다. 멀티미디어 프로세서에 연결된 디스플레이 장치가 DMA(Direct Memory Access) 동작 등을 수행하여 기록된 데이터를 읽고 출력함으로써 디스플레이가 구현된다. 여기서, 프로세서는 모바일 장치(이동 통신 단말, 스마트폰 등) 등에 구비될 수 있으며, 디스플레이 장치는 LCD, TV, 프로젝터, 모니터 등일 수 있다.
도 1은 디스플레이 장치에 연결되고 메모리를 공유하는 프로세서의 구성 블록도이고, 도 2는 내부에 별도의 프레임 메모리를 구비한 프로세서의 구성 블록도이다.
프로세서(100)는 프로세서 코어(101), 2차원/3차원 그래픽 처리부(102), 비디오 코덱(103), JPEG 처리부(104), 이미지 신호 처리부(105), 디스플레이 DMA(106) 등을 포함하고 있으며, 메모리 컨트롤러(107)를 통해 메모리(110)를 공유하여 액세스(access)한다.
프로세서 코어(101)는 프로세서(100)의 각 구성요소들을 제어하고 외부 장치(예를 들어, 디스플레이 장치(120) 등)와의 통신 등을 제어하고, 프로세서(100)의 기본적인 기능 수행이 가능하도록 한다. 2차원/3차원 그래픽 처리부(102)는 평면 좌표 및 색상의 값을 이용한 2차원 그래픽 또는 점(벡터), 선, 색상의 값을 가지는 3차원 그래픽에 관련된 기능을 수행한다. 비디오 코덱(103)은 소정의 인코딩 방식을 이용하여 멀티미디어 데이터의 인코딩 및/또는 디코딩을 수행한다. JPEG 처리부(104)는 사진 등의 정지 영상을 JPEG 압축기술에 따라 압축한다. 이미지 신호 처리부(105)는 이미지 센서 등으로부터 입력되는 이미지 신호를 타 처리부에서 활용할 수 있도록 가공한다. 디스플레이 DMA(106)는 디스플레이 장치(120)로 메모리(110)의 소정 영역에 저장된 데이터를 DMA 전송하여 디스플레이되도록 한다.
메모리(110) 내에는 디스플레이 장치(120)에서 표시될 데이터가 저장되는 별도의 영역이 구분되어 있으며, 이를 프레임 메모리 영역이라 칭한다.
여러 구성요소들이 각각의 기능을 수행하면서 프레임 메모리 영역을 업데이트하면, 디스플레이 DMA(330)에서는 프레임 메모리 영역의 데이터를 지속적으로 외부에 연결된 디스플레이 장치(120)로 출력한다. 외부의 디스플레이 장치(120)에 별도의 메모리가 구비되어 있지 않은 경우, 리프레시 레이트(refresh rate)에 따라 주기적으로 메모리(110)의 프레임 메모리 영역을 출력하여야 한다. TV 혹은 화면 크기가 큰 디스플레이 장치의 경우 보다 많은 리프레시 레이트가 요구될 수도 있다.
리프레시 레이트에 따라 주기적으로 프레임 메모리 영역을 출력하는 것은, 프로세서 코어(101)의 계산 능력(computing power)에 영향을 주게 된다. 외부의 디스플레이 장치(120)에서 메모리(110)의 프레임 메모리 영역에 주기적으로 액세스하여 데이터를 출력함으로써, 프로세서 코어(101)가 메모리(110)에 데이터를 입출력함에 있어서 병목 현상이 발생하고 계산 능력이 약해지게 된다. 즉, 외부의 디스플레이 장치(120)로 인해 메모리 대역폭(memory bandwidth)이 약화되는 문제점이 있다. 여기서, 메모리 대역폭은 단위 시간에 메모리에 데이터를 액세스(읽기 또는 쓰기)할 수 있는 빈도 혹은 대역폭을 말하며, 단위는 초당 바이트값(bytes/sec)으로 나타내기도 한다. 즉, 소정 시간 안에 액세스할 수 있는 데이터량을 나타낸다.
프로세서(100)의 각 처리부들은 공유하고 있는 메모리(110)에 대해서 액세스할 수 있는 데이터 레이트(data rate), 즉 메모리 대역폭은 단일 처리부가 액세스할 수 있는 최대 데이터 레이트, 즉 최대 메모리 대역폭보다 항상 작게 사용할 수 밖에 없다. 따라서, 각 처리부들이 공유해서 사용할 수 있는 메모리 대역폭, 즉 단위 시간 내에 액세스할 수 있는 데이터량은 메모리(110)를 공유하는 처리부의 수가 적을수록 커질 수 있다.
이를 위해 프레임 메모리(108)는 메모리(110)로부터 분리되어 별도의 메모리 공간으로 프로세서(100) 내에 구비된 경우가 도 2에 도시되어 있다. 이 경우 프레임 메모리(108)의 크기에 따라 디스플레이할 수 있는 화면 크기가 제한된다. 따라서, 보다 넓은 화면에 디스플레이하고자 하는 경우 프레임 메모리를 크게 만들어야 하므로 프로세서(100)에 해당하는 칩을 별도로 제작해야 하는 문제점이 있다.
따라서, 본 발명은 프로세서 외부에 구비된 그래픽 가속기에 프레임 메모리에 해당하는 데이터가 기록됨으로써 디스플레이 장치의 DMA 전송 등에 의한 연속적인 읽기 동작에 의해서도 프로세서의 메모리 대역폭을 저감시키지 않도록 하는 그래픽 가속기 및 그래픽 가속 방법을 제공한다.
또한, 본 발명은 프로세서 자체를 교환하지 않고 최소한의 변경으로 외부에서 디스플레이 장치와의 인터페이스를 바꾸어 줄 수 있기 때문에 시스템의 구성을 쉽게 향상시킬 수 있는 그래픽 가속기 및 그래픽 가속 방법을 제공한다.
또한, 본 발명은 리프레시 레이트를 향상시킬 수 있고, 더 큰 디스플레이 해상도(display resolution)를 구현할 수 있는 그래픽 가속기 및 그래픽 가속 방법을 제공한다.
본 발명의 일 측면에 따르면, 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기가 제공된다.
본 발명의 일 실시예에 따른 그래픽 가속기는, 프레임 메모리; 입력측에 상기 프로세서의 메모리와 동일한 인터페이스를 가지고, 상기 프로세서로부터 상기 디스플레이 장치로 전송하고자 하는 데이터를 상기 프레임 메모리에 기록하는 가속기 컨트롤러; 및 상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 디스플레이 DMA를 포함할 수 있다.
상기 가속기 컨트롤러는 SDRAM 인터페이스를 통해 상기 프로세서로부터 상기 데이터를 입출력할 수 있다.
상기 가속기 컨트롤러는 상기 프로세서의 상기 메모리로의 쓰기 명령을 분석하고, 상기 쓰기 명령이 상기 메모리 내의 소정 영역에의 쓰기 명령인 경우 상기 쓰기 명령에 상응하는 데이터를 상기 프레임 메모리로 복사할 수 있다. 여기서, 상기 프레임 메모리는 상기 프로세서의 메모리의 연장된 메모리 맵 상에 위치하는 메모리 맵 접속 방식에 의해 상기 데이터가 기록될 수 있다.
또한, 상기 가속기 컨트롤러는 상기 프로세서의 메모리를 선택하는 칩 선택 신호를 함께 입력받을 수 있다. 상기 소정 영역은 상기 메모리 중 프레임 메모리 영역일 수 있다. 상기 가속기 컨트롤러는 미리 입력된 상기 메모리의 프레임 메모리 영역의 제1 위치 정보와, 상기 분석한 쓰기 명령에 상응하는 상기 메모리의 제2 위치 정보를 비교하여 상기 쓰기 명령이 상기 메모리의 프레임 메모리 영역에의 쓰기 명령인지 여부를 판단할 수 있다.
상기 프레임 메모리에 연결되어 업데이트(update)를 수행하는 카메라 신호처리부 및 그래픽 신호처리부 중 적어도 하나를 더 포함할 수 있다.
상기 디스플레이 DMA는 상기 디스플레이 장치의 리프레시 레이트(refresh rate) 또는 요청에 따라 상기 데이터를 상기 디스플레이 장치로 전송할 수 있다.
본 발명의 다른 측면에 따르면, 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 그래픽 가속 방법 및 그 그래픽 가속 방법을 수행하기 위한 프로그램이 기록된 기록매체가 제공된다.
본 발명의 일 실시예에 따른 그래픽 가속 방법은, 상기 프로세서로부터 쓰기 명령을 입력받는 단계; 및 상기 쓰기 명령이 입력되는 경우 상기 프로세서로부터 상기 디스플레이 장치로 전송하고자 하는 데이터를 프레임 메모리에 기록하는 단계를 포함할 수 있다. 상기 디스플레이 장치의 리프레시 레이트(refresh rate)에 따라 또는 요청에 따라 상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 단계를 더 포함할 수 있다.
본 발명의 다른 실시예에 따른 그래픽 가속 방법은, 상기 프로세서의 메모리로의 쓰기 명령이 입력되는지 판단하는 단계; 상기 쓰기 명령이 입력되는 경우 상기 쓰기 명령이 상기 메모리 내의 프레임 메모리 영역에의 쓰기 명령인지 판단하는 단계; 및 상기 쓰기 명령이 상기 프레임 메모리 영역에의 쓰기 명령인 경우 상기 쓰기 명령에 상응하는 데이터를 상기 프레임 메모리로 복사하는 단계를 포함할 수 있다. 상기 디스플레이 장치의 리프레시 레이트(refresh rate)에 따라 또는 요청에 따라 상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 단계를 더 포함할 수 있다.
상기 쓰기 명령이 입력되는지 판단하는 단계는, 상기 프로세서의 메모리를 선택하는 칩 선택 신호를 함께 입력받음으로써 판단할 수 있다.
상기 쓰기 명령이 입력되는 경우 상기 쓰기 명령이 상기 메모리 내의 프레임 메모리 영역에의 쓰기 명령인지 판단하는 단계는, 미리 입력된 상기 메모리의 프레임 메모리 영역의 제1 위치 정보와, 상기 분석한 쓰기 명령에 상응하는 상기 메모리의 제2 위치 정보를 비교하여 상기 쓰기 명령이 상기 메모리의 프레임 메모리 영역에의 쓰기 명령인지 여부를 판단할 수 있다.
전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
도 1은 디스플레이 장치에 연결되고 메모리를 공유하는 프로세서의 구성 블록도.
도 2는 내부에 별도의 프레임 메모리를 구비한 프로세서의 구성 블록도.
도 3은 본 발명의 일 실시예에 따른 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 구성 블록도.
도 4는 일반적인 메모리 맵 접속 방식에 의한 제1 메모리와 제2 메모리의 신호 연결 관계를 나타낸 도면.
도 5는 본 발명의 일 실시예에 따라 동일한 메모리 인터페이스를 가지는 그래픽 가속기 및 메모리와 프로세서의 신호 연결 관계를 나타낸 도면.
도 6은 본 발명에 따른 프로세서, 그래픽 가속기 및 디스플레이 장치의 연결 관계를 나타낸 도면.
도 7은 본 발명의 일 실시예에 따른 그래픽 가속기의 그래픽 가속 방법의 순서도.
도 8은 본 발명의 다른 실시예에 따른 그래픽 가속기의 그래픽 가속 방법의 순서도.
도 9는 본 발명의 다른 실시예에 따른 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 구성 블록도.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
도 3은 본 발명의 일 실시예에 따른 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 구성 블록도이다. 도 4는 일반적인 메모리 맵 접속 방식에 의한 제1 메모리와 제2 메모리의 신호 연결 관계를 나타낸 도면이고, 도 5는 본 발명의 일 실시예에 따라 동일한 메모리 인터페이스를 가지는 그래픽 가속기 및 메모리와 프로세서의 신호 연결 관계를 나타낸 도면이다. 도 6은 본 발명에 따른 프로세서, 그래픽 가속기 및 디스플레이 장치의 연결 관계를 나타낸 도면이다.
도 3을 참조하면, 그래픽 가속기(300)는 프로세서(100)와 디스플레이 장치(120) 사이에서 프로세서(100) 및 디스플레이 장치(120)와 연결되어 있다.
프로세서(100)는 그래픽 처리부, 비디오 코덱, JPEG 처리부, 이미지 신호 처리부 등을 구비한 멀티미디어 프로세서로, 모바일 장치(이동 통신 단말, 스마트 폰 등)에 구비되는 프로세서일 수 있다. 디스플레이 장치(120)는 LCD, TV, 프로젝터, 모니터 등 데이터를 전송받아 디스플레이를 구현할 수 있는 장치를 말한다.
일 실시예에서, 그래픽 가속기(300)는 가속기 컨트롤러(310), 프레임 메모리(320), 디스플레이 DMA(330)를 포함한다. 프로세서(100)는 디스플레이 장치(120)로 전송할 데이터를 종전과 같이 각 처리부들이 공유하고 있는 메모리(110)에 기록하지 않고 직접 그래픽 가속기(300)에만 전송한다.
가속기 컨트롤러(310)는 입력측에 메모리(110)와 동일한 인터페이스를 가진다. 프로세서(100)의 메모리(110)는 SDR(Single Data Rate) 또는 DDR(Double Data Rate) SDRAM 등일 수 있다. 따라서, 가속기 컨트롤러(310)는 SDR 또는 DDR 등의 SDRAM 인터페이스를 통하여 프로세서(100)로부터 데이터를 입출력할 수 있다.
가속기 컨트롤러(310)는 프로세서(100)로부터 직접 쓰기 명령을 입력받고, 해당 쓰기 명령에 상응하는 데이터를 프레임 메모리(320)에 기록한다. 프레임 메모리(320)에 기록되는 데이터는 프로세서(100)가 디스플레이 장치(120)를 통해 디스플레이하고자 하는 내용, 즉 소정 화면(정지 영상 또는 동영상 등) 또는 이미 디스플레이되고 있는 화면의 업데이트(update)된 내용에 관련된다.
디스플레이 DMA(120)는 프레임 메모리(320)에 기록된 데이터를 디스플레이 장치(120)로 DMA(Direct Memory Access) 전송한다. 디스플레이 DMA(120)는 디스플레이 장치(120)의 리프레시 레이트(refresh rate) 또는 요청에 따라 프레임 메모리(320)에 기록된 데이터를 디스플레이 장치(120)로 전송할 수 있다.
디스플레이 장치(120)로의 읽기 동작은 그래픽 가속기(300)의 프레임 메모리(320)를 통해 수행되도록 한다. 이는 프로세서(100)가 공유하는 메모리(110)와 무관하게 수행되는 바, 메모리(110)의 메모리 대역폭을 저감시키지 않을 수 있게 된다.
다른 실시예에서, 그래픽 가속기(300)는 가속기 컨트롤러(310), 프레임 메모리(320), 디스플레이 DMA(330)를 포함한다. 프로세서(100)는 내부의 각 처리부들이 공유하는 메모리(110)를 구비하고 있으며, 메모리(110) 중 소정 영역이 디스플레이를 위한 프레임 메모리 영역으로 할당되어 있는 것으로 가정한다. 따라서, 프로세서(100)는 소정 화면(정지 영상 또는 동영상 등)을 디스플레이하거나 이미 디스플레이되고 있는 화면의 업데이트(update)를 수행하고자 하는 경우에 메모리(110)의 프레임 메모리 영역에 액세스하여 데이터를 기록 또는 업데이트한다.
가속기 컨트롤러(310)는 입력측에 프로세서(100)에 연결된 메모리(110)와 동일한 인터페이스를 가진다. 동일한 인터페이스를 가짐으로 인해 프로세서(100)가 상술한 것과 같이 쓰기 명령을 통해 메모리(110)에 쓰기 동작을 수행하는 경우 가속기 컨트롤러(310)는 이를 인지할 수 있다. 여기서, 쓰기 동작에는 업데이트(update)도 포함될 수 있다.
가속기 컨트롤러(310)는 메모리 버스를 통해 연결되거나 별도의 외부 직렬 버스를 통해 프로세서(100)와 연결될 수 있다. 메모리 버스를 통해 연결되는 경우 프로세서(100)와 메모리(110) 사이에 연결된 메모리 버스 중 일부를 공유할 수 있다.
가속기 컨트롤러(310)는 프로세서(100)로부터 메모리(110)로의 쓰기 명령을 인지한 이후, 해당 쓰기 명령이 메모리(110) 중 프레임 메모리 영역으로 할당된 영역에의 쓰기 명령인지 여부를 판단한다. 프레임 메모리 영역에의 쓰기 명령인 경우 가속기 컨트롤러(310)는 메모리(110)의 프레임 메모리 영역에 저장되는 쓰기 명령에 상응하는 데이터를 프레임 메모리(320)에 복사한다.
이후 디스플레이 장치(120)로의 읽기 동작은 메모리(110)가 아닌 그래픽 가속기(300)의 프레임 메모리(320)에서만 수행되도록 한다. 이를 통해 프로세서(100)가 공유하는 메모리(110)의 메모리 대역폭을 저감시키지 않을 수 있게 된다.
가속기 컨트롤러(310)는 입력측에 SDR 또는 DDR 등의 SDRAM 인터페이스를 가지며, 이는 프로세서(100)의 메모리(110)와 동일한 것이 바람직하다.
메모리 맵 접속(Memory Mapped Access) 방식을 사용하기 위하여 가속기 컨트롤러(310)는 프로세서(100)의 메모리와 동일한 인터페이스를 가질 필요가 있다. 메모리 맵 접속 방법은 둘 이상의 메모리가 제어 신호와 데이터 신호를 동시에 쓰면서 칩 선택 신호(Chip Select Signal)로 데이터의 액세스를 구분하는 방법으로, 메모리의 용량을 넓히는데 주로 사용된다.
제어 신호로는 읽기 가능 신호(REN), 쓰기 가능 신호(WEN), 행 주소 스트로브(RAS), 열 주소 스트로브(CAS), 주소 신호(ADDRESS) 등이 사용되며, 데이터 신호는 데이터 입출력 라인(DATA_IO)를 통해 전달된다. 칩 선택 신호(CS1, CS2)는 제어 신호의 일종이나, 특정 메모리를 선택하는 용도로 사용된다.
도 4를 참조하면, 일반적으로 제1 칩 선택 신호(CS1)는 제1 메모리(210)를 선택하고, 제2 칩 선택 신호(CS2)는 제2 메모리(220)를 선택하도록 설정된다. 제1 칩 선택 신호와 제2 칩 선택 신호는 프로세서(100)에 구비된 메모리 컨트롤러의 일반적인 속성에 의해 동시에 액세스되지 않는다. 그리고 어느 하나의 메모리는 타 메모리의 주소 영역으로 매핑되어 해당 메모리 번지에 액세스될 경우에만 선택된다. 예를 들어, 0 ~ 1M까지는 제1 칩 선택 신호에 의해 제1 메모리(210)만 활성화(active)되고, 제2 메모리(220)는 디세이블(disable)되어 없는 것과 같이 동작된다.
도 5를 참조하면, 본 발명에서는 제1 메모리(210)에 프로세서(100)가 공유하는 메모리(110)가 대응되고, 제2 메모리(220)에 그래픽 가속기(300)가 대응된다. 그래픽 가속기(300)는 메모리(110)의 영역 중 소정 영역이 프레임 메모리 영역으로 쓰기(업데이트 포함)될 때 해당 번지에 쓰기 동작이 수행되는 것을 감지하고, 내부의 프레임 메모리(320)에 동일 내용이 기록되도록 동작한다. 이 경우 그래픽 가속기(300)는 메모리(110)에서 쓰기 동작이 수행되는 것을 인지하여야 하기 때문에 제1 칩 선택 신호(CS1)가 추가적으로 연결되어 있어야 한다.
그래픽 가속기(300)는 메모리 버스를 통해 프로세서(100)의 메모리(110)에의 쓰기 동작이 수행됨을 감지한다. 이 동작은 가속기 컨트롤러(310)에서 수행된다. 가속기 컨트롤러(310)는 별도의 저장부를 구비하고 있어, 메모리(110)에 위치하고 있는 프레임 메모리 영역의 주소와 크기에 대한 제1 위치 정보가 미리 입력되어 있다.
가속기 컨트롤러(310)는 메모리(110)에의 쓰기 동작 수행이 감지된 경우, 메모리 버스를 통해 현재 쓰기 동작 수행과 관련된 메모리(110)의 제2 위치 정보를 획득한다. 따라서, 가속기 컨트롤러(310)는 제1 위치 정보와 제2 위치 정보를 비교한다. 즉, 쓰기 동작 수행과 관련된 메모리(110)의 번지에 대한 정보 및 미리 입력되어 있는 메모리(110)에 위치하고 있는 프레임 메모리 영역의 주소와 크기를 비교한다. 현재 쓰기 동작 수행이 프레임 메모리 영역에서 이루어지고 있는 경우에는 그래픽 가속기(300) 내부의 프레임 메모리(320)로 동일한 데이터의 복사 동작을 실행시킨다.
또한, 또 다른 실시예에서 가속기 컨트롤러(310)는 프로세서(100)의 외부 직렬 버스(109)(예를 들어, 주변장치용 직렬 인터페이스(SPI: Serial Peripheral Interface) 등)를 통해 현재 쓰기 동작을 수행중인 메모리(110)의 번지 등에 대한 정보를 전달받을 수도 있다.
그래픽 가속기(300)의 디스플레이 DMA(330)는 프레임 메모리(320)에 기록된 데이터를 주기적으로 또는 요청에 의해 디스플레이 장치(120)로 DMA 전송한다. 디스플레이 장치(120)는 프로세서(100)의 메모리(110)에는 액세스하지 않고, 그래픽 가속기(300)의 프레임 메모리(320)에만 액세스하여 읽기 동작을 수행한다.
그래픽 가속기(300)의 디스플레이 DMA(330)가 상술한 동작을 수행하므로, 프로세서의 디스플레이 DMA(330)는 그 기능이 중지될 수 있다. 이 경우 기존 프로세서(100)에 구비된 디스플레이 DMA(330)의 기능만을 중지시키면 되므로, 본 발명을 적용하기 위한 프로세서(100)에서의 소프트웨어 변경을 최소화할 수 있는 장점이 있다.
도 7은 본 발명의 일 실시예에 따른 그래픽 가속기의 그래픽 가속 방법의 순서도이다. 가속기 컨트롤러(310)는 프로세서(100)의 메모리(110)와 동일한 인터페이스를 가지고 있으며, 프로세서(100)에 연결되어 있다.
가속기 컨트롤러(310)는 메모리(110)와 동일한 인터페이스를 가지고 있으므로, 프로세서(100)로부터의 쓰기 명령도 입력받을 수 있다(단계 710). 여기서, 쓰기 명령에는 프레임 메모리(320)에 기록된 데이터를 업데이트하는 명령도 포함된다.
가속기 컨트롤러(310)는 입력된 쓰기 명령에 따라 프로세서(100)로부터 입력되는 데이터를 프레임 메모리(320)에 저장한다(단계 720).
이후 디스플레이 장치(120)의 리프레시 레이트에 따른 주기적인 요청 또는 임의의 요청에 의해 프레임 메모리(320)에 저장된 데이터는 디스플레이 장치(120)로 DMA 전송될 수 있다(단계 730).
도 8은 본 발명의 다른 실시예에 따른 그래픽 가속기의 그래픽 가속 방법의 순서도이다. 여기서, 가속기 컨트롤러(310)는 프로세서(100)의 메모리 컨트롤러(107)와 메모리 버스를 통해 연결되어 있다. 특히 도 5에 도시된 것과 같이 프로세서(100)의 메모리(110)를 선택하는 제1 칩 선택 신호가 가속기 컨트롤러(310)에도 입력된다.
가속기 컨트롤러(310)는 제1 칩 선택 신호의 입력 여부에 따라서 프로세서(100)의 메모리(110)에의 쓰기 동작이 수행중인지 여부를 판단한다(단계 810). 쓰기 동작이 수행중이지 않은 경우에는 제1 칩 선택 신호가 입력될 때까지 단계 810을 반복한다.
이후 제1 칩 선택 신호가 입력되어 프로세서(100)의 메모리(110)가 쓰기 동작을 수행중인 경우, 가속기 컨트롤러(310)는 쓰기 동작과 관련된 메모리(110)의 영역이 디스플레이와 연관된 프레임 메모리 영역인지 여부를 판단한다(단계 820). 프레임 메모리 영역 이외의 영역에 쓰기 동작이 수행중인 경우에는 본 발명과 무관한 바 단계 810으로 되돌아간다.
쓰기 동작이 수행중인 영역이 프레임 메모리 영역인지 여부는 가속기 컨트롤러(310)에 미리 입력된 프레임 메모리 영역의 주소와 크기를 기초로 하여 판단가능하다.
쓰기 동작과 관련된 메모리(110)의 영역이 프레임 메모리 영역인 경우, 가속기 컨트롤러(310)는 메모리 버스를 통해 프로세서(100)의 메모리(110)에 기록되는 데이터를 그래픽 가속기(300)의 프레임 메모리(320)에도 동일하게 복사한다(단계 830).
이후 그래픽 가속기(300)의 프레임 메모리(320)에 복사된 데이터는 디스플레이 장치(120)의 리프레시 레이트에 따라 또는 요청에 따라 디스플레이 장치(120)로 DMA 전송되어 디스플레이될 수 있다(단계 840).
최근 디스플레이 장치를 둘 이상으로 구비하고자 하는 요구가 늘어나고 있다. 디스플레이의 요구가 늘어나는 경우 디스플레이를 위한 메모리 대역폭이 늘어나게 된다. 하지만, 디스플레이를 위한 메모리 대역폭이 증가하더라도 프로세서의 메인 메모리의 메모리 대역폭은 저감시키지 않도록 하는 구성이 필요하게 된다.
이 경우 본 발명의 실시예들에 따른 그래픽 가속기 및 그래픽 가속 방법을 이용하여 프레임 메모리를 프로세서의 외부로 옮김으로써, 프로세서에서의 메모리 대역폭 활용이 자유로워질 수 있고, 디스플레이 및 프레임 메모리를 자주 업데이트하는 기능과 관련된 다양한 요구사항을 수용할 수 있다.
예를 들어, 디스플레이 장치 중 LCD는 병렬 버스(Parallel Bus)를 주로 사용하는데, 이는 곧 MIPI(Mobile Industry Processor Interface)나 MDDI(Mobile Display Digital Interface) 등의 새로운 직렬 인터페이스(Serial Interface)로 변화하는 추세이다. 하지만, 종래 방식에 의하면 프로세서 자체를 바꾸어야 하는 문제점이 있다. 하지만, 본 발명의 실시예에 의하는 경우 최소한의 변경으로 외부에서 해당 인터페이스를 바꾸어 줄 수 있기 때문에 시스템의 구성을 쉽게 향상시킬 수 있다.
NTSC, PAL등의 TV, HDTV의 인터페이스인 HDMI(High Definition Multimedia Interface), USB 등 다양하면서도 새롭게 요구되는 디스플레이 장치의 인터페이스에도 상술한 것과 유사한 문제가 있으며, 본 발명의 실시예에 의하는 경우 최소한의 변경으로 외부에서 해당 인터페이스를 바꾸어 줄 수 있기 때문에 시스템의 구성을 쉽게 향상시킬 수 있다.
또한, 디스플레이 장치에서 읽기 동작을 수행하는 경우 그래픽 가속기의 프레임 메모리를 활용함으로써 메모리 대역폭이 높기 때문에 리프레시 레이트를 향상시킬 수 있고, 더 큰 디스플레이 해상도(display resolution)를 구현할 수 있다. 리프레시 레이트가 높으면 큰 화면에서도 화면의 끊김을 느낄 수 없기 때문에 보다 자연스러운 느낌의 디스플레이 장치 제작이 가능하다.
한편, 도 7 또는 도 8을 통해 상술한 그래픽 가속기의 그래픽 가속 방법은 컴퓨터 프로그램으로 작성 가능하다. 상기 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 상기 프로그램은 컴퓨터가 읽을 수 있는 정보저장매체(computer readable media)에 저장되고, 컴퓨터에 의하여 읽혀지고 실행됨으로써 그래픽 가속기의 그래픽 가속 방법을 구현한다. 상기 정보저장매체는 자기 기록매체, 광 기록매체, 및 캐리어 웨이브 매체를 포함한다.
도 9는 본 발명의 다른 실시예에 따른 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 구성 블록도이다. 가속기 컨트롤러(310), 프레임 메모리(320), 디스플레이 DMA(330)의 기능은 도 3에 도시된 것과 동일한 바 상세한 설명은 생략하기로 한다.
그래픽 가속기(300)는 프레임 메모리(320)를 자주 업데이트하여야 하는 카메라 신호처리부(340) 및/또는 그래픽 신호처리부(350)를 더 포함할 수 있다.
카메라 모듈과 연결되는 카메라 신호처리부(340) 및/또는 2차원/3차원 그래픽 신호처리부(350)는 프로세서(100)와 별도로 그래픽 가속기(300) 내에 구비됨으로써 프레임 메모리(320)를 자주 업데이트하여도 프로세서(100)의 메모리 대역폭에는 영향을 주지 않을 수 있게 된다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
본 발명에 따른 그래픽 가속기 및 그래픽 가속 방법은 프로세서 외부에 구비된 그래픽 가속기에 프레임 메모리에 해당하는 데이터가 기록됨으로써 디스플레이 장치의 DMA 전송 등에 의한 연속적인 읽기 동작에 의해서도 프로세서의 메모리 대역폭을 저감시키지 않도록 하는 효과가 있다.
또한, 프로세서 자체를 교환하지 않고 최소한의 변경으로 외부에서 디스플레이 장치와의 인터페이스를 바꾸어 줄 수 있기 때문에 시스템의 구성을 쉽게 향상시킬 수 있다.
또한, 본 발명은 리프레시 레이트를 향상시킬 수 있고, 더 큰 디스플레이 해상도를 구현할 수 있다.

Claims (16)

  1. 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기에 있어서,
    프레임 메모리;
    입력측에 상기 프로세서의 메모리와 동일한 인터페이스를 가지고, 상기 프로세서로부터 상기 디스플레이 장치로 전송하고자 하는 데이터를 상기 프레임 메모리에 기록하는 가속기 컨트롤러; 및
    상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 디스플레이 DMA를 포함하는 그래픽 가속기.
  2. 제1항에 있어서,
    상기 가속기 컨트롤러는 SDRAM 인터페이스를 통하여 상기 프로세서로부터 상기 데이터를 입출력하는 것을 특징으로 하는 그래픽 가속기.
  3. 제1항에 있어서,
    상기 가속기 컨트롤러는 상기 프로세서의 상기 메모리로의 쓰기 명령을 분석하고, 상기 쓰기 명령이 상기 메모리 내의 소정 영역에의 쓰기 명령인 경우 상기 쓰기 명령에 상응하는 데이터를 상기 프레임 메모리로 복사하는 것을 특징으로 하는 그래픽 가속기.
  4. 제3항에 있어서,
    상기 가속기 컨트롤러는 상기 프로세서의 메모리를 선택하는 칩 선택 신호를 함께 입력받는 것을 특징으로 하는 그래픽 가속기.
  5. 제3항에 있어서,
    상기 소정 영역은 상기 메모리 중 프레임 메모리 영역인 것을 특징으로 하는 그래픽 가속기.
  6. 제5항에 있어서,
    상기 가속기 컨트롤러는 미리 입력된 상기 메모리의 프레임 메모리 영역의 제1 위치 정보와, 상기 분석한 쓰기 명령에 상응하는 상기 메모리의 제2 위치 정보를 비교하여 상기 쓰기 명령이 상기 메모리의 프레임 메모리 영역에의 쓰기 명령인지 여부를 판단하는 것을 특징으로 하는 그래픽 가속기.
  7. 제3항에 있어서,
    상기 프레임 메모리는 상기 프로세서의 메모리의 연장된 메모리 맵 상에 위치하는 메모리 맵 접속 방식에 의해 상기 데이터가 기록되는 것을 특징으로 하는 그래픽 가속기.
  8. 제1항에 있어서,
    상기 프레임 메모리에 연결되어 업데이트(update)를 수행하는 카메라 신호처리부 및 그래픽 신호처리부 중 적어도 하나를 더 포함하는 것을 특징으로 하는 그래픽 가속기.
  9. 제1항에 있어서,
    상기 디스플레이 DMA는 상기 디스플레이 장치의 리프레시 레이트(refresh rate) 또는 요청에 따라 상기 데이터를 상기 디스플레이 장치로 전송하는 것을 특징으로 하는 그래픽 가속기.
  10. 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 그래픽 가속 방법에 있어서,
    상기 프로세서로부터 쓰기 명령을 입력받는 단계; 및
    상기 쓰기 명령이 입력되는 경우 상기 프로세서로부터 상기 디스플레이 장치로 전송하고자 하는 데이터를 프레임 메모리에 기록하는 단계를 포함하는 그래픽 가속 방법.
  11. 제10항에 있어서,
    상기 디스플레이 장치의 리프레시 레이트(refresh rate)에 따라 또는 요청에 따라 상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 단계를 더 포함하는 그래픽 가속기의 그래픽 가속 방법.
  12. 프로세서와 디스플레이 장치 사이에 연결되는 그래픽 가속기의 그래픽 가속 방법에 있어서,
    상기 프로세서의 메모리로의 쓰기 명령이 입력되는지 판단하는 단계;
    상기 쓰기 명령이 입력되는 경우 상기 쓰기 명령이 상기 메모리 내의 프레임 메모리 영역에의 쓰기 명령인지 판단하는 단계; 및
    상기 쓰기 명령이 상기 프레임 메모리 영역에의 쓰기 명령인 경우 상기 쓰기 명령에 상응하는 데이터를 상기 프레임 메모리로 복사하는 단계를 포함하는 그래픽 가속기의 그래픽 가속 방법.
  13. 제12항에 있어서,
    상기 디스플레이 장치의 리프레시 레이트(refresh rate)에 따라 또는 요청에 따라 상기 프레임 메모리에 기록된 데이터를 상기 디스플레이 장치로 DMA(Direct Memory Access) 전송하는 단계를 더 포함하는 그래픽 가속기의 그래픽 가속 방법.
  14. 제12항에 있어서,
    상기 쓰기 명령이 입력되는지 판단하는 단계는, 상기 프로세서의 메모리를 선택하는 칩 선택 신호를 함께 입력받음으로써 판단하는 것을 특징으로 하는 그래픽 가속기의 그래픽 가속 방법.
  15. 제12항에 있어서,
    상기 쓰기 명령이 입력되는 경우 상기 쓰기 명령이 상기 메모리 내의 프레임 메모리 영역에의 쓰기 명령인지 판단하는 단계는,
    미리 입력된 상기 메모리의 프레임 메모리 영역의 제1 위치 정보와, 상기 분석한 쓰기 명령에 상응하는 상기 메모리의 제2 위치 정보를 비교하여 상기 쓰기 명령이 상기 메모리의 프레임 메모리 영역에의 쓰기 명령인지 여부를 판단하는 것을 특징으로 하는 그래픽 가속기의 그래픽 가속 방법.
  16. 제10항 내지 제15항 중 어느 한 항에 기재된 그래픽 가속기의 그래픽 가속 방법을 수행하기 위하여 컴퓨터 장치에서 실행될 수 있는 명령어들의 프로그램이 기록되어 있으며, 상기 컴퓨터 장치에 의해 판독될 수 있는 프로그램이 기록된 기록매체.
PCT/KR2009/000850 2008-02-27 2009-02-23 그래픽 가속기 및 그래픽 가속 방법 Ceased WO2009107954A2 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/919,307 US20110010472A1 (en) 2008-02-27 2009-02-23 Graphic accelerator and graphic accelerating method
GB1014376A GB2469607A (en) 2008-02-27 2009-02-23 Graphic accelerator and graphic accelerating method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2008-0017708 2008-02-27
KR1020080017708A KR100941029B1 (ko) 2008-02-27 2008-02-27 그래픽 가속기 및 그래픽 가속 방법

Publications (2)

Publication Number Publication Date
WO2009107954A2 true WO2009107954A2 (ko) 2009-09-03
WO2009107954A3 WO2009107954A3 (ko) 2009-11-26

Family

ID=40024029

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2009/000850 Ceased WO2009107954A2 (ko) 2008-02-27 2009-02-23 그래픽 가속기 및 그래픽 가속 방법

Country Status (4)

Country Link
US (1) US20110010472A1 (ko)
KR (1) KR100941029B1 (ko)
GB (1) GB2469607A (ko)
WO (1) WO2009107954A2 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10141314B2 (en) * 2011-05-04 2018-11-27 Micron Technology, Inc. Memories and methods to provide configuration information to controllers
US10355001B2 (en) 2012-02-15 2019-07-16 Micron Technology, Inc. Memories and methods to provide configuration information to controllers
KR101337950B1 (ko) * 2012-02-24 2013-12-06 주식회사 휴비츠 그래픽 데이터 출력 장치 및 방법
KR102301536B1 (ko) * 2015-03-10 2021-09-14 삼성전자주식회사 고해상도 전자 현미경 이미지로부터 결정을 분석하는 방법 및 그 시스템
JP6969295B2 (ja) * 2017-10-31 2021-11-24 富士フイルムビジネスイノベーション株式会社 情報処理装置及び画像処理システム
CN108897706B (zh) * 2018-05-10 2021-07-23 北京融芯微科技有限公司 一种加速器接口
US20250005704A1 (en) * 2023-06-28 2025-01-02 Texas Instruments Incorporated Methods and apparatus to animate a splash screen

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1069428A (ja) * 1996-08-28 1998-03-10 Nec Corp ビデオ表示装置
US6501480B1 (en) * 1998-11-09 2002-12-31 Broadcom Corporation Graphics accelerator
JP2000293151A (ja) 1999-04-07 2000-10-20 Nec Corp グラフィックス表示装置及びディスプレイリストによるグラフィックス表示方法
JP2001195050A (ja) * 1999-11-05 2001-07-19 Mitsubishi Electric Corp グラフィックアクセラレータ
US6903739B2 (en) * 2001-02-20 2005-06-07 Ati International Srl Graphic display system having a frame buffer with first and second memory portions
US6999091B2 (en) * 2001-12-28 2006-02-14 Intel Corporation Dual memory channel interleaving for graphics and video
US6931484B2 (en) * 2002-04-25 2005-08-16 Intel Corporation Method and apparatus for handling memory refresh and maintenance operations
KR100510131B1 (ko) * 2003-01-29 2005-08-26 삼성전자주식회사 픽셀 캐쉬 및 이를 이용한 3차원 그래픽 가속 장치 및 방법
US20060007200A1 (en) * 2004-07-08 2006-01-12 David Young Method and system for displaying a sequence of image frames
US7362325B2 (en) * 2004-12-21 2008-04-22 Qualcomm Incorporated 2D/3D line rendering using 3D rasterization algorithms

Also Published As

Publication number Publication date
KR100941029B1 (ko) 2010-02-05
GB2469607A (en) 2010-10-20
US20110010472A1 (en) 2011-01-13
WO2009107954A3 (ko) 2009-11-26
GB201014376D0 (en) 2010-10-13
KR20080083235A (ko) 2008-09-17

Similar Documents

Publication Publication Date Title
WO2009107954A2 (ko) 그래픽 가속기 및 그래픽 가속 방법
US20140129738A1 (en) Flexible Implementation of Serial Bus Support Over Display Interface
KR100245821B1 (ko) 비디오 인터페이스와 오버레이시스템 및 그의 프로세스
US6734862B1 (en) Memory controller hub
JPH0827705B2 (ja) アダプタ
US6006287A (en) DMA transfer of an interleaved stream
JPH0827773B2 (ja) データ経路を使用可能にする方法、装置およびデータ処理システム
WO2013105716A1 (ko) 이미지 제공 시스템, 이를 위한 장치 및 이미지 제공 방법
KR100218265B1 (ko) 우선 순위 요구 및 바이패스 버스
WO2020153616A2 (ko) 캐스케이드 연결 구조의 호스트와 슬레이브 장치
US5752010A (en) Dual-mode graphics controller with preemptive video access
US5784592A (en) Computer system which includes a local expansion bus and a dedicated real-time bus for increased multimedia performance
US6189075B1 (en) Circuit for the management of memories in a multiple-user environment with access request and priority
WO2017122845A1 (ko) 채널별 이종 동작을 위한 멀티채널 초고해상도 영상 획득/재생 시스템 및 방법
US20170220069A1 (en) Docking apparatus and control method thereof
JP2003177958A (ja) 特殊メモリデバイス
WO2024071652A1 (ko) 전자 장치 및 그 제어 방법
JP3033747B1 (ja) 多画面表示回路および多画面表示回路を搭載した携帯端末機器
KR100284420B1 (ko) 디지털 비디오 캡쳐 보드
JP3204297B2 (ja) Dma転送制御装置
WO2023096079A1 (ko) 디스플레이 장치 및 제어 방법
WO2022203258A1 (ko) 전자 장치 및 그 제어 방법
CN121788333A (zh) 基于几何缓冲区的图像信号处理方法、处理设备、介质及产品
WO2024155074A1 (ko) 전자 장치 및 전자 장치의 메모리 관리 방법
CN116527831A (zh) 一种实现高速率和低功耗双向读写的数据传输系统以及信号发生器

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09715146

Country of ref document: EP

Kind code of ref document: A2

ENP Entry into the national phase

Ref document number: 1014376

Country of ref document: GB

Kind code of ref document: A

Free format text: PCT FILING DATE = 20090223

WWE Wipo information: entry into national phase

Ref document number: 1014376.6

Country of ref document: GB

WWE Wipo information: entry into national phase

Ref document number: 12919307

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 04/11/10)

122 Ep: pct application non-entry in european phase

Ref document number: 09715146

Country of ref document: EP

Kind code of ref document: A2