SM39A16M1
8-Bit Micro-controller
16KB with ISP Flash
& 1K+256B RAM embedded
18. In-System Programming (Internal ISP)
The SM39A16M1 can generate flash control signal by internal hardware circuit. Users utilize flash control register, flash
address register and flash data register to perform the ISP function without removing the SM39A16M1 from the system.
The SM39A16M1 provides internal flash control signals which can do flash program/chip erase/page erase/protect
functions. User need to design and use any kind of interface which SM39A16M1 can input data. User then utilize ISP
service program to perform the flash program/chip erase/page erase/protect functions.
18.1 ISP service program
The ISP service program is a user developed firmware program which resides in the ISP service program space. After
user developed the ISP service program, user then determine the size of the ISP service program. User need to
program the ISP service program in the SM39A16M1 for the ISP purpose.
The ISP service programs were developed by user so that it should includes any features which relates to the flash
memory programming function as well as communication protocol between SM39A16M1 and host device which output
data to the SM39A16M1. For example, if user utilize UART interface to receive/Transmit data between SM39A16M1
and host device, the ISP service program should include baud rate, checksum or parity check or any error-checking
mechanism to avoid data transmission error.
The ISP service program can be initiated under SM39A16M1 active or idle mode. It can not be initiated under power
down mode.
18.2 Lock Bit (N)
The Lock Bit N has two functions: one is for service program size configuration and the other is to lock the ISP service
program space from flash erase function.
The ISP service program space address range $3C00 to $3FFF. It can be divided as blocks of N*128 byte. (N=0 to 8).
When N=0 means no ISP function, all of 16K byte flash memory can be used as program memory. When N=1 means
ISP service program occupies 128 byte while the rest of 15.875K byte flash memory can be used as program memory.
The maximum ISP service program allowed is 1K byte when N=16. Under such configuration, the usable program
memory space is 15K byte.
After N determined, SM39A16M1 will reserve the ISP service program space downward from the top of the program
address $3FFF. The start address of the ISP service program located at $3x00 while x is depending on the lock bit N.
Please see section 3.1 program memory diagram for this ISP service program space structure.
The lock bit N function is different from the flash protect function. The flash erase function can erase all of the flash
memory except for the locked ISP service program space. If the flash not has been protected, the content of ISP
service program still can be read. If the flash has been protected, the overall content of flash program memory space
including ISP service program space can not be read. As given in Table 18-1.
Specifications subject to change without notice contact your sales representatives for the most recent information.
ISSFD-M069
Ver C SM39A16M1 7/31/2013
- 95 -