CN101534443A - Method for accessing memory under interframe prediction mode - Google Patents

Method for accessing memory under interframe prediction mode Download PDF

Info

Publication number
CN101534443A
CN101534443A CN 200910049549 CN200910049549A CN101534443A CN 101534443 A CN101534443 A CN 101534443A CN 200910049549 CN200910049549 CN 200910049549 CN 200910049549 A CN200910049549 A CN 200910049549A CN 101534443 A CN101534443 A CN 101534443A
Authority
CN
China
Prior art keywords
reference frame
macro block
memory
sheet
search window
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
CN 200910049549
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.)
SVA Group Co Ltd
Central Academy of SVA Group Co Ltd
Original Assignee
Central Academy of SVA Group 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 Central Academy of SVA Group Co Ltd filed Critical Central Academy of SVA Group Co Ltd
Priority to CN 200910049549 priority Critical patent/CN101534443A/en
Publication of CN101534443A publication Critical patent/CN101534443A/en
Pending legal-status Critical Current

Links

Images

Abstract

The invention provides a method for accessing a memory under an interframe prediction mode. The method is to respectively read macro block reference frame data stored in an off chip memory to on chip memory to be stored through opening a sectional type on chip memory which has the same size as a searching window, according to different positions of the macro block. The method achieves the effect of high efficient memory access under an FPGA hardware structure while meeting the requirement of high definition encoding.

Description

