CN101895767B - Method for storing and updating AVS inter-frame predicated reference pixel - Google Patents

Method for storing and updating AVS inter-frame predicated reference pixel Download PDF

Info

Publication number
CN101895767B
CN101895767B CN 200910051806 CN200910051806A CN101895767B CN 101895767 B CN101895767 B CN 101895767B CN 200910051806 CN200910051806 CN 200910051806 CN 200910051806 A CN200910051806 A CN 200910051806A CN 101895767 B CN101895767 B CN 101895767B
Authority
CN
China
Prior art keywords
block
memory
sub
reference pixel
register
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.)
Active
Application number
CN 200910051806
Other languages
Chinese (zh)
Other versions
CN101895767A (en
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.)
Shanghai Hangxin Electronic Technology Co ltd
Original Assignee
SHANGHAI AISINO CHIP ELECTRONIC TECHNOLOGY Co Ltd
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 SHANGHAI AISINO CHIP ELECTRONIC TECHNOLOGY Co Ltd filed Critical SHANGHAI AISINO CHIP ELECTRONIC TECHNOLOGY Co Ltd
Priority to CN 200910051806 priority Critical patent/CN101895767B/en
Publication of CN101895767A publication Critical patent/CN101895767A/en
Application granted granted Critical
Publication of CN101895767B publication Critical patent/CN101895767B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

The invention discloses a method for storing and updating an AVS inter-frame predicated reference pixel, belonging to the technical field of video coding and decoding and aiming at solving the technical problem of storing and updating reference pixels. Reference pixels required for inter-frame predication are respectively stored in an upper macro block row memory, a left macro block memory and a bottom right corner register, and both the memories and registers are from inside of a chip. The method comprises processing in the order from zero to three of the sub-block number as for one macro block; the processing of obtaining the reference pixel of each sub-block comprises two parts of predication preprocessing and predication post-processing; the method ensures that the 33 pixels required for AVS inter-frame predication are smartly stored and updated, thereby saving the memory resources, preventing reading data from an off-chip data memory in the inter-frame predication and reconstruction process, greatly improving the efficiency of the whole inter-frame predication, and reducing the influence on the inter-frame predication performance caused by in-chip and off-chip frequency data access.

Description

