[go: up one dir, main page]

US20050123046A1 - Method and device for sharing MPEG frame buffers - Google Patents

Method and device for sharing MPEG frame buffers Download PDF

Info

Publication number
US20050123046A1
US20050123046A1 US10/992,849 US99284904A US2005123046A1 US 20050123046 A1 US20050123046 A1 US 20050123046A1 US 99284904 A US99284904 A US 99284904A US 2005123046 A1 US2005123046 A1 US 2005123046A1
Authority
US
United States
Prior art keywords
frame
row
bidirectional
readout
decoding unit
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.)
Abandoned
Application number
US10/992,849
Inventor
Roy Wang
Renwei Chiang
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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Priority to US10/992,849 priority Critical patent/US20050123046A1/en
Assigned to VIA TECHNOLOGIES, INC. reassignment VIA TECHNOLOGIES, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHIANG, RENWEI, WANG, ROY
Publication of US20050123046A1 publication Critical patent/US20050123046A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • H04N19/427Display on the fly, e.g. simultaneous writing to and reading from decoding memory

Definitions

  • the present invention generally relates to a method and device for sharing memory, and more particularly to a method and device for sharing frame buffers of frames in MPEG (Moving Picture Experts Group).
  • MPEG Motion Picture Experts Group
  • FIG. 1 is a schematic block diagram illustrating a conventional decoding system of MPEG.
  • the decoding unit 110 decodes the bit stream data into image data.
  • the buffer 120 stores the image data in the corresponding forward reference buffer 122 , the backward reference buffer 124 , the first Bi-directional (B 1 ) frame buffer 126 and the second Bi-directional (B 2 ) frame buffer 128 , respectively.
  • the display unit 130 reads out and displays the image data in accordance with the assigned sequence of the image data stored in the buffer 120 .
  • the forward reference buffer 122 is configured for storing
  • the backward reference buffer 124 is configured for storing
  • the B 1 frame buffer 126 and the B 2 frame buffer 128 are configured for storing the first B frame and the second B frame of the Bi-directional predicted pictures, respectively.
  • pictures in frame buffers are not restricted to Intra Coding Picture or Predictive Coding Pictures.
  • picture in Forward reference buffer and Backward reference buffer may be Intra coding Picture or Predictive coding picture.
  • FIG. 2 is a schematic diagram illustrating the decoding sequence and the playing sequence for I, P, and B frames in MPEG in accordance with the prior art.
  • the I 1 , P 1 , B 1 , B 2 , P 2 , . . . etc. frames in MPEG are decoded in order with reference to time axis “X”.
  • the frames in MPEG start to be played in sequence of I 1 , B 1 , B 2 , P 1 , . . . etc. after the complete decoding for the top field “T” of the frame P 1 .
  • “T” and “B” represent the top field and the bottom field respectively and as well as, F 0 and F 1 represent the first frame and the second frame respectively.
  • the display unit 130 starts to play the B 1 frame. Furthermore, the display unit 130 plays the top field T of the B 1 frame (or the first frame F 0 ) at the moment that the decoding unit 110 decodes the bottom field B of the B 1 frame and stores it in the B 1 frame buffer.
  • the decoding unit 110 decodes the top field T of the B 2 frame and stores it in the B 2 frame buffer.
  • the decoding unit 110 decodes the bottom field B of the B 2 frame and stores it in the B 2 frame buffer. And then the display unit 130 plays the bottom field B of the B 2 frame.
  • the decoding and the playing sequence of the two sequent B frames the data during reading and playing do not interference with each other by the two B frame buffers for each corresponding decoded frame.
  • the data of the first B frame that is not displayed yet in the display unit 130 is not overwritten by the data of the second B frame even though the decoding speed is faster than the displaying speed.
  • the condition that the decoded data from the decoding unit 110 overwrites the data in the frame buffer 120 not read out by the display unit 130 may possibly happen while the B frame buffer is shared for some reasons, such as only single B frame buffer is used for saving the consumption and cost of memories.
  • the Top field B of the B 2 frame may possibly overwrite the Top field B of B 1 frame, which results in an data reading error, provided that the bottom field B of the B 1 frame is not readout completely yet, as well as the decoding speed is at least twice as fast as the display speed.
  • condition that the stored data is unable to be real time readout by the display unit 130 may be due to different display methods (for example: field display and frame display) accompanying with different structures (for example: frame structure, first top field and second bottom field, and first bottom field and second top field).
  • different display methods for example: field display and frame display
  • structures for example: frame structure, first top field and second bottom field, and first bottom field and second top field.
  • the invention provides a sharing B frame buffer for reducing the needed buffers for decoding and playing MPEG.
  • the invention provides a method and device for sharing the dynamic image compression buffer. By monitoring the data reading speed of the displaying unit and by controlling the data writing speed of the decoding unit, the invention avoids overwriting in the sharing buffer.
  • the invention provides a method and device for sharing dynamic image compression buffer. It reduces the data writing time by changing the location of the data is stored. It also effectively uses the sharing buffer space for real-time data reading.
  • the invention provides a method and device for sharing the MPEG frame buffer. It is by sharing a B frame buffer for reducing other B frame buffers used. By monitoring the reading B frame buffer data speed of the display unit and further by controlling the writing B frame buffer data speed of the decoding unit, it is to avoid the image data decoded by decoding unit in the sharing B frame buffer overwriting the display unit unread image data. By changing the position that the data is stored and by the space of the data that has been readout in the B frame buffer, the writing data of the decoding unit could be stored and then it is possible to reduce the waiting writing time of decoding unit.
  • FIG. 1 shows a prior schematic block diagram of MPEG decoding system
  • FIG. 2 shows a prior schematic diagram of the comparison of multi-picture decoding sequence and playing sequence in MPEG
  • FIG. 3 shows a schematic block diagram of the sharing MPEG buffer of the invention
  • FIG. 4A shows a schematic block diagram of the sharing MPEG buffer of the invention applying in the method of the field display and the structure of the frame image data;
  • FIG. 4B shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the field display and the structure of the first top field and the second bottom field image data (FTSB);
  • FIG. 4C shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the field display and the structure of the first bottom field and the second top field image data (FBST);
  • FIG. 4D shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the frame image data
  • FIG. 4E shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB);
  • FIG. 4F shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FBST);
  • FIG. 5A shows a schematic diagram of the sharing buffer data for data reading and writing
  • FIG. 5B shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying to the method of field display and the structure of the first bottom field and the second top field image data (FBST);
  • FIG. 5C shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB); and
  • FIG. 5D shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FBST).
  • FBST first top field and the second bottom field image data
  • FIG. 3 shows the block diagram of sharing MPEG frame buffer in accordance with one embodiment of the invention.
  • the decoding unit 310 decodes bitstream to the image data.
  • the buffer 320 depending on the frame compression mode of the image data stores the image data in the forward reference buffer 322 , the backward reference buffer 324 , and the B frame buffer 326 , respectively. (Normally, memory forms storage device, hard disk or something likely also does).
  • the display unit 330 following assigned sequence reads and displays the image data, which stores in the buffer 320 .
  • the B frame buffer 326 provides the data with two B frames (the first B frame and the second B frame) in sequence for storing temporarily during decoding and reading-out for displaying. Under the condition of the uniform storage volume for the B frame buffer 326 , the speed of reading data in the display unit 330 as well as the speed of writing data in the decoding unit 310 are controlled for the sake of avoid overwriting and failing in reading in real time.
  • a frame of 720*480 is an example for following illustrating processing methods in accompanying with different displaying methods and different picture structures, respectively.
  • FTSB First Top field and Second Bottom field
  • FBST First Bottom field and Second Top field
  • a frame of 720*480 is an example for following illustrating processing methods in accompanying with different displaying methods and different picture structures, respectively.
  • FIG. 4A shows the block diagram of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the frame image data.
  • the display unit reads all of the top field rows of the first B frame while the bottom field row of the first B frame remain stored in every other position alternatively in the B frame buffer (such as: the second row, the fourth row, the sixth row etc.).
  • the decoding unit checks whether the n-th row of the B frame buffer has been readout. If no, the step 412 is repeated (i.e. waiting readout the n-th row). If yes, the n-th row of the second B frame is written in the B frame buffer as shown in step 413 .
  • the decoding unit checks whether all the frame macroblock in the second B frame have been written. If yes, the decode writing of the second B frame is completed. If no, n plus 1 as step 415 shown. Continuously repeating steps 412 , 413 and 414 until all the frame macroblock of the second B frame decode are written completely.
  • the top field row of the first B frame in the B frame buffer i.e. the first row, the third row, the fifth row . . . odd rows etc..
  • the decoding unit intends to write the odd frame row of the second B frame into B frame buffer.
  • the odd frame row of the second B frame can be written into directly.
  • FIG. 4B shows the block diagram of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the first top field and the second bottom field image data (FTSB).
  • the display unit reads all the top field rows of the first B frame while the bottom field row of the first B frame is stored in every other position alternatively in the B frame buffer (such as: the second row, the fourth row, the sixth row etc.) at the moment.
  • the decoding unit sequentially writes all the top field rows of the second B frame and display unit also sequentially reads the bottom field row of the first B frame.
  • the decoding unit checks whether the 2n-th row of the B frame buffer (the nth bottom field row of the first B frame) has been readout before writing, where 0 ⁇ n ⁇ 16 and n is a positive integer. If no, step 423 is repeated (wait until the 2n row readout). If yes, the n-th bottom field row of the second B frame is written into the B frame buffer as shown in step 424 . In step 425 , the decoding unit checks whether all the bottom field rows of the second B frame are written completely or not. If yes, the decode writing of the second B frame is terminated. If no, return to step 423 and repeat sequential steps, 424 , 425 with n plus 1 in step 426 until the entire bottom field row of the second B frame are written completely by the decoding unit.
  • the decoding unit writes all the top field rows of the second B frame into the B frame buffer, followed sequentially by checking the reading progress of the bottom field row of the first B frame and scheduled writing the bottom field row of the second B frame, on the ground that the top field row of the first B frame stored in every other position alternatively in B frame buffer has been readout before the action of the decoding unit and the first top field and second bottom field data structure is applied on decoding the second B frame data.
  • FIG. 4C shows the block diagram of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the first bottom field and the second top field image data (FBST).
  • the display unit reads all the top field rows of the first B frame while the bottom field row of the first B frame is still stored in every other position alternatively in the B frame buffer at the moment (such as: the second row, the fourth row, the sixth row etc.).
  • the decoding unit checks whether the 2 n row of the B frame buffer (the n-th bottom field row of the first B frame) is read or not, where 0 ⁇ n ⁇ 16 and n is a positive integer. If no, repeat the step 432 (wait until the 2n row readout).
  • step 434 the decoding unit checks whether all the bottom field rows of the second B frame are written or not. If no, n plus 1 as shown in step 436 and continuously repeats steps 432 , 433 , 434 and 436 until all the bottom field row of the second B frame decode is successfully written. If yes, as step 435 the decoding unit sequentially writes all the top field rows of the second B frame.
  • the second B frame data decoded by decoding unit is the first bottom field and the second top field data structure (FBST)
  • FBST second top field data structure
  • FIG. 4D shows the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the frame image data.
  • the frame display needs to be read twice (F 0 & F 1 ).
  • the term indicated by “row” in the previous embodiment(s) could be called as “macroblock row”.
  • the display unit fully reads F 0 of the first B frame and the decoding unit writes the second frame data in, depending on how many F 1 of the first B frame has been read.
  • the display unit reads F 0 of the first B frame.
  • the decoding unit firstly judges whether the n row of the first B frame in the buffer has been readout.
  • step 443 shows, while the data has been readout, writes the n frame row of the second B frame in B frame buffer.
  • the decoding unit checks whether all the frames of the second B frame has written. If yes, the decoding ends the writing of the second B frame. If no, n adds 1 as shown in step 445 and then continuously repeats steps 442 , 443 and 444 until all the frame macroblocks of the second B frame are decoded.
  • the display unit reads one row of the first B frame and immediately the decoding unit writes one row of the second B frame in the corresponding row.
  • FIG. 4E shows the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB).
  • the decoding unit checks whether the 2n-th row in the B frame buffer has been readout. If yes, fill in the n-th top field row of the second B frame and then fill in the bottom field as shown in figure.
  • the display unit reads the F 0 of the first B frame.
  • the decoding unit determines whether 2n row has been readout.
  • step 453 If yes, write the n-th top field row of the second B frame in B frame buffer as shown in the step 453 . If no, follow the step 451 and 452 .
  • step 454 the decoding unit checks whether all the top field rows of the second B frame has been written. If no, n adds 1 as shown in the step 456 . And repeat the steps 452 , 453 and 454 until all the top field macroblock of the second B frame has been decoded. If yes, as shown in the step 455 , the decoding unit sequentially writes all the bottom field row of the second B frame in.
  • the second B frame data decoded by the decoding unit is the structure of the first top field and the second bottom field (FTSB) and it needs to wait until all the top field macorblock row of the first B frame readout to write all the top field row of the second B frame. And then sequentially decodes and writes all the bottom field row of the second B frame.
  • FTSB first top field and the second bottom field
  • FIG. 4F shows the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FBST).
  • the decoding unit check whether the 2n-th row in the B frame buffer has readout. If yes, initially fill the nth bottom field row of the second B frame and then fill ill in the top field as shown in figure.
  • the display unit reads the F 0 of the first B frame.
  • the decoding unit determines whether 2n row has readout.
  • step 464 the decoding unit checks whether all the bottom field row of the second B frame has been written. If no, n adds 1 as shown in step 466 . And repeat the steps 462 , 463 and 464 until all the bottom field macroblocks of the second B frame have been decoded. If yes, as shown in step 465 , the decoding unit sequentially writes in all the top field rows of the second B frame.
  • the second B frame data decoded by decoding unit is the structure of the first bottom field and the second top field (FBST) and it needs to wait until all the top field macorblock rows of the first B frame readout to write all the bottom field rows of the second B frame. And then sequentially decode and write in all the top field rows of the second B frame.
  • FBST second top field
  • the decoding unit writes the decoded row data in the corresponding row of the B frame buffer.
  • the decoding unit needs to wait until the corresponding row is readout in the corresponding macroblock.
  • the decoding unit does not write data in even though the B frame buffer has space.
  • the writing speed of the decoding unit is limited to the reading speed of the display unit.
  • the invention provides other embodiments that data is written in the memory space has been readout.
  • the sharing B frame buffer 510 the data of the decoded macroblock is written in the macroblock row that the data has been readout (not limited to the corresponding row).
  • the display unit provides three other reading methods of the buffer for different located data and for reducing the data waiting time of the decoding unit.
  • these kind embodiments fully use the space of the B frame buffer 510 .
  • FIG. 5B shows the block diagram of another embodiment of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the first bottom field and the second top field image data (FBST).
  • the display unit reads all the top field rows of the first B frame and the bottom field rows of the first B frame stills are stored in every other position alternatively in the B frame buffer (such as: the second row, the fourth row, the sixth row etc.).
  • the decoding unit sequentially writes the bottom field row of the second B frame in place, which originally stores the top field row of the first B frame. At the same time, the display unit sequentially reads the bottom field row of the first B frame.
  • step 533 the decoding unit sequentially writes the top field row of the second B frame in place, which originally stores the bottom field row of the first B frame.
  • the display unit must be notified that the top field and the bottom field location of the second B frame in B frame must exchange.
  • the decoding unit does not need to wait for the bottom field row of the first B frame readout when writing the bottom row of the second B frame.
  • the executing speed of the decoding unit in not limited to the executing speed of the display unit in the period (for normal hardware technology, the speed of the decoding unit is twice faster than the speed of the display unit).
  • the decoding unit possibly could finish writing all the bottom field row of the second B frame and then the decoding unit could continuously and sequentially writes the top field row of the second B frame in place, which has been readout in the bottom field row of the first B frame. By this, the data writing time is reduced for real-time reading.
  • FIG. 5C shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB).
  • the display unit reads the n-th frame row of the first B frame where 0 ⁇ n ⁇ 31 and n is a positive integer.
  • the decoding unit checks whether all the top field rows of the second B frame have been written. If no, n adds 1 as shown in step 555 .
  • step 554 the decoding unit sequentially writes in all the bottom field rows of the second B frame.
  • step 554 the decoding unit immediately writes a row of the bottom field row of the second B frame in place, which originally stored the frame macroblock of the first B frame, after the display unit reads a row of the frame row of the first B frame.
  • the display unit must be notified that the top field of the second B frame is located at upper part of B frame buffer, and bottom field is located at lower part of the frame buffer.
  • the decoding unit immediately writes a row of the bottom field row of the second B frame in place, which originally stored the macroblock frame of the first B frame after the display unit reads a row of the macroblock frame row of the first B frame, wherein the row of the second B frame includes a top field row and bottom field row.
  • the decoding unit immediately writes all the top field rows of the second B frame into the B frame buffer when the display unit reads half the frame rows of the first B frame.
  • the decoding unit also immediately writes all the bottom field rows of the second B frame in the B frame buffer when the display unit continuously reads the other half frame row of the first B frame.
  • FIG. 5D shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FBST).
  • the display unit reads the n-th frame row of the first B frame where 0 ⁇ n ⁇ 31 and n is positive integer.
  • the decoding unit checks whether all the bottom field rows of the second B frame have been written. If no, n adds 1 as shown in step 565 .
  • step 564 the decoding unit sequentially writes in all the top field rows of the second B frame.
  • the decoding unit immediately writes a row of the top field row of the second B frame in place, which originally stored the frame macroblock of the first B frame after the display unit reads a row of the frame row of the first B frame.
  • the decoding unit immediately writes a row of the row of the second B frame in place, which originally stored the frame macroblock of the first B frame after the display unit reads a row of the frame row of the first B frame.
  • the row of the second B frame includes a bottom field row and top field row.
  • the decoding unit immediately writes all the bottom field rows of the second B frame in B frame buffer when the display unit reads the half frame row of the first B frame.
  • the decoding unit immediately writes all the top field rows of the second B frame in the B frame buffer when the display unit continuously reads the other half frame row of the first B frame.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Feedback Control In General (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

A method and device for sharing MPEG frame buffers utilizes a shared bidirectional frame buffer, which is used for temporarily storing bidirectional predicted pictures, to reduce the quantity of bidirectional frame buffers. And, through monitoring and controlling the displaying units and the decoding units, the method and device avoids the decoded image data overwriting the image data, which has not yet been displayed, in the shared bidirectional frame buffer.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention generally relates to a method and device for sharing memory, and more particularly to a method and device for sharing frame buffers of frames in MPEG (Moving Picture Experts Group).
  • 2. Description of the Prior Art
  • FIG. 1 is a schematic block diagram illustrating a conventional decoding system of MPEG. The decoding unit 110 decodes the bit stream data into image data. In accordance with the frame compression mode of the image data the buffer 120 stores the image data in the corresponding forward reference buffer 122, the backward reference buffer 124, the first Bi-directional (B1) frame buffer 126 and the second Bi-directional (B2) frame buffer 128, respectively. The display unit 130 reads out and displays the image data in accordance with the assigned sequence of the image data stored in the buffer 120. The forward reference buffer 122 is configured for storing, the backward reference buffer 124 is configured for storing, and the B1 frame buffer 126 and the B2 frame buffer 128 are configured for storing the first B frame and the second B frame of the Bi-directional predicted pictures, respectively. Herein, pictures in frame buffers are not restricted to Intra Coding Picture or Predictive Coding Pictures. In other words, picture in Forward reference buffer and Backward reference buffer may be Intra coding Picture or Predictive coding picture.
  • FIG. 2 is a schematic diagram illustrating the decoding sequence and the playing sequence for I, P, and B frames in MPEG in accordance with the prior art. On one hand, the I1, P1, B1, B2, P2, . . . etc. frames in MPEG are decoded in order with reference to time axis “X”. On the other hand with reference to time axis “Y”, the frames in MPEG start to be played in sequence of I1, B1, B2, P1, . . . etc. after the complete decoding for the top field “T” of the frame P1. It is noted that “T” and “B” represent the top field and the bottom field respectively and as well as, F0 and F1 represent the first frame and the second frame respectively.
  • In the prior art, the moment the decoding unit 110 completes decoding the top field T of B1 frame and storing it in the B1 frame buffer, the display unit 130 starts to play the B1 frame. Furthermore, the display unit 130 plays the top field T of the B1 frame (or the first frame F0) at the moment that the decoding unit 110 decodes the bottom field B of the B1 frame and stores it in the B1 frame buffer. When the display unit 130 plays the bottom field B of the B1 frame (or the second frame F1), the decoding unit 110 decodes the top field T of the B2 frame and stores it in the B2 frame buffer. When the display unit 130 plays the top field T of the B2 frame, the decoding unit 110 decodes the bottom field B of the B2 frame and stores it in the B2 frame buffer. And then the display unit 130 plays the bottom field B of the B2 frame. As previously mentioned that the decoding and the playing sequence of the two sequent B frames, the data during reading and playing do not interference with each other by the two B frame buffers for each corresponding decoded frame. In other words, the data of the first B frame that is not displayed yet in the display unit 130 is not overwritten by the data of the second B frame even though the decoding speed is faster than the displaying speed.
  • Nevertheless, refer to FIG. 3, the condition that the decoded data from the decoding unit 110 overwrites the data in the frame buffer 120 not read out by the display unit 130 may possibly happen while the B frame buffer is shared for some reasons, such as only single B frame buffer is used for saving the consumption and cost of memories. For example, referring to the period X7 on the X time axis, the Top field B of the B2 frame may possibly overwrite the Top field B of B1 frame, which results in an data reading error, provided that the bottom field B of the B1 frame is not readout completely yet, as well as the decoding speed is at least twice as fast as the display speed. Furthermore, the condition that the stored data is unable to be real time readout by the display unit 130 may be due to different display methods (for example: field display and frame display) accompanying with different structures (for example: frame structure, first top field and second bottom field, and first bottom field and second top field).
  • As previously mentioned that the disadvantage of sharing MPEG frame buffer, it is needed a new and improved method to overcome the disadvantage of the prior art.
  • SUMMARY OF THE INVENTION
  • In consideration of the prior art the process of MPEG decoding and playing, four buffers is provided for fear of overwriting data. Thus, a method and device of sharing MPEG frame buffer are provided herein for reducing the required numbers of buffers and the disadvantage generated by traditional sharing buffer.
  • The invention provides a sharing B frame buffer for reducing the needed buffers for decoding and playing MPEG.
  • The invention provides a method and device for sharing the dynamic image compression buffer. By monitoring the data reading speed of the displaying unit and by controlling the data writing speed of the decoding unit, the invention avoids overwriting in the sharing buffer.
  • The invention provides a method and device for sharing dynamic image compression buffer. It reduces the data writing time by changing the location of the data is stored. It also effectively uses the sharing buffer space for real-time data reading.
  • In short, the invention provides a method and device for sharing the MPEG frame buffer. It is by sharing a B frame buffer for reducing other B frame buffers used. By monitoring the reading B frame buffer data speed of the display unit and further by controlling the writing B frame buffer data speed of the decoding unit, it is to avoid the image data decoded by decoding unit in the sharing B frame buffer overwriting the display unit unread image data. By changing the position that the data is stored and by the space of the data that has been readout in the B frame buffer, the writing data of the decoding unit could be stored and then it is possible to reduce the waiting writing time of decoding unit.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 shows a prior schematic block diagram of MPEG decoding system;
  • FIG. 2 shows a prior schematic diagram of the comparison of multi-picture decoding sequence and playing sequence in MPEG;
  • FIG. 3 shows a schematic block diagram of the sharing MPEG buffer of the invention;
  • FIG. 4A shows a schematic block diagram of the sharing MPEG buffer of the invention applying in the method of the field display and the structure of the frame image data;
  • FIG. 4B shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the field display and the structure of the first top field and the second bottom field image data (FTSB);
  • FIG. 4C shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the field display and the structure of the first bottom field and the second top field image data (FBST);
  • FIG. 4D shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the frame image data;
  • FIG. 4E shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB);
  • FIG. 4F shows the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FBST);
  • FIG. 5A shows a schematic diagram of the sharing buffer data for data reading and writing;
  • FIG. 5B shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying to the method of field display and the structure of the first bottom field and the second top field image data (FBST);
  • FIG. 5C shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB); and
  • FIG. 5D shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying in the method of the frame display and the structure of the first top field and the second bottom field image data (FBST).
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Some of the embodiments of the invention will describe in detail and clearly as follows. However, except for the detailed description, the invention can widely apply in others. And the invention is not limited here but the claims.
  • Otherwise, for easily understanding and clarifying the invention, the parts of the illustration does not depict in corresponding scale. Some scales and related ratio has been exaggerated, and the unrelated parts have not fully shown for the concise drawing.
  • FIG. 3 shows the block diagram of sharing MPEG frame buffer in accordance with one embodiment of the invention. The decoding unit 310 decodes bitstream to the image data. The buffer 320 depending on the frame compression mode of the image data stores the image data in the forward reference buffer 322, the backward reference buffer 324, and the B frame buffer 326, respectively. (Normally, memory forms storage device, hard disk or something likely also does). The display unit 330 following assigned sequence reads and displays the image data, which stores in the buffer 320. The B frame buffer 326 provides the data with two B frames (the first B frame and the second B frame) in sequence for storing temporarily during decoding and reading-out for displaying. Under the condition of the uniform storage volume for the B frame buffer 326, the speed of reading data in the display unit 330 as well as the speed of writing data in the decoding unit 310 are controlled for the sake of avoid overwriting and failing in reading in real time.
  • Generally, there are two display types: field and frame and three picture structures: frame, FTSB (First Top field and Second Bottom field) and FBST (First Bottom field and Second Top field). A frame of 720*480 is an example for following illustrating processing methods in accompanying with different displaying methods and different picture structures, respectively. However, the application scopes of the invention are not limited to the size of a frame. It is noted that there are 720/16=45 macroblocks are in a row and 480/16=30 macroblocks are in a column for the frame of 720*480.
  • FIG. 4A shows the block diagram of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the frame image data. In the step 411, the display unit reads all of the top field rows of the first B frame while the bottom field row of the first B frame remain stored in every other position alternatively in the B frame buffer (such as: the second row, the fourth row, the sixth row etc.). The decoding unit checks whether the n-th row of the B frame buffer has been read out. If yes, the decoding unit sequentially writes the n-th frame macroblocks of the second B frame into the B frame buffer as follows: 0<n<31, where n is a positive integer (normally begins at n=1). In the step 412, the decoding unit checks whether the n-th row of the B frame buffer has been readout. If no, the step 412 is repeated (i.e. waiting readout the n-th row). If yes, the n-th row of the second B frame is written in the B frame buffer as shown in step 413. In the step 414, the decoding unit checks whether all the frame macroblock in the second B frame have been written. If yes, the decode writing of the second B frame is completed. If no, n plus 1 as step 415 shown. Continuously repeating steps 412, 413 and 414 until all the frame macroblock of the second B frame decode are written completely.
  • In the embodiment, because the top field row of the first B frame in the B frame buffer (i.e. the first row, the third row, the fifth row . . . odd rows etc..) has been readout before the action of the decoding unit, it is not necessary to wait for reading the top field row of the first B frame in the corresponding position when the decoding unit intends to write the odd frame row of the second B frame into B frame buffer. In other words, the odd frame row of the second B frame can be written into directly.
  • FIG. 4B shows the block diagram of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the first top field and the second bottom field image data (FTSB). In step 421, the display unit reads all the top field rows of the first B frame while the bottom field row of the first B frame is stored in every other position alternatively in the B frame buffer (such as: the second row, the fourth row, the sixth row etc.) at the moment. In step 422, the decoding unit sequentially writes all the top field rows of the second B frame and display unit also sequentially reads the bottom field row of the first B frame. In the step 423, the decoding unit checks whether the 2n-th row of the B frame buffer (the nth bottom field row of the first B frame) has been readout before writing, where 0<n<16 and n is a positive integer. If no, step 423 is repeated (wait until the 2n row readout). If yes, the n-th bottom field row of the second B frame is written into the B frame buffer as shown in step 424. In step 425, the decoding unit checks whether all the bottom field rows of the second B frame are written completely or not. If yes, the decode writing of the second B frame is terminated. If no, return to step 423 and repeat sequential steps, 424, 425 with n plus 1 in step 426 until the entire bottom field row of the second B frame are written completely by the decoding unit.
  • Similarly, the decoding unit writes all the top field rows of the second B frame into the B frame buffer, followed sequentially by checking the reading progress of the bottom field row of the first B frame and scheduled writing the bottom field row of the second B frame, on the ground that the top field row of the first B frame stored in every other position alternatively in B frame buffer has been readout before the action of the decoding unit and the first top field and second bottom field data structure is applied on decoding the second B frame data.
  • FIG. 4C shows the block diagram of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the first bottom field and the second top field image data (FBST). In step 431, the display unit reads all the top field rows of the first B frame while the bottom field row of the first B frame is still stored in every other position alternatively in the B frame buffer at the moment (such as: the second row, the fourth row, the sixth row etc.). In step 432, the decoding unit checks whether the 2n row of the B frame buffer (the n-th bottom field row of the first B frame) is read or not, where 0<n<16 and n is a positive integer. If no, repeat the step 432 (wait until the 2n row readout). If yes, write the n-th bottom field row of the second B frame in the B frame buffer as shown in step 433. In the step 434, the decoding unit checks whether all the bottom field rows of the second B frame are written or not. If no, n plus 1 as shown in step 436 and continuously repeats steps 432, 433, 434 and 436 until all the bottom field row of the second B frame decode is successfully written. If yes, as step 435 the decoding unit sequentially writes all the top field rows of the second B frame.
  • In the embodiment, because the second B frame data decoded by decoding unit is the first bottom field and the second top field data structure (FBST), it is necessary to wait for all the bottom field of the first B frame to be read and then write the bottom field of the second B frame row. The following step is sequentially decoding and writing in all the top field row of the second B frame.
  • FIG. 4D shows the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the frame image data. Here, the frame display needs to be read twice (F0 & F1). In the case and other cases that top field and bottom field is no different for the operation, the term indicated by “row” in the previous embodiment(s) could be called as “macroblock row”. The display unit fully reads F0 of the first B frame and the decoding unit writes the second frame data in, depending on how many F1 of the first B frame has been read. In the step 441, the display unit reads F0 of the first B frame. In the step 442, the decoding unit firstly judges whether the n row of the first B frame in the buffer has been readout. As step 443 shows, while the data has been readout, writes the n frame row of the second B frame in B frame buffer. In step 444, the decoding unit checks whether all the frames of the second B frame has written. If yes, the decoding ends the writing of the second B frame. If no, n adds 1 as shown in step 445 and then continuously repeats steps 442, 443 and 444 until all the frame macroblocks of the second B frame are decoded.
  • In the embodiment, the display unit reads one row of the first B frame and immediately the decoding unit writes one row of the second B frame in the corresponding row.
  • FIG. 4E shows the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB). Similarly, after decoding the first B frame, in progress of displaying F1 of the first B frame, the decoding unit checks whether the 2n-th row in the B frame buffer has been readout. If yes, fill in the n-th top field row of the second B frame and then fill in the bottom field as shown in figure. In the step 451, the display unit reads the F0 of the first B frame. In the step 452, the decoding unit determines whether 2n row has been readout. If yes, write the n-th top field row of the second B frame in B frame buffer as shown in the step 453. If no, follow the step 451 and 452. In the step 454, the decoding unit checks whether all the top field rows of the second B frame has been written. If no, n adds 1 as shown in the step 456. And repeat the steps 452, 453 and 454 until all the top field macroblock of the second B frame has been decoded. If yes, as shown in the step 455, the decoding unit sequentially writes all the bottom field row of the second B frame in.
  • In the embodiment, the second B frame data decoded by the decoding unit is the structure of the first top field and the second bottom field (FTSB) and it needs to wait until all the top field macorblock row of the first B frame readout to write all the top field row of the second B frame. And then sequentially decodes and writes all the bottom field row of the second B frame.
  • FIG. 4F shows the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FBST). Similarly, after decoding of the first B frame, in progress of displaying F1 of the first B frame, the decoding unit check whether the 2n-th row in the B frame buffer has readout. If yes, initially fill the nth bottom field row of the second B frame and then fill ill in the top field as shown in figure. In step 461, the display unit reads the F0 of the first B frame. In step 462, the decoding unit determines whether 2n row has readout. If yes, write the nth bottom field row of the second B frame in the B frame buffer as shown in step 463 and further follow step 464. If no, repeat step 462. In step 464, the decoding unit checks whether all the bottom field row of the second B frame has been written. If no, n adds 1 as shown in step 466. And repeat the steps 462, 463 and 464 until all the bottom field macroblocks of the second B frame have been decoded. If yes, as shown in step 465, the decoding unit sequentially writes in all the top field rows of the second B frame.
  • In the embodiment, the second B frame data decoded by decoding unit is the structure of the first bottom field and the second top field (FBST) and it needs to wait until all the top field macorblock rows of the first B frame readout to write all the bottom field rows of the second B frame. And then sequentially decode and write in all the top field rows of the second B frame.
  • As the previous embodiments mentioned, the decoding unit writes the decoded row data in the corresponding row of the B frame buffer. The decoding unit needs to wait until the corresponding row is readout in the corresponding macroblock. In other words, the decoding unit does not write data in even though the B frame buffer has space. As the result, the writing speed of the decoding unit is limited to the reading speed of the display unit. As shown in FIG. 5A, the invention provides other embodiments that data is written in the memory space has been readout. In the sharing B frame buffer 510, the data of the decoded macroblock is written in the macroblock row that the data has been readout (not limited to the corresponding row). Of course, in this kind embodiments, the display unit provides three other reading methods of the buffer for different located data and for reducing the data waiting time of the decoding unit. Clearly, these kind embodiments fully use the space of the B frame buffer 510.
  • FIG. 5B shows the block diagram of another embodiment of the sharing MPEG buffer of the invention applying the method of the field display and the structure of the first bottom field and the second top field image data (FBST). In step 531, the display unit reads all the top field rows of the first B frame and the bottom field rows of the first B frame stills are stored in every other position alternatively in the B frame buffer (such as: the second row, the fourth row, the sixth row etc.). In step 532, the decoding unit sequentially writes the bottom field row of the second B frame in place, which originally stores the top field row of the first B frame. At the same time, the display unit sequentially reads the bottom field row of the first B frame. In step 533, the decoding unit sequentially writes the top field row of the second B frame in place, which originally stores the bottom field row of the first B frame. Of course, the display unit must be notified that the top field and the bottom field location of the second B frame in B frame must exchange.
  • In the embodiment, the decoding unit does not need to wait for the bottom field row of the first B frame readout when writing the bottom row of the second B frame. As the result, the executing speed of the decoding unit in not limited to the executing speed of the display unit in the period (for normal hardware technology, the speed of the decoding unit is twice faster than the speed of the display unit). When the display unit reads the bottom field row of the first B frame, the decoding unit possibly could finish writing all the bottom field row of the second B frame and then the decoding unit could continuously and sequentially writes the top field row of the second B frame in place, which has been readout in the bottom field row of the first B frame. By this, the data writing time is reduced for real-time reading.
  • FIG. 5C shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FTSB). In step 551, the display unit reads the n-th frame row of the first B frame where 0<n<31 and n is a positive integer. In step 552, the decoding unit writes the m-th top field row of the second B frame in the place, which originally stored the n-th frame row of the first B frame where m=n, 0<m<16 and m is the positive integer. In step 553, the decoding unit checks whether all the top field rows of the second B frame have been written. If no, n adds 1 as shown in step 555. And repeats the steps 551, 552, 553 and 555 until all the top field macroblocks of the second B frame have been decoded. If yes, as shown in step 554, the decoding unit sequentially writes in all the bottom field rows of the second B frame. In step 554, the decoding unit immediately writes a row of the bottom field row of the second B frame in place, which originally stored the frame macroblock of the first B frame, after the display unit reads a row of the frame row of the first B frame. Of course, the display unit must be notified that the top field of the second B frame is located at upper part of B frame buffer, and bottom field is located at lower part of the frame buffer.
  • In the embodiment, the decoding unit immediately writes a row of the bottom field row of the second B frame in place, which originally stored the macroblock frame of the first B frame after the display unit reads a row of the macroblock frame row of the first B frame, wherein the row of the second B frame includes a top field row and bottom field row. In other words, the decoding unit immediately writes all the top field rows of the second B frame into the B frame buffer when the display unit reads half the frame rows of the first B frame. And the decoding unit also immediately writes all the bottom field rows of the second B frame in the B frame buffer when the display unit continuously reads the other half frame row of the first B frame. By this, the data writing time has been reduced for real-time reading.
  • FIG. 5D shows another embodiment of the block diagram of the sharing MPEG buffer of the invention applying the method of the frame display and the structure of the first top field and the second bottom field image data (FBST). In step 561, the display unit reads the n-th frame row of the first B frame where 0<n<31 and n is positive integer. In step 562, the decoding unit writes the m-th bottom field row of the second B frame in place, which originally stored the n-th frame row of the first B frame where m=n, 0<m<16 and m is a positive integer. In step 563, the decoding unit checks whether all the bottom field rows of the second B frame have been written. If no, n adds 1 as shown in step 565. And repeats the steps 561, 562, 563 and 565 until all the bottom field macroblocks of the second B frame have decoded. If yes, as shown in step 564, the decoding unit sequentially writes in all the top field rows of the second B frame. Herein, the decoding unit immediately writes a row of the top field row of the second B frame in place, which originally stored the frame macroblock of the first B frame after the display unit reads a row of the frame row of the first B frame.
  • In the embodiment, the decoding unit immediately writes a row of the row of the second B frame in place, which originally stored the frame macroblock of the first B frame after the display unit reads a row of the frame row of the first B frame. Wherein the row of the second B frame includes a bottom field row and top field row. In other words, the decoding unit immediately writes all the bottom field rows of the second B frame in B frame buffer when the display unit reads the half frame row of the first B frame. And the decoding unit immediately writes all the top field rows of the second B frame in the B frame buffer when the display unit continuously reads the other half frame row of the first B frame. By this, the data writing time has been reduced for real-time reading.
  • Other embodiments of the invention will appear to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples to be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.

