
TS80C51RA2/RD2
TS83C51RB2/RC2/RD2
TS87C51RB2/RC2/RD2
7. TS83C51RB2 / RC2 / RD2 ROM
7.1 。 ROM结构
该TS83C51RB2 / RC2 / RD2 ROM存储器被分成三个不同的阵列:
代码数组。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 16/32/64字节。
加密阵列。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 64个字节。
签名数组:。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 4个字节。
7.2 。 ROM锁系统
该计划锁定系统,当编程,保护片上打击盗版软件的程序。
7.2.1 。 7.2.1 。加密阵列
内ROM阵列为64字节加密阵列的最初编程(所有的FF ) 。每次一
在程序校验字节进行寻址, 6根地址线用于选择加密阵列的一个字节。这
字节是那么异NOR'ed ( XNOR )的代码字节,创建一个加密的校验字节。的算法,以
加密阵列中的未编程状态,将返回代码在其原始的,未经修改的形式。
当使用加密阵列,其中一个重要因素需要考虑。如果一个字节的值是FFH ,验证
字节会产生加密字节值。如果一大块代码( >64字节)不编程,一
验证程序将显示加密阵列的内容。由于这个原因,所有未使用的字节码
应与随机值进行编程。这将确保程序保护。
7.2.2 。程序锁定位
锁定位时,按表28.编程将用于片上提供不同级别的保护
代码和数据。
表28.程序锁定位
程序锁定位
安全
水平
1
LB1
U
LB2
U
LB3
U
保护内容
没有程序锁功能启用。验证码仍然会通过加密进行加密
如果阵列编程。从外部程序存储器的回报MOVC指令执行
非加密的数据。
从外部程序存储器执行MOVC指令从取禁用
字节代码从内部存储器, EA采样并锁存复位。
同级别1+验证禁用。
此安全级别仅适用于51RDX2设备。
2
3
P
U
U
P
U
U
U:未编程
P:编程
7.2.3 。签名字节
该TS83C51RB2 / RC2 / RD2包含4个工厂编程的签名字节。要阅读这些字节,执行
在8.3节中描述的过程。
7.2.4 。验证算法
请参阅8.3.4 。
版本C - 2001年3月6日
51