# Floating FFE 公众号案例 / Article examples

本目录随 REA 新版发行包放在 EXE 同级的 `demo/floating_ffe/`。包含 5 份 S 参数、13 份可直接加载的 Normal 配置及文章配图。
Included beside the EXE under `demo/floating_ffe/`: five Touchstone channels, thirteen loadable Normal configurations and article illustrations.

## 使用 / Use

1. 保持 channels、configs、images、responses 的相对位置；可以整体复制到其它磁盘或带空格、中文的目录。
2. 菜单「文件 → 载入配置」，选择 configs 下的 JSON；进入 Normal 模式，点击「生成眼图」。
3. fixed 为固定段，float 已保存文中测量时实际部署的浮动位置与系数；直接生成即可，无需重新优化。
4. 可自行重新优化作为另一次实验；新版选位可能获得不同布局，文章冻结案例用于复核文中数字。

Keep all four subfolders together. Use File → Load Configuration, choose a JSON in configs, then Generate Eye in Normal mode.
The float configurations contain the deployed article taps and positions. Do not optimize again when reproducing the frozen article results.

## SCPI / TCP 5025

```text
SYST:CONF:LOAD "<REA>/demo/floating_ffe/configs/floating_ffe_echo40_float.json"
INIT
*OPC?
FETC:EYE:COM?
FETC:EYE:ALL?
```

需启动可见 REA GUI，并具备 SCPI 选项。GUI 与 SCPI 应给出同一结果；CPU/GPU 可选，GPU 仍通过随包助手另行安装。
Launch the visible REA GUI with the SCPI option. Optional GPU support is installed separately using the bundled helper.

## 文件与结果 / Files and results

| 案例 / Case | 配置 / Configuration (configs/) | 通道 / Channel (channels/) | COM / dB |
|---|---|---|---:|
| 无失配参考 | `floating_ffe_clean_fixed.json` | `refl_106G_echo40ui_clean.s2p` | 11.9548 |
| 无失配参考 | `floating_ffe_clean_float.json` | `refl_106G_echo40ui_clean.s2p` | 12.0055 |
| 40 UI 回波 | `floating_ffe_echo40_fixed.json` | `refl_106G_echo40ui.s2p` | 6.1022 |
| 40 UI 回波 | `floating_ffe_echo40_float.json` | `refl_106G_echo40ui.s2p` | 11.9083 |
| 72 UI 回波 | `floating_ffe_echo72_fixed.json` | `refl_106G_echo72ui.s2p` | 6.5718 |
| 72 UI 回波 | `floating_ffe_echo72_float.json` | `refl_106G_echo72ui.s2p` | 11.9612 |
| 多回波 | `floating_ffe_multi_fixed.json` | `refl_106G_echo40_72ui.s2p` | 2.5840 |
| 多回波 | `floating_ffe_multi_float.json` | `refl_106G_echo40_72ui.s2p` | 6.2111 |
| 40 UI 高噪声 | `floating_ffe_noise10_fixed.json` | `refl_106G_echo40ui.s2p` | 2.8510 |
| 40 UI 高噪声 | `floating_ffe_noise10_float.json` | `refl_106G_echo40ui.s2p` | 5.7383 |
| 已有库信道 | `floating_ffe_real_kr_fixed.json` | `library_212G_KR_thru.s4p` | 6.0011 |
| 已有库信道 | `floating_ffe_real_kr_float.json` | `library_212G_KR_thru.s4p` | 6.5794 |
| 40 UI 连续扩展 | `floating_ffe_echo40_contiguous23.json` | `refl_106G_echo40ui.s2p` | 6.1268 |

## 图示 / Figures

`images/09_sparameter_channels.jpg`：从本目录四份合成两端口 Touchstone 文件直接绘制的 S21/S11 幅频响应，不是实测板卡，不含均衡器。
`images/03_eye_fixed.jpg`、`images/04_eye_float.jpg`：文章 40 UI 案例的真实 REA GUI 眼图裁图。其它 images 文件对应文章其余图示与公众号二维码。

## 口径 / Conditions

参考布局最初在 v2.0.27 建立，并已用 v2.0.28 的可见 EXE + 真实 TCP SCPI 重新生成、GUI 对照与保存验证；13 份配置在实际 GPU 与 CPU 下的完整 COM 响应一致。直接加载复现这些冻结布局，重新优化属于另一次实验。
The layouts originated in v2.0.27 and were regenerated and checked against the visible v2.0.28 EXE over real TCP SCPI. All thirteen configurations produce identical complete COM replies on actual GPU and CPU. Re-optimization is a separate experiment.
合成模型：106.25 GBaud PAM4 / PRBS15 / 32 点每 UI / 0.8 V / 目标 BER 2e-4；TX SNR 33.5 dB、RJ 0.01 UI、σN 1 mV（noise10 为 10 mV）。
固定段 6 前 + 1 主 + 8 后；单回波 2 组×4 浮动，多回波 3 组×4；跨度 80 UI、系数界 ±0.2。连续扩展对照另加 8 个连续抽头，原 15 系数锁定。
已有库信道保留其原有 CTLE、DFE 和封装；文件名不作为实测插损声明。四份合成文件是教学模型，不代表实测产品。
不启用 MLSE；保存配置不包含密钥、授权数据、源码或测试运行日志。
REA：商业授权 · 免费试用。

## 实际响应 / Actual responses

`responses/{echo40,echo72,multi}_{fixed,float}_{impulse,pulse}.csv`：12 份完整响应数据。列为 stage、time_ui、response；各阶段名称与 REA 图表一致，time_ui 保留软件原始绝对时间轴。Impulse 为离散冲激响应，Pulse 为 1 UI 矩形激励响应；它们不是随机比特波形，也不是 TDR 响应。
`images/10_pulse_response.jpg` 比较最后的 RX FFE 阶段。每一行统一使用固定基线主峰作为时间零点与幅度尺度，未分别归一化浮动曲线；完整数据不裁剪，图仅展示 -5 至 165 UI。
在 REA 中载入对应 JSON、生成眼图，然后在图表视图选择 Impulse Response 或 Pulse Response，可查看软件原始阶段曲线。CSV 来自同一发行版编译模块的可见 GUI 曲线数据；配套图片仅做坐标平移与公共尺度换算。`CONF:WAVE:SAVE` 输出判决点时域波形，不是这两类响应。

Twelve CSVs retain the complete impulse and one-UI pulse responses for the three reflection cases, with columns stage, time_ui and response. Time is the original REA axis. The comparison figure uses the final RX FFE stage and one shared fixed-baseline peak time/amplitude per case. These are not TDR or random-pattern waveform exports. Load the matching config, Generate Eye, then select Impulse Response or Pulse Response to inspect the original stages.
