Introduction; Device Boot Sequence - Texas Instruments Concerto F28M36 Series Technical Reference Manual

Table of Contents

Advertisement

www.ti.com
6.1

Introduction

The master subsystem and control subsystem, each has an independent boot ROM associated with it, as
shown in the memory map. Each ROM has a bootloader programmed in it by TI which is executed when
the device is powered ON, and each time the device is reset. The bootloader is used as an initial program
to load application on to device RAM through any of the bootable peripherals or configured to start
application in flash if any.
The master subsystem has 64KB of boot ROM, which will be referred to as M-Boot ROM. The control
subsystem has 64 KB of boot ROM which will be referred to as C-Boot ROM. The M3 CPU acts as the
master device and can control the booting process of C28x, so M-Boot ROM is also referred to as master
boot ROM and C-Boot ROM is referred to as the control subsystem boot ROM. As explained in the Resets
section of the System Control and Interrupts chapter, whenever the device is powered up or reset by an
external reset, the master subsystem – the Cortex M3 CPU will begin executing code from M-Boot ROM.
As will be explained in this chapter master Boot ROM will bring the control subsystem out of reset and
C28x PU will begin executing code in the control subsystem Boot ROM.
This chapter explains the boot procedure followed by both M-Boot ROM and C-Boot ROM, when executed
and how it enables users to load application code on to device or start a user application in flash.
6.2

Device Boot Sequence

The boot sequence is described below:
The factory default bootloader runs on each subsystem and initializes the system so that it will be able
to download user application through one of the booting peripherals on to device RAMs or starts the
application in respective flash memories.
The control subsystem is held in reset on power up and M-Boot ROM brings the control subsystem out
of reset.
C-Boot ROM, after performing the needed device initialization, puts the C28x CPU core in IDLE mode.
C-Boot ROM supports various IPC commands to allow the master subsystem application to control
how C-Boot ROM should boot.
When the device is set to boot from flash via the GPIO boot pins, M-Boot ROM brings the control
subsystem out of reset so that C-Boot ROM can run and branches to the master subsystem flash
application start address.
When the device is set to boot from RAM, M-Boot ROM brings the control subsystem out of reset and
branches to the master subsystem RAM start address.
When the device is set to boot from any of the bootable master subsystem peripherals, M-Boot ROM
will bring the control subsystem out of reset and looks for boot commands/data from the respective
master subsystem peripherals.
C-Boot ROM does not start its application until/unless commanded to do so by the master subsystem
application using an IPC command, even when there is a valid application present in C-Flash.
M-Boot ROM only allows C-Boot ROM to start; it does not dictate how C-Boot ROM should boot the
control subsystem. It is up to the master subsystem application to control how the control subsystem
should boot. The master subsystem application can do so by using any of the C-Boot ROM supported
IPC commands.
Booting protocols are explained below for both M-Boot ROM and C-Boot ROM. On C-Boot ROM, this
device supports legacy C28x-style booting and on M-Boot ROM, this device supports LM3S9B96-style
booting.
It is possible for the master subsystem application to boot the control subsystem using one of the
methods below :
– Load the application that the control subsystem has to RUN on to shared RAM, and use IPC
command to ask C-Boot ROM to branch to the shared RAM location.
– Use one of the available IPC commands to ask C-Boot ROM to boot from the control subsystem
flash.
– Use one of the available IPC commands to ask C-Boot ROM to boot from the control subsystem
peripherals.
SPRUHE8E – October 2012 – Revised November 2019
Submit Documentation Feedback
Copyright © 2012–2019, Texas Instruments Incorporated
Introduction
ROM Code and Peripheral Booting
579

Advertisement

Table of Contents
loading

Table of Contents