王 勋,罗尹虹,丁李利,张凤祁,陈 伟,郭晓强,王 坦
(西北核技术研究院 强脉冲辐射环境模拟与效应国家重点实验室,陕西 西安 710024)
为了克服上述问题,本文提出基于概率统计的MCU信息提取方法。首先计算翻转逻辑地址间的按位异或(XOR)和汉明距离(dH),然后根据XOR和dH的统计结果提取器件的MCU模板,最后利用该模板提取SEU实验数据中的MCU信息。
一般存储器的内部物理地址和外部逻辑地址均为2进制表征,且宽度一致,尽管高低位排序可能不一致,但两种地址的位之间存在一一映射关系。因此,一些关于物理地址位的统计结果对逻辑地址位同样适用。首先分析物理相邻的地址特点,对于2进制编码的内部物理地址,相邻地址之间编码一般是从全0到全1顺序排列(表1第1列)。若2个相邻地址之间进行按位取异或,可得到表1中第2列给出的XOR参数,则XOR参数中1的个数即是2个相邻地址之间的汉明距离,定义为dH参数。由表1可知,相同的dH对应的XOR相同。此外,dH越小其出现次数越多,出现次数随dH近似呈指数速度降低,对于n位二进制地址空间,不同dH出现的次数占比PdH为:
表1 2进制编码地址相邻的特点Table 1 Binary coding of adjacent cell
(1)
上述分析是连续物理地址之间的XOR和dH统计结果,由于MCU中的翻转位是物理地址相邻的,因此也具有上述特点,即相同dH下地址之间的XOR是相同的。
考虑到SEU的随机性,从概率上讲,独立的SEU地址等价于从地址空间中逐个随机选取的地址;若SEU实验数据中不含MCU,则统计翻转地址间的XOR和dH时,相同dH对应的XOR不是唯一的,而是随机的,相同dH下所有的XOR近似为平均分布。当SEU实验数据中有MCU引入时,在相同的dH下,会引入MCU地址之间的XOR结果,使得对应MCU的XOR比例高于其他XOR值。相同dH下出现次数明显多于其他值的XOR包含了表1中描述的物理地址相邻关系。若将这些出现次数明显多于其他值的XOR提取出来,作为判断物理地址相邻关系的MCU模板,则可利用该MCU模板从SEU实验数据中提取MCU信息。
通过SEE实验收集SEU实验数据,上述方法基于SEU实验数据中含有MCU的假设。MCU占比越多,物理相邻地址之间计算得到的dH和XOR统计结果越多,因此能提取的MCU模板越多。此外,为降低非相邻SEU之间计算得到的dH和XOR出现次数,在同一测试周期内的SEU地址之间计算XOR和dH,因为不同测试周期的SEU是由不同的粒子入射导致,其物理地址相邻的概率极低。同一测试周期内计算XOR和dH不仅降低了噪声,同时也大幅降低了计算量,缩短了计算时间。本文按照不同测试周期组织数据,每个测试周期的数据包括本测试周期内测得的SEU地址和数据。
在每个测试周期内,任意两个SEU逻辑地址之间按位异或得到XOR,通过统计XOR中“1”的个数得到对应的汉明距离dH。从而在每个测试周期得到1组由XOR和dH两个参数组成的数组。
将所有测试周期中得到的XOR和dH结果合并。将合并后的结果按dH的大小进行分组,每个dH值归为一组。在每个dH下,统计不同XOR出现的次数,并在组内按照XOR出现次数对结果重新排序。图1为参数计算和统计流程。
鲍照身处在豪门世家和寒门新贵的夹缝中,满腔怨愤化而为诗,自多不平之情。如《拟行路难·其六》用乐景写哀情,闲居在家的抒情主人公将难酬的壮志化作面对家人的温情,聊以自慰,平静的表象压抑着强烈的不满情绪。《拟行路难·其四》借水泻地面、四方流淌的意象比喻人生贵贱穷达的不同。诗人酌酒举杯排遣苦闷,可是心非草木,怎会没有感情?诗作浓郁凝滞的情感刻骨铭心。
对任意dH,MCU的存在导致XOR的分布变得不均匀。对于相同的dH,提取出现次数最多且明显多于其他值的XOR作为MCU模板元素。由式(1)可知,随dH的增加,MCU对XOR分布的影响越来越小,直至呈近似的均匀分布,当dH增大到一定程度,XOR的出现次数没有明显的峰值时可忽略该值下的模板元素,这对最终MCU的提取影响不大。MCU模板TMCU是上述所有MCU模板元素组成的数组。
图1 参数计算和统计流程Fig.1 Diagram of parameter calculation and statistics
发生在同一逻辑地址内的MBU,可直接通过判断同一地址内翻转的位数进行分析。本文主要考虑MCU的提取,利用上述得到的MCU模板提取MCU信息的方法如下。
1) 首先判断所有翻转位之间的相邻关系,对于两个翻转,将其表示为Ui=(addri,bitui)和Uj=((addrj,bituj),其中,addri和addrj为两个翻转位的逻辑地址,bitui和bituj为两个翻转位在字节中的位置。根据式(2)计算两个地址间的按位异或XORaddr(1,2):
XORaddr(i,j)=XOR(addri,addrj)
(2)
若XORaddr(1,2)是提取得到的MCU模板中的元素,即XORaddr(i,j)∈TMCU,且bitui=bituj,则
两个翻转位Ui和Uj是物理相邻;否则,两个翻转位不相邻。
2) 逐步合并所有具有共同翻转位的MCU,最终得到相互隔离的不同尺寸的MCU结果。
为检验方法的有效性,采用早期获得的SRAM的SEU实验数据对方法进行验证。实验样品为Cypress 90 nm异步SRAM器件CY62126EV30LL,该器件采用位交错技术,额定电压为3.0 V,存储容量为64K×16位(1 Mbit)。器件的版图信息前期已通过逆向工程获取,SEU实验数据的入射粒子为Cl离子,LET值为13.8 MeV·cm2/mg。SEU实验数据中包含469位翻转,按照以下步骤对方法进行验证。
1) 数据准备。按照上述方法进行数据准备。
2) 参数计算。根据图1所示的流程,首先在每个测试周期内计算任意两个翻转位逻辑地址的按位异或XOR,并计算对应的汉明距离dH;然后合并所有结果并统计不同dH下XOR出现的次数,由于dH≥6时XOR的出现次数无明显的峰值,因此仅给出dH为1~6时的统计结果(表2)。
3) MCU模板提取。根据表2中给出的结果,按照dH从小到大的顺序,在相同dH中,提取出现次数最多且明显多于其他值的XOR作为该dH下的MCU模板元素。dH=1时,取出现次数最多且明显多于其他值的3个XOR为MCU模板元素,则有T1=[16,8,2];dH=2时,取出现次数最多且明显多于其他值的4个XOR为MCU模板元素,则有T2=[18,6,32 776,24];dH=3时,取出现次数最多且明显多于其他值的4个XOR为MCU模板元素,则有T3=[22,26,14,32 792];dH=4时,取出现次数最多且明显多于其他值的2个XOR为MCU模板元素,则有T4=[30,32 782];dH=5时,取出现次数最多且明显多于其他值的1个XOR为MCU模板元素,则有T5=[32 798];dH=6时,XOR的出现次数无明显的峰值,因此忽略dH≥6的情况。上述所有dH下的MCU模板元素即可构成该器件的MCU模板:
26,14,32 792,30,32 782,32 798]
(3)
表2 dH为1~6时的XOR统计结果Table 2 Statistical result of XOR for dH=1-6
4) 利用MCU模板TMCU提取MCU信息,对待分析的SEU实验数据,在测试周期内计算翻转位Ui和Uj的逻辑地址按位异或XORaddr(i,j),若有XORaddr(i,j)∈TMCU且bitui=bituj,则两个翻转是物理地址相邻的,否则不相邻。
利用上述MCU模板TMCU,可从469个SEU中提取得到410对2 bit MCU。对所有2 bit MCU进行分析,若两个MCU中含有共同的翻转位,则将其合并为1个更大的MCU,直到所有的MCU相互独立,最终得到379位MCU(表3)。
表3 基于概率统计的MCU提取结果与实际结果对比Table 3 Comparison between extracted MCU result based on statistical method and actual result
为评估方法的MCU提取率,利用逆向工程获得的版图信息对样本数据中的MCU信息进行提取,得到的结果为实际MCU结果(表3)。可看出,基于概率统计的方法提取379位MCU,占所有382位MCU的99.21%,可见MCU提取率接近100%。由表3可知,本文方法可提取不同尺寸的MCU,但相对于物理地址与逻辑地址的一一映射关系,提取的MCU模板信息不够完整,因此存在低估大尺寸MCU的可能。
表4列出CY62126EV30LL物理地址位和逻辑地址位的映射关系。其中,Ai表示逻辑地址的第i位,表4第2列中的逻辑地址序列最左侧对应最高位物理地址,最右侧对应最低位物理地址。
表4 CY62126EV30LL物理地址位和逻辑地址位的映射关系Table 4 One-to-one mapping between physical and logical address of CY62126EV30LL
一般认为单个粒子的影响范围不会跨越不同的存储块,MCU主要发生在同一存储块内,因此MCU的相邻关系主要取决于同一存储块内的物理行地址和列地址。提取的MCU模板TMCU中,出现次数最多的MCU模板元素为16,对应的2进制XOR中只有1个“1”,位于逻辑地址的A4上。由表4可知,A4对应存储块内物理列地址的最低位,说明2个地址的行相同列不同;再根据表1可知,该XOR对应2个物理相邻的地址。因此,可判断若2个逻辑地址按位异或XOR=16,则2个地址是物理相邻的,位于存储单元阵列的同一行相邻列上,对应的MCU图形为■■。表5所列为每个MCU模板元素对应的XOR中“1”的位置和MCU图形,可知,每个MCU模板元素都代表一种物理地址相邻关系。
上述模板是从实验数据中提取的,尽管其出现次数明显多于其他XOR,但仍忽略了一些dH更大(dH≥6)的结果,因此理论上MCU提取是不完全的。由式(1)可知,随dH的增加,MCU占比近似呈指数的速度降低,当MCU模板提取到dH=1,2,…,m时,MCU的理论提取率RMCU为:
i=1,2,3,…,m
(4)
当m=5时,MCU提取率理论上应该大于96.875%。本文方法验证中m=5时的MCU提取率超过99%,与理论相符。可知,本文提出的基于概率统计的MCU信息提取方法能以较高精度从SEU实验数据中提取MCU信息。
该方法中的MCU模板中包含了出现次数最多的一系列MCU模板元素,能提取出绝大多数MCU,因此具有较高的MCU提取率;本文提出的方法不区分物理地址方向,对存储器是否采用为交错结构无限制。本文方法可应用于存储器及集成存储器的其他敏感芯片,如DSP和FPGA等。因此,利用该方法提取电子器件的MCU信息能节省开展逆向工程的时间和经费,可提高航空航天电子系统器件选型评估的效率。
表5 模板元素对应的图形Table 5 Corresponding shape of each template element
针对MCU信息提取时缺少器件版图信息的问题,本文提出了一种基于概率统计的MCU信息提取方法。通过在SEU实验数据中提取MCU模板,然后利用该MCU模板提取实验数据中MCU信息,并利用一款已知版图信息的位交错存储器对方法进行了验证。结果表明,本文提出的方法能在无版图信息的条件下以较高的精度提取MCU信息。从MCU信息提取的角度,该方法能代替逆向工程,从而节省高可靠电子系统对器件进行MCU考核时开展逆向工程的时间和成本,提高相关科学研究和器件选型效率。