Block codes are considered for improving the reliability of messages stored in a computer memory with both stuck-at defects and random errors. It is assumed that the side information about the state of the defects is available to the encoder, but not to the decoder. A novel recursive construction of a set of masks is developed such that it can satisfy any $s$ stuck-at errors in a $2^m$ binary sequence, when $s \leq m$. We prove that the masks generated in this way are codewords in a Reed-Muller $RM(s-1, m)$ code. The constructed set contains no more than $2^s m^{s-1}$ masks. We provide the lower and the upper bound on the size of the stuck-at redundancy, a fixed subset of mask bits that uniquely represents each mask in the set. The stuck-at code constructed in this way is a non-linear code. It is also a subcode of an $RM(r,m)$ code, with $ r \geq s-1$, that can be used for additional random error correction. The encoding requires no mask search and is straightforward based on the description of the recursive construction. The decoding is done in a single attempt and requires almost no additional complexity or latency.
翻译:块码被用于提升存储有永久性缺陷与随机错误的计算机内存中消息的可靠性。假设编码器可利用缺陷状态的边信息,但解码器无法获取。针对长度为$2^m$的二进制序列,当永久性错误数$s \leq m$时,本文提出一种新型递归掩码构造方法,可满足任意$s$个永久性错误。我们证明,按此方式生成的掩码均为Reed-Muller $RM(s-1, m)$码的码字。所构造的集合包含不超过$2^s m^{s-1}$个掩码。针对掩码比特中唯一表示每个掩码的固定子集——即永久性错误冗余——我们给出了其规模的下界与上界。按此方式构造的永久性错误码属于非线性码,同时也是$RM(r,m)$码($r \geq s-1$)的子码,可额外用于随机错误纠正。编码过程无需掩码搜索,直接基于递归构造的描述即可实现。解码过程仅需单次尝试,且几乎不增加额外复杂度或延迟。