WO2005015504A1 - 画像処理用半導体プロセッサ - Google Patents

画像処理用半導体プロセッサ Download PDF

Info

Publication number
WO2005015504A1
WO2005015504A1 PCT/JP2004/009427 JP2004009427W WO2005015504A1 WO 2005015504 A1 WO2005015504 A1 WO 2005015504A1 JP 2004009427 W JP2004009427 W JP 2004009427W WO 2005015504 A1 WO2005015504 A1 WO 2005015504A1
Authority
WO
WIPO (PCT)
Prior art keywords
bus
image processing
processing unit
circuit
dimensional image
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/JP2004/009427
Other languages
English (en)
French (fr)
Inventor
Hirotaka Hara
Hiroyuki Hamasaki
Mitsuhiro Saeki
Kazuhiro Hirade
Makoto Takano
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.)
Renesas Technology Corp
Original Assignee
Renesas Technology Corp
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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP2005512907A priority Critical patent/JP4283809B2/ja
Publication of WO2005015504A1 publication Critical patent/WO2005015504A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00Two-dimensional [2D] image generation
    • G06T11/20Drawing from basic elements
    • G06T11/23Drawing from basic elements using straight lines or curves
    • 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

Definitions

  • the present invention relates to a semiconductor processor for image processing, for example, in the field of power management systems, set-top boxes, digital ⁇ , mobile communication, digital voice terminals, media terminals, mobile terminals, and the like. It relates to technology that is effective when applied to fields that require processing.
  • Patent Document 1 describes a graphic processor that performs three-dimensional graphics processing.
  • Patent Document 2 is described force s for a graphics processor having a thick line drawing function.
  • the inventor has studied optimization of transfer of control information and data for drawing and display control in a semiconductor processor for image processing.
  • the image processing semiconductor processor studied by the present inventors prior to the present invention has a pixel bus and a 1 ⁇ bus therein, and a central processing unit (also simply referred to as a CPU) via the CPU bus via the pixel bus. Access an external data memory.
  • a bus bridge circuit is connected to the CPU interface, and this bus bridge circuit plays the role of a bridge that distributes data from the CPU to peripheral modules and transmits data from the peripheral modules to the CPU.
  • This bus bridge circuit has a built-in direct memory access controller (DMAC) that writes data from peripheral modules without the intervention of the CPU to the data memory via the pixel bus, and transfers data from the data memory to the peripheral modules. Transfer power S-enabled.
  • DMAC direct memory access controller
  • the modules connected to the pixel bus, that is, the image module, the CPU interface, and the bus bridge circuit can transfer only between the own module and the data memory. Transfers between modules on the
  • Patent Document 1 Japanese Patent Application Laid-Open No. 2003-208631 (FIG. 32)
  • Patent Document 2 JP-A-6-28486 (FIG. 1) Disclosure of the Invention Problems to be Solved by the Invention
  • the present inventors have found out that the above-described semiconductor processor for image processing has the following problems.
  • the present inventors have studied thick line drawing by a two-dimensional image processing unit that performs two-dimensional drawing as one of the image modules.
  • drawing a bold line if the method of filling the pixels from the start point to the end point while moving the start point and the end point is adopted, if the drawing direction is different, even if the number of pixels to be filled from the start point to the end point is the same, the bold line It has been found by the present inventors that there is a problem that the widths are different.
  • An object of the present invention is to provide an image processing semiconductor processor that can improve the transfer efficiency of control information for controlling drawing and display, image data, and the like.
  • Another object of the present invention is to provide an image processing semiconductor processor capable of suppressing a decrease in data transfer efficiency due to competition on transfer paths of image information and control information. is there.
  • Another object of the present invention is to provide a semiconductor processor for image processing which has high performance in that real-time drawing and display control can be performed on a large amount of image data in real time.
  • An image processing semiconductor processor includes a central processing unit, a first bus connected to the central processing unit, and a direct memory controlling data transfer via the first bus.
  • An access controller a bus bridge circuit that transmits and receives data to and from the first bus, a three-dimensional image processing unit that receives a command from the central processing unit via the first bus and performs three-dimensional image processing,
  • a second bus connected to the bridge circuit and the plurality of first circuit modules; a third bus connected to the bus bridge circuit and the second circuit module; the first bus, the second bus, and a three-dimensional image
  • a memory interface circuit connected to a processing unit and connectable to an external memory, wherein the bus bridge circuit is connected to a circuit connected to the outside of the semiconductor chip. It is capable of controlling the direct memory access transfer between the second bus.
  • the first circuit module includes a two-dimensional image processing unit that performs, for example, two-dimensional image processing, for example, two-dimensional drawing processing.
  • the first circuit module further includes a display control unit that controls display of image data generated by, for example, the two-dimensional image processing unit or the three-dimensional image processing unit.
  • the second circuit module includes, for example, a global positioning system (GPS) module.
  • GPS global positioning system
  • the central processing unit is directly connected to the first bus, thereby eliminating the need for an intervening path controller or the like therebetween, thereby realizing high-speed data transfer with the central processing unit. it can. If the central processing unit has a superscalar structure that issues multiple instructions in one cycle, it must have an instruction processing execution capacity that is approximately twice the operating frequency. Is possible. When the access target required for executing the instruction is external memory via the first bus, the access speed is limited by the access efficiency on the first bus. At this time, only the first circuit module selected from the viewpoint of the degree of importance to the image processing operation speed is connected to the first bus, thereby suppressing an increase in waiting time due to contention for access on the first bus. Thus, it is possible to contribute to the improvement of the data processing speed by the central processing unit.
  • the first circuit module such as the image processing circuit module, is arbitrated in advance by the bus arbitration port for the second bus, and after the image processing circuit module that truly requires a real-time response is selected, the CPU and 3D image Bus right arbitration for the first bus with the processing unit is performed.
  • the image processing circuit module does not need access latency performance as high as the CPU that requires real-time response, that is, time-average throughput performance.
  • the bus arbitration logic in the memory interface circuit arbitrates bus rights among three parties: an access request from the 3D image processing unit, an access request from the circuit module connected to the first bus, and an access request via the second bus. Perform Therefore, only the module that really needs high-speed transfer and the CPU can be connected to the first bus, which makes it easy to increase the speed of the bus. Since the first circuit module such as the image processing circuit module arbitrates with the bus arbitration logic for the second bus, the real-time responsiveness of the image processing circuit module is not substantially impaired.
  • a fourth bus connected to a bus bridge circuit and usable for register setting from the central processing unit to a plurality of first circuit modules is further provided.
  • the bus bridge circuit is further capable of executing a direct memory access transfer between the second bus and the third bus.
  • the first bus has twice the number of bits of the internal bus of the central processing unit. .
  • Two sets of data having a predetermined number of bits are prepared in the processing cycle of the central processing unit, and the prepared two sets of data can be transferred to the first bus in one bus cycle.
  • the two-dimensional image processing unit obtains a drawing line width defining vector for defining a drawing line width in a vertical direction with respect to a center line defining a drawing direction when drawing a thick line, and Based on the starting point and the ending point and the drawing line width defining vector, a rectangle of a thick line is obtained, a rounding process is performed on logical coordinates of four vertices of the rectangle, and a drawing coordinate of four vertices corresponding to a pixel is obtained. The area surrounded by the drawing coordinates of the vertices is drawn as a polygon.
  • the two-dimensional image processing unit obtains a drawing line width defining vector such that the width becomes asymmetrical with respect to the center line in the drawing direction.
  • the drawing line width definition vectors increases in length due to the rounding process, the other drawing line width definition vector tends to be rounded short, and as a result, the overall expansion and contraction of the drawing width is canceled. , Or in a direction to be mitigated.
  • the two-dimensional image processing unit draws, instead of pixel coordinates in a direction perpendicular to the drawing direction, a predetermined logical coordinate relatively distant from the pixel coordinate.
  • the pixel coordinates facing the direction are assigned to the drawing coordinates.
  • the rounding direction is the tangential direction of the circle having the drawing width as the diameter (the drawing direction of the thick line). This is because the central part between the four pixel grids causes a relatively large error due to the rounding process, and even if such a part is rounded, the length of the normal (the width of the thick line) ) Is intended to be rounded in the direction in which it expands and contracts as little as possible.
  • the predetermined logical coordinates to which the pixel coordinates are to be exceptionally assigned are determined based on which of the plurality of divided regions between the adjacent pixel coordinates the logical coordinates belong to. .
  • the position of the drawing coordinates to be exceptionally assigned is determined according to the quadrant to which the drawing line width definition vector belongs on two-dimensional coordinates centered on the starting point of the drawing line width definition vector.
  • the asymmetrical drawing is performed on the left and right of the center of the thick line. By performing the rounding, it is possible to draw thick lines with little thickness error in all directions even at low resolution.
  • the data processing performance of the image processing semiconductor processor can be improved in that real-time drawing and display control can be performed on a large amount of image data.
  • FIG. 1 is a block diagram illustrating a navigation system using an image processor according to an example of the present invention.
  • FIG. 2 is a block diagram showing an image processor of a comparative example with respect to the image processor of FIG. 1.
  • FIG. 3 is an explanatory diagram illustrating an algorithm of a bus arbitration by a bus arbiter in a memory interface circuit in the image processor of FIG. 1;
  • FIG. 4 is an explanatory diagram showing an aspect of a data flow in a process of the image processor in FIG. 1.
  • Garden 5 If the method of filling the pixels from the start point to the end point while moving the start point and the end point is adopted and the drawing direction is different, even if the number of pixels to fill the pixels from the start point to the end point is the same, the width of the thick line is It is explanatory drawing which shows a different aspect.
  • FIG. 6 is a process chart showing an outline of a basic processing procedure for drawing a thick line by a 2D graphics module.
  • Garden 7 is an explanatory diagram showing a rectangular area in which a thick line is drawn by logical coordinates defined by a center line and a normal vector.
  • Garden 8 is an explanatory diagram showing pixel coordinate points assigned by rounding in the X and Y directions within the pixel pitch range with respect to the logical coordinate points of the pixel grid points.
  • Plant 9 is an explanatory diagram showing that vertex coordinate points and pixel coordinate points, which are logical coordinates, change by ⁇ 22 at maximum with respect to the pixel pitch.
  • FIG. 10 is an explanatory diagram showing a manner in which a drawing width differs depending on a drawing direction when a thick line having a width of 9 pixels is drawn.
  • FIG. 11 is an explanatory diagram showing the principle of a two-dimensional normal vector rounding process.
  • Garden 13 is an explanatory diagram showing possible positions of logical coordinates Pl and P2 around a starting point A when the bold line width is 9 pixels.
  • FIG. 14 is an explanatory diagram illustrating a first step of polygon drawing of an area defined by pixel coordinate points Q1 to Q4.
  • FIG. 15 is an explanatory diagram illustrating a second step of polygon drawing of an area defined by pixel coordinate points Q1 to Q4.
  • FIG. 16 is an explanatory diagram illustrating a third step of polygon drawing of an area defined by pixel coordinate points Q1 and Q4.
  • Garden 17 is an explanatory view illustrating a fourth step of polygon drawing of the area defined by the pixel coordinate points Q1 and Q4.
  • FIG. 18 is an explanatory view illustrating a fifth step of polygon drawing of an area defined by pixel coordinate points Q1 and Q4.
  • FIG. 20 is an explanatory diagram showing a first step of a process of performing polygon drawing of an area defined by pixel coordinate points Q1 to Q4 by filling a triangle.
  • FIG. 21 is an explanatory diagram showing a second step of a process of performing polygon drawing of a region defined by pixel coordinate points Q1 and Q4 by filling a triangle.
  • FIG. 22 is an explanatory diagram showing a third step of the process of performing polygon drawing of an area defined by pixel coordinate points Q1 and Q4 by filling a triangle.
  • FIG. 23 is a block diagram showing an example of a 2D graphics module.
  • FIG. 24 is a block diagram illustrating an example of a thick line processing unit.
  • FIG. 25 is a block diagram illustrating an example of a line width asymmetry circuit.
  • FIG. 26 is a block diagram showing another example of the line width asymmetry circuit.
  • FIG. 27 is a block diagram showing an example of a two-dimensional rounding unit.
  • FIG. 1 illustrates a navigation system using an image processor according to an example of the present invention.
  • the image processor 1 shown in FIG. 1 is formed on a single semiconductor substrate (semiconductor chip) of single crystal silicon or the like by a complementary MOS (CMOS) integrated circuit manufacturing technique.
  • CMOS complementary MOS
  • the image processor 1 has a CPU (Central Processing Unit) 2 built-in, and a first bus 3 to which the CPU 2 is connected has a bus bridge circuit (BBRG) 4, a direct memory access controller (DMAC) 5, and a three-dimensional A 3D graphics module (3DGFIC) 6 as a three-dimensional image processing unit that performs three-dimensional image processing such as image drawing processing, and a memory interface circuit (MRYIF) 7 are connected.
  • the bus bridge circuit 4 is further connected to a second bus 10, a third bus 11, a fourth bus 12, and an external bus 13.
  • a 3D dedicated bus 14 is further connected to the memory controller 5.
  • An external memory 15 is connected to the memory interface circuit 7 via a memory bus 16.
  • the external memory 15 is composed of, for example, a double data rate-synchronous DRAM (DDR-SDRAM), and is used as a main memory used by the CPU, and further as an image memory such as a frame buffer.
  • the memory interface circuit 7 performs bus arbitration and memory control. Bus arbitration is external memory access via buses 3, 10, 14
  • the bus arbiter (ARBT) 18 controls the arbitration of contention.
  • the memory control is a control for operating the external memory 15 by forming a timing signal such as a strobe signal for reading or writing the external memory 15 in synchronization with the rising and falling edges of the clock signal in accordance with an access request via the bus. Yes, performed by the memory control logic (MCNT) 19.
  • the external memory 15 is not limited to DDR-SDRAM, but may be a single data rate (SDR) -SDRAM or the like.
  • the 3D graphics module 6 connected to the 3D dedicated bus 14 receives an image processing command such as a 3D drawing command from the CPU 2 via the first bus 3 and performs 3D drawing processing. Drawing is performed on the frame buffer area of the external memory 15.
  • the second bus 10 includes, as a first circuit module, a 2D graphic status module (2DGFIC) 20, a video signal input circuit (VDOIN) 21, a display control circuit (DU) 22, and an AT as a two-dimensional image processing unit. Attachment packet interface circuit (ATAPI) 23 is connected.
  • the two-graphics module 20 is a circuit that performs two-dimensional image processing such as two-dimensional image drawing processing, and has, for example, a thick line drawing function. Drawing is performed on the frame buffer area of the external memory 15.
  • the display control circuit 22 performs control to sequentially read image data drawn in the frame buffer area of the external memory 15 and output the image data to the raster scan type display 25 in synchronization with the display timing.
  • the video signal input circuit 21 inputs a digital video signal.
  • the digital video signal is output from an NTSC (National Television System Committee) decoder (NTCDEC) 26 which encodes and outputs an analog video signal such as a television signal.
  • NTSC National Television System Committee
  • the ATAPI 23 is connected to a disk drive (DDRV) 27 such as a hard disk drive, a DVD or a CD-ROM drive, and performs an interface control for reading and capturing recorded information from a recording medium such as a DVD or a CD-ROM. DVDs and CD-ROMs record map data and other data in the navigation system.
  • DDRV disk drive
  • DVDs and CD-ROMs record map data and other data in the navigation system.
  • the 4th bus 12 is connected to a 2D graphics module 20, a video signal input circuit 21, and a display control circuit 22.
  • the third bus 11 includes, as a second circuit module, a SPDIF-compliant audio data input / output interface (SPDIF) 30 and a baseband processing unit (GPS) for a global positioning system (GPS).
  • GPSBB global positioning system
  • SCIF start-stop synchronous serial communication interface circuit
  • TMU timer
  • a digital-to-analog converter (DAC) for audio is connected to the SPDIF 31, and the converted analog audio signal is converted into audio by the speaker 35.
  • the GPSBB31 is connected to a GPS high frequency unit (GPSRF) 36, and reflects radio waves to artificial satellites via an antenna module to perform satellite acquisition calculation processing and the like.
  • GPSRF GPS high frequency unit
  • the external bus 13 includes an electrically rewritable flash memory (FLASH) 37 for storing navigation programs and control data and the like, and a work memory of the CPU2. Although not shown, another processor can be connected to the external bus 13.
  • FLASH electrically rewritable flash memory
  • the first bus 3 is a multi-master bus, and each circuit module connected thereto has a master port and a slave port independently. A read / write transfer request from its own circuit module is It is issued as an instruction from the port, and a transfer request from another circuit module is reported as a transfer request to the slave port as a result of arbitration by the bus arbitration circuit, and a bus transaction is executed.
  • the bus arbitration circuit is arranged in the middle of the first bus 3. With this multi-master bus control method, the first bus 3 enables transfer of all combinations between circuit modules. For example, transfer between the CPU 2 and the DMAC 5, the bus bridge circuit 4 and the memory interface circuit 7, and the bus bridge circuit 4 and the CPU 2 can be performed.
  • the second bus 10 is a multi-master bus similarly to the first bus 3.
  • One of the source and the destination of the bus is always the memory interface circuit 7. That is, the bus bridge circuit 4, 2DGFIC20, VDOIN21, DU22, and ATAPIU23 perform only transfer with the external memory 15.
  • the image-related circuit modules 20, 21, 22, 23, which are the first circuit modules need to temporarily store data in the external memory 15 or transfer data from the external memory 15 to the external circuit 15. It is necessary to transfer the data to the display control circuit 22, and all the transfers always go through the memory 15.
  • the bus configuration can be simplified and high-speed burst transfer can be performed.
  • Reference numerals 23 and 23 denote the power S that is also connected to the third bus 11, and this is a bus for accessing registers that controls the operation mode of the image circuit module, and is used only for register read / write from CPU2. .
  • the third bus 11 is a single master bus, and the bus bridge circuit 4 is a bus master.
  • PIO parallel input / output
  • the DMAC 40 built in the bus bridge circuit 4 is used.
  • the transfer between the peripheral circuit modules 30, 31, 32, and 33 and the external memory 15 as two circuit modules is performed.
  • the D MAC 40 serves to bridge between the third bus 11 and the second bus 10, and transfers the second bus 10 to the bus arbiter 18 in the memory interface circuit as a bus master. Issue the request.
  • the GPSBB31 which is an example of a peripheral circuit module, performs a satellite acquisition calculation, and if the internal calculation is performed by software using the built-in CPU 2, the GPSBB31 uses the data required on the third bus 11, that is, the acquired satellites. It is possible to minimize the amount of data transfer by sending only the information and the time difference data, and it is possible to construct a system that is advantageous for cost performance.
  • the 3D dedicated bus 14 is a dedicated bus for connecting the 3D graphics module 6 and the memory interface circuit 7, and has a bus configuration that minimizes latency by taking advantage of the dedicated bus.
  • the external bus 13 enables PIO access from the CPU 2 and DMA transfer between the FLASH 37 or SRAM 38 and the external memory 15 using the DMAC 40 in the bus bridge circuit.
  • the bus bridge circuit 4 controls the external bus 13 with a bus state controller (BSC) 41 such as bus width and wait cycle input.
  • BSC bus state controller
  • Bus arbitration for the third bus 11, the fourth bus 12, and the external bus 13 is performed by a bus arbitration logic (not shown) in the bus bridge circuit 4.
  • the CPU 2 is, for example, a 32-bit CPU, and a data processing unit is 32 bits.
  • This CPU 2 has a super scalar structure that issues a plurality of instructions in one cycle, and thus has an instruction processing execution capacity of about twice the operating frequency. That is, the CPU 2 has a so-called 2-way's-parscalar structure.
  • the first bus 3 is a 64-bit bus. Therefore, the CPU 2 executes two instructions in parallel to prepare two sets of 32-bit data, and can transfer the prepared two sets of 64-bit data to the first bus 3 in one bus cycle. Also, the CPU 2 can read 64-bit data from the first bus 3 in one bus cycle, and perform the arithmetic processing on the read lower 32 bits and upper 32 bits separately in parallel.
  • the CPU 2 is directly connected to the first bus 3, so that the bus controller in the CPU, the CPU bus, and the like as in the image processor according to the comparative example of FIG. There is no need to reach the external memory through the CPU interface circuit, and a significant increase in external memory access speed can be achieved. Furthermore, by integrating CPU2 on the same semiconductor chip as the image processing processor, there is no need to connect the CPU and image processing processor with an external bus as in the comparative example of Fig. 2, and it is much more efficient than such an external bus. This makes it possible to use a high-speed internal bus of a semiconductor integrated circuit.
  • the CPU2 has a superscalar structure that issues multiple instructions in one cycle, so it can have an instruction processing execution capacity twice as high as the operating frequency.However, access to external memory via the first bus 3 is possible. If it becomes 15, the access speed is limited by the access efficiency on the first bus 3, and the above-mentioned instruction processing performance value may be deteriorated.
  • the image processor 1 adopts a configuration in which only the circuit modules 5 and 6 selected from the viewpoint of the degree of importance for speeding up the image processing are connected to the first bus 3. It is possible to suppress an increase in the waiting time due to the access competition described above, and to effectively suppress a decrease in the operation speed of the CPU 2. In other words, it is easy to keep the instruction execution speed of the CPU high.
  • FIG. 3 shows an algorithm of bus arbitration by the bus arbiter 18 in the memory interface circuit 7 in the image processor 1 of FIG. In the algorithm shown in the figure, arbitration is performed in three stages. First, via the bus bridge circuit 4 from the third bus 11 One of the requests for the peripheral circuit modules 30, 31, 32, and 33 by the round robin method (round robin 1) RR1.
  • one of the access requests of the image processing system circuit modules 20, 21, 22, and 23 related to the second bus 10 is selected from among the requests by the round robin method (round robin 2) RR2.
  • round robin 2 RR2 round robin 2
  • one request is selected with fixed priority. Since image processing circuit modules usually require real-time processing, requests from image processing circuit modules always have priority.
  • the request of the selected image processing circuit module or peripheral circuit module is arbitrated between the 3D graphics module 6 and the access module from the first bus 3 in a round-robin 'fixed priority RR3' manner.
  • Round-robin 'fixed priority' means that when the image processing circuit module is issuing a request, the image processing circuit module has priority, and when the peripheral circuit module issues a request, the three requests are equal.
  • the only circuit modules sharing the first bus 3 are the CPU 2, the bus bridge circuit 4, the DMAC 5, and the 3D graphics module 6, and in this case, the bus master. Since only the CPU2 and DMAC5 are used, the case where the CPU2 waits for the transfer request on the first bus 3 hardly occurs.
  • the image processing circuit modules 20 to 23 are bus arbitrated by the round robin RR2 on the second bus 10 side in advance, and after the image processing circuit module for which a real-time response is truly required is selected, the CPU 2 and the Arbitrates with the 3D Graphics Module 6.
  • Image processing circuit modules require real-time response, that is, the ability to require time-average throughput performance.
  • the access latency performance of CPU2 is not required. Therefore, even if the arbitration is performed in multiple stages as shown in RR1 and RR3 as described above, there is no deterioration in the total performance. Is selected, so that the CPU 2 is not unnecessarily waited.
  • round-robin bus arbitration is performed on all circuit modules including CPU2
  • the number of circuit modules competing with the CPU in the bus access request increases, and the probability that the bus access request is approved is correspondingly increased. Has to be low. Therefore, with the configuration of Fig.
  • the access from the CPU 2 on the second bus 10 does not collide. Separation of the second bus 10 and the first bus 3 makes it possible to transfer data between the peripheral circuit module and the external memory 15 via the third bus 11 without lowering the latency of CPU2 access. Because it is.
  • a 3D graphics module 6 is added.
  • 3D graphics usually transfers a large amount of vertex data between the CPU 2 and the 3D graphics module 6.
  • the 3D graphics module 6 is connected to the first bus 3 in FIG.
  • 3D graphics require frequent exchange of large amounts of image data with memory during hidden surface elimination and texture mapping during the processing of vertex data. It is necessary to suppress not only the throughput but also the access latency to the memory.
  • a configuration in which the dedicated bus 14 is directly connected to the memory interface circuit 7 is adopted. With this, bus arbitration for the 3D graphics module 6 can be performed at one layer of the round robin RR3, so that access performance can be ensured similarly to the CPU 2.
  • FIG. 4 shows an aspect of a data flow in the processing of the image processor 1 of FIG.
  • Many circuit modules require transfer to and from external memory 15 and CPU2.
  • the types of transfer are broadly divided into T1 and T8.
  • the transfer of T1 is an access of the external memory 15 by the CPU 2, specifically, a read and write back of the cache memory in the CPU 2.
  • the T2 transfer is a transfer by the DMAC5, and the CPU2 or the external memory 15 is transferred as a source transfer or a destination transfer.
  • the T3 transfer is an image data transfer between the 3D graphics module 6 and the external memory 15.
  • T4 transfer is a PIO access from CPU2 to one of the peripheral modules 30-33.
  • T5 transfer is an image processing circuit module Image data transfer between one of the files 20-23 and the external memory 15.
  • the T6 transfer is a DMA transfer between one of the peripheral circuit modules 30-33 and the external memory 15.
  • the T7 transfer is a DMA transfer between the circuit module on the external bus 13 and the external memory 15.
  • the transfer at T8 is a PI ⁇ access transfer from the CPU 2 to the circuit module on the external bus 13.
  • the transfer of T9 is the transfer of vertex data from the CPU 2 to the 3D graphics module 6.
  • connection bus to the memory interface circuit 7 is divided into three systems: a first bus 3, a second bus 10, and a 3D-dedicated bus 14, and the memory interface circuit 7 has a data FIFO buffer for each bus. In this case, the waiting for the transfer operation on each bus is minimized. This makes it possible to efficiently perform the transfer in the form of T1 to T8.
  • the combinations of transfer modes in which the CPU 2 can transfer data to and from the external memory 15 while transferring data to a certain circuit module are as follows. That is, (1) T1 and ⁇ 6 or ⁇ 2 and ⁇ 6 (*), (2) ⁇ 1 and ⁇ 5 or ⁇ 2 and ⁇ 5 (*), (3) ⁇ 1 and ⁇ 7, or ⁇ 2 and ⁇ 7 (*), (4) ⁇ 1 and ⁇ 3 Or ⁇ 2 and ⁇ 3 ( ⁇ ), (5) ⁇ 2 and ⁇ 8, (6) ⁇ 4 and ⁇ 7, (7) ⁇ 4 and ⁇ 3, (8) ⁇ 4 and ⁇ 6, (9) ⁇ 4 and ⁇ 5, (10) 44 and ⁇ 2, [11] 3 and ⁇ 7 ( ⁇ ), [12] ⁇ 3 and ⁇ 5 ( ⁇ ), [13] 3 and ⁇ 6 (*), [14] ⁇ 3 and ⁇ 8, [15] ⁇ 5 and ⁇ 8, [16 ⁇ 6 and ⁇ 8, [17] ⁇ 7 and ⁇ 8, [18] ⁇ 9 and ⁇ 3, [19]
  • FIG. 6 shows an outline of a basic processing procedure for drawing a thick line by the 2D graphics module 20.
  • the drawing direction is defined by the start and end points A and B.
  • a normal vector n of a line segment AB having a half length with respect to the drawing width is obtained.
  • the four vertices Pl, P2, P3, and P4 of the rectangle are obtained from the start and end points A and B and the normal vector n.
  • the four vertices PI, P2, P3, and P4 are logical coordinate points.
  • the four vertices PI, P2, P3, and P4 are rounded to obtain pixel coordinate points Q1, Q2, Q3, and Q4 corresponding to the pixels.
  • the pixel coordinate points Ql, Q2, Q3, Q4 are the coordinates of the pixel on the grid point.
  • the area surrounded by these pixel coordinate points Ql, Q2, Q3, Q4 is drawn as a polygon.
  • the end point of the vector is not on the pixel grid point, it is assigned to a point on the pixel grid point by rounding.
  • a thick line with width wa is drawn in the a direction
  • a thick line with width wb is drawn in the b direction. If you try to draw a thick line with the same line width, the line width differs depending on the drawing direction. Become. In the navigation system, draw a thick line of the road on the map. In such a case, even if the road has the same width, the thickness changes depending on the direction or as the road becomes curved or curved, and the display performance on the road or the like is inevitably reduced.
  • a rounding process for determining a rounding direction in a two-dimensional manner is adopted, and second, the length of the normal vector is set to a non-zero value. set to target.
  • Figure 11 shows the principle of two-dimensional normal vector rounding.
  • the area between the four pixel grids is divided into 16 parts, and among the divided parts, the hatched central part (exception rounding target part) is exceptionally changed in the rounding direction to the pixel indicated by the arrow (exception).
  • the pixel coordinates are determined by performing normal rounding (normal rounding) by rounding off the other rounding. For example, when a logical coordinate point such as P1 is included in a hatched square portion, the position of a pixel indicated by an arrow is set as a corresponding pixel coordinate point Q1. As can be understood from the direction of the arrow in FIG.
  • the rounding direction is the tangential direction of the circle whose drawing width is the diameter (the drawing direction of the thick line). This is because the central part between the four pixel grids causes a relatively large error due to rounding, and even if such a part is rounded, the length of the normal (the width of the thick line) ) Tries to roll in the direction that does not expand or contract as much as possible.
  • the rounding direction is determined according to the quadrant to which the drawing line width defining vector belongs on two-dimensional coordinates centered on the origin (A) of the drawing line width defining vector which is a normal vector.
  • pixel coordinates Ql and Q4 are determined according to the signs of the X and Y coordinate points of PI and P4 on the XY coordinate centered on the start point A, and P2 and P3 are determined on the XY coordinate centered on the end point B.
  • the pixel coordinates Q2 and Q3 are determined according to the signs of the X coordinate point and the Y coordinate point of. For example, if the rounding direction is determined, for example, the lower right pixel in the first quadrant, the upper right pixel in the second quadrant, the upper left pixel in the third quadrant, and the lower left pixel in the fourth quadrant good.
  • FIG. 12 shows the meaning of making the length of the normal vector not asymmetric. For example, if the drawing width of a thick line is W, the size of the normal vector on one side of the starting point A is W / 2, and the size of the other normal vector is WZ2-one. For example, the length is 1/4 of the pixel pitch.
  • FIG. 13 shows possible positions of the logical coordinates PI and P2 around the start point A when the bold line width is set to 9 pixels.
  • the polygon drawing of the area defined by the pixel coordinate points Q1 and Q4 can be sequentially performed as shown in FIGS. 14 to 19, for example.
  • each coordinate point on the force line segment is calculated from vertices Q1 to Q4.
  • the direction points from the vertices Q2 to Q3 and the respective coordinate points on the line segment are obtained.
  • FIG. 16 shows the first line drawing
  • FIG. 17 shows the second line drawing
  • FIG. 18 shows the fourth line drawing
  • FIG. 19 shows the state after the last straight line drawing.
  • a polygon may be drawn by sequentially painting pixels so that a divided triangle is scanned from above in the X direction as illustrated in FIGS. 20 to 22.
  • FIG. 23 shows a block diagram of the 2D graphics module 20.
  • the 2D graphics module 20 includes a drawing command fetch unit 50, a geometry processing unit 51, a thick line processing unit 52, a polygon drawing unit 53, and a pixel processing unit 54.
  • the connection form of the CPU 2 and the external memory 15 to the 2D graphics module 20 is illustrated in a simplified manner.
  • the CPU 2 starts the 2D graphics module 20, performs a register read, and the like.
  • the drawing command fetch unit 50 inputs an image processing command, coordinates of a drawing figure, and the like stored in the image memory area of the external memory 15.
  • the geometry processing unit 51 performs a process of converting graphic coordinates into screen coordinates.
  • the thick line processing section 52 performs the processing for drawing the thick line according to a thick line instruction by a command.
  • the data by the polygon drawing unit 53 is converted into pixel data (pixel data) by the pixel processing unit 54, stored in the image memory area of the external memory 15 together with its physical address, and used for image display.
  • FIG. 24 shows an example of the thick line processing section 52.
  • Vertex buffer 60 Targets A (x, y) and B (x, y) are input.
  • the line width non-targeting circuit 62 inputs the information of the line width W, and outputs the information of the non-target line widths WN1 and WN2.
  • the normal calculation unit 63A calculates a normal N1 having a line width WN1 in the normal direction to the segments DX and DY.
  • the normal calculation unit 63B calculates a normal N2 having a line width WN2 in the normal direction to the segments DX and DY.
  • the thick line vertex calculation unit 64 calculates four vertices A + N1, A + N2, B + N1, and B + N2.
  • the rounding process is performed by the two-dimensional rounding unit 65 on the four calculated vertices.
  • FIG. 25 shows an example of the line width asymmetry circuit 62.
  • the line widths WN1 and WN2 differ depending on whether the number of pixels of the drawing width is odd or even.
  • WN1 is (W_l) / 2
  • WN2 is (W_1) Z2_.
  • WN1 is W / 2
  • WN2 is W / 2-1 minus one.
  • a is a constant for making the normal determined for each line width asymmetric.
  • the constant string is held in the constant string table 70, and the constant string corresponding to the line width W is selected and output.
  • FIG. 26 shows another example of the line width asymmetry circuit 62. That is, a WN1 table 79A and a WN2 table 79B having line widths WN1 and WN2 respectively corresponding to the line width W are arranged, and the line widths WN1 and WN2 are directly output according to the input line width W.
  • FIG. 27 shows an example of the two-dimensional rounding unit. Based on the X and y coordinate points of the four vertices P1 to P4 calculated by the thick line vertex calculation unit 64, the quadrant determining unit 80 calculates the quadrant where each vertex coordinate is located. Here, the quadrant has the meaning described in FIG.
  • the exception rounding factor follows the new rules in Figure 11, (1, 0) for the first quadrant, (1, 1) for the second quadrant, (0, 1) for the third quadrant, In the fourth quadrant, it is (0, 0).
  • the exception 'normal rounding determination unit 81 determines whether four vertices P1 and P4 are included in the part to be exceptionally rounded in a region obtained by dividing the pixel grid into 16 as described with reference to FIG.
  • the output of the exception rounding coefficient table 82 is selected by the selector 83.
  • (0.5, 0.5) is selected by the selector 83.
  • the output of the selector 83 and the vertex coordinates corresponding to each other are added by an adder (ADD) 85, and the addition result is truncated by a truncation processing unit 86 to the decimal point.
  • the output of the truncation processing unit 86 is used as pixel coordinate point information of Q1 to Q4.
  • the polygon drawing method is used.
  • the force S obtained as the coordinates of the decimal point and the drawing coordinates must be integers, so it is necessary to round them by rounding off, etc.
  • the line width of a thick line may appear thicker or thinner depending on the drawing direction due to rounding such as rounding.
  • the asymmetrical drawing is performed on the left and right of the center of the thick line, and the coordinates are not rounded on the X axis and the Y axis alone, but on which axis they are rounded.
  • By performing two-dimensional rounding it is possible to draw thick lines with little thickness error in all directions even at low resolution.
  • a line having a substantially uniform thickness can be drawn in all directions.
  • an error of about 2 pixels is generated from the target line width in the worst case, and the difference between the line width between the thickest part and the thinnest part is obtained. 2 2 pixels, but by adopting the above rounding process, the line width at the thickest part and the thinnest part is The difference can be reduced to about 2/2.
  • Road information which occupies the majority of the map and is the most important for navigation, can be expressed beautifully with a uniform thickness, so that the entire map is easier to see.
  • the drawing can be performed with a uniform thickness, the road can be bordered to improve the visibility, and additional information such as one-way traffic and traffic information can be easily viewed.
  • the legibility of the map has the effect of safe driving and adds value to the car navigation itself.
  • the CPU is not limited to a super scalar.
  • the second bus is not limited to the super highway bus.
  • the first circuit module and the second circuit module are not limited to those having the functions described in FIG.
  • the present invention is not limited to application to a car navigation system, but can be widely applied to various data processing systems having a graphic display.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Bus Control (AREA)
  • Microcomputers (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

 画像処理用半導体プロセッサにおいて描画や表示制御のための制御情報や画像データ等の転送効率を向上させる。  CPU(2)と、CPUに接続される第1バス(3)と、第1バスを介するデータ転送を制御するDMAC(5)と、第1バスとデータ送受信を行うバスブリッジ回路(4)と、第1バス経由でCPUからコマンドを受信して3次元画像処理を行う3次元画像処理部(6)と、バスブリッジ回路と第1回路モジュール(20~23)とに接続された第2バス(10)と、バスブリッジ回路と第2回路モジュール(30~33)とに接続された第3バス(11)と、第1バス、第2バス、3次元画像処理部及び外部メモリ(15)に接続可能にされるメモリインタフェース回路(7)とを有し、バスブリッジ回路は外部回路と第2バスとの間のダイレクトメモリアクセス転送制御可能とされる。

Description

明 細 書
画像処理用半導体プロセッサ
技術分野
[0001] 本発明は画像処理用半導体プロセッサに関し、例えば力一^ fンフオメーシヨンシス テム分野、セットトップボックス、デジタル τν、移動体通信分野、デジタル音声端末、 メディア端末、携帯端末等の、画像処理を必要とする分野に適用して有効な技術に 関する。
背景技術
[0002] 特許文献 1には 3次元グラフィックス処理を行うグラフィックプロセッサについて記載 が有る。特許文献 2には太線描画機能を有するグラフィックプロセッサについて記載 力 sある。
[0003] 本発明者は画像処理用半導体プロセッサにおける描画や表示制御のための制御 情報やデータの転送を最適化することについて検討した。本発明に先立って本発明 者が検討した画像処理用半導体プロセッサは、内部にピクセルバスと 1〇バスを有し、 中央処理装置(単に CPUとも記す)は CPUインタフェースを介して前記ピクセルバス 経由で外部のデータメモリをアクセスする。 CPUインタフェースにはバスブリッジ回路 が接続され、このバスブリッジ回路は CPUからのデータを周辺モジュールに分配した り、周辺モジュールからのデータを CPUに送信したりするブリッジの役目を担ってい る。このバスブリッジ回路にはダイレクトメモリアクセスコントローラ(DMAC)が内蔵さ れ、 CPUの介在なぐ周辺モジュールからのデータをピクセルバス経由で前記デー タメモリに書き込んだり、また前記データメモリにあるデータを周辺モジュールに転送 すること力 S可能にされる。前記ピクセルバスに接続されているモジュール、すなわち、 画像モジュール、 CPUインタフェース、及びバスブリッジ回路は自モジュールと前記 データメモリとの転送のみが可能である。ピクセルバス上ではモジュール相互間の転 送はサポートされていない。
[0004] 特許文献 1 :特開 2003-208631号公報(図 32)
特許文献 2:特開平 6-28486号公報(図 1) 発明の開示 発明が解決しょうとする課題
[0005] 本発明者は上記画像処理用半導体プロセッサに関し以下の問題点の有ることを見 出した。第 1は、 CPUが画像処理用半導体プロセッサの外付けであり、 CPUインタフ エースを通して画像処理用半導体プロセッサ及びデータメモリをアクセスすることにな るので、データ転送レイテンシ一が悪化する。特に、シンクロナス DRAM (ダイナミツ クランダムアクセスメモリ)等からなるデータメモリへのアクセスおよび周辺モジュール へのアクセスに関するレイテンシ一がシステム性能に大きく影響する場合が想定され る。第 2は、ピクセルバス上で、周辺モジュールとデータメモリの転送又は画像モジュ ールとデータメモリの転送と、 CPUとデータメモリの転送とが競合する虞があり、その ような競合は CPUのデータ処理速度を低下させる可能性がある。画像処理系のモジ ユールはリアルタイム性が要求されるため、バスの優先権を高くする必要があり、その 場合に CPUがピクセルバスのバス権を取るまでの待ち時間が不必要に長くなるケー スが発生する虞がある。例えばアービトレーション方式としてラウンドロビン方式 (総当 たりリーグ戦方式)を採用した場合、ピクセルバスにアクセスするモジュールの数が増 えると CPUに対するバス権割り当て待ち時間が悪化する。第 3は、ピクセルバス上で 専用の DMACがないために CPUや CPUバス上のデバイスからデータメモリへの転 送は CPU制御による逐次転送もしくは CPUが持つ DMAチャネルのリソースを使用 する転送によって行う必要があり、 CPUの負荷が過大になることも予想される。
[0006] 更に本発明者は画像モジュールの一つとして 2次元描画を行う 2次元画像処理部 による太線描画について検討した。太線を描画する場合、始点と終点を移動しながら 始点から終点に至る画素を塗りつぶす方式を採用した場合、描画方向が相異すると 、始点から終点に至る画素を塗りつぶす本数が同じであっても太線の幅が異なるとい う問題点のあることが本発明者によって見出された。
[0007] 本発明の目的は描画や表示制御のための制御情報や画像データ等の転送効率を 向上させることができる画像処理用半導体プロセッサを提供することにある。
[0008] 本発明の別の目的は画像情報や制御情報の転送経路上での競合によるデータ転 送効率低下を抑制することが可能な画像処理用半導体プロセッサを提供することに ある。
[0009] 本発明の別の目的は大量の画像データに対するリアルタイムの描画及び表示制御 を可能にするという点でパフォーマンスの優れた画像処理用半導体プロセッサを提 供することにある。
[0010] 本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面 力 明らかになるであろう。
課題を解決するための手段
[0011] 本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記 の通りである。
[0012] 〔1〕本発明に係る画像処理用半導体プロセッサは、中央処理装置と、前記中央処 理装置に接続される第 1バスと、前記第 1バスを介するデータ転送を制御するダイレ タトメモリアクセスコントローラと、前記第 1バスとデータ送受信を行うバスブリッジ回路 と、前記第 1バスを介して前記中央処理装置からコマンドを受信して 3次元画像処理 を行う 3次元画像処理部と、前記バスブリッジ回路と複数の第 1回路モジュールとに 接続された第 2バスと、前記バスブリッジ回路と第 2回路モジュールとに接続された第 3バスと、前記第 1バス、第 2バス及び 3次元画像処理部に接続され、外部のメモリに 接続可能にされるメモリインタフェース回路と、を半導体チップに有し、前記バスブリツ ジ回路は半導体チップの外部に接続される回路と前記第 2バスとの間のダイレクトメ モリアクセス転送を制御可能とされる。
[0013] 前記第 1回路モジュールとして例えば 2次元画像処理例えば 2次元の描画処理を 行う 2次元画像処理部を有する。また、前記第 1回路モジュールとして例えば前記 2 次元画像処理部又は 3次元画像処理部で生成された画像データの表示制御を行う 表示制御部を有する。第 2回路モジュールとして例えば GPS (global positioning system)モジュール等を有する。
[0014] 上記手段によれば、中央処理装置を第 1バスに直結したことによりその間にパスコ ントローラ等を介在させることを要せず、その分だけ中央処理装置とのデータ転送の 高速化を実現できる。また、中央処理装置が 1サイクルで複数の命令を発行するスー パースカラ構造を有する場合、動作周波数の約 2倍の命令処理実行能力を有するこ とが可能である。その命令実行に必要なアクセス対象が第 1バスを経由した外部メモ リになる場合、アクセス速度は第 1バス上でのアクセス効率に律速される。このとき、 第 1バスには画像処理演算速度に対する重要性の度合という観点より選んだ第 1回 路モジュールだけを接続することにより、第 1バス上でのアクセス競合による待ち時間 の増大を抑制し、中央処理装置によるデータ処理速度向上に資することが可能にな る。
[0015] 第 1バスでバスマスターになるのは CPUと DMACのみになるので CPUが第 1バス 上で転送要求に対して待たされるケースはほとんど発生しなくなる。画像処理系回路 モジュールのような第 1回路モジュールは第 2バスに関するバスアービトレーション口 ジックで予め調停され、真にリアルタイム応答が要求される画像処理系回路モジユー ルが選択された後に CPUおよび 3次元画像処理部との第 1バスに関するバス権調停 が行なわれる。画像処理系回路モジュールはリアルタイム応答性つまり時間平均の スループット性能が要求される力 CPUほどのアクセスレイテンシー性能は必要とさ れない。メモリインタフェース回路内のバス調停論理は、 3次元画像処理部からのァク セスリクエスト、第 1バスに接続する回路モジュールからのアクセスリクエスト、第 2バス 経由のアクセスリクエストの 3者間でバス権調停を行なう。したがって、第 1バスには C PUと真に高速転送が必要なモジュールだけを接続するようにできるから、バスの高 速化が容易となる。画像処理系回路モジュールのような第 1回路モジュールは第 2バ スに関するバスアービトレーションロジックで調停するから、画像処理系回路モジユー ルのリアルタイム応答性は実質的に損なわれない。
[0016] 第 1バスと第 2バスを分離したから CPUによる周辺回路モジュールのアクセスと画像 処理系回路モジュールのメモリデータ転送が衝突することも少なレ、。よって、 CPUァ クセスのレイテンシーを下げることなく周辺回路モジュールとの間のデータ転送を行う ことが可能になる。
[0017] また、 3次元画像処理部を第 1バスに接続することにより、 3次元画像処理において コマンドや大量の頂点データなどのオペランドの転送を CPUと 3次元画像処理部と の間で行う必要性を満足させることができる。さらに 3次元画像処理は頂点データの 処理の過程で陰面消去やテクスチャマッピングの際に大量の画像データを頻繁にメ モリとやり取りする必要があり、他の画像処理系回路モジュールと比較してスループッ トだけでなくメモリに対するアクセスレイテンシーを抑える必要があり、専用バスでメモ リインタフェース回路に直結する構成によってそれを満足させることができる。
[0018] 本発明の具体的な形態として、バスブリッジ回路に接続され、前記中央処理装置か ら複数の第 1回路モジュールへのレジスタ設定に利用可能な第 4バスを更に有する。 前記バスブリッジ回路は更に、前記第 2バスと第 3バスとの間のダイレクトメモリァクセ ス転送を実行可能である。
[0019] 前記中央処理装置が 1サイクルで 2命令実行可能なスーパースカラ構成を有する 場合には、第 1バスは中央処理装置の内部バスのビット数の 2倍のビット数を有するこ とが望ましい。中央処理装置の処理サイクル内で所定ビット数のデータを 2組用意し 、用意された 2組のデータを 1バスサイクルで第 1バスへ転送可能である。
[0020] 〔2〕前記 2次元画像処理部は、太線描画に際して、描画方向を規定する中心線に 対して垂直方向の描画線幅を規定するための描画線幅規定ベクトルを求め、中心線 の始点及び終点と前記描画線幅規定ベクトルに基づレ、て太線の矩形を求め、矩形 の 4頂点の論理的な座標に対する丸め処理を行って画素に応ずる 4頂点の描画座 標を求め、 4頂点の描画座標で囲まれる領域をポリゴンとして描画する。
[0021] このとき、前記 2次元画像処理部は、描画方向の中心線に対して左右非対称な幅と なるように描画線幅規定ベクトルを求める。これにより、片方の描画線幅規定べクトノレ が丸め処理により長さが延びた場合、他方の描画線幅規定ベクトルは短く丸められる 傾向を採り、結果として、描画幅の全体的な伸縮が打ち消され、若しくは緩和される 方向に向けられる。
[0022] 前記 2次元画像処理部は、前記丸め処理において、画素座標から相対的に離れた 所定の論理座標に対しては、例外的に、描画方向に垂直な向きの画素座標に代え て描画方向に向く画素座標を描画座標に割当てる。これによりる丸め方向は描画幅 を直径とする円の接線方向(太線の描画方向)になっている。これは、 4個の画素格 子間の中央部分は丸め処理によって相対的に大きな誤差を生ずる部分であり、その ような部分に対して丸め処理を行なっても法線の長さ(太線の幅)が極力伸縮しなレヽ 方向に丸めようとするものである。 [0023] 具体的な形態として、隣接する画素座標間で複数分割されたどの領域に論理座標 が属するかにより、前記例外的に画素座標を割当てる対象である所定の論理座標か 否かを判断する。また、描画線幅規定ベクトルの起点を中心とする 2次元座標上で前 記描画線幅規定ベクトルが属する象限に応じて、前記例外的に割当てる描画座標の 位置を決定する。
[0024] 上記太線描画処理では、太線の中心の左右で非対称に行うこと、また、 X軸、 Y軸 単独に座標を丸めず、互いの軸に対してどちらに丸めたかを考慮して 2次元的に丸 めを行うことにより、低解像度でも全ての方向に対して太さの誤差が少なく太線描画 を行うこと力 Sできる。
発明の効果
[0025] 本願において開示される発明のうち代表的なものによって得られる効果を簡単に説 明すれば下記の通りである。
[0026] すなわち、描画や表示制御のための制御情報や画像データ等の転送効率を向上 させること力 Sできる。
[0027] 画像情報や制御情報の転送経路上での競合によるデータ転送効率低下を抑制す ることが可能である。
[0028] 大量の画像データに対するリアルタイムの描画及び表示制御を可能にするという点 で画像処理用半導体プロセッサのデータ処理パフォーマンスを向上させることができ る。
図面の簡単な説明
[0029] [図 1]本発明の一例に係る画像処理プロセッサを用いたナビゲーシヨンシステムを例 示するブロック図である。
[図 2]図 1の画像処理プロセッサに対する比較例の画像処理プロセッサを示すブロッ ク図である。
[図 3]図 1の画像処理プロセッサにおいてりメモリインタフェース回路内のバスアービタ によるバスアービトレーションのアルゴリズムを例示する説明図である。
[図 4]図 1の画像処理プロセッサの処理におけるデータの流れの態様を示す説明図 である。 園 5]始点と終点を移動しながら始点から終点に至る画素を塗りつぶす方式を採用し た場合に描画方向が相異すると始点から終点に至る画素を塗りつぶす本数が同じで あっても太線の幅が異なる様子を示す説明図である。
[図 6]2Dグラフィックスモジュールによる太線描画の基本的な処理手順の概略を示す 工程図である。
園 7]中心線と法線ベクトルで規定される論理座標による太線描画の矩形領域を示 す説明図である。
園 8]画素の格子点に対する論理座標点に対し画素ピッチの範囲で X, Y方向に四 捨五入して割り当てられる画素座標点を示す説明図である。
園 9]論理座標である頂点座標点と画素座標点は画素ピッチに対し最大で ± 2 2 変化することを示す説明図である。
園 10]幅が 9画素分の太線を描画する場合に描画方向に応じて描画幅が異なる様 子を示す説明図である。
[図 11]2次元的な法線ベクトルの丸め処理の原理を示す説明図である。
園 12]法線ベクトルの長さを非対象とすることの意味を示す説明図である。
園 13]太線幅を 9画素分とするとき始点 Aを中心に論理座標 Pl, P2が採り得る位置 を示す説明図である。
園 14]画素座標点 Q1— Q4で規定される領域のポリゴン描画の第 1工程を例示する 説明図である。
園 15]画素座標点 Q1— Q4で規定される領域のポリゴン描画の第 2工程を例示する 説明図である。
園 16]画素座標点 Q1 Q4で規定される領域のポリゴン描画の第 3工程を例示する 説明図である。
園 17]画素座標点 Q1 Q4で規定される領域のポリゴン描画の第 4工程を例示する 説明図である。
園 18]画素座標点 Q1 Q4で規定される領域のポリゴン描画の第 5工程を例示する 説明図である。
園 19]画素座標点 Q1 Q4で規定される領域のポリゴン描画の第 6工程を例示する 説明図である。
[図 20]画素座標点 Q1— Q4で規定される領域のポリゴン描画を 3角形の塗りつぶし で行なう処理の第 1工程を示す説明図である。
[図 21]画素座標点 Q1 Q4で規定される領域のポリゴン描画を 3角形の塗りつぶし で行なう処理の第 2工程を示す説明図である。
[図 22]画素座標点 Q1 Q4で規定される領域のポリゴン描画を 3角形の塗りつぶし で行なう処理の第 3工程を示す説明図である。
[図 23]2Dグラフィックスモジュールの一例を示すブロック図である。
[図 24]太線化処理部の一例を示すブロック図である。
[図 25]線幅非対象化回路の一例を示すブロック図である。
[図 26]線幅非対象化回路の別の例を示すブロック図である。
[図 27]2次元丸め部の一例を示すブロック図である。
符号の説明
1 画像処理プロセッサ
2 中央処理装置
3 第 1バス
4 バスブリッジ回路
6 3Dグラフィックスモジュール
7 メモリインタフェース回路
10 第 2バス
11 第 3バス
12 第 4バス
13 外部バス
14 3D専用バス
15 外部メモリ
18 バスアービタ
19 メモリコントローノレロジック 20 2Dグラフィックスモジュール
21 ビデオ信号入力回路
22 表示制御回路
23 ATAPI
30 SPDIF
31 GPS用のベースバンド処理部
32 SCIF
41 ノ スコントローラ
52 太線化処理部
発明を実施するための最良の形態
[0031] 《画像処理プロセッサ》
図 1には本発明の一例に係る画像処理プロセッサを用レ、たナビゲーシヨンシステム が例示される。同図に示される画像処理プロセッサ 1は、特に制限されないが、相補 型 MOS (CMOS)集積回路製造技術により、単結晶シリコンなどの 1個の半導体基 板(半導体チップ)に形成される。
[0032] 画像処理プロセッサ 1は、 CPU(Central Processing Unit)2を内蔵し、 CPU2が接続 する第 1バス 3には、バスブリッジ回路(BBRG) 4、ダイレクトメモリアクセスコントローラ (DMAC) 5、 3次元画像の描画処理などの 3次元画像処理を行う 3次元画像処理部 としての 3Dグラフィックスモジュール(3DGFIC) 6、及びメモリインタフェース回路(M RYIF) 7が接続される。前記バスブリッジ回路 4には更に第 2バス 10、第 3バス 11、第 4バス 12及び外部バス 13に接続される。前記メモリコントローラ 5には更に 3D専用バ ス 14が接続される。
[0033] メモリインタフェース回路 7にはメモリバス 16を介して外部メモリ 15が接続される。外 部メモリ 15は例えばダブルデータレート—シンクロナス DRAM (DDR— SDRAM)に よって構成され、 CPUが使用するためのメインメモリ、さらにはフレームバッファ等の 画像メモリとして利用される。メモリインタフェース回路 7はバスアービトレーションとメ モリ制御を行う。バスアービトレーションはバス 3, 10, 14を介する外部メモリアクセス の競合を調停する制御であり、バスアービタ(ARBT) 18で行う。メモリ制御は、バス を介するアクセス要求にしたがってクロック信号の立ち上り及び立ち下がりに同期し て外部メモリ 15をリード又はライト動作させるストローブ信号などのタイミング信号を形 成して外部メモリ 15を動作させる制御であり、メモリコントロールロジック(MCNT) 19 で行う。尚、外部メモリ 15は DDR— SDRAMに限定されず、シングルデータレート(S DR)— SDRAM等であってもよレヽ。
[0034] 前記 3D専用バス 14に接続される 3Dグラフィックスモジュール 6は第 1バス 3を介し て CPU2から 3D描画コマンドなどの画像処理コマンドを受取って 3D描画処理を行う 。描画は外部メモリ 15のフレームバッファ領域に対して行なわれる。
[0035] 第 2バス 10には第 1回路モジュールとして、 2次元画像処理部としての 2Dグラフイツ タスモジュール(2DGFIC) 20、ビデオ信号入力回路(VDOIN) 21、表示制御回路( DU) 22、及び ATアタッチメントパケットインタフェース回路 (ATAPI) 23等が接続さ れる。前記 2グラフィックスモジュール 20は 2次元画像の描画処理などの 2次元画像 処理を行う回路であり、例えば太線描画機能も備える。描画は外部メモリ 15のフレー ムバッファ領域に対して行なわれる。表示制御回路 22は外部メモリ 15のフレームバ ッファ領域に描画された画像データを順次読み出して、ラスタスキャン型のディスプレ ィ 25に表示タイミングに同期させて出力する制御を行う。ビデオ信号入力回路 21は ディジタルビデオ信号を入力する。ディジタルビデオ信号はテレビ信号などのアナ口 グビデオ信号をコード化して出力する NTSC (National Television System Committee )デコーダ(NTCDEC) 26から出力される。 ATAPI23はハードディスクドライブ、 DV D又は CD— ROMドライブ等のディスクドライブ装置(DDRV) 27に接続され、 DVD 又は CD— ROM等の記録媒体から記録情報を読取って取り込むためのインタフヱ一 ス制御を行う。ナビゲーシヨンシステムにおレ、て DVDや CD— ROMには地図データ などが記録されている。
[0036] 第 4バス 12には 2Dグラフィックスモジュール 20、ビデオ信号入力回路 21、及び表 示制御回路 22が接続される。
[0037] 第 3バス 11には第 2回路モジュールとして、 SPDIF準拠の音声データ入出力インタ フェース (SPDIF) 30、 GPS (Global Positioning System)用のベースバンド処理部( GPSBB) 31、調歩同期シリアルコミュニケーションインタフェース回路(SCIF) 32及 びタイマ(TMU) 33などが接続される。 SPDIF31には音声用のディジタル 'アナログ 変換回路(DAC)が接続され、変換されたアナログ音声信号はスピーカ 35で音声に 変換される。 GPSBB31は GPS用の高周波部(GPSRF) 36が接続され、アンテナモ ジュールを介して人工衛星に電波を反射させて、衛星の捕捉演算処理などを行う。
[0038] 外部バス 13にはナビゲーシヨン用のプログラム及び制御データ等を格納する電気 的に書換え可能なフラッシュメモリ(FLASH) 37及び CPU2のワークメモリなどに利 チ CPUシステムを構成する場合には、図示はしないが、外部バス 13に更に別のプロ セッサを接続することが可能である。
[0039] 第 1バス 3はマルチマスターバスとされ、これに接続する夫々の回路モジュールはマ スターポートとスレーブポートを独立に有しており、 自回路モジュールからのリード/ ライトの転送要求はマスターポートから命令として発行し、他回路モジュールからの転 送要求はバス調停回路での調停を経た結果、スレーブポートに転送要求として通知 され、バストランザクションが実行される。バス調停回路は特に図示はしないが第 1バ ス 3の途中に配置されている。このマルチマスターバス制御方式により、第 1バス 3は 回路モジュール間の全ての組み合わせの転送が可能にされる。例えば CPU2と DM AC5、バスブリッジ回路 4とメモリインタフェース回路 7、バスブリッジ回路 4と CPU2の 転送等が可能である。
[0040] 第 2バス 10は第 1バス 3と同様にマルチマスターバスとされる力 バスのソース、デス ティネーシヨンの一方は必ずメモリインタフェース回路 7になっている。すなわち、バス ブリッジ回路 4、 2DGFIC20, VDOIN21, DU22、 ATAPIU23は外部メモリ 15と の間の転送のみを行う。第 1回路モジュールである画像系の回路モジュール 20, 21 , 22, 23は自回路ブロックで画像処理を行った後には外部メモリ 15に一旦データを 格納する必要がある力 或いは外部メモリ 15のデータを表示制御回路 22に転送す る必要があり、全ての転送は必ずメモリ 15を経由する構成になっている。転送をメモリ 15との間のものに限定することにより、バスの構成をシンプルにでき、また高速なバ 一スト転送を可能に出来る利点がある。更に、画像系の回路モジュール 20, 21, 22 , 23は全て第 3バス 11とも接続されている力 S、こちらは画像系回路モジュールの動作 モード等を制御するようなレジスタに関するアクセスのバスであり、 CPU2からのレジ スタリード/ライトにのみ使用する。
[0041] 第 3バス 11はシングルマスターのバスであり、バスブリッジ回路 4がバスマスターに なっている。転送方式としては CPU2からのパラレル入出力(PIO)転送命令をバス ブリッジ回路 4で第 3バスへの転送に変換するケースと、バスブリッジ回路 4に内蔵さ れている DMAC40を使用して、第 2回路モジュールとしての周辺回路モジュール 30 , 31 , 32, 33と外部メモリ 15の転送を行うケースがある。後者のケースにおいて、 D MAC40は第 3バス 11と第 2バス 10の間を橋渡しする役目を担レ、、第 2バス 10に対 してはバスマスターとして上記メモリインタフェース回路内のバスアービタ 18に転送要 求を発行する。例えば、周辺回路モジュールの例である GPSBB31は、衛星の捕捉 計算を行い、即位計算は内蔵 CPU2によりソフトウェアで行う構成を採用した場合、 GPSBB31から第 3バス 11上で必要なデータすなわち、捕捉した衛星の情報と時間 差データのみを送ればよぐデータ転送量を最小にすることが可能になり、コストパフ オーマンスに有利なシステムを構築することが出来る。
[0042] 3D専用バス 14は 3Dグラフィックスモジュール 6とメモリインタフェース回路 7とを接 続する専用バスであり、ここでは専用バスの利点を生かし、レイテンシーを最小限に したバス構成になっている。
[0043] 外部バス 13は CPU2からの PIOアクセスとバスブリッジ回路内の DMAC40を使用 した前記 FLASH37や SRAM38と外部メモリ 15との間の DMA転送を可能にしてい る。バスブリッジ回路 4は外部バス 13に対してバスステートコントコントローラ(BSC) 4 1でバス幅やウェイトサイクル揷入などのバス制御を行う。第 3バス 11、第 4バス 12、 及び外部バス 13に関するバス権調停はバスブリッジ回路 4内の図示を省略するバス アービトレーションロジックで行なう。
[0044] 前記 CPU2は例えば 32ビット CPUでありデータ処理単位は 32ビットとされる。この CPU2は 1サイクルで複数の命令を発行するスーパースカラ構造を有することにより、 動作周波数の約 2倍の命令処理実行能力を有する。即ち、 CPU2は所謂 2ウェイ'ス 一パースカラ構造を有する。これに呼応して前記第 1バス 3は 64ビットバスとされる。 したがって、 CPU2は並行に 2命令を実行して夫々 32ビットのデータを 2組用意し、 用意された合計 64ビットの 2組のデータを 1バスサイクルで第 1バス 3へ転送可能であ る。また、 CPU2は 1バスサイクルで第 1バス 3から 64ビットのデータをリードし、リード した下位 32ビットと上位 32ビットを別々に並行して演算処理することも可能にされる。
[0045] 以上の構成を有する画像処理プロセッサ 1においては、 CPU2が第 1バス 3に直結 されるから、図 2の比較例に係る画像処理プロセッサのように CPU内のバスコントロー ラ、 CPUバス、 CPUインタフェース回路を通して外部メモリに至ることを要せず、外部 メモリアクセスに対して大幅な高速化が実現できる。さらに CPU2を画像処理プロセッ サと同じ半導体チップに集積したことにより、図 2の比較例のように CPUと画像処理 プロセッサを外部バスで接続することを要せず、そのような外部バスよりも格段に高速 の半導体集積回路の内部バスを使用することが出来るようになる。 CPU2は 1サイク ルで複数の命令を発行するスーパースカラ構造を有することにより、動作周波数の約 2倍の命令処理実行能力を有することが可能だが、そのアクセスが第 1バス 3を経由 した外部メモリ 15になる場合、そのアクセス速度は第 1バス 3上でのアクセス効率に律 速され、上記の命令処理性能値が悪化することがある。この点に関しても、上記画像 処理プロセッサ 1では画像処理の高速化に対する重要性の度合という観点から選ん だ回路モジュール 5, 6のみ第 1バス 3に接続する構成を採用することにより、第 1バス 3上でのアクセス競合による待ち時間の増大を抑制し、 CPU2の動作速度低下を効 果的に抑制することができる。換言すれば、 CPUによる命令実行速度を高速に保つ ことが容易になる。
[0046] また、図 2の比較例の場合、 CPUからのアクセスは CPUインタフェース回路経由で 第 2バスに伝達されるようになっており、第 2バスにおいて画像処理系回路モジユー ルとの調停を必要としていた。画像処理系回路モジュールはリアルタイム応答が要求 されるためこの構成では、 CPUの要求が比較的低い優先度として扱われることになり 、結果として、 CPUのアクセスレイテンシ一が悪くなることがある。図 3には図 1の画像 処理プロセッサ 1においてメモリインタフェース回路 7内のバスアービタ 18によるバス アービトレーションのアルゴリズムが示される。同図に示されるアルゴリズムではァービ トレーシヨンは 3段階で行なわれる。先ず、第 3バス 11からのバスブリッジ回路 4経由 による周辺回路モジュール 30, 31, 32, 33に対するアクセスリクエストの中力 ラウ ンドロビン方式 (ラウンドロビン 1) RR1で 1つのリクエストが選択される。また第 2バス 1 0に係る画像処理系回路モジュール 20, 21 , 22, 23のアクセスリクエストに中からラ ゥンドロビン方式(ラウンドロビン 2) RR2で 1つのリクエストが選択される。上記の選ば れた 2つのリクエストに対しては固定優先でその中から 1つのリクエストが選択される。 画像処理系回路モジュールには通常リアルタイム性が要求されるので、画像処理系 回路モジュールからのリクエストが常に優先される。そして、選ばれた画像処理系回 路モジュール、または周辺回路モジュールのリクエストは 3Dグラフィックスモジュール 6と第 1バス 3からのアクセスモジュールとの間でラウンドロビン '固定優先方式 RR3で 調停される。ラウンドロビン '固定優先方式とは、上記画像処理系回路モジュールがリ タエストを出しているときは画像処理系回路モジュールを優先し、周辺回路モジユー ルがリクエストを出しているときは 3つのリクエストは均等にラウンドロビンされて選択さ れる方式を意味する。ここで、図 2の比較例と比べると、図 1の構成では第 1バス 3を 共有する回路モジュールは CPU2、バスブリッジ回路 4、 DMAC5、 3Dグラフィックス モジュール 6のみとなり、この場合バスマスターになるのは CPU2と DMAC5のみに なるので、 CPU2が第 1バス 3上で転送要求に対して待たされるケースはほとんど発 生しなくなる。画像処理系回路モジュール 20— 23は事前に第 2バス 10側でラウンド ロビン RR2によりバスアービトレーションされ、これによつて真にリアルタイム応答が要 求される画像系回路モジュールが選択された後に、 CPU2及び 3Dグラフィックスモ ジュール 6との調停を行う。画像処理系回路モジュールはリアルタイム応答、即ち時 間平均のスループット性能が要求される力 その一方で CPU2ほどのアクセスレイテ ンシー性能は必要とされない。したがって、アービトレーションを上記説明のように RR 1一 RR3に示されるように複数段階で行ってもトータル性能としての劣化は生ぜず、 その上、真に応答が必要な画像系回路モジュールに係るアクセス要求が選択されて いるので、 CPU2が不必要に待たされることがなくなる。要するに、 CPU2を含めて全 ての回路モジュールに対しラウンドロビンによるバスアービトレーションを行った場合 には、バスアクセス要求で CPUと競合する回路モジュールの数が増え、その分バス アクセス要求が承認される確率が低くならざるを得ない。従って、図 1の構成により、 第 1バス 3には CPU2と真に高速転送が必要な回路モジュールのみを接続すること ができ、バスの高速化が容易となる。更に、画像処理系回路モジュールからの要求は 第 2バス 10側で調停することにより、画像処理系回路モジュールの動作に要求される リアルタイム性が阻害されることはない。
[0047] また、周辺回路モジュール 30 33の DMA転送による外部メモリ 15との間の転送 においても、第 2バス 10上で CPU2からのアクセスと衝突することはなレ、。第 2バス 10 と第 1バス 3を分離したことにより CPU2アクセスのレイテンシーを下げることなく第 3バ ス 11経由で周辺回路モジュールと外部メモリ 15との間のデータ転送を行うことが可 能になっているからである。
[0048] 図 2の比較例に比べて、 3Dグラフィックスモジュール 6が追加になっている力 3D グラフィックスは通常大量の頂点データ等のデータ転送を CPU2と 3Dグラフィックス モジュール 6との間で行う必要があり、そのために図 1では 3Dグラフィックスモジユー ノレ 6を第 1バス 3に接続してある。さらに 3Dグラフィックスでは頂点データの処理の過 程で陰面消去やテクスチャマッピングの際に大量の画像データを頻繁にメモリとやり 取りする必要があり、他の画像系回路モジュール 20— 23と比較してスループットだけ でなくメモリに対するアクセスレイテンシーを抑えることが必要になり、これを考慮して 、専用バス 14でメモリインタフェース回路 7に直結する構成を採用してある。これによ り、 3Dグラフィックスモジュール 6に対するバスアービトレーションは前記ラウンドロビ ン RR3の 1段の階層で済むので、 CPU2と同様にアクセス性能を確保することができ る。
[0049] 図 4には図 1の画像処理プロセッサ 1の処理におけるデータの流れの態様が示され る。多くの回路モジュールが外部メモリ 15及び CPU2との転送を必要としている。転 送の種類は T1一 T8に大別される。 T1の転送は CPU2による外部メモリ 15のァクセ スであり、具体的には CPU2内のキャッシュメモリの読み出し、書き戻しである。 T2の 転送は DMAC5による転送で、 CPU2あるいは外部メモリ 15をソース転送又はデス ティネーシヨン転送として転送を行う。 T3の転送は 3Dグラフィックスモジュール 6と外 部メモリ 15との間の画像データ転送である。 T4の転送は CPU2から周辺回路モジュ ール 30— 33の一つへの PIOアクセスである。 T5の転送は画像処理系回路モジユー ル 20— 23の一つと外部メモリ 15との間の画像データ転送である。 T6の転送は周辺 回路モジュール 30— 33の一つと外部メモリ 15との間の DMA転送である。 T7の転 送は外部バス 13上の回路モジュールと外部メモリ 15との間の DMA転送である。 T8 の転送は、 CPU2から外部バス 13上の回路モジュールへの PI〇アクセス転送である 。 T9の転送は CPU2から 3Dグラフィックスモジュール 6への頂点データの転送であ る。
[0050] メモリインタフェース回路 7への接続バスが第 1バス 3、第 2バス 10、 3D専用バス 14 と 3系統に分割され、メモリインタフェース回路 7は各バスに対し、データ FIFOバッフ ァを有し、各バス上での転送動作の待ちが極力発生しないようにされている。これに より、上記 T1一 T8の形態の転送を効率的に行うことが可能になる。
[0051] CPU2がある回路モジュールと転送する間に他の回路モジュールが外部メモリ 15と の間で転送可能な転送形態の組み合わせは以下の通りである。すなわち、〔1〕T1と Τ6又は Τ2と Τ6 ( * )、〔2〕Τ1と Τ5又は Τ2と Τ5 ( * )、〔3〕Τ1と Τ7又は Τ2と Τ7 ( * ) 、〔4〕Τ1と Τ3又は Τ2と Τ3 (氺)、 〔5〕Τ2と Τ8、〔6〕Τ4と Τ7、〔7〕Τ4と Τ3、〔8〕Τ4と Τ6、〔9〕Τ4と Τ5、〔10〕丁 4と丁 2、〔11〕丁 3と Τ7 (氺)、 〔12〕Τ3と Τ5 (氺)、 〔13〕丁 3と Τ6 ( * )、〔14〕Τ3と Τ8、〔15〕Τ5と Τ8、〔16〕Τ6と Τ8、〔17〕Τ7と Τ8、〔18〕Τ9と Τ3 、〔19〕Τ9と Τ5、〔20〕Τ9と Τ6、〔21〕Τ9と Τ7の 21態様力 Sある。尚、 *の印は DDR— SDRAMから成る外部メモリ 15への外部バス 16は十分に転送ビット幅があると仮定 していることを意味する。
[0052] 逆に同時転送が出来ない組み合わせは、 T1と T2、 Τ5と Τ6、 Τ5と Τ7、 Τ7と Τ6、 Τ 9と Τ2だけである。図 2の比較例では Tl、 Τ4、 Τ5、 Τ6、 Τ7、 Τ8の転送形態が定義 できるが、 T1と T5、 T1と Τ7、 Τ4と Τ7の転送が同一バスを使用することになり、同時 転送ができなレ、。図 1に示した構成を採用することにより、 T1と T5、 T1と Τ7、 Τ4と Τ 7の転送も同時転送が可能であり、さらに Τ2, Τ3, Τ9の転送もバスの衝突が最小限 に抑えられている。したがって、大量の画像転送、 CPU2からの ΡΙΟアクセスの高速 ィ匕、 CPU2を介在しない DMA転送の同時実行が可能となり、比較例に比べて大幅 にシステム性能を向上させることができる。
[0053] 《太線描画》 次に 2Dグラフィックスモジュール 20による太線描画について説明する。太線描画 を行なうとき、始点と終点を移動しながら始点から終点に至る画素を塗りつぶす方式 を採用した場合、図 5に例示されるように描画方向が相異すると、始点から終点に至 る画素を塗りつぶす本数が同じであっても太線の幅が異なる。最大で 2倍の差が できる。
[0054] 図 6には 2Dグラフィックスモジュール 20による太線描画の基本的な処理手順の概 略が示される。始点及び終点 A, Bによって描画方向を規定する。描画幅に対して例 えば半分の長さを持つ線分 ABの法線ベクトル nを求める。始点及び終点 A, Bと法 線ベクトル nから矩形の 4頂点 Pl, P2, P3, P4を求める。 4頂点 PI , P2, P3, P4は 論理的な座標点である。そして、前記 4頂点 PI , P2, P3, P4に対する丸め処理を行 なって画素に応ずる画素座標点 Ql, Q2, Q3, Q4を求める。画素座標点 Ql , Q2, Q3, Q4は画素の格子点上の座標になる。この画素座標点 Ql, Q2, Q3, Q4で囲 まれた領域をポリゴンとして描画する。
[0055] ここで、単純な四捨五入による丸め処理を比較例として説明する。例えば図 7の始 点座標 Aと法線ベクトル nの和に係る頂点 P1の X座標及び Y座標に着目する。図 8に 例示されるように、画素の格子点に対する P1の論理座標点に対し、画素ピッチの範 囲で X, Y方向に四捨五入すると、 P1に最も近い画素が画素座標点 Q1になる。従つ て図 9に例示されるように、頂点 Piと画素座標点 Qiは画素ピッチに対し最大で土 2 /2変化する。 P1と P4は線分 ABに対して線対称であるから、 Pl、 P4に対する Ql、 Q4の誤差は共に同じになり、太線の幅としては画素ピッチの土 2倍の誤差を生じ、 同じ幅で太線を描画しょうとしても、描画方向ゃ始点 ·終点の位置によって線の太さ に画素ピッチの 2 2倍の違いを生ずる可能性がある。例えば図 10に例示されるよう に、幅が 9画素分の太線を描画する場合、 a方向に対しては na方向の法線ベクトルが 求まり、 b方向に対しては nb方向の法線べタトノレが求まる。ベタトノレの終点が画素の 格子点上になければ、これを丸め処理にて画素の格子点上の点に割り付ける。前記 四捨五入による場合、 a方向に対しては幅 waの太線、 b方向に対しては幅 wbの太線 として描画され、同じ線幅の太線を描画しょうとしても、描画方向によって線幅が異な る結果になってしまう。ナビゲーシヨンシステムにおレ、て地図上で道路を太線描画す る場合に同じ幅の道路であっても方向によって又は屈曲若しくはカーブになるに従つ て太さが変化することになり、道路などに対する表示性能の低下が余儀なくされる。
[0056] 2Dグラフィックスモジュール 20による太線描画ではそれを解消するのに、第 1に、 2 次元的に丸め方向を決定する丸め処理を採用し、第 2に、法線ベクトルの長さを非対 象とする。
[0057] 2次元的な丸め方向の決定について説明する。図 11には 2次元的な法線べクトノレ の丸め処理の原理を示す。例えば 4個の画素格子間の領域を 16分割し、分割部分 のうちハッチングを施した中央部の所定部分 (例外丸め対象部分)に関しては例外的 に丸め方向を矢印で示す画素に変更し (例外丸め処理)、それ以外は四捨五入によ る通常の丸め(通常丸め処理)を行なって画素座標を決定する。例えば P1のような論 理座標点がハッチング四角部分に入っているとき、矢印で示される画素の位置を対 応する画素座標点 Q1とする。図 11の矢印の向きから理解されるように、丸め方向は 描画幅を直径とする円の接線方向(太線の描画方向)になっている。これは、 4個の 画素格子間の中央部分は丸め処理によって相対的に大きな誤差を生ずる部分であ り、そのような部分に対して丸め処理を行なっても法線の長さ(太線の幅)が極力伸縮 しない方向に丸めようとするものである。丸め方向は、法線ベクトルである描画線幅規 定ベクトルの起点 (A)を中心とする 2次元座標上で前記描画線幅規定ベクトルが属 する象限に応じて決定する。要するに、始点 Aを中心とする XY座標上で PI , P4が 有する X座標点、 Y座標点の符号に従って画素座標 Ql、 Q4を決定し、終点 Bを中 心とする XY座標上で P2, P3が有する X座標点、 Y座標点の符号に従って画素座標 Q2、 Q3を決定する。例えば第 1象限であれば右下の画素、第 2象限であれば右上 の画素、第 3象限であれば左上の画素、第 4象限であれば左下の画素、というように 丸め方向を決めれば良い。
[0058] 法線べタトノレの長さを非対象とすることについて説明する。図 12には法線べクトノレ の長さを非対象とすることの意味が示される。例えば太線の描画幅を Wとすると、始 点 Aに対する一方に法線べタトノレの大きさは W/2、他方の法線ベクトルの大きさは WZ2—ひとする。例えばひは画素ピッチの 1/4の長さとされる。図 13には太線幅を 9画素分とするとき始点 Aを中心に論理座標 PI , P2が採り得る位置を示している。法 線ベクトルの長さを非対称にすることにより、片方の法線ベクトルが丸め処理により長 さが延びた場合、他方の法線ベクトルは短く丸められる傾向を採り、結果として、描画 幅の全体的な伸縮が打ち消され、若しくは緩和される方向に向けられる。例えば図 1 3の座標点 Pl, P4について考察すると、 P1に対応する Q1は右下の画素座標とされ ることにより対応する一方の法線ベクトルは最適長に対して長くされ、 P4に対応する Q4は四捨五入によって直近の画素座標とされることにより対応する他方の法線べク トルは最適長よりも短くされ、結果として太線幅の変動は小さく抑えられる。
[0059] 画素座標点 Q1 Q4で規定される領域のポリゴン描画は、例えば図 14乃至図 19 に示されるように順次行なうことができる。例えば図 14のように始点 Aから終点 Bに向 力 線分を太線描画する場合に求められた 4頂点を Q1 Q4とする。先ず、図 15に 例示されるように、頂点 Q1から Q4に向力 線分上の各座標点を求める。同様に、頂 点 Q2から Q3に向力、う線分上の各座標点を求める。上記処理で求まる各座標点の間 を 1噴次直 Hi苗画する。図 16には 1本目、図 17には 2本目、図 18には 4本目、図 19に は最後の直線描画を行なった状態が示される。その他の手法として、図 20乃至図 22 に例示されるように分割した 3角形を X方向に上から走査するように画素を順次塗り つぶすようにしてポリゴン描画を行なってもよレ、。
[0060] 図 23には 2Dグラフィックスモジュール 20のブロック図が示される。 2Dグラフィックス モジュール 20は、描画コマンドフェッチ部 50、ジオメトリ処理部 51、太線化処理部 52 、ポリゴン描画部 53、及びピクセル処理部 54力 成る。 2Dグラフィックスモジュール 2 0に対する CPU2及び外部メモリ 15の接続形態は簡略化して図示してある。
[0061] CPU2は 2Dグラフィックスモジュール 20に対する起動やレジスタリード等を行なう。
描画コマンドフェッチ部 50は外部メモリ 15の画像用メモリ領域に格納された画像処 理コマンドや描画図形の座標などを入力する。ジオメトリ処理部 51は図形座標をスク リーン座標に変換する処理を行なう。太線化処理部 52はコマンドによる太線化指示 に従って前記太線描画のための処理を行なう。ポリゴン描画部 53によるデータはピク セル処理部 54で画素データ(ピクセルデータ)とされ、その物理アドレスと共に外部メ モリ 15の画像用メモリ領域に格納され、画像表示に供される。
[0062] 図 24には太線化処理部 52の一例が示される。頂点バッファ 60には線分の頂点座 標 A(x, y)、 B(x, y)が入力される。線分計算部 61では A (x, y)を始点、 B(x, y)を 終点とする線分 A (x, y)— B(x, y)=DX, DYを計算する。線幅非対象化回路 62は 線幅 Wの情報を入力し、非対象の線幅 WN1, WN2の情報を出力する。法線計算部 63Aは線分 DX, DYに対する法線方向の線幅 WN1の法線 N1を演算する。法線計 算部 63Bは線分 DX, DYに対する法線方向の線幅 WN2の法線 N2を演算する。太 線頂点計算部 64は A+N1、 A + N2、 B + N1、 B + N2の 4頂点を演算する。演算さ れた 4頂点に対して 2次元丸め部 65で前記丸め処理が行なわれる。
[0063] 図 25には線幅非対象化回路 62の一例が示される。線幅 WN1, WN2は描画幅の 画素数が奇数か偶数かによつて相異される。ここでは、線幅 Wの画素数が奇数の場 合には WN1は(W_l)/2、 WN2は(W_1)Z2_ひとする。偶数の場合には WN1 は W/2、 WN2は W/2—1—ひとする。 aは線幅毎に決められた法線を非対称にす るための定数である。定数ひはひテーブル 70が保有し、線幅 Wに応ずる定数ひを選 択して出力する。ここでは、線幅 WN1用の出力 α 1 = 0、線幅 WN2用の出力 α 2 = _αとする。尚、特に図示はしないが、線幅 WN1用の出力 α 1=+ α/2、線幅 WN 2用の出力 α 2=— α/2のように双方の線幅を増減することも可能である。
[0064] デクリメンタ 71, 72は入力を一 1して出力する。線幅 Wに対して画素数が奇数である か偶数であるかを偶数'奇数判定部 73で判定する。奇数であれば、セレクタ 74でデ クリメンタ 71の出力を選択し、これをシフタ 75で 1/2とし、その結果 (W-l)/2をカロ 算器 (ADD) 76で α 1=0と加算して WN1を出力する。奇数のとき WN2側に対して はセレクタ 77でシフタ 75の出力(W_l)/2を選択させ、その結果 (W-l)/2を加算 器 (ADD) 78で α 2=- αと加算して WN2を出力する。偶数'奇数判定部 73による 判定が偶数であれば、セレクタ 74で線幅 Wをそのまま選択し、これをシフタ 75で lZ 2とし、その結果 WZ2を力卩算器 (ADD) 76でひ 1=0と加算して WN1を出力する。 WN2側に対してはセレクタ 77でデクリメンタ 72の出力 W/2— 1を選択させ、これを 加算器 (ADD) 78でひ 2 =_ひと加算して WN2を出力する。
[0065] 図 26には線幅非対象化回路 62の別の例が示される。即ち、線幅 Wに応じた線幅 WN1, WN2を夫々保有する WN1テーブル 79Aと WN2テーブル 79Bを配置し、入 力する線幅 Wに応じて直接線幅 WN1, WN2を出力するように構成される。 [0066] 図 27には 2次元丸め部の一例が示される。太線頂点計算部 64で計算された 4頂点 P1— P4の X座標点と y座標点に基づレ、て象限判定部 80で夫々の頂点座標が位置 する象限が求められる。ここで言う象限とは図 11で説明した意味である。例外丸め計 数テーブル 82は P1 P4の座標点に加算すべき係数 (例外丸め係数)を保有し、象 限の判定結果にしたがって例外丸め係数 (x、 y) = (m, n)を出力する。例外丸め係 数は図 11に新される規則に従い、第 1象限であれば(1 , 0)、第 2象限であれば(1 , 1)、第 3象限であれば (0, 1)、第 4象限であれば (0, 0)とする。例外'通常丸め判定 部 81は、図 11で説明したように画素の格子間を 16分割した領域の内の例外丸め対 象部分に 4頂点 P1 P4が入るかを判別する。例外丸め処理対象の場合にはセレク タ 83で例外丸め係数テーブル 82の出力を選択する。通常丸め処理対象の場合に は(0. 5, 0. 5)がセレクタ 83で選択される。セレクタ 83の出力と頂点座標は対応す るもの同士が加算器 (ADD) 85で加算され、加算結果は切り捨て処理部 86で小数 点以下が切り捨てられる。切り捨て処理部 86の出力が Q1— Q4の画素座標点情報と される。
[0067] 太線の描画方向に対して垂直で線幅の 1/2の長さのベクトノレを求め、始点と終点 とこのベクトルから太線の 4頂点を求めてポリゴン描画を行なう方式では、線幅の 1/ 2の長さの法線べクトノレを求める際に、少数点の座標として求まる力 S、描画座標は整 数である必要があるため、四捨五入等により丸めることが必要となり、表示装置の解 像度では、この四捨五入などの丸めのため描画方向により太線の線幅が太めに見え たり、細めに見えたりすることがある。これに対し、 2DGFIC20による上記太線描画 処理では、太線の中心の左右で非対称に行うこと、また、 X軸、 Y軸単独に座標を丸 めず、互いの軸に対してどちらに丸めたかを考慮して 2次元的に丸めを行うことにより 、低解像度でも全ての方向に対して太さの誤差が少なく太線描画を行うことができる
[0068] 全ての方向に対して、実質的に一様な太さの線を描画することができる。単純な四 捨五入によるに丸めを行う場合には、ワースト 'ケースで目的の線幅に対して、約土 2ピクセルの誤差を生じ、一番太い部分と細い部分での線幅の差が 2 2ピクセル となるが、上記丸め処理を採用することにより、一番太い部分と細い部分での線幅の 差を 2/2程度に減少させることができる。
[0069] 地図の大半を占め、ナビゲーシヨンにとって最も重要な道路情報力 一様な太さで 美しく表現出来るため地図全体の見易さの向上になる。また、一様な太さで描画でき るため、道路に縁取りを付け更に見易さの向上を図ることができ、一方通行や渋滞情 報などの付加情報を見やすく付けることも可能になる。地図の見易さは、安全運転の 効果があり、カー ·ナビゲーシヨン自体の付加価値にもなる。
[0070] 以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、 本発明はそれに限定されるものではなぐその要旨を逸脱しない範囲において種々 変更可能であることは言うまでもない。
[0071] 例えば CPUはスーパースカラに限定されなレ、。第 2バスはスーパハイウェイバスに 限定されない。第 1回路モジュール及び第 2回路モジュールは図 1で説明した機能を 有する者に限定されない。
産業上の利用可能性
[0072] 本発明はカーナビゲーシヨンシステムへの適用に限定されず、グラフィック表示を有 する種々のデータ処理システムに広く適用することができる。

