39. ROM (Flash Memory for Code Storage)
(1) Matching the Bit Rates
When the
RX210 is activated in boot mode, the bit rate of the SCI is automatically adjusted to match that of the host. On
completion of this automatic bit rate adjustment, the
RX210 transmits the value 00h to the host. On subsequent correct
reception of the value 55h sent from the host, the
RX210 enters the state of waiting for a host command for inquiry or
(2) Waiting for a Host Command for Inquiry or Selection
This state is for inquiries on mat size, mat configuration, the addresses where mats start, the state of support etc., and for
selection of the device, clock mode, and bit rate. The
RX210 receives a programming/erasure state transition command
issued by the host and then enters the state to determine whether ID code protection is enabled or disabled. For the
(3) Judging ID Code Protection
This state is for determining whether ID code protection is enabled or disabled. The control code and ID code written in
ROM are used to determine whether ID code protection is enabled or disabled. When enabled, the state of waiting for the
ID code is entered. When disabled, the user mat and data mat are completely erased, and the state of waiting for
programming and erasure commands from the host is entered. For details on the control code and ID code, see
section(4) Waiting for an ID Code
This state is for waiting for the control code and ID code to be sent from the host. The control code and ID code sent by
the host are compared with the code stored in ROM, and the state of waiting for programming and erasure commands
from the host is entered if the two match. If they do not match, the next transition is back to the state of waiting for an ID
code. However, if the ID codes fail to match three times in a row and also the state of protection is authentication method
1, the ROM is completely erased, and the state of waiting for an ID code is entered again. A reset is required to release
the system from this state due to non-matching ID codes. For details on the control code and ID code, see
section(5) Waiting for a Host Command for Programming or Erasure
In this state, programming and erasure proceed in accordance with commands from the host. In response to the reception
of a command, the
RX210 enters the state of waiting for the data to use in programming, the state of waiting for
specification of the erasure block to be erased, or the state of executing the processing of commands, such as read and
check.
When the
RX210 receives a programming selection command, it enters the state of waiting for the data to use in
programming. After the host has issued the programming selection command, the process continues with the address
where programming is to start and then the data for programming. Setting of FFFF FFFFh as the address where
programming is to start indicates the completion of programming, and the next transition is from the state of waiting for
the data to use in programming to the state of waiting for programming and erasure commands.
When the
RX210 receives an erasure selection command, it enters the state of waiting for specification of the erasure
block to be erased. After the host has issued the erasure selection command, the process continues with the number of the
erasure block to be erased. Setting of FFh as the number of the erasure block indicates the completion of erasure, and the
next transition is from the state of waiting for specification of the erasure block to the state of waiting for programming
and erasure commands. Since the user mat, user boot mat and data mat are all completely erased during the interval
between booting up in boot mode and transition to the state of waiting for programming and erasure commands,
execution of erasure is not necessary unless data newly programmed in boot mode is to be erased without a further reset.
Other than the programming and erasure commands, commands from the host for execution in this state include those for
sum checking of the user mat and user boot mat, blank checking (to confirm erasure), reading from memory, and
acquiring status information.