Difference between revisions of "SHIP Version 5"

From Serious Documentation
Jump to: navigation, search
(The SHIPBridge Protocol)
(Redirected page to SHIPv5)
 
(32 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<onlyinclude>
+
#REDIRECT [[SHIPv5]]
SHIP Version 5 (SHIPv5) is currently in beta, and scheduled for production release early Q3'14 and includes many new capabilities:
 
* Over-the-wire updates (SPI/UART/USB) via built-in bootloader
 
* Major communications enhancements, including the SHIPBridge Protocol with firmware updates and data movement over USB/SPI/UART
 
* Larger font support and enhanced text placement with "textframe" objects
 
* Language translation manager, including MS Excel translation import/export
 
* Build configuration manager for single project/multiple output
 
* Improved scripting performance, floating point support, and numerous new functions
 
* Runtime drawing on "canvas" objects
 
</onlyinclude>
 
== The SHIPBridge Protocol ==
 
SHIP Version 4 had various Modbus protocols included for basic data exchange between the host and the SIM.  This protocol was available over SPI and USB. A proprietary protocol over USB enabled updating of the GUI Cargo from SHIPTide, but engine updates had to be performed in various platform-specific ways, sometimes involving a JTAG programmer.
 
 
 
The SHIPBridge Protocol, included in SHIP Version 5 (SHIPv5), is a new protocol developed by Serious for communications between the SIM and attached host.  It has the following key features:
 
* Light, efficient protocol
 
* Can run over USB, UART, SPI, and in the future, TCP/IP
 
* Remote file access over-the-wire without a file system stack on the host
 
* Firmware, cargo, and boot loader updates over-the-wire
 
* Rich data type exchange over-the-wire
 
* No cost, portable reference source code to be published for the "host" side
 
 
 
== The SHIPv5 Boot System and Over-the-Wire Updates ==
 
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:
 
# '''Paddle''', a very tiny (<8kB) stage 0 boot, which loads and runs Tug, the next stage. 
 
#* 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 of the boot serial flash.
 
# '''Tug''', a bootloader application that includes the SHIPBridge protocol over UART/SPI/USB.
 
#* On most SIMs, two copies of Tug (primary and backup) are stored in a fixed locations in serial flash
 
#* On most SIMs, Tug is loaded by Paddle into RAM and run from RAM
 
#* Tug (via SHIPBridge) allows you to update Paddle, Tug, 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 but merely by making SHIPBridge remote calls
 
# '''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 Tug.
 

Latest revision as of 05:11, 17 August 2018

Redirect to: