CN116406465A - Graphics processing method and system for quickly reading primitive source data and electronic equipment - Google Patents

Graphics processing method and system for quickly reading primitive source data and electronic equipment Download PDF

Info

Publication number
CN116406465A
CN116406465A CN202380008778.4A CN202380008778A CN116406465A CN 116406465 A CN116406465 A CN 116406465A CN 202380008778 A CN202380008778 A CN 202380008778A CN 116406465 A CN116406465 A CN 116406465A
Authority
CN
China
Prior art keywords
mapping
primitive
block
data
rotation
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.)
Pending
Application number
CN202380008778.4A
Other languages
Chinese (zh)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of CN116406465A publication Critical patent/CN116406465A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Image Generation (AREA)

Abstract

The invention discloses a graphic processing method, a graphic processing system and electronic equipment for quickly reading graphic primitive source data, which comprises the steps of generating a mapping relation between a mapping type graphic primitive and physical storage addresses of a data prefetching storage space and a mapping storage space respectively, copying data stored in the data prefetching storage space by the mapping type graphic primitive to the mapping storage space according to the mapping relation, determining whether each graphic primitive at a current pixel point to be drawn is a mapping type graphic primitive or a non-mapping type graphic primitive, acquiring the source data of the graphic primitive from the mapping storage space according to the mapping relation if the graphic primitive is the mapping type graphic primitive, and acquiring the source data of the graphic primitive from other storage spaces if the graphic primitive is the non-mapping type graphic primitive; and carrying out real-time pixel synthesis processing on the source data of each primitive at the pixel point to be drawn currently, generating image data and outputting the image data. The graphic processing system for rapidly reading the primitive source data does not occupy more storage space and can greatly improve the graphic data reading speed.

Description