AVS inter-frame predicated reference pixel method for storing and updating
Technical field
The present invention relates to video coding and decoding technology, particularly relate to a kind of digital video decoding infra-prediction techniques of AVS standard.
Background technology
AVS (Audio Video Coding Standard) is by the autonomous digital audio/video encoding and decoding technique standard of formulating of China.The video section of this technical standard is promulgated to be State Standard of the People's Republic of China, enforcement in 1 day March in 2006 on February 22nd, 2006.The AVS video standard improves the code efficiency of inter-coded macroblocks with infra-prediction techniques, use during infra-frame prediction the left side piece, lower-left piece, top piece, upper right of current sub-block and upper left the lower right corner 1 pixel value totally 33 pixel values as the reference pixel of current sub-block prediction (lower-left and upper right respectively 8 pixel values can be when it is unavailable be obtained by the pixel-expansion of left and top piece, but directly use in its time spent).In the design and realization of AVS hardware video decoder, the required bandwidth of memory interface is one of key factor of system for restricting performance and cost.The data volume of intra-framed prediction module and amount of calculation are very large, take more memory interface bandwidth, are one of bottlenecks of whole system operation.Intra-framed prediction module is to memory interface the bus time that takies and the data volume that reads, has vital meaning for reducing the memory interface bandwidth and improving systematic function, 33 pixel values that need when how to design succinct data structure and coming each sub-block prediction store, and are key issues of infra-frame prediction.
Summary of the invention
For the defective that exists in the above-mentioned prior art, technical problem to be solved by this invention provides a kind of AVS inter-frame predicated reference pixel method for storing and updating that can improve whole infra-frame prediction storage update efficient.
In order to solve the problems of the technologies described above, a kind of AVS inter-frame predicated reference pixel method for storing and updating provided by the present invention, it is characterized in that, described method makes the required reference pixel of infra-frame prediction be stored in respectively macro-block line memory, left macro block memory, lower right corner register; Wherein:
Upper macro-block line memory comprises the U memory, and its size is the resolution width of this video sequence; Required 16 reference pixels in top of each sub-block infra-frame prediction will obtain from the U memory;
Left macro block memory comprises the L memory, and its size is 16 bytes; Required 16 reference pixels of left of each sub-block infra-frame prediction will obtain from the L memory;
Lower right corner register comprises R0 register, R1 register, R2 register, R3 register, and its size is respectively 1 byte; The required lower right corner reference pixel of the 0th sub-block infra-frame prediction will obtain from the R0 register, the required lower right corner reference pixel of the first sub-block infra-frame prediction will obtain from the R1 register, the required lower right corner reference pixel of the second sub-block infra-frame prediction will obtain from the R2 register, and the required lower right corner reference pixel of the 3rd sub-block infra-frame prediction will obtain from the R3 register;
Described method is: for a macro block, it processes the order according to sub-block number the from the 0th to the 3rd, and the processing that each sub-block reference pixel obtains comprises prediction pre-treatment and pre-two parts of after logging process; Described method specifically may further comprise the steps:
Step 1: the 0th sub-block pre-treatment:
Step 1.1 is got the reference pixel in the required lower right corner of prediction from the R0 register;
Step 1.2 is got the required upside reference pixel of prediction from the U memory, and the lower right corner pixel of the second sub-block of the corresponding lastrow macro block of current macro taken out from the U memory is kept at the R1 register, the first sub-block reference of confession current macro;
Step 1.3 is got the required left side reference pixel of prediction from the L memory, and the lower right corner pixel of the first sub-block of the corresponding upper macro block of current macro taken out from the L memory is kept at the R2 register, the second sub-block reference of confession current macro;
Step 2: the 0th sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 3: the first sub-block pre-treatment:
Step 3.1 is got the reference pixel in the required lower right corner of prediction from the R1 register;
Step 3.2 is got the required upside reference pixel of prediction from the U memory, and the lower right corner pixel of the 3rd sub-block of the corresponding lastrow macro block of current macro taken out from the U memory be kept at the R0 register, for the 0th sub-block reference of the corresponding next macro block of current macro;
Step 3.3 is got the required left side reference pixel of prediction from the L memory, and the lower right corner pixel of the 0th sub-block of current macro taken out from the L memory is kept at the R3 register, the 3rd sub-block reference of confession current macro;
Step 4: the first sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 5: the second sub-block pre-treatment:
Step 5.1 is got the reference pixel in the required lower right corner of prediction from the R2 register;
Step 5.2 is got the required upside reference pixel of prediction from the U memory;
Step 5.3 is got the required left side reference pixel of prediction from the L memory;
Step 6: the second sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 7: the 3rd sub-block pre-treatment:
Step 7.1 is got the reference pixel in the required lower right corner of prediction from the R3 register:
Step 7.2 is got the required upside reference pixel of prediction from the U memory;
Step 7.3 is got the required left side reference pixel of prediction from the L memory;
Step 8: the 3rd sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Wherein, described renewal U memory refer to this sub-block that after each sub-block is rebuild, will obtain this sub-block of data cover of last column at the horizontal correspondence position of U memory: the 0th sub-block, the second sub-block cover the memory cell of U memory directly over its correspondence; The first sub-block, the 3rd sub-block cover the memory cell of U memory directly over its correspondence;
Described renewal L memory refers to that this sub-block of data cover of last row of this sub-block that will obtain is at vertical correspondence position of L memory after each sub-block is rebuild: the 0th sub-block, the first sub-block cover the memory cell of its corresponding left L memory; The second sub-block, the 3rd sub-block cover the memory cell of its corresponding left L memory.
AVS inter-frame predicated reference pixel method for storing and updating provided by the invention is stored in respectively in memory and the register by the reference pixel that infra-frame prediction is required, storage update mechanism reasonable in design, not only saved memory resource, and in infra-frame prediction and process of reconstruction, do not need outside sheet reading out data the frame data memory, thereby greatly improved the efficient of whole infra-frame prediction, reduced in the sheet, the outer frequent access data of sheet are on the impact of infra-frame prediction performance.
Description of drawings
Fig. 1 is that the reference pixel of AVS infra-frame prediction shows distribution schematic diagram;
Fig. 2 is AVS infra-frame prediction of the present invention lower right corner register-stored schematic diagram;
Fig. 3 is the update method of AVS infra-frame prediction U memory of the present invention;
Fig. 4 is the update method of AVS infra-frame prediction L memory of the present invention.
Embodiment
Below in conjunction with description of drawings embodiments of the invention are described in further detail, but the present embodiment is not limited to the present invention, every employing similarity method of the present invention and similar variation thereof all should be listed protection scope of the present invention in.
For a better understanding of the present invention, Fig. 1 has drawn out AVS inter-frame predicated reference pixel distribution schematic diagram.Next image block may need the reference pixel used in infra-frame prediction, namely rightmost one row of each piece and the bottom pixel of delegation.Use for some piece that each macro block only has the sample point of last column may be positioned at its below, and other sample points that may use in fact just use in a macro block in the macro block, are perhaps used by adjacent macro block.
Based on above-mentioned analysis, the present invention's reference pixel that infra-frame prediction is required is stored in respectively upper macro-block line memory, left macro block memory, lower right corner register.Wherein:
Upper macro-block line memory comprises the U memory, and its size is the resolution width of this video sequence.Required 16 reference pixels in top of each sub-block infra-frame prediction will obtain from the U memory.
Left macro block memory comprises the L memory, and its size is 16 bytes.Required 16 reference pixels of left of each sub-block infra-frame prediction will obtain from the L memory.
Lower right corner register comprises R0 register, R1 register, R2 register, R3 register, and its size is respectively 1 byte.The required lower right corner reference pixel of the 0th sub-block infra-frame prediction will obtain from the R0 register, the required lower right corner reference pixel of the first sub-block infra-frame prediction will obtain from the R1 register, the required lower right corner reference pixel of the second sub-block infra-frame prediction will obtain from the R2 register, and the required lower right corner reference pixel of the 3rd sub-block infra-frame prediction will obtain from the R3 register.
Fig. 2 has provided R0, R1, R2, four register-stored the 0th sub-blocks of R3---the schematic diagram of the lower right corner reference pixel of the 3rd sub-block.As shown in Figure 2, the present invention only needs 4 registers just can realize the storage of infra-frame prediction lower right corner reference pixel.
AVS inter-frame predicated reference pixel method for storing and updating of the present invention, for a macro block, it processes the order according to sub-block number the from the 0th to the 3rd, and the processing that each sub-block reference pixel obtains comprises prediction pre-treatment and pre-two parts of after logging process.Described method specifically may further comprise the steps:
Step 1: the 0th sub-block pre-treatment:
Step 1.1 is got the reference pixel in the required lower right corner of prediction from the R0 register;
Step 1.2 is got the required upside reference pixel of prediction from the U memory, and the lower right corner pixel of the second sub-block of the corresponding lastrow macro block of current macro taken out from the U memory is kept at the R1 register, the first sub-block reference of confession current macro;
Step 1.3 is got the required left side reference pixel of prediction from the L memory, and the lower right corner pixel of the first sub-block of the corresponding upper macro block of current macro taken out from the L memory is kept at the R2 register, the second sub-block reference of confession current macro;
Step 2: the 0th sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 3: the first sub-block pre-treatment:
Step 3.1 is got the reference pixel in the required lower right corner of prediction from the R1 register;
Step 3.2 is got the required upside reference pixel of prediction from the U memory, and the lower right corner pixel of the 3rd sub-block of the corresponding lastrow macro block of current macro taken out from the U memory be kept at the R0 register, for the 0th sub-block reference of the corresponding next macro block of current macro;
Step 3.3 is got the required left side reference pixel of prediction from the L memory, and the lower right corner pixel of the 0th sub-block of current macro taken out from the L memory is kept at the R3 register, the 3rd sub-block reference of confession current macro;
Step 4: the first sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 5: the second sub-block pre-treatment:
Step 5.1 is got the reference pixel in the required lower right corner of prediction from the R2 register;
Step 5.2 is got the required upside reference pixel of prediction from the U memory;
Step 5.3 is got the required left side reference pixel of prediction from the L memory;
Step 6: the second sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 7: the 3rd sub-block pre-treatment:
Step 7.1 is got the reference pixel in the required lower right corner of prediction from the R3 register:
Step 7.2 is got the required upside reference pixel of prediction from the U memory;
Step 7.3 is got the required left side reference pixel of prediction from the L memory;
Step 8: the 3rd sub-block reprocessing:
Upgrade the U memory, upgrade the L memory.
Described step 2, in 4,6,8, the update method of U memory as shown in Figure 3: this sub-block of data cover of last column of this sub-block that will obtain after each sub-block is rebuild is at the horizontal correspondence position of U memory; Be specially: the 0th sub-block, the second sub-block cover the memory cell of U memory directly over its correspondence, and the first sub-block, the 3rd sub-block cover the memory cell of U memory directly over its correspondence.
Described step 2, in 4,6,8, the update method of L memory as shown in Figure 4: this sub-block of data cover of last row of this sub-block that will obtain after each sub-block is rebuild is at vertical correspondence position of L memory; Be specially: the 0th sub-block, the first sub-block cover the memory cell of its corresponding left L memory, and the second sub-block, the 3rd sub-block cover the memory cell of its corresponding left L memory.
The present invention is stored in respectively in memory and the register by the reference pixel that infra-frame prediction is required, storage update mechanism reasonable in design, not only saved the resource of memory, and in infra-frame prediction and process of reconstruction, do not need outside sheet reading out data the frame data memory, thereby greatly improved the efficient of whole infra-frame prediction, reduced in the sheet, the outer frequent access data of sheet are on the impact of infra-frame prediction performance.

