Video processor with programmable input/output stages to enhance system design configurability and improve channel routing
The video signals carried on a multitude of bus lines are selectively applied to multiple input formatters disposed in the input stage of a video signal processor. The input stage includes a multiplexing stage which receives the buses and selectively supplies one ore more of the buses for delivery to each of the input formatters disposed in the video signal processor. A second multiplexing stage also disposed in the input stage receives the bus lines delivered by the first multiplexing stage both in the original as well as in a changed order. Software controlled register bits coupled to the select terminals of the second multiplexing stage select between the original and the reordered bus lines and deliver the selected bus lines to the input formatters. The software controlled register bits are also applied to the select terminals of the multiplexers disposed in the first multiplexing stage.
The present application claims benefit under 35 USC 119(e) of U.S. provisional Application No. 60/588,647, filed Jul. 16, 2004, entitled “System And Method For Use In Video Processing Including A Programmable Input Device, A Pixel Clock Generator, And A Dual Scaler Architecture,” the contents of which is incorporated herein by reference in its entirety.
STATEMENT AS TO RIGHTS TO INVENTIONS MADE UNDER FEDERALLY SPONSORED RESEARCH OR DEVELOPMENTNOT APPLICABLE
REFERENCE TO A “SEQUENCE LISTING,” A TABLE, OR A COMPUTER PROGRAM LISTING APPENDIX SUBMITTED ON A COMPACT DISK.NOT APPLICABLE
BACKGROUND OF THE INVENTIONThe present invention relates to integrated circuits (ICs), and more particularly to video processor ICs in which programmable input and output stages are disposed to provide design flexibility and enhance ease of use.
In accordance with one embodiment of the present invention, the video signals carried on a multitude of bus lines are selectively applied to multiple input formatters disposed in the input stage of a video signal processor, such as a video processor used in high definition televisions. Each bus carries a number of signal lines. The input stage includes a multiplexing stage which receives the buses and selectively supplies one or more of the buses for delivery to each of the input formatters disposed in the video signal processor. A second multiplexing stage also disposed in the input stage receives the bus lines delivered by the first multiplexing stage both in the original as well as in a changed order. Software controlled register bits coupled to the select terminals of the second multiplexing stage select between the original and the reordered bus lines and deliver the selected bus lines to the input formatters. The reordering of the bus lines makes it easier to, for example, route the bus lines in a printed circuit board (PCB) without cross-over. The software controlled register bits are also applied to the select terminals of the multiplexers disposed in the first multiplexing stage.
In some embodiments, the video signals generated by one or more output formatters disposed in the output stage of the video signal processor are selectively delivered to the output terminals of the video processor. The output stage includes a multiplexing stage which receives the generated signals and selectively supplies one or more of such signals both in the original as well as in a changed order for delivery to the output terminals of the video signal processor. A second multiplexing stage also disposed in the output stage receives the original and the reordered bus lines delivered by the first multiplexing stage. Software controlled register bits coupled to the select terminals of the second multiplexing stage select between the original and the reordered bus lines and deliver the selected bus lines to the output terminals of the video signal processor. The software controlled register bits are also applied to the select terminals of the multiplexers disposed in the first multiplexing stage.
BRIEF DESCRIPTION OF THE DRAWINGS
In accordance with one embodiment of the present invention, the video signals carried on a multitude of bus lines are selectively applied to multiple input formatters disposed in the input stage of a video signal processor, such as a video processor used in high definition televisions. Each bus carries a number of signal lines. The input stage includes a multiplexing stage which receives the buses and selectively supplies one or more of the buses for delivery to each of the input formatters disposed in the video signal processor. A second multiplexing stage also disposed in the input stage receives the bus lines delivered by the first multiplexing stage both in the original as well as in a changed order. Software controlled register bits coupled to the select terminals of the second multiplexing stage select between the original and the reordered bus lines and deliver the selected bus lines to the input formatters. The software controlled register bits are also applied to the select terminals of the multiplexers disposed in the first multiplexing stage.
In some embodiments, the video signals generated by one or more output formatters disposed in the output stage of the video signal processor are selectively delivered to the output terminals of the video processor. The output stage includes a multiplexing stage which receives the generated signals and selectively supplies one or more of such signals both in the original as well as in a changed order for delivery to the output terminals of the video signal processor. A second multiplexing stage also disposed in the output stage receives the original and the reordered bus lines delivered by the first multiplexing stage. Software controlled register bits coupled to the select terminals of the second multiplexing stage select between the original and the reordered bus lines and deliver the selected bus lines to the output terminals of the video signal processor. The software controlled register bits are also applied to the select terminals of the multiplexers disposed in the first multiplexing stage.
In
Referring to
Each of multiplexing stages 210, and 220 includes a multitude of multiplexers. For example, multiplexing stage 210 is shown as including multiplexers 210a, 210b, 210c, and 210d. Similarly, multiplexing stage 220 is shown as including multiplexers 220a, 220b, 220c, and 220d. Video bus VIDI_CH0[7:0] is applied to input terminal I0 of each of multiplexers 210a, 210b, 210c, 210d; Video bus VIDI_CH1[7:0] is applied to input terminal I1 of each of multiplexers 210a, 210b, 210c, 210d; and video bus VIDI_CH2[7:0] is applied to input terminal I2 of each of multiplexers 210a, 210b, 210c, 210d. Select terminal S0 and S1 of multiplexer 210a respectively receive bits b0 and b1 of a software controlled register configured to select from among one of the input signals applied to multiplexer 210a. Select terminal S0 and S1 of multiplexer 210b respectively receive bits b2 and b3 of a software controlled register configured to select from among one of the input signals applied to multiplexer 210b. Select terminal S0 and S1 of multiplexer 210c respectively receive bits b4 and b5 of a software controlled register configured to select from among one of the input signals applied to multiplexer 210c. Select terminal S0 and S1 of multiplexer 210d respectively receive bits b6 and b7 of a software controlled register configured to select from among one of the input signals applied to multiplexer 210d.
In response to the signals applied to select terminals S0, S1 of multiplexer 210a, the signals carried by one of the buses VIDI_CH0[7:0], VIDI_CH1[7:0], VIDI_CH2[7:0] are supplied by output terminal O0, shown as bus A[7:0]. The other output terminal O1 supplies signal A[0:7] whose bits are reversed with respect to bus A[0:7]. In response to the signals applied to select terminals S0, S1 of multiplexer 210b, the signals carried by one of the video buses VIDI_CH0[7:0], VIDI_CH1[7:0], VIDI_CH2[7:0] are supplies by output terminal O0, shown as bus B[7:0]. The other output terminal O1 supplies signal B[0:7] whose bits are reversed with respect to bus B[7:0]. In response to the signals applied to select terminals S0, S1 of multiplexer 210c, the signals carried by one of the video buses VIDI_CH0[7:0], VIDI_CH1[7:0], and VIDI_CH2[7:0] are supplies by output terminal O0, shown as bus C[7:0]. The other output terminal O1 supplies signal C[0:7] whose bits are reversed with respect to bus C[7:0]. In response to the signals applied to select terminals S0, S1 of multiplexer 210d, the signals carried by one of the video buses VIDI_CH0[7:0], VIDI_CH1[7:0], and VIDI_CH2[7:0] are supplies by output terminal O0, shown as bus D[7:0]. The other output terminal O1 supplies signal D[0:7] whose bits are reversed with respect to bus D[7:0].
Buses A[0:7] and A[7:0] are respectively received by input terminals I0 and I1 of multiplexer 220a disposed in multiplexing stage 220. Multiplexer 220b disposed in multiplexing stage 220 is configured to receive buses B[7:0] and B[0:7] at its respective input terminals I0, I1. Multiplexer 220c disposed in multiplexing stage 220 is configured to receive buses C[7:0] and C[0:7] at its respective input terminals I0, I1. Multiplexer 220d disposed in multiplexing stage 220 is configured to receive buses D[7:0] and D[0:7] at its respective input terminals I0, I1.
In response to the signal b8 applied to select terminal S of multiplexer 220a, the signals carried by one of the buses A[7:0] and A[0:7] is applied to input terminal I0 of 24-bit input formatter 202. In response to the signal b9 applied to select terminal S of multiplexer 220b, the signals carried by one of the buses B[7:0] and B[0:7] is applied to input terminal I1 of 24-bit input formatter 202. In response to the signal b10 applied to select terminal S of multiplexer 220c, the signals carried by one of the buses C[7:0] and C[0:7] is applied to input terminal I2 of 24-bit input formatter 202. Input terminals I0, I1 of input formatter 202 are respectively coupled to input terminals I0, I1 of input formatter 204. In response to the signal b11, the signals carried by one of the buses D[7:0] and D[0:7] is supplied to input terminal I of multiplexer 206.
In accordance with the present invention, as shown in the exemplary embodiment of input stage 200, any one of the buses VIDI_CH0[7:0], VIDI_CH1[7:0], and VIDI_CH2[7:0] may be delivered to any one of the input terminals I0, I1, and I2 of input formatter 202, in response to the signals applied to the select terminals of the multiplexers disposed in multiplexing stages 210, and 220. For example, the 8-bits of bus VIDI_CH0[7:0], either in their original form or in a reverse order, may be delivered to input terminal I0 of input formatter 202; the 8 bits of bus VIDI_CH2[7:0], either in their original form or in a reverse order, may be delivered to input terminal I1 of input formatter 202, and the 8-bits of bus VIDI_CH1[7:0], either in their original form or in a reverse order, may be delivered to input terminal I2 of input formatter 202. Similarly, for example, the 8-bits of bus VIDI_CH2[7:0], either in their original form or in a reverse order, may be delivered to input terminal I0 of input formatter 202; the 8 bits of bus VIDI_CH0[7:0], either in their original form or in a reverse order, may be delivered to input terminal I1 of input formatter 202, and the 8-bits of bus VIDI_CH1[7:0], either in their original form or in a reverse order, may be delivered to input terminal I0 of input formatter 202. Similarly, any of the buses VIDI_CH0[7:0], VIDI_CH1[7:0], and VIDI_CH2[7:0] may be received by input terminal I of input formatter 206.
In some embodiments, each of the buses VIDI_CH0[7:0], VIDI_CH1[7:0], and VIDI_CH2[7:0] may be generated by a different source of video signal. For example, the 8 bits of bus VIDI_CH0[7:0] may be supplied by a television, the 8 bits of bus VIDI_CH1[7:0] may be supplied by a personal computer, and the 8 bits of bus VIDI_CH2[7:0] may be supplied by a high definition video source. In other embodiments, buses VIDI_CH0[7:0], VIDI_CH1[7:0], and VIDI_CH2[7:0] may carry the red, green and blue components associated with the same video signal. Therefore, signal AA[7:0], supplied by multiplexer 220a, may be the Y or the green component of a video source, signal BB[7:0], supplied by multiplexer 220b, may be the U or the blue component of a video source, and signal CC[7:0], supplied by multiplexer 220c may be the V or the red component of a video source. If YUV 4:2:2 components are used, the 16-bit input formatter 204 is adapted to receive the Y component on one of its input terminals (e.g., I0) and the UV component on the other one of its input terminals (e.g., I1). If time multiplexed YUV 4:2:2 components, such as ITU656, are used, 8-bit input formatter 206 is typically adapted to receive the video data on its input terminals.
Each of multiplexing stages 310, and 320 includes a multitude of multiplexers. For example, multiplexing stage 310 is shown as including multiplexers 310a, 310b, and 310c. Similarly, multiplexing stage 320 is shown as including multiplexers 320a, 320b, and 320c. Video bus Y/G[7:0] is applied to input terminal I0 of each of multiplexers 310a, 310b, and 310c; Video bus U/B[7:0] is applied to input terminal I1 of each of multiplexers 310a, 310b, and 310c; and video bus V/R[7:0] is applied to input terminal I2 of each of multiplexers 310a, 310b, and 310c.
Select terminal S0 and S1 of multiplexer 310a respectively receive bits d0 and d1 of a software controlled register configured to select from among one of the input signals applied to multiplexer 310a. Select terminal S0 and S1 of multiplexer 310b respectively receive bits d2 and d3 of a software controlled register configured to select from among one of the input signals applied to multiplexer 310b. Select terminal S0 and S1 of multiplexer 310c respectively receive bits d4 and d5 of a software controlled register configured to select from among one of the input signals applied to multiplexer 310c.
In response to the signals applied to select terminals S0, S1 of multiplexer 310a, the signals carried by one of the buses Y/G[7:0], U/B[7:0], V/R[7:0] are supplied as output signals O[7:0] by output terminal O0 of multiplexer 310a. The other output terminal O1 of multiplexer 310a supplies signal O[0:7] whose bits are reversed with respect to bus O[7:0]. In response to the signals applied to select terminals S0, S1 of multiplexer 310b, the signals carried by one of the video buses Y/G[7:0], U/B[7:0], V/R[7:0] as output signals P[7:0] by output terminal O0 of multiplexer 310b. The other output terminal O1 supplies signal P[0:7] whose bits are reversed with respect to bus P[7:0]. In response to the signals applied to select terminals S0, S1 of multiplexer 310c, the signals carried by one of the buses Y/G[7:0], U/B[7:0], V/R[7:0] are supplied as output signals Q[7:0] by output terminal O0 of multiplexer 310c. The other output terminal O1 supplies signal Q[0:7] whose bits are reversed with respect to bus Q[7:0].
Buses O[7:0] and 0[0:7] are respectively received by input terminals I0 and I1 of multiplexer 320a disposed in multiplexing stage 320. Multiplexer 320b disposed in multiplexing stage 320 is configured to receive buses P[7:0] and P[0:7] at its respective input terminals I0, I1. Multiplexer 230c disposed in multiplexing stage 230 is configured to receive buses Q[7:0] and Q[0:7] at its respective input terminals I0, I1.
In response to the signal d6 applied to select terminal S of multiplexer 320a, the signals carried by one of the input terminals of multiplexer 320a is supplied as output signal VIDO_CH0[7:0] via output terminal O multiplexer 320a. In response to the signal d7 applied to select terminal S of multiplexer 320b, the signals carried by one of the input terminals of multiplexer 320b is supplied as output signal VIDO_CH1[7:0] via output terminal O multiplexer 320b. In response to the signal d8 applied to select terminal S of multiplexer 320c, the signals carried by one of the input terminals of multiplexer 320c is supplied as output signal VIDO_CH2[7:0] via output terminal O multiplexer 320c.
In accordance with the present invention, as shown in the exemplary embodiment of output stage 300, any one of the buses Y/G[7:0], U/B[7:0], V/R[7:0] may be delivered to the output terminal of any one of the multiplexers 320a, 320b, and 320c. For example, the 8-bits of bus Y/G[7:0], either in their original form or in a reverse order, may be delivered to output terminal O of multiplexer 320a; the 8 bits of bus U/B[7:0], either in their original form or in a reverse order, may be delivered to output terminal O of input formatter 320b, and the 8-bits of bus V/R[7:0], either in their original form or in a reverse order, may be delivered to output terminal O of multiplexer 320c. Similarly, for example, the 8-bits of bus U/B[7:0], either in their original form or in a reverse order, may be delivered to output terminal O of multiplexer 320a; the 8 bits of bus V/R[7:0], either in their original form or in a reverse order, may be delivered to output terminal O of input formatter 320b, and the 8-bits of bus Y/G[7:0], either in their original form or in a reverse order, may be delivered to output terminal O of multiplexer 320c.
In some embodiments, bus Y/G[7:0] may carry either the Y or the green component of a video source, bus U/B[7:0] may carry either the U or the blue component of a video source, and bus V/R[7:0] may carry either V or the red component of a video source.
The above embodiments of the present invention are illustrative and not limiting. Various alternatives and equivalents are possible. The invention is not limited by the number of multiplexing stages disposed in either the input or output stages of the video processor. The invention is not limited by the number of bus lines or the number of signals lines disposed in each bus line. The invention is not limited by the number of channel supplying video signal to the video processor. Nor is the invention limited by the number of input formatters disposed in the video processor. The invention is not limited by the type of integrated circuit in which the present disclosure may be disposed. Nor is the disclosure limited to any specific type of process technology, e.g., CMOS, Bipolar, or BICMOS that may be used to manufacture the present disclosure. Other additions, subtractions or modifications are obvious in view of the present disclosure and are intended to fall within the scope of the appended claims.
Claims
1. A video processing integrated circuit comprising an input stage, said input stage further comprising:
- first and second input formatters; and
- a first multiplexing stage configured to receive N buses each carrying M bits of video signals, wherein said multiplexing stage is further configured to selectively deliver the M bits of at least one of the N bus lines to one of U input terminals of the first input formatter and to one of the V input terminals of the second input formatter.
2. The video processing integrated circuit of claim 1 wherein each of the N buses is generated by a different video source.
3. The video processing integrated circuit of claim 1 wherein each of the N buses is associated with a different RGB component of a same video source.
4. The video processing integrated circuit of claim 1 wherein each of the N buses is associated with a different YUV component of a same video source.
5. The video processing integrated circuit of claim 1 further comprising:
- a second multiplexing stage configured to receive output signals supplied by the first multiplexing stage and deliver a selected ones of the received signals to first and second input formatters.
6. The video processing integrated circuit of claim 5 wherein said first multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
7. The video processing integrated circuit of claim 6 wherein said second multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
8. The video processing integrated circuit of claim 7 wherein N is three and W is four, wherein each of the multiplexers in the first multiplexing stage is configured to receive each of the buses and deliver a selected one of the buses on its first output terminals, and an associated order modified bits of the selected bus on its second output terminal
9. The video processing integrated circuit of claim 8 wherein each of the multiplexers in the second multiplexing stage is configured to receive a different one of the selected buses delivered by the multiplexers of the first multiplexing stage as well as receive the associated order modified bits of the selected bus and deliver one of the received buses to its associated output terminal.
10. The video processing integrated circuit of claim 9 wherein an output terminal of at least three of the multiplexers disposed in the second multiplexing stage are coupled to input terminals of the first input formatter.
11. A method of operating a video processor, the method comprising:
- receiving N buses each carrying M bits; and
- selectively delivering the M bits of at least one of the N bus lines to one of U input terminals of a first input formatter disposed in the video processor and to one of V input terminals of a second input formatter disposed in the video processor.
12. The method of claim 11 wherein each of the N buses is generated by a different video source.
13. The method of claim 11 wherein each of the N buses is associated with a different RGB or YUV component of a same video source.
14. The method of claim 11 further comprising:
- receiving output signals supplied by the first multiplexing stage; and
- delivering a selected ones of the received signals to first and second input formatters.
15. The method of claim 14 wherein said first multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
16. The method of claim 15 wherein said second multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
17. The method of claim 16 wherein N is three and W is four, the method further comprising:
- configuring each of the multiplexers in the first multiplexing to receive each of the buses and deliver a selected one of the buses on its first output terminals, and an associated order modified bits of the selected bus on its second output terminal.
18. The method of claim 17 wherein N is three and W is four, the method further comprising:
- configuring each of the multiplexers in the second multiplexing stage to receive a different one of the selected buses delivered by the multiplexers of the first multiplexing stage as well as to receive the associated order modified bits of the selected bus and deliver one of the received buses to its associated output terminal.
19. The method of claim 18 wherein an output terminal of at least three of the multiplexers disposed in the second multiplexing stage are coupled to input terminals of the first input formatter.
20. A video processing integrated circuit comprising an output stage, said output stage further comprising:
- first multiplexing stage configured to receive N buses generated by the video processing integrated circuit, each bus carrying M bits of video signals, wherein said multiplexing stage is further configured to selectively deliver the M bits of at least one of the N bus lines to one of U output terminals of the video processing integrated circuit.
21. The video processing integrated circuit of claim 20 wherein each of the N buses carries a different component of an RGB video signal.
22. The video processing integrated circuit of claim 20 wherein each of the N buses carries a different component of an YUV video signal.
23. The video processing integrated circuit of claim 20 further comprising:
- a second multiplexing stage configured to receive output signals supplied by the first multiplexing stage and deliver a selected ones of the received signals to output terminals of the video processing integrated circuit.
24. The video processing integrated circuit of claim 23 wherein said first multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
25. The video processing integrated circuit of claim 24 wherein said second multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
26. The video processing integrated circuit of claim 25 wherein N is three and W is three, wherein each of the multiplexers in the first multiplexing stage is configured to receive each of the N buses and deliver a selected one of the buses on its first output terminals, and an associated order modified bits of the selected bus on its second output terminal.
27. The video processing integrated circuit of claim 26 wherein each of the multiplexers in the second multiplexing stage is configured to receive a different one of the selected buses delivered by the multiplexers of the first multiplexing stage as well as receive the associated order modified bits of the selected bus and deliver one of the received buses to its associated output terminal.
28. A method of operating a video processor, the method comprising:
- receiving N buses generated by the video processing integrated circuit, each bus carrying M bits of video signals;
- selectively delivering the M bits of at least one of the N bus lines as output signals of a first multiplexing stage.
29. The method of claim 28 wherein each of the N buses carries a different component of an RGB video signal.
30. The method of claim 28 wherein each of the N buses carries a different component of an YUV video signal.
31. The method of claim 28 further comprising:
- receiving output signals supplied by the first stage;
- delivering a selected ones of the received output signals of the first stage to output terminals of the video processing integrated circuit.
32. The method of claim 31 wherein said first multiplexing stage includes W multiplexers each having select terminals controlled by a software controlled register.
33. The method of claim 32 wherein said delivering a selected ones of the received output signals of the first stage to output terminals of the video processing integrated circuit is carried out via a second multiplexing stage that includes W multiplexers each having select terminals controlled by a software controlled register.
34. The method of claim 33 wherein N is three and W is three, wherein each of the multiplexers in the first multiplexing stage is configured to receive each of the N buses and deliver a selected one of the buses on its first output terminals, and an associated order modified bits of the selected bus on its second output terminal.
35. The method of claim 34 wherein each of the multiplexers in the second multiplexing stage is configured to receive a different one of the selected buses delivered by the multiplexers of the first multiplexing stage as well as receive the associated order modified bits of the selected bus and deliver one of the received buses to its associated output terminal.
Type: Application
Filed: Jul 14, 2005
Publication Date: Jan 19, 2006
Applicant: Greenforest Consulting, Inc (Cupertino, CA)
Inventors: James Louie (Daly City, CA), Menq Shyu (Cupertino, CA)
Application Number: 11/182,101
International Classification: H04L 12/56 (20060101); H04N 9/64 (20060101);