Claims

請求の範囲
[1] 中央処理装置と、
前記中央処理装置に接続される第 1バスと、
前記第 1バスを介するデータ転送を制御するダイレクトメモリアクセスコントローラと、 前記第 1バスとデータ送受信を行うバスブリッジ回路と、
前記第 1バスを介して前記中央処理装置からコマンドを受信して 3次元画像処理を 行う 3次元画像処理部と、
前記バスブリッジ回路と複数の第 1回路モジュールとに接続された第 2バスと、 前記バスブリッジ回路と第 2回路モジュールとに接続された第 3バスと、 前記第 1バス、第 2バス及び 3次元画像処理部に接続され、外部のメモリに接続可 能にされるメモリインタフェース回路と、を半導体チップに有し、
前記バスブリッジ回路は半導体チップの外部に接続される回路と前記第 2バスとの 間のダイレクトメモリアクセス転送を制御可能であることを特徴とする画像処理用半導 体プロセッサ。
[2] 前記バスブリッジ回路に接続され、前記中央処理装置から複数の第 1回路モジユー ルへのレジスタ設定に利用可能な第 4バスを更に有することを特徴とする請求項 1記 載の画像処理用半導体プロセッサ。
[3] 前記バスブリッジ回路は更に、前記第 2バスと第 3バスとの間のダイレクトメモリァクセ ス転送を実行可能であることを特徴とする請求項 2記載の画像処理用半導体プロセ ッサ。
[4] 前記中央処理装置は 1サイクルで 2命令実行可能なスーパースカラ構成を有し、中 央処理装置の処理サイクル内で所定ビット数のデータを 2組用意し、用意された 2組 のデータを 1バスサイクルで第 1バスへ転送可能であることを特徴とする請求項 1記載 の画像処理用半導体プロセッサ。
[5] 前記第 1回路モジュールとして 2次元画像処理を行う 2次元画像処理部を有すること を特徴とする請求項 1記載の画像処理用半導体プロセッサ。
[6] 前記第 1回路モジュールとして前記 2次元画像処理部又は 3次元画像処理部で生成 された画像データの表示制御を行う表示制御部を有することを特徴とする請求項 5記 載の画像処理用半導体プロセッサ。
[7] 第 2回路モジュールとして GPSモジュールを有することを特徴とする請求項 1記載の 画像処理用半導体プロセッサ。
[8] 前記 2次元画像処理部は、太線描画に際して、描画方向を規定する中心線に対して 垂直方向の描画線幅を規定するための描画線幅規定ベクトルを求め、中心線の始 点及び終点と前記描画線幅規定ベクトルに基づいて太線の矩形を求め、矩形の 4頂 点の論理的な座標に対する丸め処理を行って画素に応ずる 4頂点の描画座標を求 め、 4頂点の描画座標で囲まれる領域をポリゴンとして描画することを特徴とする請求 項 1記載の画像処理用半導体プロセッサ。
[9] 前記 2次元画像処理部は、描画方向の中心線に対して左右非対称な幅となるように 描画線幅規定ベクトルを求めることを特徴とする請求項 8記載の画像処理用半導体 プロセッサ。
[10] 前記 2次元画像処理部は、前記丸め処理において、画素座標から相対的に離れた 所定の論理座標に対しては、例外的に、描画方向に垂直な向きの画素座標に代え て描画方向に向く画素座標を描画座標に割当てることを特徴とする請求項 9記載の 画像処理用半導体プロセッサ。
[11] 前記 2次元画像処理部は、隣接する画素座標間で複数分割されたどの領域に論理 座標が属するかにより、前記例外的に画素座標を割当てる対象である所定の論理座 標か否かを判断することを特徴とする請求項 10記載の画像処理用半導体プロセッサ
[12] 前記 2次元画像処理部は、描画線幅規定べタトノレの起点を中心とする 2次元座標上 で前記描画線幅規定ベクトルが属する象限に応じて、前記例外的に割当てる描画座 標の位置を決定することを特徴とする請求項 11記載の画像処理用半導体プロセッサ
PCT/JP2004/009427 2003-08-07 2004-07-02 画像処理用半導体プロセッサ Ceased WO2005015504A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005512907A JP4283809B2 (ja) 2003-08-07 2004-07-02 画像処理用半導体プロセッサ

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003-206466 2003-08-07
JP2003206466 2003-08-07

