feature article
Subscribe Now

Embedded Display Control Applications Using FPGAs

Embedded LCD Control Applications Requirements

Graphical LCD displays are increasingly designed into demanding embedded display control and video applications such as Human Machine Interfaces (HMI) for industrial consoles, vending machines, automotive and marine dashboard clusters, household appliances, medical devices and gaming machines.  A key requirement for efficient controller design is effective solution scaling as well as optimization for both cost and performance.  Designers often need to integrate third-party display control solutions into their own designs, which require IP that is stable and easy to integrate with designers’ own IP modules and processor interfaces.

System designers are turning to the use of programmable logic devices such as FPGAs to implement advanced LCD graphics solutions in their designs in order to support multiple display and processor types, as well as to respond to changing market standards and requirements within a compressed window of opportunity.  Following are some of the important general requirements for embedded LCD control applications, and how FPGAs excel in meeting these requirements:

Support Multiple Displays

The display market does not have well-defined standards for driving interfaces and timing, so a great deal of flexibility is needed for a single video controller to drive different displays.  Programmable logic provides the flexibility to implement different bit-streams, depending on the application, to configure FPGAs to support multiple LCD displays in the same video controller.

Solution Scaling

HMI applications range from ultra low cost consumer applications such as vending machines, to complex industrial, marine and automotive consoles.  FPGAs provide seamless support, with the same IP building blocks, for both small, low cost FPGA devices driving low cost QVGA TFT and very high performance, high resolution WSXGA displays with an 80MHz video clock.

Advanced Graphics with Low Processor Horsepower

HMI applications require reading multiple frame buffer areas into different layers and blending them into a single image, enabling complex graphics effects within the display controller.  Programmable logic platforms, due to the inherent parallelism of the FPGA, are able to implement at low cost what would otherwise have required an expensive processor.

Graphics Acceleration

Sophisticated HMI applications require advanced image compositing and functionalities ranging from basic BitBlt to advanced Porter-Duff alpha blending operations.  FPGA-based acceleration engines make it easy to implement graphics acceleration functions.

Efficient Design Capability

Programmable logic delivers efficient design capabilities via programmable registers in the FPGA that are designed to offer full control of the display driving signals and to adapt the display drivers to different standards such as TTL or LVDS, to change the clock frequency, to change different control signal timings and different color bit organizations.  FPGAs make it simple to integrate TFT LCD Timing controllers (TCON) and to control the display power-up sequence and other analog circuits.

Flexibility and Protection from Obsolescence

HMI applications depend on high-bandwidth frame buffer memory controllers to support external memory devices for frame buffer storage.  Programmable logic allows powerful memory controllers to be implemented for different kinds of memory, protecting the manufacturer’s investment in the FPGA platform.  Processor obsolescence is another area where programmable logic provides significant investment protection.  The flexibility of FPGAs allows processor interfaces to be implemented via USB, SPI or custom interfaces, making it easy to change processors or integrate into the designer’s own choice of processors.

Fig 1.jpg

Figure 1 – Embedded Display Control Device Implemented in an FPGA

Figure 1 shows a typical embedded display control device implemented in an FPGA.

The embedded display control device, in this case the FPGA, communicates with a host system or processor for control tasks, and with a touch-screen LCD panel for display output.  It interfaces to DDR memory for display page storage and refresh and with video input streams for real-time external video overlay.  The host system monitors status and issues commands to the FPGA.  The FPGA implements advanced functions for video control, graphics acceleration, touch-screen interface control, video input scaling, cropping and positioning and peripheral expansion via SPI.

Application:  Vending Machine Graphical User Interface

Vending has gone through significant changes over the past few years.  Traditional vending machine user interfaces used to be based on low cost character LCD displays and electromechanical pushbuttons.  New generations of innovative free-standing vending machines now incorporate colorful displays with on-screen text and overlaid video.  They incorporate built-in LCD panels that function as touch screens, displays for showing product information, intuitive interfaces and advertising.  Machines are still evolving to integrate different payment systems and Graphical User Interfaces. 

This application example profiles a product by a leading European manufacturer of free-standing vending machines for hot beverages.  The manufacturer needed an innovative new graphic LCD touch screen HMI to be configured for product selection and video advertising.

Requirements

The application demanded a programmable video controller supporting a wide range of touch screen TFT with different graphical resolutions for a scalable family of machines, with an integrated touch screen controller.  The manufacturer needed a low cost embedded interface; support for Picture in Picture, initial Splash Image rendition, OSD (On Screen Display) overlay controlled by external microcontroller and overlaid video for product advertising.

Reasons for Choosing an FPGA Implementation

Vending machine manufacturers can have product lines that range from very low cost machines with character based or “text” LCD displays to ultra high-end machines with large TFT LCD screens capable of displaying video.  The machines typically are based on microcontrollers for simple I/O and payment system interfaces.  The manufacturer’s main problem was to retain the same controller for all vending machines for all display types.  Figure 2 depicts the manufacturer’s traditional and advanced display interface requirements.

Fig 2.jpg

Figure 2 – Traditional & Advanced Vending Machine Display Interfaces

