Multi-Processor Vital Controller for Wayside Rail Application

Client – multi-national railway equipment and signaling company

Capabilities Demonstrated

  • Embedded hardware design

  • Embedded software design
  • FPGA design
  • System-on-module (SOM) integration

  • Safety critical / Vital


The client’s existing Vital Controller design had become quite dated. Manufacturing was becoming less predictable (and with high overhead) due to a steady stream of parts availability issues driven by parts obsolescence.

In addition, the client’s application software team needed more compute power and access to modern external interfaces.

Perhaps the most challenging requirement for the new controller was to retain 100% backwards compatibility with the existing passive backplane and suite of custom IO Boards while rolling in new features and capabilities.

A technology refresh was clearly in order and set as a high priority. The client evaluated several potential design services firms and chose AppliedLogix to provide the embedded engineering expertise they needed.


The delivered embedded solution is a safety-critical multi-processor controller board with low-level board support software.

A full set of customer requirements for their next generation Vital Controller were iteratively gathered and captured directly within the customer’s documentation management system. A few of the key functional requirements included:

  • Integrate an ARM Cortex A8-based commercial off the shelf SOM running Linux for the non-safety critical processing.
  • Implement FPGA-based softcore processor for running legacy safety critical (Vital) code.
  • Include an ARM Cortex M4-based microcontroller and RTOS.
  • Maintain existing parallel bus interfaces to their legacy IO Boards.
  • Add new IO interface capabilities including 10/100 Mbit Ethernet, USB, SD card slot, and proprietary high-speed serial IO.

The new multi-processor Vital Controller design implementation underwent a rigorous design and validation process:

  • Extensive use of component derating worksheets.
  • Worst-case AC timing analysis for all digital bus interfaces – quantitatively verified.
  • Device thermal analysis and passive heatsink selection for the large FPGA devices.
  • Extensive use of Hyperlynx Boardsim and Linesim CAE tools to optimize signal integrity (end result – very low levels of crosstalk, overshoot, and ringback).
  • Shock/vibe testing.
  • 4-corner environmental testing.

In addition to the board schematic design and PCB layout, the AppliedLogix team also developed and delivered:

  • VHDL based development of multiple FPGAs with functional verification using ModelSim and Riveria-PRO.
  • Linux and RTOS Board support packages, device drivers, and interface libraries.
  • Redundant high-speed serial communication links for live fail-over and event logging.
  • Power-on self-test and Factory Acceptance Test software.
  • Design, validation, and manufacturing documentation.
  • Sustaining Engineering support post-launch.


  • The AppliedLogix team operated in a highly integrated manner with the client’s development team. This tight coupling between the teams enabled AppliedLogix to introduce and infuse new methodologies and advanced design tools into the client’s engineering ecosystem.
  • With the AppliedLogix team developing the device drivers and interface libraries, the client was able to focus on the application software, accelerating the overall development.
  • AppliedLogix was able to deploy a range of specialized engineering resources in a focused and cost-effective manner. AppliedLogix team members hit the ground running, executed their designs, and then moved on to other projects. This allowed the client to benefit from subject matter experts, while avoiding the cost of carrying unique expertise full-time within their organization.

System Overview

This multi-processor controller board resides within a custom card cage and supports both Vital and non-Vital communications with a distributed, interlocking control system.

Software designed and developed

  • VHDL code – multiple FPGAs
  • Board Support Package
  • Linux and RTOS Device Drivers
  • Event Logger
  • Inter-processor communications
  • Power on self-test (POST)
  • Factory acceptance test (FAT)

Hardware designed and developed

  • 10-layer, controlled impedance PCB
  • SOM (TI AM3354) integration
  • Xilinx 7-series FPGAs
  • STM32 family Microcontroller
  • 10/100 Mbit Ethernet
  • SD card
  • USB 2.0
I want help with my embedded system