Publications (1)

Publication Number Publication Date
WO2005015504A1 true WO2005015504A1 (ja) 2005-02-17

Family

ID=34113713

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/009427 Ceased WO2005015504A1 (ja) 2003-08-07 2004-07-02 画像処理用半導体プロセッサ

Country Status (3)

Country Link
US (2) US7446775B2 (ja)
JP (1) JP4283809B2 (ja)
WO (1) WO2005015504A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257169A (ja) * 2006-03-22 2007-10-04 Fujitsu Ltd アクセス制御方法及び情報処理装置
JP2008176682A (ja) * 2007-01-22 2008-07-31 Renesas Technology Corp 半導体集積回路及びデータ処理システム

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4177525B2 (ja) * 1999-07-23 2008-11-05 京セラ株式会社 携帯電話機
US6892264B2 (en) * 2001-10-05 2005-05-10 International Business Machines Corporation Storage area network methods and apparatus for associating a logical identification with a physical identification
JP4699685B2 (ja) * 2003-08-21 2011-06-15 パナソニック株式会社 信号処理装置及びそれを用いた電子機器
EP1846834A2 (en) 2005-01-25 2007-10-24 Lucid Information Technology, Ltd. Graphics processing and display system employing multiple graphics cores on a silicon chip of monolithic construction
JP2006293929A (ja) * 2005-04-14 2006-10-26 Matsushita Electric Ind Co Ltd データ伝送装置
US11733958B2 (en) 2005-05-05 2023-08-22 Iii Holdings 1, Llc Wireless mesh-enabled system, host device, and method for use therewith
US7667707B1 (en) * 2005-05-05 2010-02-23 Digital Display Innovations, Llc Computer system for supporting multiple remote displays
US8019883B1 (en) 2005-05-05 2011-09-13 Digital Display Innovations, Llc WiFi peripheral mode display system
KR100631527B1 (ko) * 2005-06-23 2006-10-09 엘지전자 주식회사 임베디드 시스템의 운용 소프트웨어 업그레이드 장치와방법
US8817029B2 (en) * 2005-10-26 2014-08-26 Via Technologies, Inc. GPU pipeline synchronization and control system and method
US8095745B1 (en) * 2006-08-07 2012-01-10 Marvell International Ltd. Non-sequential transfer of data from a memory
US20090096794A1 (en) * 2007-10-16 2009-04-16 Tsung-Hsun Yang Thick line drawing method and apparatus thereof
FR2927449B1 (fr) * 2008-02-11 2010-03-26 Newscape Technology Trace de lignes polygonales
US8818695B2 (en) 2009-02-23 2014-08-26 Hti Ip, L.L.C. Method for reporting traffic conditions
US8965670B2 (en) * 2009-03-27 2015-02-24 Hti Ip, L.L.C. Method and system for automatically selecting and displaying traffic images
JP2011141823A (ja) * 2010-01-08 2011-07-21 Renesas Electronics Corp データ処理装置および並列演算装置
US9053562B1 (en) 2010-06-24 2015-06-09 Gregory S. Rabin Two dimensional to three dimensional moving image converter
US10817043B2 (en) * 2011-07-26 2020-10-27 Nvidia Corporation System and method for entering and exiting sleep mode in a graphics subsystem
US9992021B1 (en) 2013-03-14 2018-06-05 GoTenna, Inc. System and method for private and point-to-point communication between computing devices
JP6924026B2 (ja) * 2016-12-19 2021-08-25 シナプティクス インコーポレイテッド 半導体装置、ヒューマンインターフェース装置及び電子機器
CN107870878A (zh) * 2017-10-31 2018-04-03 深圳清华大学研究院 存储系统、终端及计算机装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02126377A (ja) * 1988-11-05 1990-05-15 Fujitsu Ltd 太線描画方式
JP2000155738A (ja) * 1998-11-19 2000-06-06 Ricoh Co Ltd データ処理装置
JP2004013794A (ja) * 2002-06-11 2004-01-15 Renesas Technology Corp 半導体集積回路装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434959A (en) * 1992-02-11 1995-07-18 Macromedia, Inc. System and method of generating variable width lines within a graphics system
JPH0628486A (ja) 1992-07-09 1994-02-04 Hitachi Ltd 画像処理装置
US6058459A (en) * 1996-08-26 2000-05-02 Stmicroelectronics, Inc. Video/audio decompression/compression device including an arbiter and method for accessing a shared memory
US6128026A (en) * 1998-05-04 2000-10-03 S3 Incorporated Double buffered graphics and video accelerator having a write blocking memory interface and method of doing the same
US6608625B1 (en) 1998-10-14 2003-08-19 Hitachi, Ltd. Three dimensional graphic processor
US6535217B1 (en) * 1999-01-20 2003-03-18 Ati International Srl Integrated circuit for graphics processing including configurable display interface and method therefore
US6525738B1 (en) * 1999-07-16 2003-02-25 International Business Machines Corporation Display list processor for decoupling graphics subsystem operations from a host processor
US6631431B1 (en) * 1999-09-15 2003-10-07 Koninklijke Philips Electronics N.V. Semaphore coding method to ensure data integrity in a can microcontroller and a can microcontroller that implements this method
US6701405B1 (en) * 1999-10-01 2004-03-02 Hitachi, Ltd. DMA handshake protocol
US6754509B1 (en) * 1999-12-30 2004-06-22 Qualcomm, Incorporated Mobile communication device having dual micro processor architecture with shared digital signal processor and shared memory
US6947057B2 (en) * 2000-01-11 2005-09-20 Sun Microsystems, Inc. Rendering lines with sample weighting
US6912638B2 (en) * 2001-06-28 2005-06-28 Zoran Corporation System-on-a-chip controller
JP4065503B2 (ja) * 2001-08-21 2008-03-26 キヤノン株式会社 画像処理装置、画像入出力装置、変倍処理方法、及びメモリ制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02126377A (ja) * 1988-11-05 1990-05-15 Fujitsu Ltd 太線描画方式
JP2000155738A (ja) * 1998-11-19 2000-06-06 Ricoh Co Ltd データ処理装置
JP2004013794A (ja) * 2002-06-11 2004-01-15 Renesas Technology Corp 半導体集積回路装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257169A (ja) * 2006-03-22 2007-10-04 Fujitsu Ltd アクセス制御方法及び情報処理装置
JP2008176682A (ja) * 2007-01-22 2008-07-31 Renesas Technology Corp 半導体集積回路及びデータ処理システム