Graphics processing method and system for quickly reading primitive source data and electronic equipment
Technical Field
The present invention relates to the field of graphics processing technologies, and in particular, to a graphics processing method and system for quickly reading primitive source data, and an electronic device.
Background
Flash Memory (including SPI-Flash Memory and Nand-Flash Memory) is a nonvolatile Memory, and power-off data is not lost, and is generally used to store data such as graphics or image data. The FlashMemory read delay time is long and there is a limit to the average read speed.
For example, when a background picture needs to be displayed, the CPU reads out the background picture from the FlashMemory and saves it to a cache (e.g., SRAM, DRAM). The GPU reads background pictures and other resource data from the cache, performs pixel real-time synthesis point by point, generates pixel color data and drives a display device (such as an LCD display screen) to display. When the display device displays a larger resolution (e.g. 1280×720 or more), the background picture with YUV420 is drawn and the display area is completely filled, which requires 1280×720×3/2= 1382400 bytes, and occupies a larger cache space. Thus, copying a large picture resource from FlashMemory to the cache takes more time, resulting in a slow response refresh rate of the UI interface.
In order to reduce the hardware cost of the system, the storage space of the cache is small, at the moment, the required picture resources (such as background pictures) cannot be completely loaded into the cache, and the frame cache technology is not used, the GPU forms image data to drive the display screen to display through the point-by-point pixel real-time synthesis technology, so that the speed of directly reading the picture data from the flash memory by the GPU cannot meet the high-speed reading access requirement of the GPU on the picture data when the GPU executes the real-time pixel synthesis program.
Disclosure of Invention
The invention aims to solve the technical problem of providing a graphic processing method, a graphic processing system and electronic equipment for rapidly reading graphic primitive source data, which do not occupy more storage space and can greatly improve the reading speed of graphic data.
According to one embodiment, a graphics processing method for fast reading primitive source data includes: generating mapping relations between the mapping class graphic elements and physical storage addresses of the data prefetching storage space and the mapping storage space respectively; the data prefetching storage space is a physical storage space on a memory and comprises i data blocks for storing source data of mapping type primitives; the data block is divided into n fixed prefetching blocks with equal size and n alternate prefetching blocks with equal size which are distributed at intervals according to the source data size of the mapping type graphic element; the mapping storage space is a physical storage space on the cache and comprises i mapping blocks smaller than the mapped data blocks; n, i is a natural number greater than 0; copying the data stored in the data prefetching storage space by the mapping type graphic element to the mapping storage space according to the mapping relation; determining whether each primitive at the current pixel point to be drawn is a mapping primitive or a non-mapping primitive, acquiring source data of the mapping primitive from the mapping storage space according to the mapping relation if the primitive is the mapping primitive, and acquiring source data of the non-mapping primitive from other storage spaces if the primitive is the non-mapping primitive; and carrying out real-time pixel synthesis processing on the source data of each primitive at the pixel point to be drawn currently, generating image data and outputting the image data.
According to one embodiment, a graphics processing system for fast reading primitive source data, comprises: a graphics processing device, a memory and a cache; the graphic processing device generates a mapping relation between the mapping type graphic primitives respectively in the data prefetching storage space and the physical storage addresses of the mapping storage space, and copies the data stored in the data prefetching storage space to the mapping storage space according to the mapping relation; determining whether each primitive at the current pixel point to be drawn is a mapping primitive or a non-mapping primitive, acquiring source data of the mapping primitive from a mapping storage space according to the mapping relation if the primitive is the mapping primitive, and acquiring source data of the non-mapping primitive from other storage spaces if the primitive is the non-mapping primitive; carrying out real-time pixel synthesis processing on the source data of each primitive at the current pixel point to be drawn, generating image data and outputting the image data; the data prefetching storage space is a physical storage space on the memory and comprises i data blocks for storing source data of the mapping type graphic elements; the data block is divided into n fixed prefetching blocks with equal size and n alternate prefetching blocks with equal size which are distributed at intervals according to the source data size of the mapping type graphic element; the mapping storage space is a physical storage space on the cache and comprises i mapping blocks smaller than the mapped data blocks; and n and i are natural numbers greater than 0.
According to one embodiment, an electronic device includes a graphics processing system for rapidly reading primitive source data, and a display device coupled to the graphics processing system; the display device reads image data in real time and draws pixel points to be drawn.
Advantageous effects
The graphic processing method and the system for rapidly reading the primitive source data do not occupy more storage space and can greatly improve the graphic data reading speed.
Drawings
FIG. 1 is a block diagram of a graphics processing system that quickly reads primitive source data, in accordance with some embodiments.
FIG. 2 is a block diagram of a structure mapping memory space according to some embodiments.
FIG. 3 is a block diagram of a structure of a data prefetch memory space according to some embodiments.
Fig. 4 is a block diagram of the structure of a mapping block according to some embodiments.
Fig. 5 is a block diagram of a structure of a data block according to some embodiments.
FIG. 6 is a flow diagram of a graphics processing method of fast reading primitive source data, in accordance with some embodiments.
FIG. 7 is a flow chart of a graphics processing method of fast reading primitive source data, in accordance with some embodiments.
Description of the reference numerals: 10. a cache; 11. mapping the storage space; 20. a graphics processing device; 21. a command parsing unit; 22. a pixel synthesis unit; 23. a mapping management unit; 30. a display device; 40. a processor; gpu driver; 42. an application program; 43. an operating system; 50. a memory; 51. data prefetching storage space; 100. a graphics processing system; 111. mapping the blocks; 112. fixing the mapping area; 113. rotating the mapping area; 114. creating a base address of the mapping block; 115. fixing the mapping block; 116. rotating the mapping block; 511. a data block; 512. a storage base address of the data block; 513. fixing the prefetch block; 514. the prefetch blocks are rotated.
Best mode for carrying out the invention
The invention will now be described in further detail with reference to the drawings and examples. It is to be understood that the specific embodiments herein are set forth merely to illustrate and explain the invention, and are not intended to limit the invention.
It should be noted that, the "graphic" referred to in this application refers to any information that can be presented on the electronic device, including a display interface presented by an application program, and the like. "primitive" refers to graphically different types of graphical elements, such as text of various glyphs on a display interface, symbols and icons of various shapes, color-rich or single background pictures, and the like. A "graphic" includes one or more "primitives.
"primitives" may be element classified and layer layered according to agreed rules. For example, various pictures and characters can be classified into pure color primitives, ARGB primitives, linear gradient primitives, font primitives, and the like, and layers of different superimposed layers can be classified into window layer primitives located at the bottom layer, control layer primitives located at the middle layer, bitmap layer primitives located at the top layer, and the like. In particular, reference is made to another PCT International patent application, bitmap primitive-based graphics processing System, method and GPU (International application No. PCT/CN 2022/10458).
In this application, "primitives" are further divided into mapping class primitives, which refer to primitives that can be defined as mapping relationships, and non-mapping class primitives. Non-map class primitives may not be defined. The mapping class primitive may be a background picture, a navigation map, or other static or dynamic picture.
The primitive at the pixel point to be drawn currently may include a plurality of primitives of different types (for example, 1 picture primitive is overlaid with 1 text primitive, and the picture primitive may be a mapping primitive), and is overlaid and displayed through a predefined hierarchy, so as to form a semitransparent mixed effect.
"mapping" refers to the physical address mapping between different memory entities, by creating a physical address mapping, data can be read from one low-speed memory in advance and copied to another high-speed memory, read access to the physical address of the low-speed memory is converted to read access to the corresponding mapped address in the high-speed memory, and data is retrieved from the high-speed memory.
The graphics processing system in the application is a graphics processing system capable of rapidly reading the primitive source data, and adopts a point-by-point pixel real-time synthesis technology and a fixed mapping and rotation mapping technology, so that the requirements of high bandwidth and instantaneity for reading the primitive source data during GPU real-time pixel synthesis are met, the capacity of a cache is reduced, and the hardware cost of the system is reduced.
The "point-by-point pixel real-time synthesis technology" refers to that a Graphics Processing Unit (GPU) processes pixel points of a current picture to be drawn point by point in sequence based on a drawing graphics instruction of an application program, reads source data of each pixel point to be drawn at the current picture point, performs real-time pixel synthesis processing, generates image data, sends the image data to a display device in real time for display, and does not temporarily store the image data in a frame buffer, and sends the image data to the display device after one frame of image is rendered. The source data of the primitive is the source data of the primitive at the pixel point to be drawn currently, and the source data comprises color and transparency values. In particular, reference is made to another PCT International patent application, bitmap primitive-based graphics processing System, method and GPU (International application No. PCT/CN 2022/10458).
The electronic device processes the graphics through the graphics processing system, forms image data, and then displays the image data through the display device. The electronic device may include a personal computer, a computer workstation, a mobile phone, a portable gaming device, a music video player, a portable smart wearable device (e.g., smart wristband, smart watch, smart glasses), a portable smart translator device, an automotive electronic dashboard display device, an automotive electronic control system display device, or other types of devices that process and display graphical data.
The display device may include a liquid crystal display (LCD display), a plasma display panel, a Light Emitting Diode (LED) array display, a Cathode Ray Tube (CRT) display, a nanocrystal display, an electronic paper, a projection apparatus. The display device may be integrated in the electronic apparatus or may be a stand-alone apparatus connected to the electronic apparatus via a cable or a wireless communication interface.
As in the example of fig. 1, the electronic device includes a graphics processing system 100 and a display device 30. Among other things, graphics processing system 100 includes cache 10, graphics processing apparatus 20, processor 40, and memory 50.
The cache 10 may be used to store operating system programs and data, GPU drivers and data, source data of the primitives to be displayed, and the like, and may be Dynamic RAM (DRAM) or SRAM (static random access memory), without requiring a continuous periodic refresh current to maintain the data from being lost, which may further reduce power consumption.
The memory 50 may be used to store program data of an application, source data of a graphic element to be displayed, and the like. The memory 50 may be a non-volatile memory such as a flash memory (SpiFlash or NandFlash), an Erasable Programmable RAM (EPROM), an Electrically Erasable Programmable ROM (EEPROM), or the like. The read rate of memory 50 is lower than cache 10.
Processor 40 may be a general-purpose or special-purpose processor (CPU) that controls the electronic device, may execute various software programs, such as computer operating system programs, embedded operating system programs, various application programs (e.g., browser, email, media player, GUI application (Graphical User Interface, graphical user interface)), CPU may also issue pixel composition commands to the GPU via a human-machine interaction input device (e.g., keyboard, key, touch screen, microphone), or various sensors (e.g., vehicle speed sensor, oil sensor, wiper sensor), or communication module (e.g., bluetooth communication module, WIFI communication module, GPRS communication module), or other input device coupled to the image display device via a data interface.
The image processing device 20 may receive a frame start signal sent by the display controller or other external display control module, read source data of a to-be-displayed element after finishing the initialization, perform real-time pixel synthesis in sequence point by point, generate image data, and drive the display device 30 to display. Graphics processing apparatus 20 may be a processor (GPU) dedicated to processing graphics data. The read-out speed of the GPU accessing the memory 50 is far smaller than that of the accessing the cache 10, when larger primitive source data are processed, the primitive source data are read from the memory 50 directly at a lower speed, the performance requirement of the GPU for reading the primitive source data in real time cannot be met, the real-time synthesis of pixels is abnormal, the picture display effect is affected, the primitive source data can be read from the cache 10 directly through mapping, and the performance requirement of the GPU for reading the primitive source data in real time is met.
If there are mapping class primitives in the graphics to be displayed, before the GPU is started to execute the graphics rendering program, the GPU driver 41 executing on the processor 40 first allocates a required mapping block 111 for each mapping class primitive, the plurality of mapping blocks 111 form a mapping storage space 11, and establishes a mapping relationship between the physical storage address of the data prefetching storage space 51 and the physical storage address of the allocated mapping storage space 11 for each mapping class primitive, copies the data of the mapping class primitive stored in the data prefetching storage space 51 to the mapping storage space 11 according to the mapping relationship, determines whether each primitive at the pixel point to be drawn is a mapping class primitive or a non-mapping class primitive after the GPU starts graphics rendering, acquires source data of the mapping class primitive from the mapping storage space 11 according to the mapping relationship, acquires source data of the non-mapping class primitive from other storage spaces, synthesizes the source data of each primitive at the pixel point to be drawn in real time, generates image data, and outputs the image data. In an embodiment, the GPU may determine, through a pre-generated primitive list at a current pixel to be drawn and description information of primitives recorded in the primitive list, which primitives in the primitives at the current pixel to be drawn are map-type primitives. Various types of applications 42 may predefine the type of primitives, the display level of the primitives, the description information of the primitives, which may include map primitive labeling information, and other information. The map primitive tagging information may indicate that a graphics processing device (GPU) may read source data for a primitive from a map memory space 11 of cache 10, and that GPU driver 41 create map memory space 11 in cache 10 for the primitive and map with a data prefetch memory space 51 on memory 50 for the primitive. After the application 42 calls the graphics API and starts the GPU driver 41, the type of the primitive, the display level of the primitive, and the description information of the primitive may be sent to the graphics processing apparatus 20 through the GPU driver 41. Then, the GPU may generate a primitive list at the current pixel point to be drawn based on a preset primitive list generation scheme.
As in the example of fig. 2-5, the data prefetch storage space 51 is a physical storage space on the memory 50, comprising i data blocks 511 storing source data of map-like primitives, and is divided into n fixed prefetch blocks 513 of equal size and n rotate prefetch blocks 514 of equal size, which are spaced apart from each other. The mapped storage space 11 is a physical storage space on the cache 10 and includes i mapped blocks 111 that are smaller than the mapped data blocks 511. The mapping block 111 includes a fixed mapping area 112 and a rotation mapping area 113 adjacent to the fixed mapping area 112, the fixed mapping area 112 is divided into n fixed mapping blocks 115 which are sequentially mapped one by one with n fixed prefetch blocks 513 and have the same size, and the rotation mapping area 113 is divided into j rotation mapping blocks 116 which are sequentially mapped with n rotation prefetch blocks 514 and have the same size.
The sequential rotation mapping refers to a one-to-one mapping between n rotation prefetch blocks 514 and j rotation mapping blocks 116 for multiple rotation. Wherein n, i is a natural number greater than 0, and j is a natural number less than n.
Assuming n=120, j=50, then the sequential rotation mapping is to begin with the 1 st-50 th rotation prefetch block, i.e
First round mapping: the 1 st to 50 th rotation pre-fetching blocks are respectively mapped with the 1 st to 50 th rotation mapping blocks one by one in sequence;
Second round mapping: the 51 st to 100 th rotation pre-fetching blocks are respectively mapped with the 1 st to 50 th rotation mapping blocks one by one in sequence;
third-round mapping: the 101 th to 120 th rotation pre-fetching blocks are mapped with the 1 st to 20 th rotation mapping blocks in sequence one by one.
The GPU driver 41 determines whether the graphics to be displayed includes map-like primitives before generating the map storage space 11 according to the predetermined map basic parameters. The GPU driver 41 may determine that the to-be-displayed primitive is a map-like primitive according to the map primitive tag information contained in the to-be-displayed primitive.
Various types of applications 42 may predefine description information for primitives, which may include map primitive tagging information and map base parameters. After application 42 invokes the graphics API, and starts GPU driver 41, the description of the primitives may be sent to graphics processing device 20 via GPU driver 41.
The mapping base parameters include the storage base address 512 of the mapping class primitive in the data block, the creation base address 114 of the mapping block, the adjustment parameters of the fixed mapping block, the adjustment parameters of the rotation mapping block and j. The adjustment parameters of the fixed map blocks, the adjustment parameters of the rotation map blocks, and j, may be set in advance by the application 42 according to the speed at which the GPU accesses the cache 10 and the speed at which the memory 50 is accessed, and sent to the GPU driver 41 through the graphics API.
Specifically, if the difference between the speed at which the GPU accesses the cache 10 and the speed at which the GPU accesses the memory 50 exceeds a preset threshold, the adjustment parameters of the fixed map block may be set to be greater than the adjustment parameters of the rotation map block, and the setting j does not exceed a certain range. If the difference between the speed at which the GPU accesses the cache 10 and the speed at which it accesses the memory 50 does not exceed the preset threshold, the adjustment parameter of the fixed map block may be set equal to or smaller than the adjustment parameter of the rotation map block, and j is set to be greater than a certain value.
In one embodiment, the sum of the adjustment parameters of the fixed map block plus the adjustment parameters of the rotating map block is equal to 2 m The method comprises the steps of carrying out a first treatment on the surface of the Wherein m is a natural number.
In one embodiment, the GPU driver 41 calculates n according to the size of the mapping class primitive, the size of the fixed mapping block and the size of the rotated mapping block, and the sum of the size of the n fixed prefetch blocks 513 and the size of the n rotated prefetch blocks 514 is not smaller than the size of the mapping class primitive.
Wherein the size of the fixed map block is equal to the product of the adjustment parameter of the fixed map block and the page byte size of the cache 10, and the size of the rotation map block is equal to the product of the adjustment parameter of the rotation map block and the page byte size of the cache 10.
In one embodiment, the mapping base parameters may include n, which may be preset by application 42 and sent to GPU driver 41 via a graphics API.
In one embodiment, the GPU driver 41 determines the size and location of the map block 111 based on the fixed map block size, n, the rotated map block size, j and the map block creation base address 114, creating the same size and location of memory space in the cache 10 as the map block 111.
The GPU driver 41 first calculates n, then determines the size of the fixed map area 112 based on the product of the size of the fixed map block and n, and determines the size of the rotation map area 113 based on the product of the size of the rotation map block and j. Then, depending on the size of the fixed map area 112, the map area 113 size and the map block creation base address 114 are rotated to create the map block 111 by applying a space in the cache 10 by the memory allocation service of the operating system 43. A mapping block 111 is used to store source data of a mapping class primitive. If the graphic currently to be displayed includes a plurality of map class primitives, the GPU driver 41 may create a plurality of map blocks at a time.
In the present embodiment, the fixed map area 112 is created before, and the rotation map area 113 is created immediately after the fixed map area 112. Alternatively, the creation may be performed in reverse order.
In one embodiment, the graphics processing apparatus 20 generates a mapping table in which the memory addresses and the sequential one-to-one mapping relationship between the fixed prefetch block 513 and the fixed map block 115 of the mapping class primitive and the memory addresses and the sequential one-to-one mapping relationship between the rotate prefetch block 514 and the rotate map block 116 of the mapping class primitive are recorded according to the size and the position of the mapping block 111 created by the mapping class primitive at the memory base address 512 of the data block and the GPU driver 41.
Specifically, after creating the map block 111, the GPU driver 41 sends the base storage address 512 of the map-like primitive in the data block 511, the location information of the map block 111 mapped by the data block 511, the storage addresses of the n fixed prefetch blocks 513, the storage addresses of the n rotation prefetch blocks 514, the storage addresses of the n fixed map blocks 115, and the storage addresses of the j rotation map blocks 116 to the graphics processing apparatus 20. The graphic processing apparatus 20 generates the map table based on the information.
The graphics processing apparatus 20 copies the data of the fixed prefetch block 513 to the fixed map block 115 and copies the data of the rotate prefetch block 514 to the rotate map block 116 according to the mapping relation table until the map block 111 mapped with the data block 511 is full of data. And, after the data output of the one or more rotation mapping blocks 116, copying the data of the corresponding one or more rotation pre-fetch blocks 514 to the one or more rotation mapping blocks 116 according to the sequential rotation mapping relationship.
As in the example of fig. 1, the graphics processing apparatus 20 includes a command parsing unit 21, a pixel synthesizing unit 22, and a map management unit 23.
The command parsing unit 21 is configured to parse the command sent by the GPU driver 41, and configure parameters of the pixel synthesis unit 22 based on the command to enable the pixel synthesis unit 22 to execute a corresponding point-by-point pixel synthesis procedure.
A pixel synthesis unit 22, configured to determine whether each primitive at the current pixel point to be drawn is a mapping primitive or a non-mapping primitive, where if the primitive is a mapping primitive, the mapping management unit 23 obtains source data of the mapping primitive from the mapping storage space 11, and if the primitive is a non-mapping primitive, the mapping management unit obtains source data of the non-mapping primitive from other storage spaces; and carrying out real-time pixel synthesis processing on the source data of each primitive at the pixel point to be drawn currently, generating image data and outputting the image data. The pixel synthesis unit 22 may transmit image data to the display device 30 through an internal or external data communication interface.
The mapping management unit 23 is configured to generate mapping relationships between physical storage addresses of the mapping storage space 11 and the data prefetch storage space 51 of the mapping class primitives, copy the data stored in the mapping storage space 11 of the mapping class primitives according to the mapping relationships, and obtain source data of the mapping class primitives at the current pixel point to be drawn from the mapping storage space 11 according to the mapping relationships, and send the source data to the pixel synthesis unit 22.
The mapping management unit 23 generates a mapping relation table in which the storage addresses and the sequential one-to-one mapping relation of the fixed prefetch block 513 and the fixed mapping block 115 are recorded, and the storage addresses and the sequential mapping relation of the rotation prefetch block 514 and the rotation mapping block 116 are recorded according to the size and the position of the mapping block 111 created by the mapping class primitive at the storage base address 512 of the data block and the GPU driver 41.
After creating one or more mapping blocks 111, the GPU driver 41 sends the storage base address 512 of each mapping primitive in the data block, the location information and the size of the mapping block 111 mapped by the data block 511, the storage address of the prefetch block 513, and the storage address of the rotate prefetch block 514, and the address information of the fixed mapping block 115 and the rotate mapping block 116 in the mapping block 111 are sent to the mapping management unit 23, and the mapping management unit 23 generates the mapping relation table according to these information.
The mapping management unit 23, after creating the mapping relation table, reads the source data of the mapping class primitive from the data prefetch space 51 to the mapping storage space 11 until the mapping block 111 mapped with the data block 511 is full of data. When executing the pixel composition command of the primitive, the data may be read directly from the mapping memory space 11 and sent to the pixel composition unit 22.
Assuming that the GPU driver 41 creates 3 mapping blocks 111, the mapping relationship between the 3 mapping blocks 111 and the 3 data blocks 511 is recorded in the mapping relationship table, the mapping management unit 23 may read the data of the 3 data blocks 511 to the corresponding 3 mapping blocks 111 in advance. Then, when the GPU performs the point-by-point pixel real-time synthesis procedure and determines that a certain primitive at the currently executed pixel point is a mapping type primitive, the mapping management unit 23 may directly read the source data of the primitive from the mapping storage space 11, so as to reduce the data reading time.
As in the example of fig. 4 and 5, since the fixed prefetch block 513 and the fixed map block 115 are in a sequential one-to-one mapping relationship, the rotate prefetch block 514 and the rotate map block 116 are mapped in sequence, so that the 1 st fixed prefetch block F 1 With the 1 st fixed mapping block FC 1 Mutually mapped, 2 nd fixed prefetch block F 2 With the 2 nd fixed mapping block FC 2 Mutually mapped, jth fixed prefetch block F j With the j-th fixed mapping block FC j Mutual mapping relation, nth fixed prefetch block F n With the nth fixed mapping block FC n And mapping each other. 1 st-j th rotation prefetch block C 1 -C j With the 1 st-j th rotation mapping block RC 1 -RC j One-to-one mapping is ordered for the first round.
The map management unit 23 prefetches the block F from the first fixed in accordance with the mapping relation 1 Copying data to first fixed mapping block FC 1 Thereafter, prefetch block C is again rotated from the first 1 Copying data to first rotation mapping block RC 1 Alternating in this way, the j-th rotation prefetching block C is copied j After continuing to copy the j+1th fixed prefetch block F j+1 Until the mapping block 111 is full of data, j+1th rotation prefetch block C j+1 Through nth rotation prefetch block C n Is not copied.
Since j is smaller than n, the data of the remaining n-j rotate prefetch blocks are not read to the map block 111 in advance. The map management unit 23 outputs the 1 st rotation map block RC to the pixel synthesis unit 22 1 After the data of (2), according to the sequential rotation mapping relation between the rotation mapping blocks and the rotation prefetching blocks in the mapping relation table, the (j+1) th rotation prefetching block C is used for performing the rotation j+1 Copying data to the 1 st rotation mapping block RC 1 . At output 2 nd fixed mapping block FC 2 The j+1th rotation prefetching block C j+1 Has been copied to the 1 st rotation mapping block RC 1 Is a kind of medium. Mapping block RC at output 2 nd rotation 2 After the data of (2), prefetching the block C from the j+2th rotation according to the sequential rotation mapping relation j+2 Copying data to 2 nd rotation mapping block RC 2
On the other hand, according to the requirement of the pixel synthesis unit, the data of a plurality of rotation mapping blocks can be output at the same time, and then a plurality of rotation mapping blocks are pre-arrangedThe data of the fetched blocks are fed into the rotation mapping blocks. For example, the 1 st-2 nd rotation map blocks RC may be simultaneously mapped 1 -RC 2 The data of (2) is output to a pixel synthesis unit, and then the block C is prefetched from the j+1th rotation according to the sequential rotation mapping relation j+1 Copying data to the 1 st rotation mapping block RC 1 Prefetch block C from the j+2th rotation j+2 Copying data to 2 nd rotation mapping block RC 2
In short, after outputting the data of one or more rotation map blocks, the map management unit 23 copies the data of one or more rotation prefetch blocks to the one or more rotation map blocks according to the sequential rotation map relationship. By outputting the data of the rotation mapping block and then supplementing the data in time and outputting the data of the fixed mapping block and the rotation mapping block alternately in sequence, the pixel synthesis unit 22 can be ensured to be capable of quickly obtaining the data all the time, and the real-time synthesis rate of the pixels can not be influenced.
As illustrated in FIG. 6, the graphics processing method for fast reading primitive source data of the present embodiment includes steps 61-64.
Step 61: mapping relations between the mapping class primitives respectively in the data prefetching storage space and the physical storage addresses of the mapping storage space 11 are generated.
Wherein, the data prefetching storage space is a physical storage space on the memory 50, and includes i data blocks storing source data of mapping class primitives; the data block is divided into n fixed prefetching blocks with equal size and n alternate prefetching blocks with equal size which are distributed at intervals according to the source data size of the mapping type graphic element; the mapping storage space 11 is a physical storage space on the cache 10, and includes i mapping blocks smaller than the mapped data blocks; n, i is a natural number greater than 0.
In another embodiment, as in the example of fig. 7, step 60 is further included before step 61: and determining whether the graph to be displayed contains mapping type primitives, and if so, generating a mapping storage space according to preset mapping basic parameters.
The mapping block comprises a fixed mapping area and a rotation mapping area adjacent to the fixed mapping area, wherein the fixed mapping area is divided into n fixed mapping blocks which are mapped with n fixed pre-fetching blocks in sequence one by one and have the same size, and the rotation mapping area is divided into j rotation mapping blocks which are mapped with n rotation pre-fetching blocks in sequence and have the same size; the sequential rotation mapping refers to sequential one-to-one mapping between n rotation pre-fetching blocks and j rotation mapping blocks; where j is a natural number less than n.
In one embodiment, the mapping basic parameters include a storage base address of the mapping class primitive on the data block, a creation base address of the mapping block, an adjustment parameter of the fixed mapping block, an adjustment parameter of the rotation mapping block and j; wherein the adjustment parameters of the mapping blocks are fixed, the adjustment parameters of the mapping blocks and j are rotated, and the adjustment parameters are preset according to the access speeds of the memory and the cache.
In an embodiment, according to the size of the mapping class primitive, the size of the fixed mapping block and the size of the rotation mapping block are calculated to obtain n, and the sum of the size of the n fixed prefetching blocks and the size of the n rotation prefetching blocks is not smaller than the size of the mapping class primitive.
Wherein the size of the fixed map block is equal to the product of the adjustment parameter of the fixed map block and the page byte size of the cache, and the size of the rotation map block is equal to the product of the adjustment parameter of the rotation map block and the page byte size of the cache.
In one embodiment, the mapping base parameters may include n, which may be preset by application 42 and sent to GPU driver 41 via a graphics API.
In one embodiment, the sum of the adjustment parameters of the fixed map block plus the adjustment parameters of the rotating map block is equal to 2 m The method comprises the steps of carrying out a first treatment on the surface of the Wherein m is a natural number.
In one embodiment, generating the mapped storage space further comprises: and determining the size and the position of the mapping block according to the size of the fixed mapping block, n, the size of the rotation mapping block, j and the creation base address of the mapping block, and creating storage spaces with the same size and position in a cache as the mapping block.
In an embodiment, generating the mapping relation between the mapping class primitives between the data prefetching storage space and the physical storage addresses of the mapping storage space, respectively, further comprises: and generating a mapping relation table recording the storage addresses of the fixed pre-fetch blocks and the fixed mapping blocks and the sequential one-to-one mapping relation and the storage addresses of the alternate pre-fetch blocks and the alternate mapping blocks and the sequential alternate mapping relation according to the storage base addresses of the mapping class primitives in the data blocks and the sizes and positions of the mapping blocks.
Step 62: and copying the data stored in the data prefetching storage space by the mapping class graphic primitive according to the mapping relation to the mapping storage space.
In one embodiment, copying the data stored in the data prefetching storage space to the mapping storage space according to the mapping relation, further includes: copying the data of the fixed pre-fetch block to the fixed mapping block according to the mapping relation table, and copying the data of the rotation pre-fetch block to the rotation mapping block until the mapping block mapped with the data block is full of data.
In one embodiment, copying the data stored in the data prefetching storage space to the mapping storage space according to the mapping relation, further includes: after the data of one or more rotation mapping blocks are output, copying the data of the corresponding one or more rotation pre-fetching blocks to the one or more rotation mapping blocks according to the sequential rotation mapping relation.
Step 63: and determining whether each primitive at the current pixel point to be drawn is a mapping primitive or a non-mapping primitive, acquiring source data of the mapping primitive from a mapping storage space according to a mapping relation if the primitive is the mapping primitive, and acquiring source data of the non-mapping primitive from other storage spaces if the primitive is the non-mapping primitive.
In an embodiment, determining whether each primitive at the current pixel point to be drawn is a mapped class primitive or a non-mapped class primitive further comprises: and determining the primitive as a mapping type primitive according to the fact that the primitive at the pixel point to be drawn currently contains mapping primitive marking information.
Step 64: and carrying out real-time pixel synthesis processing on the source data of each primitive at the pixel point to be drawn currently, generating image data and outputting the image data.
While the foregoing is directed to the preferred embodiments, other and further embodiments of the invention will be apparent to those skilled in the art, and it is intended that the scope of the invention be limited only by the specific and further embodiments disclosed herein. Any obvious modification, equivalent replacement and improvement made on the basis of the principle defined in the invention should be included in the protection scope of the invention. The scope of the claimed invention should not be limited to the embodiments described above, but should be accorded the widest possible scope consistent with the principles and features as defined by the following claims.