Claims (1)

1. an AVS inter-frame predicated reference pixel method for storing and updating is characterized in that, described method makes the required reference pixel of infra-frame prediction be stored in respectively macro-block line memory, left macro block memory, lower right corner register; Wherein:
Upper macro-block line memory comprises the U memory, and its size is the resolution width of this video sequence; Required 16 reference pixels in top of each sub-block infra-frame prediction will obtain from the U memory;
Left macro block memory comprises the L memory, and its size is 16 bytes; Required 16 reference pixels of left of each sub-block infra-frame prediction will obtain from the L memory;
Lower right corner register comprises R0 register, R1 register, R2 register, R3 register, and its size is respectively 1 byte; The required lower right corner reference pixel of the 0th sub-block infra-frame prediction will obtain from the R0 register, the required lower right corner reference pixel of the first sub-block infra-frame prediction will obtain from the R1 register, the required lower right corner reference pixel of the second sub-block infra-frame prediction will obtain from the R2 register, and the required lower right corner reference pixel of the 3rd sub-block infra-frame prediction will obtain from the R3 register;
Described method is: for a macro block, it processes the order according to sub-block number the from the 0th to the 3rd, and the processing that each sub-block reference pixel obtains comprises prediction pre-treatment and pre-two parts of after logging process; Described method specifically may further comprise the steps:
Step 1: the 0th sub-block pre-treatment:
Step 1.1 is got the reference pixel in the required lower right corner of prediction from the R0 register;
Step 1.2 is got the required upside reference pixel of prediction from the U memory, and the lower right corner pixel of the second sub-block of the corresponding lastrow macro block of current macro taken out from the U memory is kept at the R1 register, the first sub-block reference of confession current macro;
Step 1.3 is got the required left side reference pixel of prediction from the L memory, and the lower right corner pixel of the first sub-block of the corresponding upper macro block of current macro taken out from the L memory is kept at the R2 register, the second sub-block reference of confession current macro;
Step 2: the 0th sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 3: the first sub-block pre-treatment:
Step 3.1 is got the reference pixel in the required lower right corner of prediction from the R1 register;
Step 3.2 is got the required upside reference pixel of prediction from the U memory, and the lower right corner pixel of the 3rd sub-block of the corresponding lastrow macro block of current macro taken out from the U memory be kept at the R0 register, for the 0th sub-block reference of the corresponding next macro block of current macro;
Step 3.3 is got the required left side reference pixel of prediction from the L memory, and the lower right corner pixel of the 0th sub-block of current macro taken out from the L memory is kept at the R3 register, the 3rd sub-block reference of confession current macro;
Step 4: the first sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 5: the second sub-block pre-treatment:
Step 5.1 is got the reference pixel in the required lower right corner of prediction from the R2 register;
Step 5.2 is got the required upside reference pixel of prediction from the U memory;
Step 5.3 is got the required left side reference pixel of prediction from the L memory;
Step 6: the second sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Step 7: the 3rd sub-block pre-treatment:
Step 7.1 is got the reference pixel in the required lower right corner of prediction from the R3 register:
Step 7.2 is got the required upside reference pixel of prediction from the U memory;
Step 7.3 is got the required left side reference pixel of prediction from the L memory;
Step 8: the 3rd sub-block reprocessing:
Upgrade the U memory, upgrade the L memory;
Wherein, described renewal U memory refer to this sub-block that after each sub-block is rebuild, will obtain this sub-block of data cover of last column at the horizontal correspondence position of U memory: the 0th sub-block, the second sub-block cover the memory cell of U memory directly over its correspondence; The first sub-block, the 3rd sub-block cover the memory cell of U memory directly over its correspondence;
Described renewal L memory refers to that this sub-block of data cover of last row of this sub-block that will obtain is at vertical correspondence position of L memory after each sub-block is rebuild: the 0th sub-block, the first sub-block cover the memory cell of its corresponding left L memory; The second sub-block, the 3rd sub-block cover the memory cell of its corresponding left L memory.
CN 200910051806 2009-05-22 2009-05-22 Method for storing and updating AVS inter-frame predicated reference pixel Active CN101895767B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910051806 CN101895767B (en) 2009-05-22 2009-05-22 Method for storing and updating AVS inter-frame predicated reference pixel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910051806 CN101895767B (en) 2009-05-22 2009-05-22 Method for storing and updating AVS inter-frame predicated reference pixel