Also Published As

Publication number Publication date
US20050030311A1 (en) 2005-02-10
US7868892B2 (en) 2011-01-11
JP4283809B2 (ja) 2009-06-24
US20090015590A1 (en) 2009-01-15
JPWO2005015504A1 (ja) 2006-10-05
US7446775B2 (en) 2008-11-04

Similar Documents

Publication Publication Date Title
WO2005015504A1 (ja) 画像処理用半導体プロセッサ
US6532525B1 (en) Method and apparatus for accessing memory
US7127563B2 (en) Shared memory architecture
JP2016509280A (ja) グラフィックスプロセッシングユニットベースのメモリ転送動作を行うためのマルチモードメモリアクセス技法
JP2000276127A (ja) 情報処理装置及び表示制御装置
JP7138190B2 (ja) ネットワークスイッチのキュー
US6502173B1 (en) System for accessing memory and method therefore
JP4568950B2 (ja) グラフィックス描画装置
US10453166B2 (en) Image processing device and image processing method
CA2323116A1 (en) Graphic processor having multiple geometric operation units and method of processing data thereby
US7593016B2 (en) Method and apparatus for high density storage and handling of bit-plane data
JP2006318178A (ja) データ転送調停装置およびデータ転送調停方法
JP4042088B2 (ja) メモリアクセス方式
JP2014075028A (ja) 画像処理装置
CN112882986A (zh) 一种带有超节点以及超节点控制器的众核处理器
CN120418820A (zh) 可配置多管芯图形处理单元
US20040064662A1 (en) Methods and apparatus for bus control in digital signal processors
US20260003794A1 (en) Balanced Latency Stacked Cache
JP4936223B2 (ja) アフィン変換装置および方法
KR20010050234A (ko) 메모리(mem)와 결합한 데이터 처리용 디바이스
JP2011103025A (ja) データ入出力装置およびそれを用いたデータ処理装置
JP4232234B2 (ja) 画像処理装置
JP2002024157A (ja) Dma処理方法およびdma処理装置
JP4496923B2 (ja) 共有メモリシステム
CN121918882A (zh) 一种复制区域的复制系统及方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2005512907

Country of ref document: JP

122 Ep: pct application non-entry in european phase