AT90SC
4
Flash Program Memory
•Page size of 128 bytes
•Minimum endurance of 10K write/erase cycles
•Data retention for a minimum of 40 years
The AT90SC contains up to 64K bytes of downloadable
Flash memory for program storage. Since all instructions
are 16-bit words, the Flash is organized as 32K x 16. The
Flash memory is read-only except during the program
download mode. This mode is selected by setting a bit in
the memory control I/O register.
Once the Flash memory is loaded, a security feature dis-
ables the download function, making the writing of the
Flash impossible.
EEPROM User Memory
•Erasure and Writing:
- Byte-by-byte
- Bit mode
- Page mode (128 bytes per page)
•Minimum endurance of 250K write/erase cycles
•Data retention for a minimum of 40 years
The user memory is organized as up to 32K x 16. A write
mode bit in the memory control register selects byte by
byte or page mode. During the write cycle, a bit is set in the
memory control register, disabling pending write opera-
tions. When the write cycle is finished, this bit is cleared
and an interrupt request is generated.
In addition, the AT90SC features a pseudo bit mode which
allows individual bits to be overwritten (one to zero).
Bit Addressable Memory
The 64 bytes of bit addressable memory are found in the
last 128-byte page of the EEPROM address space and
represent the first 64 bytes of this page.
OTP Memory
The 64 bytes of OTP (One-Time Programmable) Memory
are found in the last 128-byte page of the EEPROM
address space and represent the last 64 bytes of this page.
Cryptoprocessor
The cryptoprocessor is a 16-bit crypto engine dedicated to
performing fast encryption or authentication functions. It is
based on a parallel RISC architecture allowing most
instructions to be performed in a single clock cycle. The
crypto engine can run in parallel with the microcontroller.
An internal 16 x 16 multiplier provides 32-bit results within
one cycle.
The cryptoprocessor runs on its own internal clock.
The cryptoprocessor ROM stores the program code which
contains the following catalog of functions:
•Reset and self test
•Random Number Generation
•Exponentiation with CRT (241 to 1024)
•Exponentiation without CRT (241 to 1024)
•DSA
RAM Memory Sharing
The cryptoprocessor and the AVR share the RAM memory
as follows: when the cryptoprocessor is inactive, the entire
RAM can be accessed by the CPU. When the cryptopro-
cessor is active, the shared RAM is not accessible by the
CPU.
Operational Modes
The AT90SC features two operational modes:
•A supervisor mode with a privileged access to data,
active when code is executed from the supervisor
memory
•A user mode with data access restrictions, active when
code is executed from EEPROM user memory
The supervisor and user locations are programmed in I/O
registers.
In user mode, direct read and write access to I/O registers
and EEPROM is not allowed. Furthermore, a programma-
ble zone in the RAM can be reserved for supervisor mode.
Any attempt to access the I/O, EEPROM or reserved RAM
area generates a maskable interrupt.
Also, any jump to the supervisor zone in user mode gener-
ates a non-maskable security interrupt. The AT90SC
provides a supervisor call instruction to branch at a defined
vector address of the supervisor zone.
This powerful hardware solution is specially designed to
ensure full separation between applications. It provides
secure protection against program dumping and secure
data access control.