Claims (23)

1. A device for sharing MPEG buffer comprising:
a bidirectional frame buffer providing successive a first bidirectional frame and a second bidirectional frame with storing temporary data for writing during decoding and reading during displaying;
a display unit coupled with said bidirectional frame, said display unit sequentially reads said first bi-directional frame and said second bidirectional frame; and
a decoding unit coupled with said bi-directional frame, said decoding unit sequentially writes said first bidirectional frame and said second bidirectional frame, wherein said decoding unit writes said second bi-directional frame into a position in a storing unit, wherein said position is previously occupied by said first bi-directional frame that has been readout by said display unit.
2. The device according to claim 1, wherein said decoding unit writes a plurality of bottom field row of said second bidirectional frame into a position that is previously occupied by a plurality of top field row of said first bidirectional frame.
3. The device according to claim 1, wherein said decoding unit writes a plurality of top field row of said second bidirectional frame in a position that is previously occupied by a plurality of first half frame row of said first bidirectional frame.
4. The device according to claim 1, wherein said decoding unit writes a plurality of bottom field row of said second bidirectional frame in a position that is previously occupied by a plurality of first half frame row of said first bidirectional frame.
5. The device according to claim 1, wherein said display unit reads a position being corresponding to a specific position where said second bi-directional frame is stored in said storing unit.
6. The device according to claim 5, wherein said decoding unit writes a plurality of frame row of said second bi-directional frame into a corresponding position that is previously occupied by both a plurality of top field row and a plurality of bottom field row of said first bi-directional frame that have readout by said display unit.
7. The device according to claim 5, wherein said decoding unit writes a plurality of top field row of said second bi-directional frame into a corresponding position that is previously occupied by a plurality of top field row of said first bidirectional frame that has readout by said display unit.
8. The device according to claim 5, wherein said decoding unit writes a plurality of bottom field row of said second bi-directional frame into a corresponding position that is previously occupied by a plurality of bottom field row of said first bidirectional frame that has readout by said display unit.
9. The device according to claim 5, wherein said decoding unit writes a plurality of frame row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of frame row of said first bidirectional frame that has readout by said display unit.
10. The device according to claim 5, wherein said decoding unit writes a plurality of top field row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of frame row of said first bi-directional frame that has readout by said display unit.
11. The device according to claim 5, wherein said decoding unit writes a plurality of bottom field row of said second bi-directional frame into a corresponding position that is previously occupied by a plurality of frame row of said first bidirectional frame that has readout by said display unit.
12. The device according to claim 1 further comprising a forward reference buffer and a backward reference buffer, wherein said forward reference buffer is for storing a forward reference frame and said backward reference buffer is for storing a backward reference frame.
13. A method for sharing MPEG buffer comprising:
storing a first bidirectional frame and a second bi-directional frame in a storage device; and
writing a plurality of row of said second bidirectional frame into a position that is previously occupied by a plurality of row of said first bidirectional frame that has been readout.
14. The method according to claim 13, when frame display and first bottom field and second top field image data (FBST) structure are currently applied, said writing step comprising writing a plurality of bottom field row of said second bidirectional frame into a position that is previously occupied by a plurality of top field row of said first bidirectional frame that has been readout.
15. The method according to claim 13, when frame display and first top field and second bottom field image data (FTSB) structure are currently applied, said writing step comprising writing a plurality of top field row of said second bi-directional frame into a position that is previously occupied by a plurality of frame row of first half of said first bidirectional frame that has been readout.
16. The method according to claim 13, when frame display and first bottom field and second top field image data (FBST) structure are currently applied, said writing step comprising writing a plurality of bottom field row of said second bi-directional frame into a position that is previously occupied by a plurality of frame row of first half of said first bi-directional frame that has been readout.
17. The method according to claim 13, wherein a position of read said first bidirectional frames is corresponding to a position of said storage device where said second bidirectional frame is stored.
18. The method according to claim 17, when field display and frame structure are applied, said writing step comprising writing a plurality of frame row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of top field row and a plurality of bottom field row of said first bidirectional frame that has readout.
19. The method according to claim 17, when field display and first top and second bottom field image data (FTSB) structure are applied, said writing step comprising writing a plurality of top field row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of top field row of said first bi-directional frame that has readout.
20. The method according to claim 17, when field display and first bottom field and second top field image data (FBST) structure are applied, said writing step comprising writing a plurality of bottom field row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of bottom field row of said first bidirectional frame that has readout.
21. The method according to claim 17, when frame display and frame structure are applied, said writing step comprising writing a plurality of frame row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of frame row of said first bidirectional frame that has readout.
22. The method according to claim 17, when frame display and first top field and second bottom field image data (FTSB) structure are applied, said writing step comprising writing a plurality of top field row of said second bi-directional frame into a corresponding position that is previously occupied by a plurality of frame row of said first bidirectional frame that has readout.
23. The method according to claim 17, when frame display and first bottom field and second top field image data (FBST) structure are applied, said writing step comprising writing a plurality of bottom field row of said second bidirectional frame into a corresponding position that is previously occupied by a plurality of frame row of said first bidirectional frame that has readout.
US10/992,849 2003-12-03 2004-11-22 Method and device for sharing MPEG frame buffers Abandoned US20050123046A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/992,849 US20050123046A1 (en) 2003-12-03 2004-11-22 Method and device for sharing MPEG frame buffers

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US52629403P 2003-12-03 2003-12-03
US10/992,849 US20050123046A1 (en) 2003-12-03 2004-11-22 Method and device for sharing MPEG frame buffers

