《基于SECDED的星载MIMO检测器的抗SEU方法.pdf》由会员分享,可在线阅读,更多相关《基于SECDED的星载MIMO检测器的抗SEU方法.pdf(17页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104133738 A (43)申请公布日 2014.11.05 CN 104133738 A (21)申请号 201410331694.7 (22)申请日 2014.07.11 G06F 11/14(2006.01) H03M 13/11(2006.01) (71)申请人 中国人民解放军信息工程大学 地址 450002 河南省郑州市俭学街 7 号 (72)发明人 王建辉 崔维嘉 王大鸣 杨旭辉 高山 王俊飞 (74)专利代理机构 郑州大通专利商标代理有限 公司 41111 代理人 陈勇 (54) 发明名称 基于SEC-DED的星载MIMO检测器的抗SEU方 法 (5。
2、7) 摘要 本发明涉及一种基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 含有如下步骤 : 1 : 将进入 MIMO 检测器的数据拆分为等长的两部分, 然后形 成矩阵m c11+c21-v12 : 定义 n c11-c21-w1; 如果 m 0, 并且 n 0, 则 没有错误 ; 如果 m 0, 并且 n 0, 则 w1错误 ; 如 果 m 0, 并且 n 0, 则 v1错误 ; 如果 m 0, 并 且 n 0, 则计算 m+n ; 当 m+n 0 时, c21计算错 误 ; 当 m+n 0 时, c11计算错误 ; 3 : 如果 c21错误, 则用 c21减去标志量 m 。
3、获得正确的 c21; 如果 c11错 误, 则用 c11减去标志量 m 获得正确的 c21; 4 : 如果 w1或 v1错误, 对 MIMO 检测器的校验模块重新加 载, 如果 c21或 c11错误, 对 MIMO 检测器的乘法器 模块重新加载 ; 本发明能够显著减少资源的占用 率, 并且具有较强的抗干扰和抗衰落能力。 (51)Int.Cl. 权利要求书 2 页 说明书 11 页 附图 3 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书11页 附图3页 (10)申请公布号 CN 104133738 A CN 104133738 A 1/2 页 2 1. 。
4、一种基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 其特征是 : 步骤 1.1 : 进行编码操作 ; 将进入 MIMO 检测器的数据拆分为等长的两部分 : 数据 A 和数据 B, 再将 数据A和数据B分别截断形成数据a11、 数据a21和数据b11、 数据b21; 将数据a11、 数据a21 形成矩阵其中,将数据b11、 数据b21形成矩阵 按照海明校验码设计原则, 在矩阵中加入两行带有矩阵行列信息的校验码 数据, 形成矩阵其中,然后将 矩阵和矩阵相乘得输出矩阵表示如下 : 步骤 1.2 : 进行检错操作 ; 定义标志量 m 和标志量 n, 其中, m c11+c21-v1。
5、 n c11-c21-w1 通过标志量 m 和标志量 n 检错的方法如下 : 情况 A1 : 如果 m 0, 并且 n 0, 则没有发生错误 ; 情况 B1 : 如果 m 0, 并且 n 0, 则 w1发生错误 ; 情况 C1 : 如果 m 0, 并且 n 0, 则 v1发生错误 ; 情况 D1 : 如果 m 0, 并且 n 0, 则计算 m+n ; 当 m+n 0 时, c21计算错误 ; 当 m+n 0 时, c11计算错误 ; 步骤 1.3 : 进行纠错操作 ; 在情况 D1 中 : 如果发现 c21计算错误, 则用 c21减去标志量 m 就可以获得正确的 c21; 如 果发现 c11计。
6、算错误, 则用 c11减去标志量 m 就可以获得正确的 c21; 步骤 1.4 : 进行模块重新加载操作 ; 如果 w1或 v1发生错误, 对 MIMO 检测器的校验模块重新加载, 如果 c21或 c11发生错误, 对 MIMO 检测器的乘法器模块重新加载。 2. 根据权利要求 1 所述的基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 其特征是 : 所述步骤 1.1 中, 将数据 A 和数据 B 分别从中间截断形成数据 a11、 数据 a21和数据 b11、 数据 b21。 权 利 要 求 书 CN 104133738 A 2 2/2 页 3 3. 根据权利要求 2 所述的。
7、基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 其特征是 : 所述步骤 1.1 中, 进入 MIMO 检测器的数据为二进制数。 4. 一种基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 其特征是 : 步骤 2.1 : 进行编码操作 ; 将进入 MIMO 检测器的数据拆分为等长的两部分 : 数据 A 和数据 B, 再将 数据 A 和数据 B 分别截断形成数据 a11、 数据 a21和数据 b11、 数据 b21; 将数据 a11、 数 据 a21形 成 矩 阵其 中,将 数 据 b11、 数据 b21形成矩阵 b11 b21 ; 按照海明校验码设计原则, 。
8、在矩阵中加入两 列带有矩阵行列信息的校验码数据, 形成矩阵其中, 然后将矩阵 b11 b21 和矩阵相乘 得输出矩阵 c11 c21 v1 w1, 表示如下 : 步骤 2.2 : 进行检错操作 ; 定义标志量 m 和标志量 n, 其中, m c11+c21-v1 n c11-c21-w1 通过标志量 m 和标志量 n 检错的方法如下 : 情况 A1 : 如果 m 0, 并且 n 0, 则没有发生错误 ; 情况 B1 : 如果 m 0, 并且 n 0, 则 w1发生错误 ; 情况 C1 : 如果 m 0, 并且 n 0, 则 v1发生错误 ; 情况 D1 : 如果 m 0, 并且 n 0, 则计。
9、算 m+n ; 当 m+n 0 时, c21计算错误 ; 当 m+n 0 时, c11计算错误 ; 步骤 2.3 : 进行纠错操作 ; 在情况 D1 中 : 如果发现 c21计算错误, 则用 c21减去标志量 m 就可以获得正确的 c21; 如 果发现 c11计算错误, 则用 c11减去标志量 m 就可以获得正确的 c21; 步骤 2.4 : 进行模块重新加载操作 ; 如果 w1或 v1发生错误, 对 MIMO 检测器的校验模块重新加载, 如果 c21或 c11发生错误, 对 MIMO 检测器的乘法器模块重新加载。 5. 根据权利要求 4 所述的基于 SEC-DED 的星载 MIMO 检测器的。
10、抗 SEU 方法, 其特征是 : 所述步骤 2.1 中, 将数据 A 和数据 B 分别从中间截断形成数据 a11、 数据 a21和数据 b11、 数据 b21。 6. 根据权利要求 5 所述的基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 其特征是 : 所述步骤 2.1 中, 进入 MIMO 检测器的数据为二进制数。 权 利 要 求 书 CN 104133738 A 3 1/11 页 4 基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法 0001 (一)、 技术领域 : 本发明涉及一种星载检测器的抗SEU方法, 特别是涉及一种基于 SEC-DED 的星载 M。
11、IMO 检测器的抗 SEU 方法。 0002 (二)、 背景技术:目前, 星载平台算法层面上的抗SEU(single event upset, 单粒 子翻转 ) 设计主要有 ABFT(Algorithmic-Based Fault Tolerance, 基于算法的容错设计 ) 和RPR(Reduced-Precision Redundancy, 降精度冗余设计)。 ABFT设计在矩阵阶小于3时, 其芯片资源占用率大大高于 TMR(triple modular redundancy, 三模冗余 ) 设计, 且增加 了处理时延。RPR 设计降低了资源占用率, 有良好的抗辐射性能, 但会降低数据精度。
12、。硬件 层面上抗 SEU 的方法主要有擦洗、 冗余、 纠错编码、 纠错电路、 动态重构等, 其中应用最为广 泛、 最为有效的是硬件 TMR 容错技术, 该设计可大幅提高 FPGA 在 SEU 影响下的可靠性。但 是 TMR 设计占用的硬件资源至少是原设计的 3.1 倍, 同时增加了功耗, 降低运算速率。 ( 三 )、 发明内容 : 0003 本发明要解决的技术问题是 : 提供一种基于 SEC-DED(single error correction double error detection, 海明码或者单纠错双检错 ) 的星载 MIMO(multiple input multiple out。
13、put, 多入多出)检测器的抗SEU方法, 该方法能够显著减少资源的占用率, 并 且具有较强的抗干扰和抗衰落能力。 0004 本发明的技术方案 : 0005 一种基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 具体为 : 0006 步骤 1.1 : 进行编码操作 ; 0007 将进入 MIMO 检测器的数据拆分为等长的两部分 : 数据 A 和数据 B, 再将 0008 数据 A 和数据 B 分别截断形成数据 a11、 数据 a21和数据 b11、 数据 b21; 将数据 a11、 数 据 a21形成矩阵其中,将数据 b11、 数据 b21形 成矩阵按照海明校验码设计原则, 。
14、在矩阵中加入两行带有矩阵行列信息的 校验码数据, 形成矩阵其中, 然后将矩阵和矩阵相乘得输出矩阵表示如下 : 说 明 书 CN 104133738 A 4 2/11 页 5 0009 0010 扩充后矩阵的两个加权 “校验和” 可表示为两个行向量 v11 v12 和 w11 w12, 输出矩阵的最后两行为输入向量的 “校验和” 的权重因子与矩阵相乘的结果, 表示为 v1 和 w1 ; 第一个校验行 v11 v12 可等价于加权因子全为 1 的行向量乘以矩阵 相当于对的列向量求和 ; 第二个校验行 w11 w12 等价于加权因子为 1 和 -1 的行向量乘以矩阵 0011 步骤 1.2 : 进行。
15、检错操作 ; 0012 为完成矩阵向量的检错和纠错, 定义标志量 m 和标志量 n, 其中, 0013 m c11+c21-v1 0014 n c11-c21-w1 0015 判断矩阵向量是否发生错误, 只需要判断标志量 m 和标志量 n 是否为 0, 以及 m+n 是否为 0, 三者结合可判断出矩阵向量发生错误的数据块位置, 以此检测出故障位置, 通过 标志量 m 和标志量 n 检错的方法如下 : 0016 情况 A1 : 如果 m 0, 并且 n 0, 则没有发生错误 ; 0017 情况 B1 : 如果 m 0, 并且 n 0, 则 w1发生错误 ; 0018 情况 C1 : 如果 m 0。
16、, 并且 n 0, 则 v1发生错误 ; 0019 情况 D1 : 如果 m 0, 并且 n 0, 则计算 m+n ; 当 m+n 0 时, c21计算错误 ; 当 m+n 0 时, c11计算错误 ; 0020 步骤 1.3 : 进行纠错操作 ; 0021 在情况D1中 : 如果发现c21计算错误, 则用c21减去标志量m就可以获得正确的c21; 如果发现 c11计算错误, 则用 c11减去标志量 m 就可以获得正确的 c21; 0022 步骤 1.4 : 进行模块重新加载操作 ; 0023 如果w1或v1发生错误, 对MIMO检测器的校验模块重新加载, 如果c21或c11发生错 误, 对 。
17、MIMO 检测器的乘法器模块重新加载。 0024 步骤 1.1 中, 将数据 A 和数据 B 分别从中间截断形成数据 a11、 数据 a21和数据 b11、 数据 b21。 0025 步骤 1.1 中, 进入 MIMO 检测器的数据为二进制数。 0026 一种基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法, 具体为 : 0027 步骤 2.1 : 进行编码操作 ; 0028 将进入 MIMO 检测器的数据拆分为等长的两部分 : 数据 A 和数据 B, 再将 说 明 书 CN 104133738 A 5 3/11 页 6 0029 数据 A 和数据 B 分别截断形成数据 a11。
18、、 数据 a21和数据 b11、 数据 b21; 将数 据 a11、数 据 a21形 成 矩 阵其 中,将 数 据 b11、 数据 b21形成矩阵 b11 b21 ; 按照海明校验码设计原则, 在矩阵中加入 两列带有矩阵行列信息的校验码数据, 形成矩阵其中, 然后将矩阵 b11 b21 和矩阵相乘 得输出矩阵 c11 c21 v1 w1, 表示如下 : 0030 0031 扩充后矩阵的两个加权 “校验和” 可表示为两个列向量和输 出矩阵 c11 c21 v1 w1的最后两列为矩阵b11 b21与输入向量的 “校验和” 的权重因子相乘 的结果, 表示为 v1 和 w1 ; 第一个校验列可等价于矩。
19、阵乘以加权因子全为 1 的列向量, 相当于对的行向量求和 ; 第二个校验列等价于矩阵乘以 加权因子为 1 和 -1 的列向量 ; 0032 步骤 2.2 : 进行检错操作 ; 0033 为完成矩阵向量的检错和纠错, 定义标志量 m 和标志量 n, 其中, 0034 m c11+c21-v1 0035 n c11-c21-w1 0036 判断矩阵向量是否发生错误, 只需要判断标志量 m 和标志量 n 是否为 0, 以及 m+n 是否为 0, 三者结合可判断出矩阵向量发生错误的数据块位置, 以此检测出故障位置, 通过 标志量 m 和标志量 n 检错的方法如下 : 0037 情况 A1 : 如果 m。
20、 0, 并且 n 0, 则没有发生错误 ; 0038 情况 B1 : 如果 m 0, 并且 n 0, 则 w1发生错误 ; 0039 情况 C1 : 如果 m 0, 并且 n 0, 则 v1发生错误 ; 0040 情况 D1 : 如果 m 0, 并且 n 0, 则计算 m+n ; 当 m+n 0 时, c21计算错误 ; 当 m+n 0 时, c11计算错误 ; 0041 步骤 2.3 : 进行纠错操作 ; 0042 在情况D1中 : 如果发现c21计算错误, 则用c21减去标志量m就可以获得正确的c21; 如果发现 c11计算错误, 则用 c11减去标志量 m 就可以获得正确的 c21; 0。
21、043 步骤 2.4 : 进行模块重新加载操作 ; 0044 如果w1或v1发生错误, 对MIMO检测器的校验模块重新加载, 如果c21或c11发生错 说 明 书 CN 104133738 A 6 4/11 页 7 误, 对 MIMO 检测器的乘法器模块重新加载。 0045 步骤 2.1 中, 将数据 A 和数据 B 分别从中间截断形成数据 a11、 数据 a21和数据 b11、 数据 b21。 0046 步骤 2.1 中, 进入 MIMO 检测器的数据为二进制数。 0047 本发明针对基于 TMR 架构的 ZF(zero forcing, 迫零检测算法 ) 检测算法资源开 销大、 功耗大的问。
22、题, 提出一种基于 SEC-DED 的星载 MIMO 检测器的低开销抗 SEU 方法, 其对 MIMO 检测算法中矩阵数据进行某种变换或处理, 构造包含矩阵数据相关性信息的冗余数 据, 并将该部分数据伴随原矩阵数据进行处理和运算, 利用冗余数据运算结果蕴含的内在 规律, 检测和纠正矩阵乘积运算过程中因单粒子翻转影响产生的错误。 0048 本发明通过在矩阵乘积运算和数乘运算中扩展加入两行 ( 列 )“校验和” , 实现了 自检错、 自纠错功能, 可以同时检测两位错误和纠正一位错误, 以应对星载芯片单个粒子翻 转对系统的影响。通过模块化设计和乘法器复用, 进一步降低了资源开销。此外, 本发明具 有。
23、一定的通用性, 可运用于其他含有大量数乘运算和矩阵乘积运算的星载平台。 0049 本发明的有益效果 : 0050 1、 本发明涉及无线通信领域中采用多输入多输出数据传输技术, 是一种能够在不 增加带宽的情况下成倍提高通信系统的容量以及频谱利用率, 并且具有较强的抗干扰和抗 衰落能力的方法, 它是 4G 移动通信的关键。 0051 2、 本发明并提高了算法的抗 SEU 性能, 与基于 TMR 及 RPR 设计的算法相比, 本发明 不仅降低了单粒子翻转的影响, 而且显著减少了资源占用率、 减少了星载平台的资源开销, 提高了系统的可靠性。 0052 3、 本发明将数据长度较长的数据分割运算, 可有效。
24、降低资源开销。 ( 四 )、 附图说明 : 0053 图 1 为单星多极化 MIMO 系统示意图 ; 0054 图 2 为单元乘法器 SEC-SED 的系统模型图 ; 0055 图 3 为矩阵乘法器的 SEC-SED 设计的原理图之一 ; 0056 图 4 为矩阵乘法器的 SEC-SED 设计的原理图之二 ; 0057 图 5 为系统模块化示意图 ; 0058 图 6 为本发明的误比特性能示意图 ; 0059 图 7 为乘法器理论资源占用增加率示意图 ; 0060 图 8 为检测算法理论资源占用增加率示意图。 ( 五 )、 具体实施方式 : 0061 基于 SEC-DED 的星载 MIMO 检。
25、测器的抗 SEU 方法具体为 : 0062 步骤 1.1 : 进行编码操作 ; 0063 将进入 MIMO 检测器的数据拆分为等长的两部分 : 数据 A 和数据 B, 再将 0064 数据 A 和数据 B 分别截断形成数据 a11、 数据 a21和数据 b11、 数据 b21; 将数据 a11、 数 据a21形成矩阵其中,将数据b11、 数据b21形 说 明 书 CN 104133738 A 7 5/11 页 8 成矩阵按照海明校验码设计原则, 在矩阵中加入两行带有矩阵行列信息的 校验码数据, 形成矩阵其中, 然后将矩阵和矩阵相乘得输出矩阵表示如下 : 0065 0066 扩充后矩阵的两个加权。
26、 “校验和”可表示为两个行向量 v11 v12 和 w11w12, 输出矩阵的最后两行为输入向量的 “校验和” 的权重因子与矩阵相乘的结 果, 表示为 v1 和 w1 ; 第一个校验行 v11 v12 可等价于加权因子全为 1 的行向量乘以矩 阵相当于对的列向量求和 ; 第二个校验行 w11 w12 等价于加权因子为 1 和 -1 的行向量乘以矩阵 0067 步骤 1.2 : 进行检错操作 ; 0068 为完成矩阵向量的检错和纠错, 定义标志量 m 和标志量 n, 其中, 0069 m c11+c21-v1 0070 n c11-c21-w1 0071 判断矩阵向量是否发生错误, 只需要判断标。
27、志量 m 和标志量 n 是否为 0, 以及 m+n 是否为 0, 三者结合可判断出矩阵向量发生错误的数据块位置, 以此检测出故障位置, 通过 标志量 m 和标志量 n 检错的方法如下 : 0072 情况 A1 : 如果 m 0, 并且 n 0, 则没有发生错误 ; 0073 情况 B1 : 如果 m 0, 并且 n 0, 则 w1发生错误 ; 0074 情况 C1 : 如果 m 0, 并且 n 0, 则 v1发生错误 ; 0075 情况 D1 : 如果 m 0, 并且 n 0, 则计算 m+n ; 当 m+n 0 时, c21计算错误 ; 当 m+n 0 时, c11计算错误 ; 0076 步。
28、骤 1.3 : 进行纠错操作 ; 0077 在情况D1中 : 如果发现c21计算错误, 则用c21减去标志量m就可以获得正确的c21; 说 明 书 CN 104133738 A 8 6/11 页 9 如果发现 c11计算错误, 则用 c11减去标志量 m 就可以获得正确的 c21; 0078 步骤 1.4 : 进行模块重新加载操作 ; 0079 如果w1或v1发生错误, 对MIMO检测器的校验模块重新加载, 如果c21或c11发生错 误, 对 MIMO 检测器的乘法器模块重新加载。 0080 步骤 1.1 中, 将数据 A 和数据 B 分别从中间截断形成数据 a11、 数据 a21和数据 b1。
29、1、 数据 b21。 0081 步骤 1.1 中, 进入 MIMO 检测器的数据为二进制数。 0082 基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法还可以如下 : 0083 步骤 2.1 : 进行编码操作 ; 0084 将进入 MIMO 检测器的数据拆分为等长的两部分 : 数据 A 和数据 B, 再将 0085 数据 A 和数据 B 分别截断形成数据 a11、 数据 a21和数据 b11、 数据 b21; 将数据 a11、 数 据 a21形成矩阵其中,将数据 b11、 数据 b21形 成矩阵b11 b21 ; 按照海明校验码设计原则, 在矩阵中加入两列带有矩阵行列信息 的校。
30、验码数据, 形成矩阵其中, 0086 然 后 将 矩 阵 b11 b21 和 矩 阵 相乘得输出矩阵 c11 c21 v1 w1, 表示如下 : 0087 0088 扩充后矩阵的两个加权 “校验和” 可表示为两个列向量和输出 矩阵 c11 c21 v1 w1 的最后两列为矩阵 b11 b21 与输入向量的 “校验和” 的权重因子相乘 的结果, 表示为 v1 和 w1 ; 第一个校验列可等价于矩阵乘以加权因子全为 1 的列向量, 相当于对的行向量求和 ; 第二个校验列等价于矩阵乘以 加权因子为 1 和 -1 的列向量 ; 0089 步骤 2.2 : 进行检错操作 ; 0090 为完成矩阵向量的检。
31、错和纠错, 定义标志量 m 和标志量 n, 其中, 0091 m c11+c21-v1 0092 n c11-c21-w1 0093 判断矩阵向量是否发生错误, 只需要判断标志量 m 和标志量 n 是否为 0, 以及 m+n 是否为 0, 三者结合可判断出矩阵向量发生错误的数据块位置, 以此检测出故障位置, 通过 标志量 m 和标志量 n 检错的方法如下 : 说 明 书 CN 104133738 A 9 7/11 页 10 0094 情况 A1 : 如果 m 0, 并且 n 0, 则没有发生错误 ; 0095 情况 B1 : 如果 m 0, 并且 n 0, 则 w1发生错误 ; 0096 情况。
32、 C1 : 如果 m 0, 并且 n 0, 则 v1发生错误 ; 0097 情况 D1 : 如果 m 0, 并且 n 0, 则计算 m+n ; 当 m+n 0 时, c21计算错误 ; 当 m+n 0 时, c11计算错误 ; 0098 步骤 2.3 : 进行纠错操作 ; 0099 在情况D1中 : 如果发现c21计算错误, 则用c21减去标志量m就可以获得正确的c21; 如果发现 c11计算错误, 则用 c11减去标志量 m 就可以获得正确的 c21; 0100 步骤 2.4 : 进行模块重新加载操作 ; 0101 如果w1或v1发生错误, 对MIMO检测器的校验模块重新加载, 如果c21或。
33、c11发生错 误, 对 MIMO 检测器的乘法器模块重新加载。 0102 步骤 2.1 中, 将数据 A 和数据 B 分别从中间截断形成数据 a11、 数据 a21和数据 b11、 数据 b21。 0103 步骤 2.1 中, 进入 MIMO 检测器的数据为二进制数。 0104 以上基于 SEC-DED 的星载 MIMO 检测器的抗 SEU 方法实施时需要以下前提 : 0105 (1) 单星多极化 MIMO 系统仿真环境的构造 : 0106 参见图 1, 其中, 卫星天线数量为 1, 但采用双极化方式, 通道数为 2, 每个用户终端 包含 2 根天线。假设信道为莱斯信道, 信道噪声功率为 2,。
34、 系统调制方式为 BPSK。 0107 星载 MIMO 检测算法采用双极化方式, 信道矩阵维度为 2, 大量计算都是 22 矩阵 形式, 可将矩阵中每 4 个数据作为一组待编码数据, 借鉴海明编码校验原理, 校验数据至少 需要 4(3+1) 个数据。校验数据与待编码数据构成一个 42 矩阵形式, 与 22 矩阵乘积运 算, 这样校验数据亦参与乘积运算, 运算结果也是42矩阵形式, 结果中增加的4个数据用 于校验计算过程是否出错。 0108 (2) 单元乘法器 SEC-SED 设计 : 0109 矩阵乘积运算的单个数乘运算可采用单元乘法器 SEC-SED 设计, 其基本思想是, 将长度为 N 的。
35、数据分隔为等长的两部分, 分别记为 A、 B, 长度为 N/2, 输出数据记为 C, 长度 为 2N。截断的数据分别记为 A_1、 A_2、 B_1、 B_2, 并进行海明校验设计。其有效数据位位 数为 2, 按海明校验码设计至少需要 2 位校验码, 分别记为 V_1、 V_2、 W_1、 W_2, 其中 V_1 A_1+A_2、 V_2 A_1-A_2、 W_1 B_1+B_2、 W_2 B_1-B_2。由于乘法器资源占用与数据位 宽的平方成正比, 数据位宽降低一半, 乘法器资源节约3/4。 同时为实现抗SEU性能, 即自检 错纠错功能, 其系统模型如图 2 所示, 其中 : 0110 C_。
36、1 A_1B_1+A_2B_2 *MERGEFORMAT(40) 0111 C_2 A_2B_1+A_1B_2 *MERGEFORMAT(41) 0112 C_3 V_1B_1+W_1B_2 *MERGEFORMAT(42) 0113 A_1B_1+A_2B_1+A_1B_2+A_2B_2 0114 C_4 V_1B_1+W_1B_2 *MERGEFORMAT(43) 0115 A_1B_1-A_2B_1+A_1B_2-A_2B_2 0116 则系统在不发生单粒子翻转的情况下 : 0117 C_3 C_1+C_2 *MERGEFORMAT(44) 说 明 书 CN 104133738 A 10。
37、 8/11 页 11 0118 C_4 C_1-C_2 *MERGEFORMAT(45) 0119 由于以上乘积运算不存在乘法器复用, 则 C 可表示为 : 0120 CA BA_1 B_1 2N/2+(A_1 B_2+A_2 B_1) 2N/4+A_2 B_2*MERGEFORMAT(46) 0121 (3) 矩阵乘法器 SEC-SED 设计 : 0122 SEC-SED抗SEU矩阵乘法器采用类二维内存SEC-DED方法进行矩阵编码校验, 其中 二维内存 SEC-DED 方法是通过在数据块的水平方向和垂直方向分别加入 k 位和 l 位校验信 息, 在水平方向进行单纠错双检错码编码, 在垂直方。
38、向进行奇偶编码, 可以发现出错地址寄 存器和出错数据寄存器所在地址, 并找到出错原因, 其原理如图 3 所示。基于 SEC-SED 的星 载检测算法, 在矩阵右侧或者下侧加入两行(两列)含有原矩阵信息的校验行列式, 行列式 即原矩阵的行或列的 “校验和” , 如图 4 所示。 0123 以 ZF 检测算法为例, 可表示为 : 0124 y H+x *MERGEFORMAT(36) 0125 H 为道矩阵, x 为输入信号, y 为检测值, 假设上式展开为 : 0126 *MERGEFORMAT(37) 0127 在H的广义逆矩阵H+中加入两行带有矩阵行列信息的行列式, 如公式38, 39所示。。
39、 扩充后矩阵的两个加权 “校验和” 表示为两个行 ( 列 ) 向量 v11 v12 和 w11 w12, 输出矩阵 的最后两行 ( 列 ) 为输入向量的 “校验和” 的权重因子与 x 相乘的结果, 表示为 v1 v2 和 w1 w2。其中第一个校验行 ( 列 ) 可等价于加权因子全为 1 的行向量乘以矩阵 H+, 相当于 对 H+的列向量求和 ; 第二个校验行 ( 列 ) 等价于加权因子为 1 和 -1 的行向量乘以矩阵 H+。 0128 *MERGEFORMAT(38) 0129 *MERGEFORMAT(39) 0130 其编码方式为 : 0131 (4) 工程测试环境的构造 : 0132。
40、 采用上海 DIGILENT 公司研发的基于 xilinx 公司的 XC5VLX50T-f1136-1 芯片的 开发板。为了研究本发明实际资源占用下降率, 在开发板上进行实际仿真测试。其基本 单元 LUT 为 5 脚输入 LUT, 时钟 100Mhz。软件开发环境为 : windows7 系统, 64 位, CPU 为 i7-2670QM, 2.2GHz, 内存 8GB, 开发软件和 ISE14.1 和 Planahead13.2。 0133 故障注入测试也采用此平台, 模拟故障注入采用 FPGA 后端工具 FPGA Editor, 随 机修改电路范围内的 LUTs、 Block RAM、 I。
41、O 标准等 5 模拟故障注入, 模拟故障注入流程如 下 : 0134 1) 加载原始工程文件 ; 0135 2) 利用命令控制语句生成模拟故障注入的差异 bit 文件 ; 说 明 书 CN 104133738 A 11 9/11 页 12 0136 3) 在系统正常工作中, 实时动态加载修改后的差异 bit 文件 ; 0137 4)通过JTAG(Joint Test Action Group)采集结果与iSim模拟的正确结果对比, 以判断模块发生单粒子翻转之后是否出错。 0138 5) 如果系统工作正常, 重复上述过程 2 至 4, 并统计测试次数是否达到要求。如果 系统功能故障, 跳转至过程。
42、 1。 0139 按上述流程模拟辐射环境下FPGA发生的单粒子翻转故障, 进行5000次故障注入。 0140 (5) 系统模块化构造 : 0141 本发明将矩阵乘法器和 “校验和” 运算过程按 SEC-DED 流程进行模块化分组设计, 把 SECDED-ZF 模型分成 SEC-DED 模块、 TMR 模块、 复用模块, 从系统结构角度进一步降低了 资源占用率。系统模块设计如图 5 所示。 0142 虚线框表示 SEC-DED 的 “校验和” 计算过程, 用于检测和纠正由单粒子效应引发的 软错误, 与三模冗余设计相比, 仅使用 2/3 的乘法器资源。 0143 虚线和实线框部分包括加法、 减法、。
43、 乘法运算模块, 其中乘法运算分为 4 组, 分别 对应 c11,c12,v1,w1的计算过程, 每组包含 2 个乘法器, 共 8 个乘法器 ; 加法、 减法运算模块分 为两组, 分别对应行向量v1 v2和w1 w2运算过程。 此外, 矩阵求逆过程可复用矩阵乘法 运算的乘法器核, 构成 TMR 结构, 可进一步降低资源占用率。 0144 灰色框采用 TMR 设计, 以保证系统整体抗 SEU 能力。 0145 下面用具体的例子进一步说明本发明的方法 : 0146 以下式为例 : 0147 0148 假设计算c21时, 受单粒子翻转影响, 其值被错误的计算为2.1, 即c21-2+2.1 0.1,。
44、 此时, 0149 m c11+(c21+1)-v1 -0.1 0150 n c11-(c21+1)-w1 0.1 0151 m 0、 n 0, 并且 m+n 0, 判定 c21计算错误, 则正确的 c21应为 c 21-m -2.1+0.1 -2。 0152 由上可知, 如果 m 或 n 中有且仅有一个为 0, 则 “校验和” 的计算过程中发生错误, 乘法器核工作正常, 输出结果不受影响, 此时可以重新计算一下 “校验和” , 并对错误的 “校 验和” 计算模块重构复位 ; 如果 m, n 都为 0 时, 不需要做任何处理, 可视为没有发生单粒子 翻转 ; 如果 m 和 n 同时不为零, 则。
45、计算 m+n : 当 m+n 0 时, c21计算错误 ; c11正确的计算结 果为 c11-m ; 当 m+n 0 时, c11计算错误 ; c21正确的计算结果为 c11-m。 0153 本例子基于实施前提中给出的信道模型和硬件条件。模拟在星载 MIMO 检测算法 发生单粒子翻转的条件下, 对基于本发明的 ZF 和 MMSE 检测算法在不同信噪比下的误比特 率进行对比。 0154 图6所示的信道为莱斯信道, 收发天线数NtNr2, M1, 信号采用BPSK调制。 误比特率结果如图 6 所示。 说 明 书 CN 104133738 A 12 10/11 页 13 0155 从图 6 可以看出。
46、, 基于 SEC-DED 的 MIMO 检测算法的误比特性能与基于 TMR 设计的 MIMO 检测算法相比无明显变化。在 BER 相对较大时, 基于 RPR 设计 MIMO 检测算法的误比 特性能明显恶化, 并且误比特率下降到一定程度时不随 SNR 增大而变化。当 BER 较小时, 三 种设计的误比特性能相当。其主要原因是, 降低精度相当于在 MIMO 检测额外引入了一定量 的 “噪声” , 当 BER 较大时, 降低精度对算法的影响远远大于信道噪声对系统的影响, 此时降 低精度引入的 “噪声” 起决定性作用, 使得误比特率不随 SNR 增大而变化。当信道环境较差 时, 信道噪声起主要作用, 。
47、降低精度引入的 “噪声” 对算法的影响很小, 使得基于以上三种设 计的 MIMO 检测算法误比特性能相当。 0156 图 7 和图 8 分别为乘法器和 MMSE、 ZF 两种算法, 对不同数据位宽下的三种设计, 相 比无抗 SEU 性能算法的资源的占用理论增加率。 0157 从图 7 和图 8 中可以看出基于 SEC-DED 抗 SEU 乘法器设计在数据位宽为 10 到 20 时, 资源消耗率最低。当数据位宽高于 20 时, RPR 设计资源占用率最低, 其主要原因是 RPR 设计比 SEC-DED 少使用 (N/2)2面积的乘法器资源, 但使用较多的移位和加减运算。在数 据位宽较小时资源占用率比 SEC-DED、 TMR 设计高, 随着数据位宽增加其资源占用率显著下 降。由于实际通讯中通常采用 16bits 的数据位宽, SEC-DED 在数据位宽 8-20 时性能最优, 更适宜卫星通信需求。 0158 表 1 和表 2 是基于 Xilinx 公司的 xc5vlx50t-ffg1136c 芯片进行测试, 将基于 SEC-DED 设计的迫零检测算法和矩阵乘法器与 TMR 和 RPR 在资源占用率和抗 SEU 性能等方 面作比较。测试条件 : 以线性检测算法 ZF 为例。