Memory pool access method under a kind of inter-frame forecast mode
Technical field
The present invention relates to the digital video coding technology, relate in particular to the memory pool access method under a kind of inter-frame forecast mode.
Background technology
Inter prediction is the pith in the video encoder, and along with the raising of coding standard code efficiency of new generation, the complexity of coding also increases greatly, and according to estimates, wherein the complexity of inter prediction has occupied the complexity of whole encoder 50%.When inter prediction,, therefore need internally deposit into row access because the data of reference frame need be upgraded.In the inter prediction implementation procedure, particularly when carrying out the hardware realization by flowing structures such as FPGA, need when handling each macro block, all distribute certain clock, when this just required macro block to switch, corresponding reference frame data also will be upgraded in time.For HD video, each macro block can only be assigned to 400 clocks at most, and the next clock of general bandwidth can only read the data of 8 pixels from internal memory, so for the macro block of a 16*16, adopt the search window of 128*64 to carry out Data Update, then having upgraded a required reference frame data of macro block needs 1024 clocks (128*64/8), much larger than the limit of 400 clocks, obviously has little time to upgrade.
And prior art normally realizes by the size of dwindling search window, dwindle search window and promptly cause search precision to reduce, thereby coding quality is descended.Thus, guaranteeing that finding a kind of memory pool access method efficiently is the key of dealing with problems under the prerequisite that coding quality does not descend.
Summary of the invention
The technical problem that the present invention solves provides the memory pool access method under a kind of inter-frame forecast mode, when satisfying high-definition real-time coding demand, can realize the efficient internal storage access under the FPGA hardware configuration.
In order to solve the problems of the technologies described above, the present invention has adopted following technological means: the memory pool access method under a kind of inter-frame forecast mode, carry out the macro block data renewal by reading the reference frame data that is stored in the outer internal memory of sheet, described method is searched for to obtain the reference frame data corresponding to current macro entirely with search window in reference frame image, and hew out internal memory in the sheet identical with search window size, be used to store corresponding reference frame data, the length of described search window is M, the degree of depth is N, wherein, M and N are the integral multiple of the macro block length of side; With the macro block length of side is long measure, described internal memory is divided into memory block in (the M/ macro block length of side) individual sheet, and numbers in regular turn, and the memory pool access method specific implementation process under the then described inter-frame forecast mode is as follows:
Step 1, with center, the summit in first row, the first row macro block upper left corner as search window, read the reference frame data in the search window institute overlay area, and these reference frame datas deposited in the sheet in the memory block in regular turn;
Step 2, to carrying out Data Update with delegation's next column macro block, specifically comprise: with the move right distance of a macro block length of side of search window, the reference frame data that read in the search window overlay area, in previous step, did not read, and this reference frame data deposited in the next sheet in the memory block, utilize the reference frame data of storing in the internal memory in the sheet to finish the Data Update of macro block;
Repeat said process, memory block is filled in all sheets in sheet in the internal memory;
Step 3, continue in delegation, to upgrade the reference frame data of next macro block, and the reference frame data that upgrades is filled in the sheet in the minimum sheet of numbering in the internal memory in the memory block; Then by the number order memory block data in the new film that circulate successively more, overlap with the right margin of reference frame until the right hand edge of search window;
Step 4, the search window that moves to right that continues, and finish Data Update with delegation's next column macro block, simultaneously, in not comprising the sheet that upgrades the required reference frame data of current macro, fill in the memory block and upgrade the required reference frame data of the next line first row macro block;
Repeat said process, until the data of having upgraded last row macro block of this row;
The center of step 5, search window moves to the summit in the next line first row macro block upper left corner, read in the search window overlay area, be not stored in the reference frame data in the internal memory in the sheet, and this reference frame data deposited in the next sheet in the memory block, utilize the reference frame data of storing in the internal memory in the sheet to finish the Data Update of macro block;
Step 6, repeating step 3 are to step 5, until complete reference frame image of search.
In said method, the length of side of described macro block is 16 pixels, and the length M of search window is 128 pixels, and degree of depth N is 64 pixels; The described interior memory block of sheet that internal memory is divided into 8 16*64.
In said method, the span of the length M of described search window is 32<=M<=128, and degree of depth N span is 16<=N<=64.
Because adopted the memory pool access method under the above inter-frame forecast mode, the present invention has compared with prior art not only satisfied the demand of high-definition real-time coding, and has satisfied the requirement of internal storage access efficiently under the FPGA hardware configuration.
Description of drawings
Memory pool access method under the inter-frame forecast mode of the present invention is provided in detail by following embodiment and accompanying drawing.
Fig. 1 to Fig. 8 is for carrying out the process schematic diagram of internal storage access and memory in the embodiment of the invention.
Embodiment
Below will the memory pool access method under the inter-frame forecast mode of the present invention be described in further detail.For the ease of understanding, be illustrated especially exemplified by preferred embodiment, yet the qualification for memory size in macro block, search window, the sheet among this embodiment should not be construed as limitation of the invention, in addition, Figure of description all adopts very the form of simplifying and all uses non-scale accurately, only in order to convenient, aid illustration embodiments of the invention lucidly.
Memory pool access method under a kind of inter-frame forecast mode in the present embodiment, search for entirely with search window in the reference frame image that internal memory is stored outside sheet, the length of search window is 128, the degree of depth is 64, and the size of corresponding search window to hew out width with the form of piecemeal be 16 pixels, the degree of depth is with memory block in 8 sheets of the search window degree of depth (64 pixels), number consecutively is 0~7 (see figure 1), then according to each macro block (size is 16*16) pairing position in reference frame, with center, the summit in this macro block upper left corner as search window, reference frame data in the search window institute overlay area is read in the sheet internal memory respectively store, the memory pool access method specific implementation process under the described inter-frame forecast mode is as follows:
The reference frame data of step 1, the renewal first row first row macro block;
See also Fig. 1, first row, the first row macro block 11 is positioned at the position, the upper left corner of reference frame 20, summit with macro block 11 upper left corners is searched for as the center of search window 30, then upgrade the required data of macro block 11, the reference frame data that promptly is positioned at search window 30 only is the part of figure bend shadow representation, account for 1/4th of whole search window 30, comprise 64*32 pixel altogether.Remainder has exceeded reference frame 20, is hash.
Read the reference frame data in the diagonal line hatches zone, and be filled to internal memory 40 in the sheet, preferable filling mode is to fill in regular turn, promptly according to 0,1,2,3 order reference frame data is filled in each sheet in the memory block.Internal memory 40 store statuss are referring to Fig. 1 in the sheet behind the completing steps 1, and wherein dot-hatched is represented the zone of padding data.
Can only need 256 clocks (64*32/8) and read 64*32 pixel in the step 1 with 400 clocks owing to upgrade a macro block, therefore, satisfy maximum requirement less than 400.
Step 2, the order of encoding according to image are upgraded one by one to the reference frame data of other macro block in first row, and internal memory 40 is filled in sheet;
See also Fig. 2, and contrast Fig. 1, the first row secondary series macro block 12 is than macro block 11 16 pixels that moved to right, summit with macro block 12 upper left corners is searched for as the center of search window 30, then upgrade the macro block 12 required data of obtaining shown in figure bend shade, because the reference frame data except zone 202 all obtains in step 1 and has stored, thus only need in 400 clocks, read the reference frame data in the zone 202, and be stored in No. 4 memory block of internal memory 40 in the sheet.Owing to comprise 16*32 pixel in the zone 202, therefore finish Data Update only use expense 64 clocks (16*32/8) of macro block 12, be far smaller than the limit value of 400 clocks.
Then, adopt in a like fashion first row the 3rd to five row macro block is upgraded one by one, and corresponding reference frame data is pressed the order that memory block is numbered in the sheet fill successively in the internal memory 40 in sheet, memory block is filled (see figure 3) in whole sheets.
Step 3, continue in first row, to upgrade the reference frame data of next macro block, and the reference frame data that upgrades is filled in the sheet in the minimum sheet of numbering in the internal memory 40 in the memory block, promptly adopt the up-to-date reference frame data that reads that the earliest data are override;
Concrete, when needs upgraded the data of first row the 6th row macro block 16, this moment was upgraded macro block 16 required data and is the reference frame data in the search window 30 Lower Half branch overlay areas as shown in Figure 4 in the position of search window 30.Because the data of figure bend dash area have read in the preorder step and have been stored in the 1st~No. 7 sheet in the memory block, and the data in the memory block do not have help to upgrading macro block 16 in No. 0 sheet, therefore, only need read the reference frame data in the zone 206, and it is inserted in No. 0 sheet in the memory block former data are override, then utilize data in the internal memory 40 in the sheet can finish the Data Update of macro block 16.
Then, by that analogy, upgrade macro block data one by one, and by the number order memory block data in the new film that circulate successively more, right hand edge until search window 30 overlaps with the right margin of reference frame 20, convenient for follow-up explanation, suppose just to have filled this moment the interior memory block (see figure 5) of sheet No. 7, the clock that above-mentioned each step upgrades also is 64.
Next macro block is upgraded in step 4, continuation in first row reference frame data simultaneously, reads the pairing partial reference frame data of second row, the first row macro block in the clock cycle of regulation;
See also Fig. 6, when search window 30 shifts out the width of 16 pixels of reference frame 20 right margins, the reference frame data (shown in diagonal line hatches) that is used for upgrading macro block 1a all has been stored in the 1st~No. 7 memory block, therefore, need not to obtain the renewal that excessive data can be finished macro block 1a.
To upgrade 400 assigned clocks of macro block 1a in order rationally utilizing, can in No. 0 memory block that is available, to fill the row of first in second row, the first row macro block, the 21 pairing reference frame datas (shown in the cross spider shade, size is 64*48); When search window 30 continues to move to right row, can in No. 1 memory block, fill the secondary series in the macro block 21 pairing reference frame datas; When upgrading first last row macro block data of row, in No. 2 memory block, store the 3rd row in the macro block 21 pairing reference frame datas; Thus, in 400 clocks that upgrade second row, the first row macro block 21, only need read the row of the 4th in its pairing reference frame data and get final product.
Walk to second line feed of going for first, when reading and storing macro block 21 pairing reference frame datas, can only read 16*48 pixel at every turn, be understandable that, walk in the third line and the later line feed for second, should read 16*64 pixel at every turn.For the purpose of unification, in present embodiment, carry out first walk to second the row line feed the time, also read at every turn and store 16*64 pixel (taking 128 clocks).The state of finishing after first last row macro block data of row upgrades is seen Fig. 7.
Step 5, search window 30 move to second row, upgrade the macro block data of second row, first row;
As shown in Figure 8, because the reference frame data of diagonal line hatches part has been stored in step 4 in the 0th~No. 2 memory block, therefore, when upgrading macro block 21, only need in the clock cycle of regulation, to read the reference frame data in the zone 210, and insert No. 3 memory block and can finish renewal.
Step 6, with reference to the mode of step 2~5, the macro block data since the second row secondary series is upgraded line by line one by one, until search whole frame image.
In the above-mentioned whole process, each renewal clock number that macro block spent all is no more than 128, be significantly less than and distribute clock number 400, this shows, adopt memory pool access method of the present invention, can not only under the prerequisite that guarantees coding quality, finish the renewal of macro block, and unnecessary clock can also be applied in the processing of other data.
Certainly, in other embodiments, according to different coding quality requirement and code efficiency requirement, the length M of described search window can be chosen in its span 32<=M<=128, degree of depth N also can choose in its span 16<=N<=64, be not limited to the disclosed value of preferred embodiment of the present invention, wherein, the value of M and N is the integral multiple of the macro block length of side.
In sum, because the memory pool access method under the inter-frame forecast mode more than having adopted, the present invention has compared with prior art not only satisfied the demand of high-definition real-time coding, and has satisfied the requirement of internal storage access efficiently under the FPGA hardware configuration.