In this case the manufacturer used the Lattice LCD-Pro Evaluation kit and its FPGA- based plugin reference design examples to quickly develop their own SPI drivers to manage graphics peripherals.  The video controller was used to drive low cost TFT 16:9 ratio 480×272 pixels.  A/D, D/A controller IP was used to interface to low cost 4-wire analog resistive touch screens.  Embedded NOR Flash was used to store bitmap application pictures and frames.  SPI slave IP created a low cost interface between the FPGA-based video platform and embedded microcontroller.  An FPGA-based enhanced graphics accelerator was used for BitBlt sprites and texts to reproduce bitmaps at different locations on the screen.  The BitBlt technique also was used to create embedded bitmap animation for advertising.

Why not use a microcontroller with an integrated video controller?

The main advantage of a System-On-Chip (SoC) with integrated video controllers is very low cost.  However, driving different types of TFT requires interfaces not offered as standard on a SoC.  Further, the integrated video controllers do not fit all LCD models, and additional logic is needed.  Application software often needs to be changed significantly from that supplied as reference.  Also, the integrated video controllers in the SoCs that were available did not have enough horsepower to support the manufacturer’s need to integrate advertising animation.

Why not use a low cost PC, such as one based on the Intel Atom Processor?

An embedded PC platform was tested by the manufacturer.  The main requirement for a vending application is optimal performance and the best support for the advertising system.  An Intel Atom platform proved to be too expensive.  Moreover, it required a complete rewrite of the application software in the manufacturer’s existing machine lines with embedded text display.  Embedded PC platforms were not suited for driving small TFT displays, making them unsuitable for use as a single standardized platform for machine lines with small to large displays.  Moreover, an x86 platform with the traditionally available OS was not considered stable enough for a largely unattended application continuously operated by the public.

In this example the manufacturer was able to meet their engineering objectives of multiple display type support, solution scaling and advanced graphics through the flexibility and performance of FPGA implementations, while meeting the business objectives of cost optimization and time to market through the use of configurable intellectual property cores implemented in an FPGA.

Evaluation Platforms Can Enable Rapid Prototyping, Accelerated Product Development

Evaluation Platforms are becoming an essential part of the designer’s tool kit for embedded display applications.  HMI system designers today want evaluation platforms to ship complete with advanced touch-screen video graphics, plug-in reference designs, color touch-screen display, color video camera, power supply and cables.  Along with reference designs, designers also prefer transparent access to all FPGA resources.  Software support requirements include support for creating custom screens using Microsoft Visual Studio, and support for overlaid BitBlt graphics that can coexist with operating systems like Windows CE via tools like DirectDraw. The manufacturer in the vending machine application example used the Lattice LCD-Pro Advanced Video Graphics Controller, an embedded display evaluation platform based on the LatticeECP2 FPGA, for rapid prototyping and accelerated product development.

Summary

Embedded display applications require support for multiple displays and processors while catering to long equipment life cycles in industrial, automotive and vending machine environments.  Designers often require the product line to scale from ultra-low cost to high-end HMI applications.  Programmable logic provides the flexibility and compute power required to render the high-performance graphics required in sophisticated embedded display control applications without relying on expensive processors and software.  Modularity and configuration options enable effective solution scaling and optimization for either cost or performance.

Leave a Reply

featured blogs
Jul 3, 2020
[From the last episode: We looked at CNNs for vision as well as other neural networks for other applications.] We'€™re going to take a quick detour into math today. For those of you that have done advanced math, this may be a review, or it might even seem to be talking down...
Jul 2, 2020
Using the bitwise operators in general -- and employing them to perform masking, bit testing, and bit setting/clearing operations in particular -- can be extremely efficacious....
Jul 2, 2020
In June, we continued to upgrade several key pieces of content across the website, including more interactive product explorers on several pages and a homepage refresh. We also made a significant update to our product pages which allows logged-in users to see customer-specifi...

Featured Video

Product Update: New DesignWare® IOs

Sponsored by Synopsys

Join Faisal Goriawalla for an update on Synopsys’ DesignWare GPIO and Specialty IO IP, including LVDS, I2C and I3C. The IO portfolio is silicon-proven across a range of foundries and process nodes, and is ready for your next SoC design.

Click here for more information about DesignWare Embedded Memories, Logic Libraries and Test Videos

Featured Paper

Cryptography: A Closer Look at the Algorithms

Sponsored by Maxim Integrated

Get more details about how cryptographic algorithms are implemented and how an asymmetric key algorithm can be used to exchange a shared private key.

Click here to download the whitepaper

Featured Chalk Talk

Selecting the Right MOSFET: BLDC Motor Control in Battery Applications

Sponsored by Mouser Electronics and Nexperia

An increasing number of applications today rely on brushless motors, and that means we need smooth, efficient motor control. Choosing the right MOSFET can have a significant impact on the performance of your design. In this episode of Chalk Talk, Amelia Dalton chats with Tom Wolf of Nexperia about MOSFET requirements for brushless motor control, and how to chooser the right MOSFET for your design.

More information about Nexperia PSMN N-Channel MOSFETs