CN107958438A - A kind of OpenGL creates display listing circuitry - Google Patents
A kind of OpenGL creates display listing circuitry Download PDFInfo
- Publication number
- CN107958438A CN107958438A CN201711281040.8A CN201711281040A CN107958438A CN 107958438 A CN107958438 A CN 107958438A CN 201711281040 A CN201711281040 A CN 201711281040A CN 107958438 A CN107958438 A CN 107958438A
- Authority
- CN
- China
- Prior art keywords
- data
- write
- list
- fifo
- word
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Communication Control (AREA)
Abstract
The invention belongs to area of computer graphics, is related to a kind of OpenGL and creates display listing circuitry, including:Pre-decode writes interface 1, and the newly-built list enable signal sent to pre-decode unit 5 is detected, and when detecting that newly-built list enable signal is effective, sets newly-built list state effective;Newly-built table data and word of the list in DDR6 is obtained from pre-decode unit 5 enable information and be sent to write data splicing 2;Data splicing 2 is write, the table data received and word are enabled into information is assembled into the FIFO of 264b and write data, when 264b data assemblings finish or pre-decode unit 5 is decoded to and terminates the order of list, then the data of assembling are written to Write post FIFO3;Write post FIFO3, when newly-built list state is effective, if pfull indication signals are effective or pre-decode unit 5 is decoded to the order for terminating list, AXI logic interfacings 4 are sent to by the buffered data in Write post FIFO3;AXI logic interfacings 4, the buffered data from Write post FIFO3 is written in DDR6 according to AXI standard interfaces.
Description
Technical field
The invention belongs to area of computer graphics, is related to a kind of newly-built display list commands data to OpenGL and stores electricity
The realization on road.
Background technology
In area of computer graphics, display list is to solve the problems, such as that unnecessary repetition renders, and is buffered from order
One piece of precalculated data is taken out in area, they are responsible for performing some repeated tasks, such as draw anchor ring, this block
Data can copy back into command buffer at any time later, this block number is created according to required a large amount of function calls and compiling so as to save
Expense.In newly-built display list, perform, can only carry out one by one because pre-decode unit processing graph command is order,
In order to avoid carrying out frequent read access to DDR buses, this newly-built display is added between pre-decode and DDR access arbitrations
Listing circuitry.
The content of the invention
The purpose of the present invention is:
The present invention provides a kind of OpenGL and creates display listing circuitry, for list commands data to be written in DDR
Circuit, so as to fulfill this operating process of newly-built list.
The present invention technical solution be:
A kind of OpenGL creates display listing circuitry, including:Pre-decode writes interface 1, writes data splicing 2, Write post
FIFO3, AXI logic interfacing 4;
Pre-decode writes interface 1, and the newly-built list enable signal sent for pre-decode unit 5 is detected, when detecting
When newly-built list enable signal is effective, setting OpenGL to create, to create list state in display listing circuitry effective;From pre-decode
Unit 5 obtains newly-built table data and word of the list in DDR6 and enables information, and table data and word are enabled information hair
Give and write data splicing 2;
Data splicing 2 is write, the table data received and word are enabled into information is assembled into the FIFO of 264b and write data, when
264b data assemblings finish or pre-decode unit 5 is decoded to the order for terminating list, then are written to the data of assembling slow
Rush FIFO3;
Write post FIFO3, when newly-built list state is effective, if pfull indication signals are effective or pre-decode unit 5 is translated
Buffered data in Write post FIFO3 is then sent to AXI logic interfacings 4 by code to the order for terminating list;
AXI logic interfacings 4, the buffered data from Write post FIFO3 is written in DDR6 according to AXI standard interfaces.
The FIFO depth of Write post FIFO3 is 32b, and data width 264b's, pfull is dimensioned to 16;Data
High 8b is enabled as the word of low 256b.
AXI logic interfacings 4 include the process in the data write-in DDR6 of assembling:
First AXI logic interfacings to DDR6 send the write address useful signal of 1b, 4b write access ID, 30b write address
Information, 4b write burst length, after waiting the 1b write access ready signal response for receiving DDR6 replies, you can initiate one
The data transfer of burst length, by 1b write useful signal, 8b write data word enable, the table data of 256b and 1b
Write end signal and be sent to DDR6, DDR6 replys the ready signal of writing of 1b after receiving, completion is once transmitted.
The method that write address information produces is as follows:It is first read address by " base address "+" pre-decode unit send address it is inclined
Move " produce, address thereafter is updated according to the burst length of last write-in DDR6.
The producing method for writing burst length is as follows:If the DDR that writes that pfull is initiated is asked, then burst length is 4'
b1111;If being sent to the end of display list, burst length is remaining data amount check in Write post FIFO3.
The 128b data received and corresponding 4b words are enabled be assembled into 264b FIFO write data method it is as follows:
When received nlist_wr_wden is effective, it is successively placed in the null field of wr_data_tmp, and is set at the same time corresponding
Wr_data_wden be 1;, will when 8 the enabled of word are all 1, or the current command is the last item order in list
Word, which is enabled, together writes Write post FIFO3 with data.
It is an advantage of the invention that:The present invention provides a kind of circuit realization that data and buffering are write for DDR, it is used for realization
Pre-decode unit rapidly and efficiently will display table data be written in DDR.
Brief description of the drawings
Fig. 1 is the method module map of the present invention.
Fig. 2 is the schematic diagram that the present invention writes data splicing.
Embodiment
In order to make the purpose , technical scheme and advantage of the present invention be clearer, below in conjunction with example, the present invention is made
It is further described.It should be appreciated that instantiation described herein is not used to limit this only to explain the present invention
Invention.
A kind of OpenGL creates display listing circuitry, including:Pre-decode writes interface 1, writes data splicing 2, Write post
FIFO3, AXI logic interfacing 4;
Pre-decode writes interface 1, and the newly-built list enable signal sent for pre-decode unit 5 is detected, when detecting
When newly-built list enable signal is effective, setting OpenGL to create, to create list state in display listing circuitry effective;From pre-decode
Unit 5 obtains newly-built table data and word of the list in DDR6 and enables information, and table data and word are enabled information hair
Give and write data splicing 2;
Data splicing 2 is write, the table data received and word are enabled into information is assembled into the FIFO of 264b and write data, when
264b data assemblings finish or pre-decode unit 5 is decoded to the order for terminating list, then are written to the data of assembling slow
Rush FIFO3;
Write post FIFO3, when newly-built list state is effective, if pfull indication signals are effective or pre-decode unit 5 is translated
Buffered data in Write post FIFO3 is then sent to AXI logic interfacings 4 by code to the order for terminating list;
AXI logic interfacings 4, the buffered data from Write post FIFO3 is written in DDR6 according to AXI standard interfaces.
The FIFO depth of Write post FIFO3 is 32b, and data width 264b's, pfull is dimensioned to 16;Data
High 8b is enabled as the word of low 256b.
AXI logic interfacings 4 include the process in the data write-in DDR6 of assembling:
First AXI logic interfacings to DDR6 send the write address useful signal of 1b, 4b write access ID, 30b write address
Information, 4b write burst length, after waiting the 1b write access ready signal response for receiving DDR6 replies, you can initiate one
The data transfer of burst length, by 1b write useful signal, 8b write data word enable, the table data of 256b and 1b
Write end signal and be sent to DDR6, DDR6 replys the ready signal of writing of 1b after receiving, completion is once transmitted.
The method that write address information produces is as follows:It is first read address by " base address "+" pre-decode unit send address it is inclined
Move " produce, address thereafter is updated according to the burst length of last write-in DDR6.
The producing method for writing burst length is as follows:If the DDR that writes that pfull is initiated is asked, then burst length is 4'
b1111;If being sent to the end of display list, burst length is remaining data amount check in Write post FIFO3.
The 128b data received and corresponding 4b words are enabled be assembled into 264b FIFO write data method it is as follows:
When received nlist_wr_wden is effective, it is successively placed in the null field of wr_data_tmp, and is set at the same time corresponding
Wr_data_wden be 1;, will when 8 the enabled of word are all 1, or the current command is the last item order in list
Word, which is enabled, together writes Write post FIFO3 with data.
Embodiment
As shown in Figure 1, a kind of circuit being used in newly-built display list commands write-in DDR6 is realized, possess pre-decode and write and connect
Mouth 1, write the part such as data splicing 2, Write post FIFO3, AXI logic interfacing 4 composition.
A) pre-decode writes interface 1:When detecting that the newly-built list of pre-decode unit is enabled, list state instruction letter is write in setting
Number effectively, and when it is 0 that data, which effectively indicate data_valid, table data renewal will be write to nlist_data;
B) data splicing 2 is write:Because the data bit width handled in pre-decode is 128b, and AXI buses DDR writes interface data
Bit wide is 256b, so bit wide matching to be needed to the process of one data splicing of increase, can not only be spliced 128b data
Into 256b, while invalid field can also be removed.Data splicing carries out successively according to compact arranged principle, after the completion of splicing
It is written to Write post FIFO;
C) Write post FIFO3:Write list state indication signal it is effective when, if pfull is effective, to DDR6 initiate write behaviour
Make, or write that list state is invalid and Write post FIFO3 non-NULLs, also need to initiate write operation to write data in Write post FIFO3
Into DDR6;
D) AXI logic interfacings 4:After the write request of initiation obtains DDR6 responses, you can initiate the data of a burst length
Data in Write post FIFO3 are deposited into DDR6 by transmission in the form of the strb of the data of 256b and 8b.
The method that write address produces is as follows:First address of reading is by " base address "+" address offset that pre-decode unit is sent "
Produce, address thereafter is updated according to the size length write every time;
The producing method for writing burst length is as follows:To avoid the problem that across DDR address boundary, write address is done
The regulation of 512 byte-aligneds, so writing burst length need to only determine according to the number of data.If pfull is initiated
Write DDR request, then burst length is 4'b1111;If being sent to the end of display list, burst length is by buffering
Remaining data amount check determines in FIFO.
The method for writing data splicing is as follows:The process of order splicing is illustrated in fig. 2 shown below, as received nlist_wr_wden
When effective, it is successively placed in the null field of wr_data_tmp, and it is 1 to set corresponding wr_data_wden at the same time;When 8
The enabled of a word is all 1, or when the current command is the last item order in list, word is enabled and is together write with data
FIFO_WR。
Finally it should be noted that:The above embodiments are merely illustrative of the technical solutions of the present invention, rather than its limitations;Although
The present invention is explained with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that:It still may be used
To modify to the technical solution described in foregoing embodiments, or equivalent substitution is carried out to which part technical characteristic;
And these modification or replace, do not make appropriate technical solution essence depart from various embodiments of the present invention technical solution spirit and
Scope.
Claims (6)
1. a kind of OpenGL creates display listing circuitry, it is characterised in that including:Pre-decode writes interface (1), writes data splicing
(2), Write post FIFO (3), AXI logic interfacings (4);
Pre-decode writes interface (1), and the newly-built list enable signal sent for pre-decode unit (5) is detected, when detecting
When newly-built list enable signal is effective, setting OpenGL to create, to create list state in display listing circuitry effective;From pre-decode
Unit (5) obtains newly-built table data and word of the list in DDR (6) and enables information, and table data and word are enabled letter
Breath, which is sent to, writes data splicing (2);
Data splicing (2) is write, the table data received and word are enabled into information is assembled into the FIFO of 264b and write data, when
264b data assemblings finish or pre-decode unit (5) is decoded to the order for terminating list, then are written to the data of assembling
Buffer FIFO (3);
Write post FIFO (3), when newly-built list state is effective, if pfull indication signals are effective or pre-decode unit (5) is translated
Buffered data in Write post FIFO (3) is then sent to AXI logic interfacings (4) by code to the order for terminating list;
AXI logic interfacings (4), DDR (6) is written to by the buffered data from Write post FIFO (3) according to AXI standard interfaces
In.
2. a kind of OpenGL as claimed in claim 1 creates display listing circuitry, it is characterised in that
The FIFO depth of Write post FIFO (3) is 32b, and data width 264b's, pfull is dimensioned to 16;The height of data
8b is enabled as the word of low 256b.
3. a kind of OpenGL as claimed in claim 1 creates display listing circuitry, it is characterised in that
AXI logic interfacings (4) include the process in the data write-in DDR (6) of assembling:
AXI logic interfacings are to DDR (6) sends the write address useful signal of 1b, the write address of write access ID, 30b of 4b is believed first
Breath, 4b write burst length, after waiting the 1b write access ready signal response for receiving DDR (6) replies, you can initiate one
The data transfer of burst length, by 1b write useful signal, 8b write data word enable, the table data of 256b and 1b
Write end signal and be sent to DDR (6), DDR (6) replys the ready signal of writing of 1b after receiving, completion is once transmitted.
4. a kind of OpenGL as claimed in claim 3 creates display listing circuitry, it is characterised in that
The method that write address information produces is as follows:First address of reading is by " base address "+" address offset that pre-decode unit is sent "
Produce, address thereafter is updated according to the burst length of last write-in DDR (6).
5. a kind of OpenGL as claimed in claim 3 creates display listing circuitry, it is characterised in that
The producing method for writing burst length is as follows:If the DDR that writes that pfull is initiated is asked, then burst length is 4'
b1111;If being sent to the end of display list, burst length is remaining data amount check in Write post FIFO (3).
6. a kind of OpenGL as claimed in claim 1 creates display listing circuitry, it is characterised in that
The 128b data received and corresponding 4b words are enabled be assembled into 264b FIFO write data method it is as follows:Work as receipts
When the nlist_wr_wden arrived is effective, it is successively placed in the null field of wr_data_tmp, and corresponding wr_ is set at the same time
Data_wden is 1;When 8 the enabled of word are all 1, or the current command is the last item order in list, word is enabled
Write post FIFO (3) is together write with data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711281040.8A CN107958438A (en) | 2017-12-06 | 2017-12-06 | A kind of OpenGL creates display listing circuitry |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711281040.8A CN107958438A (en) | 2017-12-06 | 2017-12-06 | A kind of OpenGL creates display listing circuitry |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107958438A true CN107958438A (en) | 2018-04-24 |
Family
ID=61958280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711281040.8A Pending CN107958438A (en) | 2017-12-06 | 2017-12-06 | A kind of OpenGL creates display listing circuitry |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107958438A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110956573A (en) * | 2019-11-21 | 2020-04-03 | 中国航空工业集团公司西安航空计算技术研究所 | OpenGL graphics command pre-decoding method based on finite-state machine |
CN111028133A (en) * | 2019-11-21 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic command pre-decoding model based on SystemVerilog |
CN111026646A (en) * | 2019-11-21 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic command pre-decoding method based on SystemVerilog |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103425444A (en) * | 2012-05-25 | 2013-12-04 | 华为技术有限公司 | Display control method, display control system and display equipment |
CN105528300A (en) * | 2014-09-29 | 2016-04-27 | 炬芯(珠海)科技有限公司 | DDR memory controller and access monitoring method thereof |
CN105741237A (en) * | 2016-01-26 | 2016-07-06 | 南京铁道职业技术学院 | FPGA (Field Programmable Gate Array) image rollover based hardware realization method |
CN105843771A (en) * | 2016-04-11 | 2016-08-10 | 浪潮电子信息产业股份有限公司 | Method for communication among EDMA (enhanced direct memory access) devices with different bandwidths in multi-core DSP (digital signal processor) |
-
2017
- 2017-12-06 CN CN201711281040.8A patent/CN107958438A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103425444A (en) * | 2012-05-25 | 2013-12-04 | 华为技术有限公司 | Display control method, display control system and display equipment |
CN105528300A (en) * | 2014-09-29 | 2016-04-27 | 炬芯(珠海)科技有限公司 | DDR memory controller and access monitoring method thereof |
CN105741237A (en) * | 2016-01-26 | 2016-07-06 | 南京铁道职业技术学院 | FPGA (Field Programmable Gate Array) image rollover based hardware realization method |
CN105843771A (en) * | 2016-04-11 | 2016-08-10 | 浪潮电子信息产业股份有限公司 | Method for communication among EDMA (enhanced direct memory access) devices with different bandwidths in multi-core DSP (digital signal processor) |
Non-Patent Citations (1)
Title |
---|
肖灵芝: "GPU存储管理***的设计与实现", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110956573A (en) * | 2019-11-21 | 2020-04-03 | 中国航空工业集团公司西安航空计算技术研究所 | OpenGL graphics command pre-decoding method based on finite-state machine |
CN111028133A (en) * | 2019-11-21 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic command pre-decoding model based on SystemVerilog |
CN111026646A (en) * | 2019-11-21 | 2020-04-17 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic command pre-decoding method based on SystemVerilog |
CN110956573B (en) * | 2019-11-21 | 2023-06-13 | 中国航空工业集团公司西安航空计算技术研究所 | OpenGL graphic command pre-decoding method based on finite state machine |
CN111028133B (en) * | 2019-11-21 | 2023-06-13 | 中国航空工业集团公司西安航空计算技术研究所 | Graphic command pre-decoding device based on SystemVerilog |
CN111026646B (en) * | 2019-11-21 | 2023-06-30 | 中国航空工业集团公司西安航空计算技术研究所 | Graphical command pre-decoding method based on SystemVerilog |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7379068B2 (en) | Memory system and method for improved utilization of read and write bandwidth of a graphics processing system | |
KR101105489B1 (en) | Command-based control of nand flash memory | |
CN108230222A (en) | A kind of OpenGL shows list call circuit | |
US6766386B2 (en) | Method and interface for improved efficiency in performing bus-to-bus read data transfers | |
CN107958438A (en) | A kind of OpenGL creates display listing circuitry | |
US7181561B2 (en) | Ordering rule controlled command storage | |
CN107391400A (en) | A kind of memory expanding method and system for supporting complicated access instruction | |
US20070079015A1 (en) | Methods and arrangements to interface a data storage device | |
CN101261611A (en) | Peripheral apparatus data-transmission apparatus and transmission method | |
US20080228999A1 (en) | Dual use for data valid signal in non-volatile memory | |
US8805634B2 (en) | Test apparatus and test method | |
JPS63243989A (en) | Memory controller | |
US7917659B2 (en) | Variable length command pull with contiguous sequential layout | |
CN114036085B (en) | DDR 4-based multitasking read-write scheduling method, computer equipment and storage medium | |
CN115237349A (en) | Data read-write control method, control device, computer storage medium and electronic equipment | |
US20070005813A1 (en) | Peripheral device and method for interpreting redefined frame information structure | |
JPH02208716A (en) | Character and pattern output device | |
US7472212B2 (en) | Multi CPU system | |
JPS61138330A (en) | Buffer circuit | |
JP2828643B2 (en) | Straight line drawing device | |
CN113127399B (en) | Universal serial bus device and access method | |
JPH02226454A (en) | Computer system and transfer of data | |
JPS5915287A (en) | Display unit | |
JPS6398758A (en) | Dma controller | |
JPH05324534A (en) | Dma transfer 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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180424 |