Claims (4)

1, the memory pool access method under a kind of inter-frame forecast mode, carry out the macro block data renewal by reading the reference frame data that is stored in the outer internal memory of sheet, it is characterized in that, described method is searched for obtaining the reference frame data corresponding to current macro entirely with search window in reference frame image, and hews out internal memory in the sheet identical with the search window size, is used to store corresponding reference frame data, the length of described search window is M, the degree of depth is N, and wherein, M and N are the integral multiple of the macro block length of side; With the macro block length of side is long measure, described internal memory is divided into memory block in (the M/ macro block length of side) individual sheet, and numbers in regular turn, and the memory pool access method specific implementation process under the then described inter-frame forecast mode is as follows:
Step 1, with center, the summit in first row, the first row macro block upper left corner as search window, read the reference frame data in the search window institute overlay area, and these reference frame datas deposited in the sheet in the memory block in regular turn;
Step 2, to carrying out Data Update with delegation's next column macro block, specifically comprise: with the move right distance of a macro block length of side of search window, the reference frame data that read in the search window overlay area, in previous step, did not read, and this reference frame data deposited in the next sheet in the memory block, utilize the reference frame data of storing in the internal memory in the sheet to finish the Data Update of macro block;
Repeat said process, memory block is filled in all sheets in sheet in the internal memory;
Step 3, continue in delegation, to upgrade the reference frame data of next macro block, and the reference frame data that upgrades is filled in the sheet in the minimum sheet of numbering in the internal memory in the memory block; Then by the number order memory block data in the new film that circulate successively more, overlap with the right margin of reference frame until the right hand edge of search window;
Step 4, the search window that moves to right that continues, and finish Data Update with delegation's next column macro block, simultaneously, in not comprising the sheet that upgrades the required reference frame data of current macro, fill in the memory block and upgrade the required reference frame data of the next line first row macro block;
Repeat said process, until the data of having upgraded last row macro block of this row;
The center of step 5, search window moves to the summit in the next line first row macro block upper left corner, read in the search window overlay area, be not stored in the reference frame data in the internal memory in the sheet, and this reference frame data deposited in the next sheet in the memory block, utilize the reference frame data of storing in the internal memory in the sheet to finish the Data Update of macro block;
Step 6, repeating step 3 are to step 5, until complete reference frame image of search.
2, the memory pool access method under the inter-frame forecast mode as claimed in claim 1 is characterized in that, the length of side of described macro block is 16 pixels, and the length M of search window is 128 pixels, and degree of depth N is 64 pixels.
3, the memory pool access method under the inter-frame forecast mode as claimed in claim 2 is characterized in that, the described interior memory block of sheet that internal memory is divided into 8 16*64.
4, the memory pool access method under the inter-frame forecast mode as claimed in claim 1 is characterized in that, the span of the length M of described search window is 32<=M<=128, and degree of depth N span is 16<=N<=64.
CN 200910049549 2009-04-17 2009-04-17 Method for accessing memory under interframe prediction mode Pending CN101534443A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200910049549 CN101534443A (en) 2009-04-17 2009-04-17 Method for accessing memory under interframe prediction mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910049549 CN101534443A (en) 2009-04-17 2009-04-17 Method for accessing memory under interframe prediction mode

