已知某线性反馈移位寄存器的反馈函数对应的特征多项式是p(x)=x^4+x^2+1,求 (1) 写出该线性反馈移位寄存器的反馈函数并画出结构图: (40分) (2) 设初始状态是 (0,0,1,0) ,求此线性反馈移位寄存器产生的序列及其周期 (写出具体过程) (40分)。
时间: 2023-06-12 12:04:45 浏览: 192
(1) 根据所给特征多项式,可以写出其对应的线性反馈移位寄存器的反馈函数为 $f(x)=x^4+x^2+1$,其结构图为:
```
+----> D ----+
| |
v |
1 -->[D]--->[D]--->[D]--->[D]--->[+]--> 输出
^ | |
| | |
+-----+----+
^^^
|||
f(x)
```
其中,$[D]$ 表示数据存储器,$+$ 表示异或运算。
(2) 根据初始状态 (0,0,1,0) 可以得到初始状态下,寄存器中各位的值为 $s_0=(0,0,1,0)$。为了求出该线性反馈移位寄存器产生的序列,需要对初始状态进行迭代计算。
首先将反馈函数 $f(x)=x^4+x^2+1$ 转化为二进制形式 $f(x)=11001$,并将初始状态 $s_0=(0,0,1,0)$ 转化为二进制形式 $s_0=0010$。
接下来,按照以下步骤进行迭代计算:
1. 将寄存器中各位的值从左到右依次写出,得到 $s_1=0100$;
2. 计算 $s_1$ 和 $f(x)$ 的乘积,并对结果取模,得到 $r_1=s_1\cdot f(x)\mod 2=1001$;
3. 将 $r_1$ 的各位依次从右到左写入寄存器中,得到 $s_2=1001$;
4. 重复上述步骤,直到得到重复的状态。具体计算过程如下表所示:
| 迭代次数 | 寄存器状态 | 乘积 $s_i\cdot f(x)$ | 取模 $r_i$ | 下一状态 |
| -------- | ---------- | -------------------- | ---------- | -------- |
| 0 | 0010 | | | |
| 1 | 0100 | 110010 | 1001 | 1001 |
| 2 | 1001 | 111110010 | 1011 | 0111 |
| 3 | 0111 | 111111011110 | 0100 | 0010 |
因此,该线性反馈移位寄存器产生的序列为 $0010, 0100, 1001, 0111$,其周期为 3。
阅读全文