Claims (22)

1. A graphics processing method for fast reading primitive source data, comprising:
generating mapping relations between the mapping class graphic elements and physical storage addresses of the data prefetching storage space and the mapping storage space respectively; the data prefetching storage space is a physical storage space on a memory and comprises i data blocks for storing source data of the mapping type graphic elements; the data block is divided into n fixed prefetching blocks with equal size and n alternate prefetching blocks with equal size which are distributed at intervals according to the source data size of the mapping type graphic element; the mapping storage space is a physical storage space on the cache and comprises i mapping blocks smaller than the mapped data blocks; n, i is a natural number greater than 0;
copying the data stored in the data prefetching storage space of the mapping class primitive to the mapping storage space according to the mapping relation;
determining whether each primitive at the current pixel point to be drawn is a mapping primitive or a non-mapping primitive, acquiring source data of the mapping primitive from the mapping storage space according to the mapping relation if the primitive is the mapping primitive, and acquiring source data of the non-mapping primitive from other storage spaces if the primitive is the non-mapping primitive;
And carrying out real-time pixel synthesis processing on the source data of each primitive at the pixel point to be drawn currently, generating image data and outputting the image data.
2. The method of claim 1, further comprising, prior to said generating the mapping relationship between the data prefetch memory space and the physical memory addresses of the map memory space, respectively, of the map class primitives:
determining whether the graph to be displayed contains mapping type primitives, if so, generating the mapping storage space according to preset mapping basic parameters; the mapping block comprises a fixed mapping area and a rotation mapping area adjacent to the fixed mapping area, the fixed mapping area is divided into n fixed mapping blocks which are mapped with the n fixed prefetching blocks in sequence one by one and have the same size, and the rotation mapping area is divided into j rotation mapping blocks which are mapped with the n rotation prefetching blocks in sequence and have the same size; the sequential rotation mapping refers to sequential one-to-one mapping of multiple rounds between the n rotation pre-fetch blocks and the j rotation mapping blocks; wherein j is a natural number less than n.
3. The method of claim 2, wherein the mapping base parameters include a storage base address of the mapping class primitive on the data block, a creation base address of the mapping block, an adjustment parameter of the fixed mapping block, an adjustment parameter of the rotation mapping block, and the j; and the adjustment parameters of the fixed mapping blocks, the adjustment parameters of the rotation mapping blocks and the j are preset according to the access speeds of the memory and the cache.
4. The graphics processing method for fast reading primitive source data as recited in claim 2, further comprising:
according to the size of the mapping class graphic element, calculating to obtain n according to the size of the fixed mapping block and the size of the rotation mapping block, and enabling the sum of the size of the n fixed prefetching blocks and the size of the n rotation prefetching blocks to be not smaller than the size of the mapping class graphic element;
wherein the size of the fixed map block is equal to the product of the adjustment parameter of the fixed map block and the page byte size of the cache, and the size of the rotation map block is equal to the product of the adjustment parameter of the rotation map block and the page byte size of the cache.
5. The graphics processing method for fast reading primitive source data as recited in claim 2, further comprising:
the sum of the adjustment parameters of the fixed mapping block plus the adjustment parameters of the rotation mapping block is equal to 2 m The method comprises the steps of carrying out a first treatment on the surface of the Wherein m is a natural number.
6. The graphics processing method of claim 2, wherein said generating said mapped storage space further comprises:
and determining the size and the position of the mapping block according to the size of the fixed mapping block, the size of the n, the size of the rotation mapping block, the j and the creation base address of the mapping block, and creating storage spaces with the same size and position in the cache as the mapping block.
7. The method of claim 6, wherein generating the mapping relationship between the data prefetch storage space and the physical storage addresses of the mapping storage space for the mapping class primitives, respectively, further comprises:
and generating a mapping relation table recording the storage addresses and the sequential one-to-one mapping relation of the fixed pre-fetching block and the fixed mapping block and the storage addresses and the sequential mapping relation of the rotation pre-fetching block and the rotation mapping block according to the storage base address of the mapping class primitive in the data block and the size and the position of the mapping block.
8. The method for processing graphics of fast read primitive source data according to claim 7, wherein copying the data of the map-like primitive stored in the data prefetch storage space to the map storage space according to the mapping relationship further comprises:
copying the data of the fixed pre-fetch block to the fixed mapping block according to the mapping relation table, and copying the data of the rotation pre-fetch block to the rotation mapping block until the mapping block mapped with the data block is full of data.
9. The method for processing graphics of fast read primitive source data according to claim 8, wherein copying the data of the map-like primitive stored in the data prefetch storage space to the map storage space according to the mapping relationship further comprises:
and after the data of one or more rotation mapping blocks are output, copying the data of the corresponding one or more rotation pre-fetching blocks to the one or more rotation mapping blocks according to the sequential rotation mapping relation.
10. The method for processing graphics for quickly reading primitive source data according to claim 1, wherein the determining whether each primitive at the pixel point to be currently drawn is a mapped primitive or a non-mapped primitive further comprises:
and determining the primitive to be a mapping type primitive according to the fact that the primitive at the pixel point to be drawn currently contains mapping primitive marking information.
11. A graphics processing system for fast reading primitive source data, comprising: a graphics processing device, a memory and a cache;
the graphic processing device generates a mapping relation between the mapping type graphic primitives respectively in a data prefetching storage space and a physical storage address of the mapping storage space, and copies the data stored in the data prefetching storage space by the mapping type graphic primitives to the mapping storage space according to the mapping relation; determining whether each primitive at the current pixel point to be drawn is a mapping primitive or a non-mapping primitive, acquiring source data of the mapping primitive from the mapping storage space according to the mapping relation if the primitive is the mapping primitive, and acquiring source data of the non-mapping primitive from other storage spaces if the primitive is the non-mapping primitive; carrying out real-time pixel synthesis processing on the source data of each primitive at the current pixel point to be drawn, generating image data and outputting the image data;
The data prefetching storage space is a physical storage space on the memory and comprises i data blocks for storing source data of the mapping type graphic elements; the data block is divided into n fixed prefetching blocks with equal size and n alternate prefetching blocks with equal size which are distributed at intervals according to the source data size of the mapping type graphic element;
the mapping storage space is a physical storage space on the cache and comprises i mapping blocks smaller than the mapped data blocks; and n and i are natural numbers greater than 0.
12. The graphics processing system for fast reading primitive source data as recited in claim 11, further comprising:
a GPU driver program executed on the processor determines whether the graphics to be displayed contain mapping type graphics primitives, if so, the mapping storage space is generated according to preset mapping basic parameters; the mapping block comprises a fixed mapping area and a rotation mapping area adjacent to the fixed mapping area, the fixed mapping area is divided into n fixed mapping blocks which are mapped with the n fixed prefetching blocks in sequence one by one and have the same size, and the rotation mapping area is divided into j rotation mapping blocks which are mapped with the n rotation prefetching blocks in sequence and have the same size; the sequential rotation mapping refers to sequential one-to-one mapping of multiple rounds between the n rotation pre-fetch blocks and the j rotation mapping blocks; wherein j is a natural number less than n.
13. The graphics processing system for fast reading primitive source data according to claim 12, further comprising:
the mapping basic parameters comprise the storage base address of the mapping type primitive on the data block, the creation base address of the mapping block, the adjustment parameters of the fixed mapping block, the adjustment parameters of the rotation mapping block and the j; and the adjustment parameters of the fixed mapping blocks, the adjustment parameters of the rotation mapping blocks and the j are preset according to the access speeds of the memory and the cache.
14. The graphics processing system for fast reading primitive source data according to claim 12, wherein the GPU driver further comprises:
according to the size of the mapping type graphic element, calculating the size of the fixed mapping block and the size of the rotation mapping block to obtain n, and enabling the sum of the size of the n fixed prefetching blocks and the size of the n rotation prefetching blocks to be not smaller than the size of the mapping type graphic element;
wherein the size of the fixed map block is equal to the product of the adjustment parameter of the fixed map block and the page byte size of the cache, and the size of the rotation map block is equal to the product of the adjustment parameter of the rotation map block and the page byte size of the cache.
15. The graphics processing system for fast reading primitive source data according to claim 12, further comprising:
the sum of the adjustment parameters of the fixed mapping block plus the adjustment parameters of the rotation mapping block is equal to 2 m The method comprises the steps of carrying out a first treatment on the surface of the Wherein m is a natural number.
16. The graphics processing system for fast reading primitive source data according to claim 12, wherein the GPU driver further comprises:
and determining the size and the position of the mapping block according to the size of the fixed mapping block, the size of the n, the size of the rotation mapping block, the j and the creation base address of the mapping block, and creating storage spaces with the same size and position in the cache as the mapping block.
17. The graphics processing system for fast reading primitive source data according to claim 16, wherein the graphics processing apparatus further comprises:
and generating a mapping relation table recording the storage addresses and the sequential one-to-one mapping relation of the fixed pre-fetching block and the fixed mapping block and the storage addresses and the sequential mapping relation of the rotation pre-fetching block and the rotation mapping block according to the storage base address of the mapping class primitive in the data block and the size and the position of the mapping block.
18. The graphics processing system for fast reading primitive source data as recited in claim 17, wherein the graphics processing means further comprises:
copying the data of the fixed pre-fetch block to the fixed mapping block according to the mapping relation table, and copying the data of the rotation pre-fetch block to the rotation mapping block until the mapping block mapped with the data block is full of data.
19. The graphics processing system for quickly reading primitive source data as recited in claim 18, wherein the graphics processing apparatus further comprises:
and after the data of one or more rotation mapping blocks are output, copying the data of the corresponding one or more rotation pre-fetching blocks to the one or more rotation mapping blocks according to the sequential rotation mapping relation.
20. The graphics processing system for fast reading primitive source data as recited in claim 11, wherein the graphics processing means further comprises:
and determining the primitive to be a mapping type primitive according to the fact that the primitive at the pixel point to be drawn currently contains mapping primitive marking information.
21. The graphics processing system for fast reading primitive source data as recited in claim 12, wherein the graphics processing means further comprises:
The command analysis unit is used for analyzing the command sent by the GPU driver and configuring parameters of the pixel synthesis unit based on the command so as to start the pixel synthesis unit to execute a corresponding point-by-point pixel synthesis program;
the pixel synthesis unit is used for determining whether each pixel at the current pixel point to be drawn is a mapping type pixel or a non-mapping type pixel, if the pixel is the mapping type pixel, acquiring source data of the mapping type pixel from the mapping storage space through the mapping management unit, and if the pixel is the non-mapping type pixel, acquiring source data of the non-mapping type pixel from other storage spaces; carrying out real-time pixel synthesis processing on the source data of each primitive at the pixel point to be drawn at present, generating image data and outputting the image data;
the mapping management unit is used for generating mapping relations between the mapping type graphic elements in the data prefetching storage space and physical storage addresses of the mapping storage space respectively, copying data stored in the data prefetching storage space by the mapping type graphic elements to the mapping storage space according to the mapping relations, acquiring source data of the mapping type graphic elements at the current pixel point to be drawn from the mapping storage space according to the mapping relations and sending the source data to the pixel synthesis unit.
22. An electronic device comprising a graphics processing system for fast reading primitive source data as claimed in any one of claims 11 to 21, and a display device coupled to the graphics processing system; and the display device reads the image data in real time and draws the pixel points to be drawn.
CN202380008778.4A 2023-01-05 2023-01-05 Graphics processing method and system for quickly reading primitive source data and electronic equipment Pending CN116406465A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2023/070655 WO2024145866A1 (en) 2023-01-05 2023-01-05 Graphics processing method and system for quickly reading source data of primitive, and electronic device