Publications (1)

Publication Number Publication Date
CN101534443A true CN101534443A (en) 2009-09-16

Family

ID=41104791

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910049549 Pending CN101534443A (en) 2009-04-17 2009-04-17 Method for accessing memory under interframe prediction mode

Country Status (1)

Country Link
CN (1) CN101534443A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102088610A (en) * 2011-03-08 2011-06-08 美商威睿电通公司 Video codec and motion estimation method thereof
CN102377999A (en) * 2010-08-13 2012-03-14 联合信源数字音视频技术(北京)有限公司 Search window buffer device based on AVS encoder
CN104731547A (en) * 2015-04-02 2015-06-24 深圳市亚特尔仪器有限公司 Method for drawing dynamic tendency chart
CN104811716A (en) * 2015-04-29 2015-07-29 深圳市振华微电子有限公司 Macro block search method
CN106686379A (en) * 2010-04-13 2017-05-17 三星电子株式会社 Video decoding method
CN103916674B (en) * 2012-12-31 2017-05-24 富士通株式会社 Storage device and method, mapping method, encoding and decoding apparatus and image processing apparatus
CN107392838A (en) * 2017-07-27 2017-11-24 郑州云海信息技术有限公司 WebP compression parallel acceleration methods and device based on OpenCL

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106686379B (en) * 2010-04-13 2019-10-18 三星电子株式会社 The method that video is decoded
US10412411B2 (en) 2010-04-13 2019-09-10 Samsung Electronics Co., Ltd. Video-encoding method and video-encoding apparatus using prediction units based on encoding units determined in accordance with a tree structure, and video-decoding method and video-decoding apparatus using prediction units based on encoding units determined in accordance with a tree structure
US10432965B2 (en) 2010-04-13 2019-10-01 Samsung Electronics Co., Ltd. Video-encoding method and video-encoding apparatus based on encoding units determined in accordance with a tree structure, and video-decoding method and video-decoding apparatus based on encoding units determined in accordance with a tree structure
US10306262B2 (en) 2010-04-13 2019-05-28 Samsung Electronics Co., Ltd. Video encoding method and video encoding apparatus and video decoding method and video decoding apparatus, which perform deblocking filtering based on tree-structure encoding units
CN106686379A (en) * 2010-04-13 2017-05-17 三星电子株式会社 Video decoding method
CN102377999B (en) * 2010-08-13 2014-04-30 联合信源数字音视频技术(北京)有限公司 Search window buffer device based on AVS encoder
CN102377999A (en) * 2010-08-13 2012-03-14 联合信源数字音视频技术(北京)有限公司 Search window buffer device based on AVS encoder
US9648338B2 (en) 2011-03-08 2017-05-09 Intel Corporation Video codec and motion estimation method
CN102088610A (en) * 2011-03-08 2011-06-08 美商威睿电通公司 Video codec and motion estimation method thereof
CN102088610B (en) * 2011-03-08 2013-12-18 开曼群岛威睿电通股份有限公司 Video codec and motion estimation method thereof
US9961354B2 (en) 2011-03-08 2018-05-01 Intel Corporation Video codec and motion estimation method
US10021408B2 (en) 2011-03-08 2018-07-10 Intel Corporation Video codec and motion estimation method
CN103916674B (en) * 2012-12-31 2017-05-24 富士通株式会社 Storage device and method, mapping method, encoding and decoding apparatus and image processing apparatus
CN104731547A (en) * 2015-04-02 2015-06-24 深圳市亚特尔仪器有限公司 Method for drawing dynamic tendency chart
CN104811716B (en) * 2015-04-29 2018-09-25 深圳市振华微电子有限公司 Macroblock search method
CN104811716A (en) * 2015-04-29 2015-07-29 深圳市振华微电子有限公司 Macro block search method
CN107392838A (en) * 2017-07-27 2017-11-24 郑州云海信息技术有限公司 WebP compression parallel acceleration methods and device based on OpenCL