Publications (1)

Publication Number Publication Date
US20050123046A1 true US20050123046A1 (en) 2005-06-09

Family

ID=34375610

Family Applications (6)

Application Number Title Priority Date Filing Date
US10/986,095 Abandoned US20050125480A1 (en) 2003-12-03 2004-11-12 Method and apparatus for multiplying based on booth's algorithm
US10/992,814 Abandoned US20050125475A1 (en) 2003-12-03 2004-11-22 Circuit sharing of MPEG and JPEG on IDCT
US10/992,849 Abandoned US20050123046A1 (en) 2003-12-03 2004-11-22 Method and device for sharing MPEG frame buffers
US11/000,885 Active 2026-10-13 US7558431B2 (en) 2003-12-03 2004-12-02 Method and system for discrete cosine transforms/inverse discrete cosine transforms based on pipeline architecture
US11/001,636 Abandoned US20050152609A1 (en) 2003-12-03 2004-12-02 Video decoder
US12/976,012 Abandoned US20110091124A1 (en) 2003-12-03 2010-12-22 System for multi-byte reading

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US10/986,095 Abandoned US20050125480A1 (en) 2003-12-03 2004-11-12 Method and apparatus for multiplying based on booth's algorithm
US10/992,814 Abandoned US20050125475A1 (en) 2003-12-03 2004-11-22 Circuit sharing of MPEG and JPEG on IDCT