Publications (1)

Publication Number Publication Date
CN116406465A true CN116406465A (en) 2023-07-07

Family

ID=87008073

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202380008778.4A Pending CN116406465A (en) 2023-01-05 2023-01-05 Graphics processing method and system for quickly reading primitive source data and electronic equipment

Country Status (2)

Country Link
CN (1) CN116406465A (en)
WO (1) WO2024145866A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024145866A1 (en) * 2023-01-05 2024-07-11 卓永红 Graphics processing method and system for quickly reading source data of primitive, and electronic device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102760186B (en) * 2012-06-12 2014-11-19 中国电力科学研究院 Method for automatically generating vector graphics of intelligent transformer station
WO2024007293A1 (en) * 2022-07-08 2024-01-11 卓永红 Graphics processing system and method and gpu based on bitmap primitives
CN116406465A (en) * 2023-01-05 2023-07-07 卓永红 Graphics processing method and system for quickly reading primitive source data and electronic equipment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024145866A1 (en) * 2023-01-05 2024-07-11 卓永红 Graphics processing method and system for quickly reading source data of primitive, and electronic device

Also Published As

Publication number Publication date
WO2024145866A1 (en) 2024-07-11

Similar Documents

Publication Publication Date Title
JP6062438B2 (en) System and method for layering using a tile-by-tile renderer
US7746352B2 (en) Deferred page faulting in virtual memory based sparse texture representations
US5883640A (en) Computing apparatus and operating method using string caching to improve graphics performance
US8803898B2 (en) Forming a windowing display in a frame buffer
US7262776B1 (en) Incremental updating of animated displays using copy-on-write semantics
US20220292628A1 (en) Image processing method and apparatus
US6097402A (en) System and method for placement of operands in system memory
US5530799A (en) Rendering cache in an object oriented system
EP2596471B1 (en) Split storage of anti-aliased samples
US10140268B2 (en) Efficient browser composition for tiled-rendering graphics processing units
KR20190078086A (en) A method and an apparatus for performing tile-based rendering using prefetched graphics data
CN116406465A (en) Graphics processing method and system for quickly reading primitive source data and electronic equipment
CN117170883B (en) Method, device, equipment and storage medium for rendering display
CA2708857C (en) Display device and method for optimizing the memory bandwidth
KR20080031595A (en) Apparatus and method for managing off-screen buffering
EP1481386A1 (en) Frame buffer access device, frame buffer access method, computer program and recording medium
US11636566B2 (en) Computing system and methods of operating the computing system
CN106875884B (en) Method and device for drawing monochromatic screen and electronic equipment
CN115101025A (en) LCD control circuit supporting virtual frame buffering and control method thereof
US6888550B2 (en) Selecting between double buffered stereo and single buffered stereo in a windowing system
Hoddie et al. Drawing Graphics with Poco
CN117806499A (en) Display method and display device for mouse image
CN111402375A (en) Method and device for forming shutter effect and rendering engine
Hua et al. Research of image display acceleration in embedded system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination