Almost all smartphones on the market seem to use a distinct LCD as their display, though most use an ARM processor with a GPU from one of a relatively (compared to the screens) small number of companies (PowerVR from Imagination, Mali, Adreno from Qualcomm, etc). When a company goes about designing a smartphone, I assume their choice of LCD isn't restricted by their choice of SoC (and therefore GPU).

So, once they have chosen their SoC, how do they interface their LCD and GPU? Is there a standard protocol? They don't use HDMI under the hood, so what is it? If they wanted to take for example this display(chosen for no particular reason) and use this driver (purely based on recommendation by aforementioned display), where would they start? Is engineering an interface a whole difficult task by itself?

I have seen a few different interfaces mentioned while researching this before, for example:

  • SPI - this isn't fast enough to drive 1080p@60, which many smartphones provide
  • i80 - this doesn't provide 8 bits per colour as far as I can tell, but moreover I can't find a "standard" description of this interface
  • various parallel rgb interfaces which aren't very well documented.

I feel as though this gap in my understanding in part comes from incomplete datasheets, Chinese datasheets I can't understand or datasheets behind paywalls. How can I gain more understanding on this topic? Or do I need to be "in the business" to even start?

Any advice or guidance for further understanding is appreciated.

  • \$\begingroup\$ en.wikipedia.org/wiki/FPD-Link usually just called "LVDS", I believe \$\endgroup\$
    – pjc50
    Mar 15 '17 at 21:50
  • \$\begingroup\$ I know that the Nexus 10 Display (the one with crazy resolution) uses eDP - embedded display port. The retina display in the iPad also uses eDP. (see en.wikipedia.org/wiki/DisplayPort#eDP) \$\endgroup\$
    – Arsenal
    Mar 15 '17 at 21:52
  • \$\begingroup\$ There are quite a few. MIPI defined DBI/DPI/DSI at least. Also there are non-standard multi-cycle DPI (8 bit per cycle, 3 cycle per pixel) and LVDS. SPI is mostly for low cost only, but sometimes is used as control bus. I80/Sys80 is a varient of DBI and it can provide RGB888 color. The example you gave looks like RGB888 DBI and DSI dual mode controller \$\endgroup\$ Mar 15 '17 at 22:57
  • \$\begingroup\$ What is this "distinct" characteristic that almost all smart phones have in common? Are you implying they all have the same screen? \$\endgroup\$ Mar 16 '17 at 6:07
  • \$\begingroup\$ No - the opposite. Every phone seems to have a different screen (while perhaps having the same GPU/SoC), in my experience at least. \$\endgroup\$
    – Ell
    Mar 16 '17 at 10:10

iPhones have used MIPI-DSI (MIPI interface). This is designed for low power (very low voltage swing and low power modes). It also has a version for cameras MIPI-CSI.

There are other similar interfaces around as mentioned by other posters.

These modern interfaces for mobile devices typically use very low voltage swing (+/- 200mV for MIPI). Run at high speed >1Gbps per lane and only have a few signal lines. They are designed to be able to refresh an LCD screen at 60Hz or more and millions of 24-bit pixels. Low power is an important aspect to provide long battery life.

The complex display driver is usually on the LCD/OLED glass itself or there would be many thousands of connections required.

  • \$\begingroup\$ I suppose there is no way a mere mortal can get access to those specifications can they? \$\endgroup\$
    – Ell
    Mar 18 '17 at 23:52
  • \$\begingroup\$ I don't think so - as far as I know you have to belong to the MIPI Alliance for MIPI. \$\endgroup\$ Mar 19 '17 at 0:54

A lot of SoC has built in LCD Controllers and this is documented in the datasheets. A TFT-LCD controller typically has 1 pin for each bit + H_SYNC, V_SYNC and CLK. Ie. RGB888 (24-bit) has 8 data pins for Red, 8 data pins for Green and 8 data pins for Blue, in total 24 pins for transferring color. In addition you have separate pins for the touch screen controller and backlighting.

To try to make things easier for mobile devices, the MIPI Alliance are defining several industry standards such as MIPI DSI for Display interface and MIPI CSI for Camera interface. I'm not really familiar with this, but I believe these standards are used in many of todays smart phones.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.