Files
eb001/doc/spec/物理层优化.md
2026-07-30 15:59:07 +08:00

1.8 KiB
Raw Blame History

物理层优化


以下为用户区域


8b10b模块

  • 停用4b5b特性

    • 删除选择寄存器器 h4c寄存器不再有效
    • 8b10b编码解码模块改为cdrout cdrin中例化
  • 增加部分控制码

    • 所有控制码都有极性
    • 控制码有对应原始码
    • 额外增加一条控制线
    • 控制线由发送状态机控制
    • 解码不需要极性控制
  • 增加6个控制码

    • 同时将in(4,0)b11100".UisCtrl时映射为 "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
  • PRE改为K28_0 //0x1C

  • SDF改为K28_3 //0x7C

  • CDR_OUT CDR_IN补充状态state_ctrl

  • 编码的isCtrl在idle转preamblepreamble处最后一个state_ctrl有效

  • CDR_OUT补充对外寄存器输入ctrlWord

  • CDR_IN对齐直接看decoder的控制字组合

  • CDR_IN的控制字由补充状态机STATE_CTRL过滤后输出

  • PRE SDF的控制字在包末尾将允许重复使用

  • 主站寄存器增加"h600"指向CDR_OUT的ctrlWord

  • 从站SlaveParse层增加两个ctrlWordRelay寄存器,

    • 下行relay只看下行输入的6个isK布尔信号直接转译8bit原始码
    • 上行relay在isProbeAck跳变状态直接拷贝下行寄存器信息其它条件看上行输入的6个isK布尔信号直接转译8bit原始码

以下是大模型补充区域