DS5250高速安全微控制器采用80引腳四方扁平封裝(QFP),是DS5002FP的引腳兼容、高性能升級版。從DS5002FP升級到DS5250可提供更高的性能、更嚴(yán)格的安全性和擴(kuò)展的功能集,而無需更改現(xiàn)有的硬件設(shè)計(jì)。
升級的好處包括執(zhí)行速度更快(DS25上高達(dá)5250MHz),改進(jìn)的程序存儲器三重DES加密,以及支持RSA等公鑰加密算法的4096位模塊化加速器引擎。擴(kuò)展的內(nèi)部SRAM、額外的時鐘模式和雙數(shù)據(jù)指針提高了編寫應(yīng)用代碼時的靈活性。為DS5002FP開發(fā)的軟件可以直接移植到DS5250上,只需進(jìn)行極少的更改。
DS5250高速安全微控制器采用80引腳四方扁平封裝(QFP),是DS5002FP的引腳兼容、高性能升級版。由于DS5250支持與DS5002相同的功能集,因此在現(xiàn)有設(shè)計(jì)中可直接替代DS5002FP。為DS5002的DS5250FP端口編寫的軟件,只需很少或無需更改,即可輕松提高系統(tǒng)性能和安全性,同時啟用DS5250的功能(表1)。
性能
與DS5250FP相比,DS5002具有更高的最大時鐘頻率,每機(jī)器周期所需的時鐘更少。其精簡內(nèi)核僅用5002個時鐘周期執(zhí)行單字節(jié)指令,而不是DS12FP的<>個時鐘周期。
1kB指令高速緩存降低了程序存儲器加密對執(zhí)行速度的影響,因此,即使在3DES加密處于活動狀態(tài)的情況下,DS5250的性能也比在相同時鐘頻率下的DS2FP平均提高5.5002倍。
DS5002FP | DS5250 | 特征 |
性能 | ||
16兆赫 | 25兆赫 | 最大時鐘頻率 |
12 | 4 | 每個機(jī)器周期的時鐘數(shù) |
25.2 | 8.4* | 每條指令的平均時鐘數(shù) |
0.63 | 3.9* | 平均MIPS |
安全 | ||
80 位專有算法(單字節(jié)) | 單個 DES 或 3DES(8 字節(jié)塊) | 加密程序存儲器中的數(shù)據(jù)(與程序執(zhí)行并行解密) |
不 | 是的 | 程序和 MOVX 存儲器的單獨(dú)加密 |
沒有 | 4096 位 MAA 引擎(1024 位公鑰模塊化冪運(yùn)算,650 毫秒內(nèi)) | 公鑰加密支持 |
SDI引腳 | SDI引腳:無電池/電池連接;低溫 (< 60°C)** | 破壞性復(fù)位 (DRS) 觸發(fā)器 |
不 | 是(可選) | 端口寫入時的定時訪問 |
48 字節(jié) | 1024 字節(jié) | 矢量內(nèi)存 |
不 | 是的 | 獨(dú)特的激光內(nèi)徑 |
不 | 是的 | 安全裝載機(jī) |
靈活性 | ||
1x,空閑,停止 | 1x,空閑,停止;2倍/4倍(晶體倍增器);除以 1024 (PMM);內(nèi)部環(huán)形振蕩器 | 振蕩器時鐘模式 |
1 | 2 | 串行端口 |
2 | 3 | 定時器 |
2 | 6 | 外部中斷 |
不 | 硬件和加載器ROM | 閃存支持 |
不 | 是的** | 實(shí)時時鐘 |
*零拉伸周期,16位標(biāo)準(zhǔn)尋址模式。 **僅限 100 引腳 QFP。 |
安全
DS5250外部程序存儲器采用單DES或3DES加密自動保護(hù);數(shù)據(jù)存儲器可以選擇加密。與DS5002FP一樣,加密密鑰由板載隨機(jī)數(shù)發(fā)生器自動生成和加載。DS5250使用單獨(dú)的密鑰進(jìn)行程序存儲器和數(shù)據(jù)存儲器加密,對程序存儲器使用8字節(jié)塊加密,而不是逐字節(jié)加密,從而提高安全性。
DS5250提供4kB內(nèi)部SRAM,可用作程序存儲器、數(shù)據(jù)存儲器或兩者兼而有之;1kB的SRAM可以選擇用作擴(kuò)展堆棧。
除DES和3DES外,DS5250還包括一個4096位MAA引擎,以支持RSA等公鑰加密算法。擴(kuò)展的片內(nèi)矢量RAM(1024字節(jié),DS48FP為5002字節(jié))為存儲關(guān)鍵數(shù)據(jù)和代碼(如中斷和復(fù)位處理程序)提供了更多空間。
為了保護(hù)內(nèi)部和外部存儲器,DS5250根據(jù)多種條件觸發(fā)破壞性復(fù)位(DRS)。與DS5002FP一樣,SDI引腳上的信號清除存儲器加密密鑰、矢量RAM和任何外部電池備份存儲器。此外,DS5250在電池丟失或新連接時觸發(fā)DRS。
DS5250可編程規(guī)避功能可防止在短時間內(nèi)出現(xiàn)異常(用戶選擇)復(fù)位次數(shù)的試錯攻擊。啟用后,此安全模式會根據(jù)用戶選擇的時間以遞增的延遲響應(yīng)重復(fù)的重置攻擊。根據(jù)遇到的重置次數(shù),恢復(fù)執(zhí)行之前的延遲時間可能會從幾秒鐘增加到幾小時再到幾周。在最高安全級別下,DS5250可以響應(yīng)暴力攻擊,將執(zhí)行永久鎖定在ROM內(nèi),使器件在完全擦除之前無法使用。
針對攻擊的另一種對策是對所有輸出端口寫入進(jìn)行可選的定時訪問限制。這增加了攻擊者必須正確加密才能將可識別模式寫入 I/O 端口的指令字節(jié)數(shù)。
靈活性
與DS5250FP相比,DS5002提供了一組擴(kuò)展的片內(nèi)資源,提高了應(yīng)用和系統(tǒng)設(shè)計(jì)的靈活性。除了增加1kB的矢量RAM外,DS5250還提供4kB的內(nèi)部SRAM,可用作程序存儲器、數(shù)據(jù)存儲器或兩者兼而有之。在該內(nèi)部SRAM中,1kB可以選擇用作擴(kuò)展堆棧。
在時鐘控制和電源管理方面,DS5250提供了DS5002FP支持的標(biāo)準(zhǔn)停止和空閑模式以外的許多功能。時鐘倍頻器允許外部晶體頻率在內(nèi)部增加一倍或四倍,從而擴(kuò)大用于產(chǎn)生給定時鐘速率的晶體范圍,并允許降低外部EMI。電源管理模式 (PMM) 將外部晶體頻率除以 1024,以在不需要全速運(yùn)行期間降低功耗。如果在PMM期間需要對串行輸入或中斷進(jìn)行快速響應(yīng),則可以使用回切功能自動恢復(fù)到全速操作以響應(yīng)這些輸入。工作頻率約為12MHz的內(nèi)部環(huán)形振蕩器代替外部晶體輸入,允許快速退出停止模式,而無需等待晶體振蕩器預(yù)熱。
將設(shè)計(jì)升級到DS5250的要求
DS5250支持DS5002FP的大部分功能。例外情況是:
DS5250使用專用數(shù)據(jù)總線(BA14–BA0和BD7–BD0)訪問所有外部存儲器(或存儲器映射I/O)。不支持使用端口 0 和 2 上的多路復(fù)用地址/數(shù)據(jù)總線訪問內(nèi)存。
程序內(nèi)存緩存允許盡可能快地執(zhí)行程序。因此,與緩存操作自然相關(guān)的填充和停止可能會影響 I/O 計(jì)時或位爆炸操作。
DS5250程序存儲器空間的安全增強(qiáng)可能會使組交換和/或存儲器覆蓋方案復(fù)雜化。具體而言,程序加密密鑰修改器寄存器寄存器等功能以及程序和數(shù)據(jù)存儲器使用不同的加密方案可能需要重新評估DS5002FP的存儲器映射操作方法。
DS5250不支持可重編程外設(shè)控制器(RPC)模式。
如果設(shè)計(jì)依賴于這些特性之一,則可能需要對DS5250進(jìn)行一些細(xì)微的修改。
此外,通過專用數(shù)據(jù)總線訪問的外部RAM的時序要求從DS5002FP到DS5250略有變化。交流時序分析將驗(yàn)證RAM和DS5250是否兼容,特別是當(dāng)DS5250的運(yùn)行頻率超過DS5002FP的最大16MHz時。
將軟件從DS5002FP移植到DS5250
DS5002FP和DS5250共享相同的指令集,DS5002FP中的大多數(shù)特殊功能寄存器(SFR)在DS5250中具有相同的位置和功能。但是,將現(xiàn)有的DS5002FP軟件移植到DS5250時,可能需要進(jìn)行一些更改。
內(nèi)存配置
DS5002FP和DS5250(僅限80引腳QFP)通過專用地址總線訪問存儲器時支持兩種類型的外部存儲器配置。
圖1中的多芯片配置顯示了連接到V的MSEL引腳抄送以及連接到專用總線的四個 32kB x 8 SRAM 器件。兩個器件(由/CE2和/CE1啟用)映射為64kB的程序存儲器,另外兩個器件(由/CE4和/CE3啟用)映射為64kB的數(shù)據(jù)存儲器。要選擇此配置,請使用以下 SFR 設(shè)置:
ACON.1 (AM1) 和 ACON.0 (AM0) 應(yīng)設(shè)置為 0 以選擇 16 位尋址模式(以便與現(xiàn)有軟件兼容)。
MSIZE應(yīng)設(shè)置為00h以選擇32kB芯片大小。請注意,此寄存器只能在ROM加載器模式或用戶加載器模式下設(shè)置。
MCON.1 (PM) 應(yīng)設(shè)置為 1 以選擇非分區(qū)模式。
程序存儲器自動加密;PBCC.0 (TDESE) 位選擇是將單個 DES (TDESE = 0) 還是 3DES (TDESE = 1) 加密用于程序存儲器。此位只能在ROM加載器模式或用戶加載器模式下設(shè)置。
如果需要數(shù)據(jù)存儲器加密,DMOS.1 (C3EE) 和 DMOS.2 (C4EE) 應(yīng)設(shè)置為 1。這些位中的每一個都控制一個內(nèi)存設(shè)備上的加密。
圖1.在多芯片存儲器配置中,外部程序和數(shù)據(jù)存儲器分布在四個32kB x 8 SRAM器件上。
在單芯片配置中(圖 2),MSEL 引腳接地,單個 128kB x 8 SRAM 器件連接到專用總線。該器件(由/CE1啟用)用于程序和數(shù)據(jù)存儲器,/CE2和/CE3轉(zhuǎn)換為兩條附加地址線。要選擇此配置,應(yīng)使用以下 SFR 設(shè)置:
ACON.1 (AM1) 和 ACON.0 (AM0) 應(yīng)設(shè)置為 0 以選擇 16 位尋址模式(以便與現(xiàn)有軟件兼容)。
MSIZE應(yīng)設(shè)置為XX001001b,以選擇128kB的芯片大小。請注意,此寄存器只能在ROM加載器模式或用戶加載器模式下設(shè)置。
程序存儲器自動加密;PBCC.0 (TDESE) 位選擇是將單個 DES (TDESE = 0) 還是 3DES (TDESE = 1) 加密用于程序存儲器。此位只能在ROM加載器模式或用戶加載器模式下設(shè)置。
數(shù)據(jù)存儲器會自動加密。
圖2.在單芯片存儲器配置中,一個128kB x 8 SRAM器件可容納外部程序和數(shù)據(jù)存儲器。
處理中斷
DS5002FP支持的5250個中斷源中有5250個在DS<>上得到相同的支持。DS<>也支持電源故障中斷,但有以下區(qū)別:
電源故障中斷向量位于 33 小時而不是 2Bh;其優(yōu)先級(0,最高)保持不變。
此中斷的使能位位于 WDCON.5 (EPFI) 處。
指示已發(fā)生電源故障事件的標(biāo)志位于 WDCON.4 (PFI) 中。
確定復(fù)位源
在DS5002FP上,上電復(fù)位時,/POR位(PCON.6)被清除,軟件可以檢查該位以確定復(fù)位的原因。在DS5250上,POR位(WDCON.6)執(zhí)行此功能;但是,當(dāng)上電復(fù)位發(fā)生時,會設(shè)置(未清除)此位。這兩個位都需要軟件重置定時訪問寫入。
DS5250精簡內(nèi)核僅用5002個時鐘周期執(zhí)行單字節(jié)指令,而不是DS12FP的<>個時鐘周期。
看門狗控制
看門狗在所有部件上的功能相同。但是,在DS5250上控制看門狗時,以下更改和添加適用:
使能看門狗位位于WDCON.1 (EWT)。
看門狗復(fù)位位位于WDCON.2 (RWT)。
指示已發(fā)生監(jiān)視程序計(jì)時器重置的標(biāo)志位于 WDCON.2 (WTRF)。與DS5002FP上的WTR位不同,該位必須顯式寫入0才能清除。
DS63提供看門狗中斷(矢量5250h)。如果由 EWDI (EIE.4) 位啟用此中斷,則會在看門狗復(fù)位發(fā)生之前觸發(fā),從而允許根據(jù)需要由軟件處理看門狗超時。DS1上的WD0–WD7 (CKCON.6-5250)位控制看門狗中斷和復(fù)位的時間段,但復(fù)位時間默認(rèn)為與DS5002FP大致相同的值。
隨機(jī)數(shù)生成
隨機(jī)數(shù)寄存器(RNR)在所有三個部分中的功能相同。但是,在DS5250上,指示新隨機(jī)數(shù)準(zhǔn)備就緒的位位于RAMST.0(RNRF)。在DS5250上生成新的隨機(jī)數(shù)所需的時間約為30ms。
CRC運(yùn)營
DS5250支持新的CRC-32計(jì)算功能,計(jì)算CRC-16值的過程不同。
DS5250沒有CRC (C1h)、CRCLow (C2h)和CRCHigh(C3h)寄存器。
要執(zhí)行 CRC-16 計(jì)算,首先通過將 CRCNT (RAMST.16) 位清除為 1 來選擇 CRC-0 模式。然后將CRC數(shù)據(jù)值寫入CRC1(B1h)寄存器,允許至少五個機(jī)器周期(或?qū)懭胫g的三個NOP)使CRC寄存器有時間建立。寫入最后一個值后,可以從CRC16:CRC2讀取CRC-1值。
不再需要將CRC LSB字節(jié)寫回引擎兩次以清除CRC寄存器。在DS5240上,將任何值寫入CRC2會自動將CRC1、CRC2、CRC3和CRC4清除為0。
裝置 | 主動123T |
定時器2 |
CKCON.5 (T2M): 時鐘模式選擇 P1.1 (T2EX), P1.0 (T2): 外部輸入 T2CON: 標(biāo)志和模式控制 T2MOD: 模式控制 TH2, TL2: 定時器計(jì)數(shù) MSB/LSB RCAP2H, RCAP2L: 定時器捕獲 MSB/LSB |
數(shù)據(jù)指針 |
DPH1、DPL1:數(shù)據(jù)指針 1 MSB/LSB DPS:數(shù)據(jù)指針選擇 |
CRC: 32 |
RAMST.1 (CRCNT): CRC 16/32 Select CRC1, CRC2, CRC3, CRC4: I/O 寄存器 |
德斯發(fā)動機(jī) |
UDESC:DES 發(fā)動機(jī)控制 UDESD:DES 發(fā)動機(jī)數(shù)據(jù)輸入/輸出 |
模塊化加速器發(fā)動機(jī) |
MAS0、MAS1:操作大小選擇 MACT:加速器控制寄存器 |
用戶加載器模式 |
ACON.6 (ULME): 用戶加載模式啟用 PEK1、PEK2、DEK、ROMST、PBCD、 PBCC:加密/加載控制 |
激光內(nèi)徑 | BP:引導(dǎo)加載程序密碼寄存器 |
晶體倍增器和電源管理 | PMR:電源管理寄存器 |
擴(kuò)展的 1kB 堆棧 |
ESP:擴(kuò)展堆棧指針 RAMST.5、RAMST.4:RAMST1 模式選擇 |
輸出端口定時:訪問保護(hù) | RAR.3 (TAP):定時:訪問端口啟用 |
結(jié)論
DS5250的許多新功能無需任何硬件更改即可使用。表 2 總結(jié)了這些新功能以及控制這些功能的 SFR。
DS5250的特性集比DS5002FP提高了安全性、性能和靈活性。只需稍作改動即可將軟件移植到DS5250,輕松升級DS5002FP設(shè)計(jì)。
將設(shè)計(jì)升級到 100 引腳 QFP
DS5250采用100引腳QFP封裝,除了與DS80FP引腳對引腳兼容并支持DS5002FP存儲器接口模式外,具有5002引腳封裝的所有特性。它還提供以下功能:
擴(kuò)展的內(nèi)存接口選項(xiàng),高達(dá) 4MB 的程序和數(shù)據(jù)存儲器以及 4MB 的內(nèi)存映射 I/O
板載 RTC(由外部 32.768kHz 晶體驅(qū)動),可用于時間戳和自行設(shè)定的到期日期
溫度傳感器,可觸發(fā) DRS 以響應(yīng)低溫攻擊
額外的SDI輸入引腳,可連接到中斷,以實(shí)現(xiàn)軟件控制的篡改響應(yīng)
外部閃存的硬件支持(DS5250包含加載器ROM支持)
審核編輯:郭婷
-
微控制器
+關(guān)注
關(guān)注
48文章
7553瀏覽量
151426 -
存儲器
+關(guān)注
關(guān)注
38文章
7492瀏覽量
163842 -
QFP
+關(guān)注
關(guān)注
1文章
31瀏覽量
14600
發(fā)布評論請先 登錄
相關(guān)推薦
評論