Video and graphics system with an MPEG video decoder for concurrent multi-row decoding
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/80
H04N-007/00
H04N-009/64
H04N-007/112
출원번호
UP-0748948
(2007-05-15)
등록번호
US-7848430
(2011-01-31)
발명자
/ 주소
Valmiki, Ramanujan K.
Bhatia, Sandeep
출원인 / 주소
Broadcom Corporation
대리인 / 주소
McAndrews, Held & Malloy, Ltd.
인용정보
피인용 횟수 :
14인용 특허 :
162
초록▼
A video and graphics system processes video data including both analog video, e.g., NTSC/PAL/SECAM/S-video, and digital video, e.g., MPEG-2 video in SDTV or HDTV format. The video and graphics system includes a video decoder, which is capable of concurrently decoding multiple SLICEs of MPEG-2 video
A video and graphics system processes video data including both analog video, e.g., NTSC/PAL/SECAM/S-video, and digital video, e.g., MPEG-2 video in SDTV or HDTV format. The video and graphics system includes a video decoder, which is capable of concurrently decoding multiple SLICEs of MPEG-2 video data. The video decoder includes multiple row decoding engines for decoding the MPEG-2 video data. Each row decoding engine concurrently decodes two or more rows of the MPEG-2 video data. The row decoding engines have a pipelined architecture for concurrently decoding multiple rows of MPEG-2 video data. The video decoder may be integrated on an integrated circuit chip with other video and graphics system components such as transport processors for receiving one or more compressed data streams and for extracting video data, and a video compositor for blending processed video data with graphics.
대표청구항▼
The invention claimed is: 1. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising: decoding the header of at least one macrblock using a first processing element; and decoding the block layer data of s
The invention claimed is: 1. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising: decoding the header of at least one macrblock using a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element; and wherein the at least one macroblock comprises a first row of macroblocks of a frame. 2. The method of claim 1, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 3. The method of claim 2, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 4. The method of claim 1, wherein the at least one block comprises block layer data from the first row of macroblocks. 5. The method of claim 4, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 6. The method of claim 5, wherein the second mprocessing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 7. The method of claim 1, wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 8. The method of claim 4, wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 9. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising: decoding the header of at least one macrblock using a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; wherein the at least one block comprises block layer data from the first row of macroblocks; and wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 10. The method of claim 9, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 11. The method of claim 10, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 12. The method of claim 9, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 13. The method of claim 12, wherein the second mprocessing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 14. The method of claim 9, wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 15. The method of claim 9, wherein decoding block layer data for at least another macroblock using the second processing element while decoding the header at the at least one macroblock with the first processing element. 16. A circuit for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising: a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using; and wherein the at least one macroblock comprises a first row of macroblocks of a frame. 17. The circuit of claim 16, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 18. The circuit of claim 17, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 19. The circuit of claim 16, wherein the at least one block comprises block layer data from the first row of macroblocks. 20. The circuit of claim 19, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 21. The circuit of claim 20, wherein the second processing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 22. The circuit of claim 20, wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 23. The circuit of claim 19, wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 24. A circuit of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising: a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; and wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 25. The circuit of claim 24, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 26. The circuit of claim 25, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 27. The circuit of claim 24, wherein the at least one block comprises block layer data from the first row of macroblocks. 28. The circuit of claim 27, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 29. The circuit of claim 28, wherein the second processing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 30. The circuit of claim 27, wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 31. A circuit for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising: a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; wherein the at least one block comprises block layer data from the first row of macroblocks; and wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 32. The circuit of claim 31, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 33. The circuit of claim 32, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 34. The circuit of claim 31, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 35. The circuit of claim 34, wherein the second mprocessing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 36. The circuit of claim 31, wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 37. The circuit of claim 31, wherein decoding block layer data for at least another macroblock using the second processing element while decoding the header at the at least one macroblock with the first processing element. 38. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising: decoding the header of at least one macrblock with a first processing element; and decoding the block layer data of said at least one macroblock using a second processing element; wherein the at least one macroblock comprises a first row of macroblocks of a frame; and wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 39. The method of claim 38, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 40. The method of claim 39, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 41. The method of claim 38, wherein the at least one block comprises block layer data from the first row of macroblocks. 42. The method of claim 41, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 43. The method of claim 42, wherein the second processing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 44. The method of claim 41, wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 45. The method of claim 1, further comprising: decoding block layer data for at least another macroblock using the second processing element while decoding the macroblock level header for the at least one macroblock with the first processing element, wherein said macroblock level header is hierarchically higher than the block layer data. 46. The circuit of claim 16, wherein decoding block layer data for at least another macroblock using the second processing element while decoding the macroblock level header for the at least one macroblock with the first processing element, wherein said macroblock level header is hierarchically higher than the block layer data. 47. A method of decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said method comprising: decoding the header of at least one macrblock using a first processing element; decoding the block layer data of said at least one macroblock using a second processing element; and decoding block layer data for at least another macroblock using the second processing element while decoding the macroblock level header for the at least one macroblock with the first processing element, wherein said macroblock level header is hierarchically higher than the block layer data. 48. The method of claim 47, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 49. The method of claim 48, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 50. The method of claim 47, wherein the at least one block comprises block layer data from the first row of macroblocks. 51. The method of claim 50, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 52. The method of claim 51, wherein the second mprocessing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 53. The method of claim 47, wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 54. The method of claim 50, wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks. 55. A circuit for decoding MPEG data comprising a plurality of macroblocks, each macroblock comprising a header and block layer data, said circuit comprising: a first processing element for decoding the header of at least one macrblock; and a second processing element for decoding the block layer data of said at least one macroblock using; and wherein decoding block layer data for at least another macroblock using the second processing element while decoding the macroblock level header for the at least one macroblock with the first processing element, wherein said macroblock level header is hierarchically higher than the block layer data. 56. The circuit of claim 55, wherein the block layer data of said at least one macroblock is decoded by the second processing element after the first processing element decodes the header of the at least one macroblock. 57. The circuit of claim 56, wherein the block layer data of said at least one macroblock is decoded by the second processing element immediately after the first processing element decodes the header of the at least one macroblock. 58. The circuit of claim 55, wherein the at least one block comprises block layer data from the first row of macroblocks. 59. The circuit of claim 58, wherein the second processing element decodes the block layer data of said block layer data from the first row of macroblocks after the first processing element decodes the header of the first row of macroblocks. 60. The circuit of claim 59, wherein the second processing element decodes the block layer of data of said block layer data from the first row of macroblocks immediately after the first processing element decodes the header of the first row of macroblocks. 61. The circuit of claim 59, wherein the second processing element decodes a second row of block data of a second row of macroblocks while the first processing element decodes the headers of the first row of macroblocks. 62. The circuit of claim 58, wherein the first processing element decodes a third row of macroblock header data while the second processing element decodes the block layer data from the first row of macroblocks.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (162)
Murphy Nicholas J. N.,GBX, 3D graphics object copying with reduced edge artifacts.
Cooper J. Carl (Monte Sereno CA) Wallen David (San Francisco CA) Vojnovic Mirko (Santa Clara CA) Loveless Howard (Ben Lomond CA), Apparatus and method for synchronizing asynchronous signals.
Drako Dean M. (Los Altos CA) Yu Hsiu-Tung A. (Palo Alto CA), Apparatus for manipulating image pixel streams to generate an output image pixel stream in response to a selected mode.
Clough Elizabeth A. (Menlo Park CA) Roskowski Steven G. (Sunnyvale CA) Perlman Stephen G. (Mountain View CA) Masterson Anthony D. (Cupertino CA), Apparatus for providing output filtering from a frame buffer storing both video and graphics signals.
Bates Cary L. (Rochester MN) Cragun Brian J. (Rochester MN) Donovan Robert J. (Rochester MN) Jaaskelainen William (Oronoco MN) Ryan Jeffrey M. (Byron MN) Striemer Bryan L. (Zumbrota MN), Aural position indicating mechanism for viewable objects.
Larson Michael Kerry ; McDonald Timothy James, Circuits systems and methods for managing data requests between memory subsystems operating in response to multiple address formats.
Gulick Dale ; Lambrecht Andy ; Webb Mike ; Hewitt Larry ; Barnes Brian, Computer system and method for transferring commands and data to a dedicated multimedia engine.
Mergard James Oliver ; Quimby Michael S. ; Wakeland Carl K., Computer system for concurrent data transferring between graphic controller and unified system memory and between CPU.
Gulick Dale E. ; Lambrecht Andy ; Webb Mike ; Hewitt Larry ; Barnes Brian, Computer system having a dedicated multimedia engine and multimedia memory having arbitration logic which grants main me.
Melo Maria L. ; Deschepper Todd ; Wilson Jeffrey T., Computer system having integrated bus bridge design with delayed transaction arbitration mechanism employed within laptop computer docked to expansion base.
Gulick Dale E. ; Lambrecht Andy ; Webb Mike ; Hewitt Larry ; Barnes Brian, Computer system having separate digital and analog system chips for improved performance.
Salbaum Helmut,DEX ; Bauer Harald,DEX ; Fruhwald Friedrich,DEX, D.M.A. controller that determines whether the mode of operation as either interrupt or D.M.A. via single control line.
Boyce Jill M. (Manalapan NJ) Pearlstein Larry (Newton PA), Digital video decoder for decoding digital high definition and/or digital standard definition television signals.
Werner Ross G. (Woodside CA) Ryherd Eric L. (Brookline NH), Drawing processor for computer graphic system using a plurality of parallel processors which each handle a group of disp.
Alexander G. MacInnis ; Chengfuh Jeffrey Tang ; Xiaodong Xie ; James T. Patterson ; Greg A. Kranawetter, Graphics display system with color look-up table loading mechanism.
MacInnis Alexander G. ; Tang Chengfuh Jeffrey ; Xie Xiaodong ; Patterson James T. ; Kranawetter Greg A., Graphics display system with unified memory architecture.
Van Hook Timothy J. ; Cheng Howard H. ; DeLaurier Anthony P. ; Gossett Carroll P. ; Moore Robert J. ; Shepard Stephen J. ; Anderson Harold S. ; Princen John ; Doughty Jeffrey C. ; Pooley Nathan F. ; , High performance low cost video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing.
Shibata Hideaki (Osaka JPX) Bannai Tatsushi (Sakai JPX), High-efficiency coding apparatus for compressing a digital video signal while controlling the coding bit rate of the com.
Lum Sanford S.,CAX ; Chen Keping,CAX ; Wong Samuel L. C.,CAX ; Bennett Dwayne R.,CAX ; Alford Michael A.,CAX, Host CPU independent video processing unit.
Borrel Paul ; Cheng Keh-Shin Fu ; Menon Jai Prakash ; Rossignac Jaroslaw Roman, Hotlinks between an annotation window and graphics window for interactive 3D graphics.
Miyuki Enokida JP; Tadashi Yoshida ; Kunihiro Yamamoto JP, Information processing method and apparatus for displaying a list of a plurality of image data files and a list of search results.
Rhodes Kenneth E. (Portland OR) Adams Robert T. (Lake Oswego OR) Janes Sherman (Portland OR) Coelho Rohan G. F. (Hillsboro OR), Integrated graphics and video computer display system.
Fandrianto Jan ; Martin Bryan R. ; Neubauer Doug G. ; Tran Duat H. ; Cressa Matthew D. ; Soemedi Arijanto, Integrated multimedia communications processor and codec.
Crochiere Ronald Eldon (Chatham NJ) Rabiner Lawrence Richard (Berkeley Heights NJ), Interpolation-decimation circuit for increasing or decreasing digital sampling frequency.
Nachtergaele Lode J.M.,BEX ; Catthoor Francky,BEX ; Kapoor Bhanu ; Janssens Stefan,BEX, Low power video decoder system with block-based motion compensation.
Carini Richard P. (Kingston NY) Donnelly James A. (West Hurley NY) Ellis ; Jr. Joseph J. (West Hurley NY) Lanzoni Thomas P. (Kingston NY), Merged data storage panel display.
Jouppi Norman P. ; McCormack Joel J. ; Chang Chun-Fa, Method and apparatus for compositing colors of images with memory constraints for storing pixel data.
Rhodes Ken (Portland OR) Coelho Rohan (Hillsboro OR) Frank Davis (Beaverton OR) Bender Blake (Beaverton OR), Method and apparatus for displaying an image in a windowed environment.
Gough Michael L. (Ben Lomond CA) Venolia Daniel S. (Foster City CA) Gilley Thomas S. (Pleasanton CA) Robbins Greg M. (Cupertino CA) Hansen ; Jr. Daniel J. (Cupertino CA) Oswal Abhay (Fremont CA) Tam , Method and apparatus for displaying an overlay image.
Dilliplane Stephen C. ; Lavelle Gary J. ; Maino James G. ; Selvaggi Richard J. ; Tseng Jack, Method and apparatus for displaying multiple windows on a display monitor.
Mills Karl Scott ; Holmes Jeffrey Michael ; Bonnelycke Mark Emil ; Owen Richard Charles Andrew, Method and apparatus for executing a raster operation in a graphics controller circuit.
Garrison John Michael ; Wilson Gale Arthur, Method and apparatus for manipulating very long lists of data displayed in a graphical user interface using a layered li.
Gough Michael L. ; MacDougald Joseph J. ; Venolia Daniel S. ; Gilley Thomas S. ; Robbins Greg M. ; Hansen ; Jr. Daniel J. ; Oswal Abhay, Method and apparatus for providing translucent images on a computer display.
Chow Paul,CAX ; Mizuyabu Carl K.,CAX ; Swan Philip L.,CAX ; Porter Allen J.C.,CAX ; Wang Chun,CAX, Method and apparatus for storing and displaying video image data in a video graphics system.
Yokota Teppei (Chiba JPX) Aramaki Junichi (Chiba JPX) Kihara Nobuyuki (Tokyo JPX), Method of recording on a recording medium employing an automatic updating of management data by monitoring the signal be.
King Sherman T. (San Francisco CA) Lee Tommy C. (Danville CA) Wang Niantsu (Milpitas CA) Chu Yen-Fah (San Jose CA) Kimura Scott A. (San Jose CA) Hwang Guorjuh T. (Milpitas CA), Multimedia overlay system for graphics and video.
Cottle Temple D. ; Spits Tiemen T., Programmable interrupt controller with interrupt set/reset register and dynamically alterable interrupt mask for a single interrupt processor.
Ogrinc Michael A. (San Francisco CA) Card Robert A. (Palo Alto CA) Burns Chris R. (Mountain View CA) Clarke Charles P. (Los Altos CA) Collier Ronda L. (Scotts Valley CA) Collins Kevin M. (San Mateo C, Real time video image processing system.
Slattery William ; Gratacap Regis, Remultipelxer cache architecture and memory organization for storing video program bearing transport packets and descriptors.
Fielder Dennis (Linton GBX) Derbyshire James (Willingham GBX) Gillingham Peter (Kanata CAX) Torrance Randy (Ottawa CAX) O\Connell Cormac (Kanata CAX), Single chip frame buffer and graphics accelerator.
Crinon Regis J. ; Sezan Muhammed Ibrahim, Sprite-based video coding system with automatic segmentation integrated into coding and sprite building processes.
Ke Ligang ; Lutz Juergen M., System and method for utilizing a two-dimensional adaptive filter for reducing flicker in interlaced television images converted from non-interlaced computer graphics data.
Priem Curtis ; Rosenthal David S. H., System for providing fast transfers to input/output device by assuring commands from only one application program reside in FIFO.
Washington Emanuel ; Perkins Mike ; Johnson Brian ; How Stephen ; Daines Nolan ; Ayers Tom ; Vertrees Keith, Transport stream decoder/demultiplexer for hierarchically organized audio-video streams.
Timothy J. Van Hook ; Howard H. Cheng ; Anthony P. DeLaurier ; Carroll P. Gossett ; Robert J. Moore ; Stephen J. Shepard ; Harold S. Anderson ; John Princen ; Jeffrey C. Doughty ; Nathan F. , Video game system and coprocessor for video game system.
Vasilevsky, Alexander; Sparrell, Carlton J.; Parise, Sergio; Watlington, John; Kaczowka, Peter A., Centralized digital video recording and playback system accessible to multiple reproduction and control units via a home area network.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.