Difference between revisions of "SHIPv5 Boot System"

From Serious Documentation
Jump to: navigation, search
Line 14: Line 14:
 
#* [[SHIPEngine]] also includes [[Protocol:SHIPBridge|SHIPBridge]], including the data services
 
#* [[SHIPEngine]] also includes [[Protocol:SHIPBridge|SHIPBridge]], including the data services
 
#* Some files on some platforms cannot be upgraded while [[SHIPEngine]] is running, for example the [[SHIPEngine]] firmware on RX-based SIMs.  All files can be updated by taking the SIM offline and rebooting into [[SHIPTug]].
 
#* Some files on some platforms cannot be upgraded while [[SHIPEngine]] is running, for example the [[SHIPEngine]] firmware on RX-based SIMs.  All files can be updated by taking the SIM offline and rebooting into [[SHIPTug]].
 +
 +
[[Category:SHIPv5 Boot System]]

Revision as of 14:30, 8 November 2016

Starting in SHIPv5 all SIMs now have a multi-stage boot loader process. This enables the SIM's firmware and data to be upgraded in "offline" mode (when the GUI is not running) or, in some cases, in "online" mode in the background while the GUI is still operating.

The bootloader has these elements/phases:

  1. SHIPPaddle, a very tiny (<16kB) stage 0 boot, which loads and runs SHIPTug (the next stage of boot)
    • On RX600-based SIMs, Paddle occupies the reset vector and the top 8kB of RX program flash
    • On SH/RZ-based SIMs, Paddle occupies the first 8kB or 16kB of the boot serial flash.
  2. SHIPTug, a bootloader application that includes the SHIPBridge protocol over UART/SPI/USB.
    • SHIPPaddle loads and transfers control to SHIPTug on every system reboot
    • On most SIMs, SHIPTug is loaded by SHIPPaddle into RAM and run from RAM
    • On most SIMs, two copies of SHIPTug (primary and backup) are stored in a fixed locations in serial flash
    • SHIPTug (via SHIPBridge) allows you to update SHIPPaddle, SHIPTug, SHIPEngine, Cargo, and more over-the-wire and from SHIPTide
    • Similarly Tug (via SHIPBridge) allows you over-the-wire to access/read/write any file system on the SIM, including plugged in USB thumb drives and SDCards, from your host controller without your host controller having a USB or File System stack via SHIPBridge messages
  3. SHIPEngine, the actual GUI rendering engine for your cargo data file
    • SHIPEngine also includes SHIPBridge, including the data services
    • Some files on some platforms cannot be upgraded while SHIPEngine is running, for example the SHIPEngine firmware on RX-based SIMs. All files can be updated by taking the SIM offline and rebooting into SHIPTug.