
GR716-DS-UM, May 2019, Version 1.29
500
www.cobham.com/gaisler
GR716
51.2
ROM Architecture
51.2.1 Logical division of Boot ROM
This section describes the top-level structure of the Boot ROM. The design is logically divided in
three main parts:
•
Processor module initialization
•
Standby mode
•
Load sequence
Processor
Module
Initialization
Standby
Mode
Load
sequence
Boot from memory
or internal failure
Boot from remote
Time-out
Time-out or Failure
Power-on reset
Continue with ASW
(Set WDG Timer to wdg_timeout_boot)
(Set WDG Timer to
wdg_timeout_remote)
(Set WDG Timer to wdg_timeout_app)
(Set WDG Timer to wdg_timeout_restart
when failure has been triggered)
Figure 90.
Boot ROM to-level architecture
The
Processor Module Initialization
sequence is triggered by reset condition. It is responsible for ini-
tializing and self-testing of on-chip instruction and data memory, writing the boot report. Processor
module initialization has a mostly linear execution path, meaning that a minimum number of branch
decisions which depend on system external factors are made. Initialization sequence is directly fol-
lowed by the standby mode or load sequence.
The
Standby mode
is entered when the GR716 microcontroller is configured via bootstraps to be con-
figured remotely via external interface, for example SpW, SPI, UART, etc. The watchdog timer is ini-
tialized.
The
Loading sequence
is responsible for validating, loading and executing an ASW image residing in
application storage memory (ASM) or RAM. After the ASW load the ASW will be executed.