Publications (2)

Publication Number Publication Date
CN101895767A CN101895767A (en) 2010-11-24
CN101895767B true CN101895767B (en) 2013-09-18

Family

ID=43104809

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910051806 Active CN101895767B (en) 2009-05-22 2009-05-22 Method for storing and updating AVS inter-frame predicated reference pixel

Country Status (1)

Country Link
CN (1) CN101895767B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363455A (en) * 2014-10-29 2015-02-18 复旦大学 Hardware on-chip storage method applicable to infra-frame prediction reference pixels in HEVC (high efficiency video coding) standard
CN105072447B (en) * 2015-07-17 2018-03-27 福州瑞芯微电子股份有限公司 A kind of method and apparatus for VP9 decoder motion vector predictions
CN114727116A (en) * 2022-04-06 2022-07-08 展讯通信(上海)有限公司 Encoding method and device

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101022551A (en) * 2007-03-15 2007-08-22 上海交通大学 Motion compensating module pixel prefetching device in AVS video hardware decoder
CN101115207A (en) * 2007-08-30 2008-01-30 上海交通大学 Method and device for implementing interframe forecast based on relativity between future positions
CN101227624A (en) * 2008-01-31 2008-07-23 上海广电(集团)有限公司中央研究院 AVS intra-frame prediction reference pattern extracting method
CN101330617A (en) * 2008-07-31 2008-12-24 上海交通大学 Hardware implementing method and apparatus for anticipater within multi-standard frame based on mode mapping
CN101383970A (en) * 2007-09-06 2009-03-11 北京中电华大电子设计有限责任公司 Intra-frame predictor implementing method based on AVS parallel flow

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101022551A (en) * 2007-03-15 2007-08-22 上海交通大学 Motion compensating module pixel prefetching device in AVS video hardware decoder
CN101115207A (en) * 2007-08-30 2008-01-30 上海交通大学 Method and device for implementing interframe forecast based on relativity between future positions
CN101383970A (en) * 2007-09-06 2009-03-11 北京中电华大电子设计有限责任公司 Intra-frame predictor implementing method based on AVS parallel flow
CN101227624A (en) * 2008-01-31 2008-07-23 上海广电(集团)有限公司中央研究院 AVS intra-frame prediction reference pattern extracting method
CN101330617A (en) * 2008-07-31 2008-12-24 上海交通大学 Hardware implementing method and apparatus for anticipater within multi-standard frame based on mode mapping

Also Published As

Publication number Publication date
CN101895767A (en) 2010-11-24

Similar Documents

Publication Publication Date Title
CN1812576B (en) Deblocking filters for performing horizontal and vertical filtering of video data simultaneously and methods of operating the same
JP5969608B2 (en) Encoding and decoding method and apparatus
CN102790879B (en) Method for high throughput parallel avc/h.264 context-based adaptive binary arithmetic coding decoder
US8902994B1 (en) Deblocking filtering
CN101330617B (en) Hardware implementing method and apparatus for anticipater within multi-standard frame based on mode mapping
CN103931180A (en) Image decoding apparatus
CN101252694A (en) Address mapping system and frame storage compression of video frequency decoding based on blocks
CN101656885B (en) Parallel decoding method and device in multi-core processor
CN101179720B (en) Video decoding method
CN101895767B (en) Method for storing and updating AVS inter-frame predicated reference pixel
CN103051892A (en) Method and apparatus for in-loop filtering
CN106358043A (en) Hybrid video decoding apparatus and associated hybrid video decoding method
CN100452882C (en) Data buffer storage method of variable size block motion compensation and implementing apparatus thereof
CN104521234A (en) Method and apparatus for video processing incorporating deblocking and sample adaptive offset
CN100474929C (en) Loading device and method for moving compensating data
CN103634604A (en) Multi-core DSP (digital signal processor) motion estimation-oriented data prefetching method
US20050259887A1 (en) Video deblocking method and apparatus
CN101790096B (en) Encoding and decoding method and device based on double prediction
CN100574460C (en) AVS inter-frame predicated reference sample extraction method
CN112422983A (en) Universal multi-core parallel decoder system and application thereof
CN101005619A (en) Loop circuit filtering method
TW201016017A (en) Memory management method and system of video encoder
CN1589029A (en) Reference storage device and method based on line buffer in video decoding chip
CN102186082B (en) H.264 protocol based optimized decoding method for intra-frame coding compression technology
CN104486630B (en) H.265 in Video coding under SAO patterns offset statistical method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 200233 Room 704, Building 2, No. 2570 Hechuan Road, Minhang District, Shanghai

Patentee after: Shanghai Hangxin Electronic Technology Co.,Ltd.

Address before: Room 5058, building B, 555 Dongchuan Road, Minhang District, Shanghai

Patentee before: SHANGHAI AISINOCHIP ELECTRONIC TECHNOLOGY Co.,Ltd.