64b66b编码 接收数据的状态机 图解
时间: 2024-04-03 16:07:46 浏览: 67
以下是64b66b编码接收数据的状态机的详细图解:
![64b66b编码接收数据状态机图解](https://img-blog.csdn.net/20160120170601308)
上图中,64b66b编码的输入数据为连续的10位线路符号,输出数据为8位的原始数据字节。状态机共有6个状态:
1. IDLE:初始状态,等待接收第一个线路符号。
2. K28.5:接收到K28.5线路符号,表示数据流的开始。
3. DATA:接收到数据线路符号。
4. CTRL:接收到控制线路符号。
5. ERROR:接收到无法识别的线路符号,表示数据流出错。
6. COMMA:接收到逗号线路符号,表示数据流的结束。
状态机在不同的状态下对输入的线路符号进行不同的处理,具体如下:
1. IDLE状态:
在IDLE状态下,状态机等待接收第一个线路符号。如果接收到的是K28.5线路符号,则转移到K28.5状态;否则,转移到ERROR状态。
2. K28.5状态:
在K28.5状态下,状态机等待接收下一个线路符号。如果接收到的是控制线路符号,转移到CTRL状态,并将控制码存储起来;如果接收到的是数据线路符号,转移到DATA状态,并将数据符号存储起来;如果接收到的是K28.5线路符号,则继续保持在K28.5状态;如果接收到的是逗号线路符号,转移到COMMA状态;否则,转移到ERROR状态。
3. DATA状态:
在DATA状态下,状态机等待接收下一个线路符号。如果接收到的是数据线路符号,则转移到K28.5状态,并将当前的数据符号存储起来;如果接收到的是控制线路符号,则转移到CTRL状态,并将控制码存储起来;如果接收到的是K28.5线路符号,则继续保持在DATA状态;如果接收到的是逗号线路符号,则转移到COMMA状态;否则,转移到ERROR状态。
4. CTRL状态:
在CTRL状态下,状态机等待接收下一个线路符号。如果接收到的是数据线路符号,则转移到K28.5状态,并将当前的控制码存储起来;如果接收到的是K28.5线路符号,则继续保持在CTRL状态;如果接收到的是逗号线路符号,则转移到COMMA状态;否则,转移到ERROR状态。
5. ERROR状态:
在ERROR状态下,状态机等待接收下一个线路符号。如果接收到的是K28.5线路符号,则转移到K28.5状态;否则,继续保持在ERROR状态。
6. COMMA状态:
在COMMA状态下,状态机等待接收下一个线路符号。如果接收到的是K28.5线路符号,则转移到K28.5状态;否则,继续保持在COMMA状态。
以上就是64b66b编码接收数据的状态机的详细图解,希望能对您有所帮助。
阅读全文