# 历史笔记索引(`my_exciter\Notes\`) 约定:**`PRxx.md` = 需求**(用户提出的要做什么),**`Taskxx.md` = 方案 / 实现总结** (怎么做的、踩了什么坑、验证结论)。`discussNN-*.md` 是过程讨论。 遇到相关主题**先读对应的 Task 文件**——里面的结论往往能省掉一整轮硬件迭代。 | 主题 | 需求 | 方案 / 总结 | 结论要点 | |---|---|---|---| | 从 EMV7.1 移植到 SMOD | `PR00.md`、`PR01.md` | `Task00.md`、`Task01.md` | 引脚重排到 `smod_ioplanning.xdc`;IO bank / 自由引脚勘查脚本也在 Notes 里(`task01_*.tcl`) | | ADRV9009 JESD + SPI 寄存器核对 | `PR02.md` | `Task02.md` | JESD204B TX/RX lock status 寄存器位置 | | TSoIP(网口 2 收 IP 流取 TS) | `PR03.md` | — | 根因见 memory `tsoip-root-cause-0x50` | | Tuner(473 MHz RF → TS → 调制核) | `PR04.md` | `Task04.md` | demod 是 **Sony CXD2878 + FREIA**,不是 MN88436;移植 EMV9.3 的 `sonytuner/`;ILA 实测 19.41 Mbps、`ts_lock_a=1`、0x47 间隔 188 | | ATSC 信号质量分析(RX1 路) | `PR06.md` | `Task06.md` | 用 RX1 接收自发信号,算带肩 + 8VSB 星座 + SNR,网页 `sys_spectrum.html` 显示 | | 改用 ORx→DPD 40 MHz 反馈 | `PR06-1.md` | `Task06-1.md` | 反馈通道换成 ORx | | ORx/RX1 双通道可切换 + DPD 内部 AGC | `PR06-2.md` | `Task06-2.md` | 共用滤波下采样;大量频谱截图见 `PR06-2_*.png`,索引在 `PR06-2_频谱截图索引.md` | | 本 skill 的由来 | `PR07.md` | (本 skill) | 要求:SMOD ATSC 开发总入口,联调走 `/fpga-imx6-flow` | ## 其它散落资源 - `Notes/*.png` —— 历次频谱 / 星座 / 波形截图,文件名带 iter 号,配合 Task 文件看 - `Notes/create_ila_adrv9009_fb.tcl` —— 建 ILA IP 的 Tcl - `Notes/task01_*.tcl` —— IO / DSP / 未约束端口的勘查脚本 - `Notes/workflow_state.db`、`workflow_threads.json` —— fpga-imx6-flow 的 LangGraph 状态 - `RU_golden/skills/*.py` —— 早期 RMII/GMII 抓包分析脚本(网口调试用) - `bitstream/ila_*.csv`、`orx_*.csv` —— 历次 ILA 导出,交给 `/fft-analyse` 复现频谱 ## 已固化的经验(别重新踩) - 上电时序铁律;上电后等 `sys init over` 再连 JTAG,否则 TX 死。 - WNS -9~-13 ns 是 JESD204 `init_seq_data` 的既有 false path,与功能无关。 - imx6 dropbear 老:paramiko 2.12 + `cat >` 传文件(无 SFTP)。 - 设备上 `imx_atsc_app.rx1` 和 `M=2/lane 0x04` 变体会打断 TX;git `HEAD` 的版本是好的。 - 远程升级走 TCP 1234(不是网页!),只能传 `_update.mcs`,传错文件会导致冷启动后 FPGA 不跑。 - 远程升级"卡在擦除"通常是 programmer 已报错(rstate=0x7),imx6 轮询不看 ERROR 位。见 `/fpga_update`。 - 带调试 ILA 的 bit 下 `i2cget` 读 FPGA 寄存器不可靠。