LFSR (Linear Feedback Shift-Register) Counter

线性反馈移位寄存器

简单来说就是可以实现不同模值的乱序计数。
1.框图:
LFSR (Linear Feedback Shift-Register) Counter_第1张图片
2.原理:通过选择与门B第一个输入和与门C来达到实现不同模计数的目的。下表中的1234对应于Q1Q2Q3Q4。
LFSR (Linear Feedback Shift-Register) Counter_第2张图片
可实现模及其配置方法
LFSR (Linear Feedback Shift-Register) Counter_第3张图片
3.具体怎么过程:
利用上面三幅图中示意来实现,就拿模16来分析,就是说我不连接Q4到与门B,那这个端口就是1;不使用与门C,那这个门的输出就是1。
接着得出原理框图的输出D1的表示:
D1= (Q3 XNOR Q4) XOR (Q3 AND Q2 AND Q1)
剩下的就很简单了,根据Table1,初始数据随意定,Q4Q3Q2Q1=0000,下面开始移位计算,过程有点绕,做好准备!

Q4 Q3 Q2 Q1 D1 Q4(New) Q3(New) Q2(New) Q1(New)
0 0 0 0 1 0 0 0 1
0 0 0 1 1 0 0 1 1
0 0 1 1 1 0 1 1 1
0 1 1 1 1 1 1 1 1
1 1 1 1 0 1 1 1 0
1 1 1 0 1 1 1 0 1
1 1 0 1 1 1 0 1 1
1 0 1 1 0 0 1 1 0
0 1 1 0 0 1 1 0 0
1 1 0 0 1 1 0 0 1
1 0 0 1 0 0 0 1 0
0 0 1 0 1 0 1 0 1
0 1 0 1 0 1 0 1 0
1 0 1 0 0 0 1 0 0
0 1 0 0 0 1 0 0 0
1 0 0 0 0 0 0 0 0

此刻Q4(New)Q3(New)Q2(New)Q1(New)=0000;又回到最初的起点,一个轮回结束。乱序计数一目了然,计数模为16,其他模值计算方法类似。

你可能感兴趣的:(FPGA)