1. Field of the Invention
The present invention relates to a portable device having a video output, and in particular a portable device having a video output suitable for connection to an external display screen.
2. Discussion of the Related Art
It has been proposed to provide such portable devices with output interfaces for connecting them to external display screens, such as televisions. Such a display 118 is shown in
In such portable devices, whereas a display may be driven by the processor on the portable device platform, an external display generally uses a video encoder to generate the output video. This is partly due to the format of the video signal, which is generally one of the few most common formats accepted by television input video ports, and also due to the power level of the output video signal to an external display, which is generally much higher than that of a built-in display due to the much larger distance that the signals are transmitted, and to give high noise immunity.
Interface 214 between the portable device platform 204 and video encoder 206 is a parallel interface, allowing the relatively high data rates required for providing a video signal to an external display. For example, for providing an analog television output, the parallel interface could have between 8 and 10 data lines, allowing 8 to 10 bits to be transmitted at the same time, or for a digital television output, the parallel interface could have between 12 and 24 data lines.
However, this arrangement has a number of drawbacks. The positioning of the video encoder 206 is limited to being relatively close to the portable device platform 204, because such parallel interfaces are not suited to connections over larger distances. Furthermore, such parallel solutions require a large number of pins on both the portable device platform 204 and the video encoder 206, and have relatively high power consumption.
An alternative solution would be to integrate the video encoder 206 on the portable device platform. However, such a solution has the problems due to heat dissipation, as heat generated by the video encoder can have a negative influence on the rest of the platform, for example by increasing gate transfer times and increasing current leakage. This solution also presents technological compatibility constraints. Furthermore, if a new video encoder design is to be implemented, for example to update a portable device for a new video technology standard, the whole platform would need to be rebuilt.
Embodiments of the present invention aim to provide a portable device having improved video output circuitry when compared to the prior art.
According to one aspect of the present invention, there is provided circuitry for providing an output video signal from a portable device to an external display, the circuitry comprising a processor block comprising an image processor, and a video encoder block comprising a video encoder for providing the output video signal to the external display, the processor block and the video encoder block being connected to each other by a serial interface arranged to provide image date from the processor block to the video encoder, the serial interface, comprising at least one data lane and at least one first clock lane, wherein the video encoder block comprises a first input connected to the at least one data lane for receiving image data and a second input connected to the at least one first clock lane for receiving a first clock signal, and wherein at least one of the video encoder block and the processor block comprises a third input arranged to receive a control signal for controlling data flow over the serial interface the control signal indicating when said video encoder is ready to receive image data from the processing block via said serial interface.
According to one embodiment of the present invention, the third input is connected to a second clock line for receiving a second clock signal generated by a clock generation circuit.
According to one embodiment of the present invention, the clock generation circuit is provided in the video encoder block, the processor block comprises the third input for receiving the second clock signal, and wherein the first clock signal is generated based on the second clock signal.
According to another embodiment of the present invention, third input is connected to the at least one data lane, the at least one data lane being bidirectional, the control signal being transmitted from the video encoder block to the portable device platform on the at least one data lane, wherein the video encoder block comprises a pixel buffer for receiving the image data received via the serial interface.
According to another embodiment of the present invention, the video encoder block comprises receive circuitry arranged to receive data transmitted on the at least one data lane and to transmit the control signal via the serial interface to the processor block when data in the pixel buffer has been read by the video encoder, the control data indicating to the processor block that more image data can be transmitted.
According to another embodiment of the present invention, each of the data lanes comprises two wires, data being transmitted serially and differentially on the two wires.
According to yet another embodiment of the present invention, serial interface comprises two or more data lanes and one clock lane.
According to one aspect of the present invention, there is provided a portable device comprising an output port for providing a output video signal to an external display and the above circuitry arranged to generate the output video signal.
According to an embodiment of the present invention, the portable device further comprises a built-in display and wherein the video encoder block is coupled to the built-in display, such that the serial interface can be used for transmitting video data to either the external display or the built-in display.
According to one aspect of the present invention, there is provided a method of transmitting image data from a processor block to a video encoder block of a portable device, the video encoder block comprising a video encoder arranged to output a video signal to an external display, the method comprising transmitting image data serially from the processor block to the video encoder; transmitting a first clock signal from the processor block to the video encoder; and transmitting a control signal between the processor block and the video encoder, the control signal controlling data flow of the image data.
The foregoing and other purposes, features, aspects and advantages of the invention will become apparent from the following detailed description of embodiments, given by way of illustration and not limitation with reference to the accompanying drawings, in which:
With reference to
The portable device platform 302 comprises an image processor 308, connected to a DSI (display serial interface) transmit block 310, the image processor 308 and block 310 connected together by data bus 312. The video encoder block 304 comprises a DSI receive block 314, which communicates with DSI transmit block 310 of the portable device platform via a serial connection comprising one or more serial data lanes 316 and a clock lane 318. The terms “data lane” and “clock lane” are used herein to designate a single serial connection, by which individual bits of data are transmitted serially, one at a time. These lanes may each comprise a single wire, or more preferably, in order to help compensate for noise, they may each comprise two differential wires. In the latter case, a “1” is for example transmitted as a pulse on one of the wires, and a “0” is for example transmitted as a pulse on the other wire. Thus a single bit of data or a clock signal is transmitted on a single lane, using one or two wires.
Serial data lanes 316 for example comprise two data lanes, allowing twice the data rate when compared to a signal serial data lane. In a parallel connection, the bits of a symbol, for example 8 or 12 bits of data, are all transmitted at the same time, on 8 or 12 separate lanes, whereas in a serial connection, data bits forming each data symbol are transmitted serially, one after the other, on the same lane. For example, in the serial interface, a first byte could be sent on the first data lane, then a second byte on the second data lane, followed by a third byte on the first data lane etc. However, the same byte is not spread across many data lanes. Thus whereas a parallel connection suffers problems due to differences in propagation delays between the parallel lanes, and thus transmission speeds and distances are limited, serial interfaces, even comprising multiple data lanes, do not suffer from these drawbacks.
The clock lane 318 is used to transmit timing information allowing the serial data signal to be correctly received at DSI receive block 314. For example, a clock signal indicating the timing edges of the data signal is transmitted via the clock lane 318. The DSI receive block 314 is connected to a video encoder 320, via a data bus 322. The video encoder 320 generates and outputs a video signal on line 324 having the appropriate format for output by the output port 306 to the external display.
The serial data lanes 316 and the clock lane 318 combined with the DSI transmit block 310 and receive block 314 provide a serial interface between the portable device platform 302 and the video encoder block 304, by which video signals are transmitted. The serial interface in this example complies with the MIPI (mobile industry processor interface) DSI standard, which is a display serial interface protocol aimed for use when video data is transferred from an image processor to the built-in LCD display on a portable device. The DSI interface is not intended for use in providing video data for display on an external display to a video encoder, however, according to the embodiments described here, the DSI interface is adapted to such a use. This is advantageous as it allows existing technology on the portable device platform to be used for providing data to the video encoder. Furthermore, the same serial interface could be used to provide data to either the built-in display or the external display. In alternative embodiments, the DSI interface could be replaced by any suitable serial interface.
Although not shown in
Examples of the display serial interface adapted for use for transmitting video data between the portable device platform and the video encoder block will now be described with reference to
With reference to
As illustrated, the portable device platform 402 comprises a video timing generator (VTG) block 407, which provides a horizontal synchronization signal Hsync, and a vertical synchronization signal Vsync on separate lines to the image processor 308. The image processor 308 is connected to the DSI transmit block 310 by a data bus 312. Image processor 308 also provides a timing signal to a bit clock phase locked loop (PLL) 409, which provides a bit clock signal to the display serial interface transmit block 310. The DSI transmit block 310 is connected to the DSI receive block 314 by the one or more serial data lanes 316 and a clock lane 318 as described above. Thus the portable device platform comprises one or more output pins 316a and an output pin 318a for outputting the data and clock respectively, and the video encoder block comprises one or more input pins 316b and an input pin 318b, for receiving the data and clock respectively.
In the video encoder block 404, a Sync extract block 415 is provided, which receives part of the data signal provided on data lanes 316 to the DSI receive block 314, and extracts synchronization information, and provides the horizontal synchronization signal Hsync signal and the vertical synchronization signal Vsync signal to the video encoder 320 on lines 416 and 417. In particular, the synchronization information is transmitted with the video data over the DSI interface. However, the precision of the positioning of this synchronization signal issued by the DSI receive block 314 may not be sufficient, and therefore the synchronization signals are preferably re-positioned, or resynchronized by the sync extract block 415 with respect to a pixel clock (used to time the output video signal as described in more detail below), and thus match the requirements of the video encoder 320. The video encoder function block 320 comprises a video encoder format block 418 and a physical layer 419.
The format block 418 formats, in a digital form, the video signal received on line 322 from the DSI receive block 314 with respect to the required video format, the synchronization signals 416 and 417, and the requirements of the physical layer block 419. For example, this formatting operation can be performed to provide analog video signals of type PAL, SECAM or NTSC, providing a composite video (CVBS) connection, an RGB connection, an S-video connection, a SCART connection, etc., or a digital video signal of type DVB, ATSC, or ISDB (Integrated services digital broadcasting (Japan)), connected by a digital interface, such as HDMI, DVI etc.
The physical layer 419 implements the final transformations on the signal to present it on the output video port 306. For analog video signals, this implies a digital to analog conversion and amplification. For digital TV, this implies implementing the physical layer protocol, which can require, for example, serialization, differential signalling or other functions for conveying the video and associated data. This could, for example, require the generation of a specific clock for data serialization (DVI or HDMA).
A pixel clock generation block 421 is provided in the video encoder block 404, although in alternative embodiments this block could be provided in the portable device platform 402 or elsewhere. Block 421 generates a pixel clock which is provided to the portable device platform on clock lane 423. Thus the video encoder block 404 comprises an output pin 423a and the portable device platform comprises an input pin 423b for transmitting and receiving the pixel clock respectively. In the portable device platform 402, the pixel clock is provided to the VTG block 407, the image processor 308, and to the bit clock PLL block 409. The PPL generates the bit clock signal for using on the clock lane 318 of the DSI interface, using the pixel clock as a reference. The bit clock frequency is preferably chosen such that it allows the transmission of all of the information contained in one pixel during a pixel clock period. The frequency will thus depend on the number of data lanes. For example it will be twice as high if there is only one data lane than if there are two data lanes.
Within the video encoder block 404, the pixel clock is provided to the sync extract block 415, allowing repositioning the synchronization signals with respect to the pixel clock as described above, to the video encoder format block 418 and to the physical layer 419. Blocks 418 and 419 are clocked by the pixel clock, such that the video signal output on line 324 to the output port 306 and to an external display is timed by the pixel clock. In particular, the pixel clock corresponds to the pixel frequency, in other words the frequency that pixel data is transmitted. Assuming an external display having 1280 active column pixels and 720 active line pixels, this corresponds to a pixel frequency of 74.25 MHz, and thus the pixel clock would have substantially this frequency, and a period of approximately 13 ns. To allow a range of different formats to be supported, the pixel clock frequency is adjustable in some embodiments. For example, the pixel clock is at approximately 13.5 MHz for standard analog television transmission, but at much higher rates for digital television such as HDTV.
The display serial interface standard allows for a video mode and a command mode of operation. The embodiment of
With reference to
The serial interface includes a mechanism for preventing buffer underflow or overflow, as will be described in more detail below. In this embodiment no pixel clock is provided between the video encoder 504 and the portable device platform 502, which advantageously saves one port on the portable device platform 502 and the video encoder block 504.
The image processor 308 comprises a buffer 512, which outputs image data on data bus 312 to an input of the DSI transmit block 310. Buffer 512 is any memory associated with the image processor that stores image data to be transmitted via the serial interface. In some embodiments it could be the main memory of the device, accessible via a DMA (direct memory access) unit (not shown), or could be one or more registers forming an output port of the image processor. A DMA unit could be under the control of the image processor, or directly controllable by DSI transmit block 310.
The output of the DSI receive block 314 on line 522 is provided to a pixel buffer 523 which comprises memory for buffering image data received on the DSI interface. The pixel buffer 523, for example, stores an entire image, for example data, representing an image of 1280 by 720 pixels, although in alternative embodiments it could store more than a signal image, or part of an image. The pixel buffer 523 outputs the data on line 524 to the video encoder 320. The video encoder 320 comprises a format block 518 and a physical layer 519. A pixel clock generation block 521 generates a pixel clock which is provided to the VTG 507, the format block 518 and the physical layer 519. The VTG provides the horizontal and vertical synchronization signals Hsync and Vsync on lines 516 and 517 respectively to the format block 518, which are timed based on the pixel clock.
The embodiment of
The DSI receive block 318 responds by sending an acknowledge image packet 604, which confirms that the image, or the current part of the image, was correctly received. This is followed by a BTA packet 606, returning control of the data lanes to the DSI transmit block 310.
The DSI transmit block 310 then sends a further BTA packet 608 to the DSI receive block 318, which is interpreted as being a tearing effect request, in other words a request to check whether all of the data from the image buffer 523 has been read. Thus before the DSI transmit block 310 is able to transmit a new image to the DSI receive block 314, and in particular to over write image data in the pixel buffer 523, a BTA packet 608 is transmitted giving control of the data lanes 316 to the DSI receive block 314, and allowing it to delay transmission of the next packet of image data until the image data has been read by the format block 518. The video encoder block comprises circuitry for verifying when the data has been read from the pixel buffer 523, and once data has been read, the DSI receive block 314 transmits a TE (tearing effect) packet 610, which indicates that all data has been read from the pixel buffer 523, followed by a BTA packet 612, which indicates to the DSI transmit block 310 that the next image can be sent. The BTA packet 612 triggers in the DSI transmit block 310 generation of a signal on line 526 to the buffer 512, indicating to buffer 512 that more data can be transferred on data bus 312 to the DSI transmit block 312 and transmitted on the serial interface. Alternatively, the BTA packet 612 could assert a flag in the DSI transmit block 312, indicating to buffer 512, for example via a DMA, that more data can be provided for transmission on the serial bus.
Thus circuitry has been described that is arranged to provide a video output from a portable device to an external display, wherein the video output signal for the video display is generated by a video encoder block which is connected to a processor block, for example the portable device platform 302, by a serial interface, on which data is transmitted serially. This has the advantage of reducing the number of pins required in the processor block and the video encoder, and of reducing power consumption when compared to a device having a video encoder connected to a processor block by a parallel interface. It also allows a greater physical separation between the processor block and the video encoder block when compared to a parallel interface, thereby improving heat dissipation, electromagnetic compatibility, and flexibility in terms of design. In particular, the video encoder block could be combined with other functions, such as power regulation, audio production or functions using similar technology and having similar power constraint.
Furthermore, it is particularly advantageous to allow an increased distance between the processor block and the video encoder block in some applications such as mobile telephones, where the video encoder may be better placed close to the display, which may not be very close to the processor block, in this case the mobile device platform.
As described above, the serial interface comprises at least one data lane 316 and at least one clock lane 318. The video encoder block comprises first and second inputs 316b, 318b for receiving image data and a clock transmitted on the data lane and clock lane respectively. Additionally, a further control signal is communicated between the processor block and the video encoder block to control data flow so that the image data is provided at the correct rate. When providing a video output to an external display, there is a risk that the data rate provide by the processor block will not match the rate that the image data is required by the display. Thus one of the video encoder block and the processor block further comprises a third input for receiving a control signal, which is used for flow control. For example, in the embodiment of
As described above, because the serial interface is also suitable for providing a video signal to the internal, built-in display of the portable device, in some embodiments the same serial interface can be used for providing the video to the in-built display and the external display, for example a switch being provided to switch the data to the appropriate block, i.e. to the in-built display or the format block 418, 518, based on which display is controlled. This would allow a further reduction in pins in the processor block. Furthermore, in some embodiments the portable device could be provided with two built-in displays, for example one being a secondary smaller display requiring a lower data rate. In this case, the DSI interface could be used to drive both built-in displays, the secondary display being daisy-chained to the first. Data to the secondary display can be inserted in empty periods between data transmissions to the primary built-in display.
The embodiment described above in relation to
The embodiment described above in relation to
If embodiments are provided with both a pixel clock lane 423 and a pixel buffer 523, then operation in both video mode and command mode is possible, allowing more flexibility. In particular, the video mode better exploits the maximum available data rate on the data lines, whereas command mode facilitates the control of more than one display at a time through the DSI interface. Thus the best mode can be selected depending on the operations to be performed, and in particular which displays need to be driven. The circuitry described in the various embodiments could be incorporated in a wide range of portable devices, including mobile phones, still and/or video digital cameras, PDAs, portable hand-held games consoles, etc.
Whilst a number of particular embodiments have been described above, it will be apparent to those skilled in the art that there are many alternatives and equivalent designs that can be used. For example, any features described above in relation to any of the embodiments could be combined with any other of the above features.
For example, while the embodiments have been described in which the portable device has one or more built-in displays, the portable device does not necessarily comprise a built-in display, and instead video may only be displayed via the output video port 306.
While the particular example of the display serial interface (DSI) standard has been given, any suitable serial interface could be used comprising one or more data lanes on which data is transmitted serially. In the case of the embodiment of
The format of the video signal output from the video encoder block 404, 504 can be any of a number of different video formats, including DVI, HDMI, RGB, CVBS, Y-C, or other formats. The physical layers 419, 519 of the video encoder block are able to provide the signal that can be transmitted over a range of distances, for example for example 2m or more, allowing a relatively high separation between the portable device and the external display.
Having thus described at least one illustrative embodiment of the invention, various alterations, modifications, and improvements will readily occur to those skilled in the art. Such alterations, modifications, and improvements are intended to be within the spirit and scope of the invention. Accordingly, the foregoing description is by way of example only and is not intended as limiting. The invention is limited only as defined in the following claims and the equivalents thereto.
Number | Date | Country | Kind |
---|---|---|---|
07300961.5 | Apr 2007 | EP | regional |