Similar Documents

Publication Publication Date Title
CN101534443A (en) Method for accessing memory under interframe prediction mode
CN102647594B (en) Integer pixel precision motion estimation method and system for same
CN101309405B (en) Reference data loading method and device
US9454795B2 (en) Image optimized rolling cache system
CN103414895A (en) Encoder intra-frame prediction device and method applicable to HEVC standards
CN101170701B (en) Block elimination filtering method and device for video encoding and decoding system
CN102025992B (en) Reference-image management method for interframe predicting process in H.264 video decoding system
CN102088610B (en) Video codec and motion estimation method thereof
US7979622B2 (en) Memory access method
CN101472176A (en) Decode method and apparatus for de-block effect filtering based on boundary strength factor
CN102790884A (en) Hierarchical motion estimation-based search method and implementation system thereof
CN110683263A (en) Warehousing method based on walking object placing device
CN1214648C (en) Method and apparatus for performing motion compensation in a texture mapping engine
US8687083B2 (en) High resolution digital image capturing apparatus and reference pixel memory storage space configuration method
CN104202605A (en) Method for predicting division way of high-definition image coding unit CU by reducing resolution and implementation device thereof
CN102340668A (en) Reconfigurable technology-based implementation method of MPEG2 (Moving Pictures Experts Group 2) luminance interpolation
CN101778280B (en) Circuit and method based on AVS motion compensation interpolation
CN107483948A (en) Pixel macroblock processing method in a kind of webp compressions processing
CN1266941C (en) Image processing method
CN101888554A (en) VLSI (Very Large Scale Integration) structure design method for parallel flowing motion compensating filter
CN105100862A (en) Grid movement display processing method and grid movement display processing system
CN100568920C (en) The method and apparatus of the video image brightness interpolating of serial input and line output
CN101902643B (en) Very large-scale integration (VLSI) structural design method of parallel array-type intraframe prediction decoder
CN101443808A (en) Memory organizational scheme and controller architecture for image and video processing
CN110166772A (en) Decoding method, device, equipment and the readable storage medium storing program for executing of intra prediction mode

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090916