Family Applications After (3)

Application Number Title Priority Date Filing Date
US11/000,885 Active 2026-10-13 US7558431B2 (en) 2003-12-03 2004-12-02 Method and system for discrete cosine transforms/inverse discrete cosine transforms based on pipeline architecture
US11/001,636 Abandoned US20050152609A1 (en) 2003-12-03 2004-12-02 Video decoder
US12/976,012 Abandoned US20110091124A1 (en) 2003-12-03 2010-12-22 System for multi-byte reading

Country Status (3)

Country Link
US (6) US20050125480A1 (en)
CN (7) CN100527071C (en)
TW (5) TWI289992B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060083306A1 (en) * 2004-10-20 2006-04-20 Wen-Hao Hsu Video decoding methods and devices
US20080075162A1 (en) * 2006-09-25 2008-03-27 Sunplus Technology Co., Ltd. Video decoding and transcoding method and system
CN101064515B (en) * 2007-04-18 2011-05-11 威盛电子股份有限公司 Methods to Improve Decoding Performance

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8599841B1 (en) 2006-03-28 2013-12-03 Nvidia Corporation Multi-format bitstream decoding engine
US8593469B2 (en) 2006-03-29 2013-11-26 Nvidia Corporation Method and circuit for efficient caching of reference video data
CN101246468B (en) * 2007-02-13 2010-05-19 扬智科技股份有限公司 Modified discrete cosine inverse conversion method
US8477852B2 (en) * 2007-06-20 2013-07-02 Nvidia Corporation Uniform video decoding and display
CN100588254C (en) * 2007-06-28 2010-02-03 威盛电子股份有限公司 Inverse discrete cosine transform circuit
US8502709B2 (en) 2007-09-17 2013-08-06 Nvidia Corporation Decoding variable length codes in media applications
JP4988627B2 (en) * 2008-03-05 2012-08-01 ルネサスエレクトロニクス株式会社 Filter calculator and motion compensation device
US9110849B2 (en) 2009-04-15 2015-08-18 Qualcomm Incorporated Computing even-sized discrete cosine transforms
US9117060B2 (en) * 2009-05-07 2015-08-25 Cadence Design Systems, Inc. System and method for preventing proper execution of an application program in an unauthorized processor
US9069713B2 (en) 2009-06-05 2015-06-30 Qualcomm Incorporated 4X4 transform for media coding
US9075757B2 (en) 2009-06-24 2015-07-07 Qualcomm Incorporated 16-point transform for media data coding
US9118898B2 (en) 2009-06-24 2015-08-25 Qualcomm Incorporated 8-point transform for media data coding
US9081733B2 (en) * 2009-06-24 2015-07-14 Qualcomm Incorporated 16-point transform for media data coding
US9824066B2 (en) 2011-01-10 2017-11-21 Qualcomm Incorporated 32-point transform for media data coding
WO2015086730A1 (en) 2013-12-13 2015-06-18 Sanofi Non-acylated exendin-4 peptide analogues
KR102459917B1 (en) * 2015-02-23 2022-10-27 삼성전자주식회사 Image signal processor and devices having the same
CN105868554B (en) * 2016-03-28 2018-03-27 朱洲森 A kind of relay drainage method based on big data complex calculation
KR102885930B1 (en) * 2020-12-02 2025-11-12 삼성전자주식회사 Integrated circuit for constant multiplication and device including the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128340A (en) * 1997-03-14 2000-10-03 Sony Corporation Decoder system with 2.53 frame display buffer

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0469855B1 (en) * 1990-07-31 1999-12-01 Fujitsu Limited Image data processing method and apparatus
US7095783B1 (en) * 1992-06-30 2006-08-22 Discovision Associates Multistandard video decoder and decompression system for processing encoded bit streams including start codes and methods relating thereto
US5842033A (en) * 1992-06-30 1998-11-24 Discovision Associates Padding apparatus for passing an arbitrary number of bits through a buffer in a pipeline system
JPH0744586B2 (en) * 1993-02-26 1995-05-15 日本電気株式会社 Parallel data transfer circuit
JP3546437B2 (en) 1993-03-31 2004-07-28 ソニー株式会社 Adaptive video signal processing unit
US5636155A (en) * 1993-04-27 1997-06-03 Matsushita Electric Industrial Co., Ltd. Arithmetic processor and arithmetic method
US5452466A (en) * 1993-05-11 1995-09-19 Teknekron Communications Systems, Inc. Method and apparatus for preforming DCT and IDCT transforms on data signals with a preprocessor, a post-processor, and a controllable shuffle-exchange unit connected between the pre-processor and post-processor
JPH0793134A (en) * 1993-09-24 1995-04-07 Nec Corp Multiplier
US5509129A (en) * 1993-11-30 1996-04-16 Guttag; Karl M. Long instruction word controlling plural independent processor operations
JP2851804B2 (en) 1993-12-27 1999-01-27 松下電器産業株式会社 2D orthogonal transform device
JPH07200539A (en) * 1993-12-28 1995-08-04 Matsushita Electric Ind Co Ltd Two-dimensional DCT computing device
US5574863A (en) * 1994-10-25 1996-11-12 Hewlett-Packard Company System for using mirrored memory as a robust communication path between dual disk storage controllers
JPH08152994A (en) * 1994-11-29 1996-06-11 Mitsubishi Electric Corp Multiplier and digital filter
US5787029A (en) * 1994-12-19 1998-07-28 Crystal Semiconductor Corp. Ultra low power multiplier
JP3474663B2 (en) * 1995-02-24 2003-12-08 三菱電機株式会社 Multiplication circuit
KR100212268B1 (en) * 1995-12-13 1999-08-02 윤종용 Idct system using lee's algorithm
US5854757A (en) * 1996-05-07 1998-12-29 Lsi Logic Corporation Super-compact hardware architecture for IDCT computation
US6026217A (en) * 1996-06-21 2000-02-15 Digital Equipment Corporation Method and apparatus for eliminating the transpose buffer during a decomposed forward or inverse 2-dimensional discrete cosine transform through operand decomposition storage and retrieval
US6144771A (en) * 1996-06-28 2000-11-07 Competitive Technologies Of Pa, Inc. Method and apparatus for encoding and decoding images
JPH1079940A (en) * 1996-09-05 1998-03-24 Mitsubishi Electric Corp Image coding device
US6137916A (en) * 1997-11-17 2000-10-24 Sony Electronics, Inc. Method and system for improved digital video data processing using 8-point discrete cosine transforms
TW364269B (en) 1998-01-02 1999-07-11 Winbond Electronic Corp Discreet cosine transform/inverse discreet cosine transform circuit
WO1999039303A1 (en) * 1998-02-02 1999-08-05 The Trustees Of The University Of Pennsylvania Method and system for computing 8x8 dct/idct and a vlsi implementation
JP2000125136A (en) * 1998-10-19 2000-04-28 Internatl Business Mach Corp <Ibm> Image data compression device and its method
US6507614B1 (en) * 1999-10-19 2003-01-14 Sony Corporation Efficient de-quantization in a digital video decoding process using a dynamic quantization matrix for parallel computations
US20030099293A1 (en) * 1999-12-15 2003-05-29 Shigeyuki Okada Image reproducing method, and image processing method, and image reproducing device, image processing device, and television receiver capable of using the methods
TW502532B (en) * 1999-12-24 2002-09-11 Sanyo Electric Co Digital still camera, memory control device therefor, apparatus and method for image processing
US6675185B1 (en) * 2000-06-07 2004-01-06 International Business Machines Corporation Hybrid domain processing of multi-dimensional transformed data
JP3639517B2 (en) * 2000-10-04 2005-04-20 三洋電機株式会社 Moving picture decoding apparatus and moving picture decoding method
US7599434B2 (en) * 2001-09-26 2009-10-06 Reynolds Jodie L System and method for compressing portions of a media signal using different codecs
US6888372B1 (en) * 2002-12-20 2005-05-03 Altera Corporation Programmable logic device with soft multiplier

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128340A (en) * 1997-03-14 2000-10-03 Sony Corporation Decoder system with 2.53 frame display buffer

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060083306A1 (en) * 2004-10-20 2006-04-20 Wen-Hao Hsu Video decoding methods and devices
US7848410B2 (en) * 2004-10-20 2010-12-07 Institute For Information Industry Video decoding methods and devices
US20080075162A1 (en) * 2006-09-25 2008-03-27 Sunplus Technology Co., Ltd. Video decoding and transcoding method and system
US8085853B2 (en) * 2006-09-25 2011-12-27 Sunplus Technology Co., Ltd. Video decoding and transcoding method and system
CN101064515B (en) * 2007-04-18 2011-05-11 威盛电子股份有限公司 Methods to Improve Decoding Performance

