打造国内最大的IC交易平台
技术资料 行业资讯 PDF资料 IC价格 IC替换 缩略语 IC供应 IC采购
为高速安全微控制器DS5002FP直接升级
类别:电子综合  
 
        

    

     叶云燕 DS5002FP高速安全微控制器是为各领域安全糸统应用有一定价值的高集成度芯片,但随着加密安全与防卫技术要求的提高,特别是随着银行、保险、证券等金融领域对防入侵攻击者破坏紧迫感的增强,保证在基于SHA-1算法或其它算法下的安全电子交易,从而要求高速安全微控制器在安全性与灵活性上的应用要深化拓宽并有所突破。为此,只有在配置及特性、配置及模式上将DS5002FP进一步升级,才能满足加密保与安全的需要。应用什么芯片特性进行升级 当今,DS5240DS5250高速安全微控制器是采用了80引脚QFP(扁平封装),其引脚与DS5002FP兼容,是可利为DS5002FP直接升级的高性能产品。这是由于DS5240/DS5250能支持DS5002FP所提供的性能,可直接替代DS5002FP的现有设计,只要在DS5002FP编写的软件上相加修改甚至无需修改即可移植于DS5240/DS5250,从而非但轻松提升系统性能和安全性,同时又为系统增加了DS52400/DS5250所提供的更多特性。用DS52400/DS5250DS5002FP直接升级 与DS5002FP相比, DS52400/DS5250能提供的更多特性:在性能上,3.11 DS5240/DS5250DS5002FP相比具有更高的时钟频率,每机器周期只需要更少的时钟。改进后的流水线内核能够在4个时钟周期内执行一条单字节指令,而DS5002FP则需要12个时钟周期。 3.12 有1kB的指令缓存,降低了程序存储器加密对运行速度的影响。所以在相同时钟频率下,即使采用3-DES(数据加密标准-- Data enryption standard)加密算法,DS5240/DS5250仍然比DS5002FP的性能平均提高2.5倍。 在安全性上,DS5240/DS5250外部程序存储器利用单DES或3-DES加密算法进行自动保护,数据存储器可随意进行加密,DS5002FP—样,加密密钥由内部随机数发生器自动产生、加载。DS5240/DS5250采用独立的程序密钥和数据存储器密钥,对程序存储器用8字节分块加密的方式替代逐字节加密方式,进一步提高了安全性。(1999年,NIST(National institute for standards and technology--国家标准及技术学会)将3-DES指定为过渡的加密标准。3-DES是DES的一个更安全的变形。) 除了DES和3DES外,DS5240/DS5250还包括一个由高性能4096位模运算加速器(MAA)引擎支持1024位公开密钥的幂取模加密运算算法。扩展后的片内向量RAM为1024字节(而DS5002FP只有48字节)提供了更大的空间用于存储一些关键数据或代码,如中断或复位管理等。所谓引擎(Engine)是指软件包中完成特定功能的部分。 为了保护内部和外部存储器,DS5240/DS5250能够在几种条件下触发一个破坏性的复位(DRS)操作。与DS5002FP相同,在SDI(串行数据接口)引脚作用—个信号可以擦除存储器密钥与向量RAM以及任何外部电池备份的存储器。此外,DS5240/DS5250在电池脱离或重新加入电池时也会触发一次DRS。 DS5240/DS5250的可编程回避特性能够防止反复试探型攻击,它会在一个短时间内产生其数量由用户选择的复位。一旦该复位作用,这种安全模式即重复性复位将会对那种反复试探型攻击的响应以增加延迟,其延迟时间由用户选择。根据重复复位的次数,恢复运行的延迟时间会从几秒钟增加到几个小时,甚至几个星期。在这种最高安全级下,DS5240/DS5250在遭受强行侵人时,能在完全擦除内部数据之前,永久性地将其锁定于ROM之内,使之无法使用。 另外一种防止侵入的方法是对所有输出端口写操作加以可选的定时限制。这就增加了侵入者的难度,必须要正确确定加密的指令字节数,才能够向I/O端口写入一个可识别的模扳。 在灵活性上,DS5240/DS5250DS5002FP相比在其内部提供了一套扩展资源,这些资源为实际应用和系统设计提供了极大的灵活性。除lkB向量RAM外,DS5240/DS5250还具有4kB的内部SRAM,可用作程序存储器或数据存储器,而且SRAM中的lkB空间还可用于扩展堆栈。 对于时钟和电源管理,DS5240/DS5250具有DS5002FP所支持的标准停机和空闲模式。时钟倍频电路允许对外部晶振频率进行2倍频或4倍频,能够在较宽的晶振范围内产生指定的时钟,有利于降低外部EMI(电磁干扰)。而在PMM(电源管理模式)下将外部晶振频率除以1024,当器件不需要全速运行操作时有效降低功率损耗。如果在PMM模式下需要快速响应一个串行输人或中断,回切功能能够在响应这些输人时自动恢复全速运行模式。另外,也可以用工作频率近拟为12MHz的内部环形振器替代外部晶振输人,无需等待晶振恢复即可快速退出停机模式。 DS5240的双数据指针增强了外部存储器的数据块拷贝功能。INC DPTR(变址寄存器)指令可以设置活动数据指针递增或递减,用于确定活动数据指针的建立位,从而为紧随特定的数据转移操作自动进行切换。以上是升级后特性的分折,那末这直接升级应要具备什么特殊要求呢? 将DS5002FP设计升级至DSS240/OS5250的特殊要求 虽则DS5240/DS5250几乎保持了DS5002FP的所有特性,但存在以下2个不同点: DS5240/DS5250是通过专用数据总线(BAl4-BA0和BD7-BD0)访问所有外部存储器RAM(或存储器映射I/0)。不支持通过端口0和端口1的地址数据复用总线访问存储器。 DS5240/DS5250不支持可重编程的外设控制器(RPC)模式,为此,如果设计中用到了上述特性(即性能、安全性与灵活性等特性)的任何一点,选用DS5240/DS5250时都需要对原设计进行修改。另外,用DS5240/DS5250替代DS5002FP后通过专用总线访问外部RAM时,需要作一点改动,即需要通过时钟频率分析确认RAM和DS5240/DS5250的兼容性,特别是当DS5240/DS5250运行在DS5002FP最大时钟16MHz以上时尤为重要。升级在软件、存储器与硬件配置上的修改将DS5002FP软件置入DS5240/DS5250 DS5002FPDS5240/DS5250具有相同的指令集,DS5002FP中的绝大多数SFR (特殊功能寄存器)在DS5240/DS5250中保持相同的地址和功能。当然,将DS5002FP的现有软件置入DS5240/DS5250时还需要作一些修改。这里的SFR (特殊功能寄存器)是用来对片内各功能模块进行管理、监视的控制寄存器和状态寄存器存储器配置 通过专用地址总线访问存储器时,DS52002FP和DS5240/DS5250(均是80引脚扁平封装)支持两种类型的外部存储器配置,即多芯片配置与单片配置:多芯片存储器配置结构 见图1所示。图1中DS52002FP的 MSEL引脚连接到Vcc,4个32kB*8SRAM器件与专用总线(BAl4-BA0和BD7-BD0)连接,其中两个器件(由 和 使能)用作64kB程序存储器,另外两个器件(由 和 使能)用这作64kB的数据存储器。选择这种配置需采用下面的SFR(特殊功能寄存器)设置:* ACON.1(AMl)和ACON.0(AM0)设置为O,选择16位寻址模式(与现有软件保持一致)。ACON-地址标记控制寄存器;AM1、AM1均为位功能标记。* MSIZE设置为00h,选择32kB芯片存储容量。注意,该MSIZE只能在ROM装载或用户装载模式下进行设置。* MCON.1(PM)设置为1,选择无分区模式。MCON-模式控制寄存器;PM-位功能标记。*程序存储器自动加密,PBCC.O(TDESE)位用于选择单DES(TDESE=O)或3DES(TDESE=1)程序加密方式。 这一位只能在ROM装载或用户装载模式下进行设置。 *如果需要对数据存储器进行加密,将DMOS.1(C3EE)和DMOS.2(C4EE)设置为l,每一位对应控制一片存储器。单片存储器配置结构 见图2所示中,MSEL引脚接地,单片128kB*SRAM接专用总线(BAl4-BA0和BD7-BD0),该器件(由 使能)用作程序和数据存储器, 、 成为两条附加的地址线A16、A15。 选择这种配置时需采用下面的SFR(特殊功能寄存器)设置:

     *ACON.1(AMl)和ACON.O(AMO)设置为O,选择16位寻址模式(与现有软件保持一致)。*MSlZE设置为XX001001b,选择128kB芯片存储容量。注意,该MSlZE只能在ROM装载或用户装载模式下进行设置。*程序存储器自动加密,PBCC(加宏密/装载控制)。O(TDESE)位用于选择单DES(TDESE=O)或3DES(TDESE=1)程序加密方式。这一位则自在ROM装载或用户装载模式下进行设置。* 数据存储器自动加密。中断处理 DS5240/DS5250以相同方式支持DS5002FP中6个中断源的5个,DS5240/DS5250同样也支持电源失效中断,只是有以下不同:* 电源失效中断向量位于33h而不是2Bh:其优先级(O,最高)保持不变。* 该中断的使能位位于WDCON 5(EPFI)。WDCON-字控制寄存器;EPFI-位功能标记。* 发生电源失效事件的标志位位于WDCON.4(PFI)。WDCON-字控制寄存器;EPFI、 PFI-位功能标记。确定复位源 DS5002FP中, (Power on reset-通电复位)位(PCON.6)在上电复位时被清零,利用软件可以检查这一位的状态以确定复位原因。在DS5240/DS5250中, 位(WDCON.6)完成这一功能,但这一位在上电位复位时被置位(而非清零)。这两位都需要由软件通过定时访问写0来清零。PCON-电源控制寄存器。看门狗控制所有器件具有相同的看门狗功能,但在控制DS5240/DS5250的看门狗电路时需作以下修改和附加操作:* 看门狗使能位位于WDCON.l(EWT)* 看门狗复位位于WDCON.2(RWT)WDCON-看门狗控制寄存器;EWT、RWT-位功能标记。* 发生看门狗定时复位的指示标志位于WDCON.2(WTRF)。与DS5002FP的WTR位不同的是,这一位必须明确地写0才可清除。* DS5240/DS5250提供看门狗中断(中断向量63h)。该中断由EWDI位(EIE.4)控制使能后将在发生看门狗复位之前触发,如果需要也可以通过软件处理看门狗超时。 DS5240/DS5250的WDl一WD0(CKCON.7-6)位用于控制看门狗中断和复位的定时周期,而复位时间与DS5002FP近似相等。CKCON-时钟控制寄存器。随机数发生器 3种型号的随机数发生器(RNG)功能相同。但在DS5240/DS5250中用于指示新的随机数已就绪的标志位位于RAMST.0(RNGF)。DS5240/DS5250产生一个新的随机数大约需要30ms。CRC(循环冗余校验)操作 DS5240/DS5250支持新型CRC-32运算,而用于计算CRC-16值的过程也不相同,即:*DS5240/DS5250没有CRC(Clh)、CRCLow(C2h)和CRCHigh(C3h)寄存器。*在执行CRC-16运算时,首先要将CRCNT(RAMST。1)位清零选择CRC-16模式。然后将CRC数据写入CRCI(Blh)寄存器,至少需要5个机器周期(或在写操作之间执行3次空操作)来保证CRC寄存器的设置时间。数据全部写入后,即可从CRC2:CRCI读出CRC-16的数值。* 清CRC寄存器时不再需要将CRC最低有效字节两次写入引擎。在DS5240中,在CRC2中写入任何数值都可以自动将CRCl、CRC2,CRC3和CRC4清零。CRCl、CRC2,CRC3和CRC4为I/O寄存器。 从以上分析可以看出,由于DS5240/DS5250DS5002FP具有更高的安全性和更高的灵活性及更高的性能指标。所以用DS5240/DS5250DS5002FP直接升级创造了独特的有利条件,只需少量修改即可将软件移植到DS5240/DS5250,轻松的所解决了DS5002FP升级的设计。而这种直接升级是当今高速安全微控制器为深化与拓宽应用一种具有性能价格比较高的必然趋势。 为此列出表1以归了DS5240/DS5250这些新特性和相应的控制SFR(特殊功能寄存器)。