45 lines
1.0 KiB
Markdown
45 lines
1.0 KiB
Markdown
|
|
# 物理层优化
|
||
|
|
|
||
|
|
|
||
|
|
----------------------------
|
||
|
|
|
||
|
|
以下为用户区域
|
||
|
|
|
||
|
|
---------------------------
|
||
|
|
|
||
|
|
## 8b10b模块
|
||
|
|
|
||
|
|
* 停用4b5b特性
|
||
|
|
- 删除选择寄存器器 h4c寄存器不再有效
|
||
|
|
* 增加部分控制码
|
||
|
|
- 所有控制码都有极性
|
||
|
|
- 控制码有对应原始码
|
||
|
|
- 额外增加一条控制线
|
||
|
|
- 控制线由发送状态机控制
|
||
|
|
- 解码不需要极性控制
|
||
|
|
|
||
|
|
* 增加6个控制码
|
||
|
|
- 同时将`in(4,0)b11100".U`在`isCtrl`时映射为 `"b001111".U(6.W), "b110000".U(6.W)`
|
||
|
|
- 3个必选 `in(7,5)`保持不变
|
||
|
|
val isK28_0 = Output(Bool()) //0x1c
|
||
|
|
val isK28_3 = Output(Bool()) //0x7c
|
||
|
|
val isK28_4 = Output(Bool()) //0x9c
|
||
|
|
- 3个备选使用宏定义控制 `in(7,5)`平衡但需要增加翻转
|
||
|
|
* val isK28_1 = Output(Bool()) //0x3c IS_ENABLE_K28_1
|
||
|
|
* val isK28_2 = Output(Bool()) //0x5c IS_ENABLE_K28_2
|
||
|
|
* val isK28_6 = Output(Bool()) //0xdc IS_ENABLE_K28_6
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
---------------------------------------
|
||
|
|
|
||
|
|
以下是大模型补充区域
|
||
|
|
|
||
|
|
---------------------------------------
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|