Also Published As

Publication number Publication date
CN1282368C (en) 2006-10-25
US7558431B2 (en) 2009-07-07
TW200520536A (en) 2005-06-16
TWI289992B (en) 2007-11-11
CN100527071C (en) 2009-08-12
CN1630373A (en) 2005-06-22
CN1591319A (en) 2005-03-09
TWI295787B (en) 2008-04-11
TWI227840B (en) 2005-02-11
US20050125475A1 (en) 2005-06-09
CN1617594A (en) 2005-05-18
CN1595994A (en) 2005-03-16
TWI240560B (en) 2005-09-21
CN1305313C (en) 2007-03-14
TWI233267B (en) 2005-05-21
TW200520535A (en) 2005-06-16
TW200520399A (en) 2005-06-16
CN100531393C (en) 2009-08-19
CN100539699C (en) 2009-09-09
CN1555199A (en) 2004-12-15
US20050125469A1 (en) 2005-06-09
US20050152609A1 (en) 2005-07-14
CN1598876A (en) 2005-03-23
CN101060631A (en) 2007-10-24
TW200519633A (en) 2005-06-16
US20110091124A1 (en) 2011-04-21
US20050125480A1 (en) 2005-06-09

Similar Documents

Publication Publication Date Title
US20050123046A1 (en) Method and device for sharing MPEG frame buffers
US20070269181A1 (en) Device and method for mpeg video playback
US7437054B2 (en) Apparatus and method for controlling reverse-play for digital video bitstream
US20070092004A1 (en) Memory sharing in video transcoding and displaying
US7852344B2 (en) System for interleaved storage of video data
CN110708609A (en) Video playing method and device
CN100463511C (en) Image data processing system and image data reading and writing method
US6181746B1 (en) Image data decoding method and apparatus using memory for storing decoded data
US7218676B2 (en) Method and a decoder for decoding MPEG video
US20090058866A1 (en) Method for mapping picture addresses in memory
CN107204199B (en) Semiconductor memory device and address control method thereof
US20050025250A1 (en) Video decoding during I-frame decode at resolution change
US7489316B2 (en) Method for frame rate conversion
US8085853B2 (en) Video decoding and transcoding method and system
US20040218670A1 (en) Method and apparatus for reducing the bandwidth required for transmitting video data for display
US20150022540A1 (en) Method and apparatus for controlling writing of data to graphic memory
CN100444636C (en) A Method of Improving SDRAM Bus Efficiency in Video Decoder
KR20100105146A (en) Display controller
JP4244974B2 (en) Data processing system, playback device, data processing device, playback method, data processing method, program, and recording medium
JPH11313283A (en) Moving-image data reproducing device and reverse reproduction method for moving-image data
US20090092376A1 (en) Video reproduction apparatus
US20070127570A1 (en) Image processor and image processing method
US20100046630A1 (en) Apparatus and method for video processing
US20080056381A1 (en) Image compression and decompression with fast storage device accessing
JP2005080073A (en) Image reproducing device and backward reproduction method of image data

Legal Events

Date Code Title Description
AS Assignment

Owner name: VIA TECHNOLOGIES, INC., TAIWAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:WANG, ROY;CHIANG, RENWEI;REEL/FRAME:016011/0817

Effective date: 20040920

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION