CN107958438A - A kind of OpenGL creates display listing circuitry - Google Patents

A kind of OpenGL creates display listing circuitry Download PDF

Info

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
Application number
CN201711281040.8A
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.)
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xian Aeronautics Computing Technique Research Institute of AVIC
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 Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xian Aeronautics Computing Technique Research Institute of AVIC
Priority to CN201711281040.8A priority Critical patent/CN107958438A/en
Publication of CN107958438A publication Critical patent/CN107958438A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory 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

A kind of OpenGL creates display listing circuitry
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.
CN201711281040.8A 2017-12-06 2017-12-06 A kind of OpenGL creates display listing circuitry Pending CN107958438A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
肖灵芝: "GPU存储管理***的设计与实现", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (6)

* Cited by examiner, † Cited by third party
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