可运行实验:AD01–AD20

版本2026-10-04。源码见 ADC实验目录,实际工具结果见 进度记录。个人理解状态继续填 学习表,不会自动代填。

逐课实验入口

数值结果统一存results/models/experiments.json,含seed、参数、单位、各课记录和模型源文件SHA-256。某课有JSON记录不代表存在该课RTL/物理证据。

课号 可运行内容 源码与证据
AD01 控制/数据/clock/配置/吞吐清单 experiments.py架构记录,人工对照实际ADC
AD02 十次决策、全部1024码、比较迟到/超时/复位 sar_controller + tb_architectures,RTL
AD03 bubble/边界歧义、65536二值向量 flash_encoder,模型+RTL
AD04 residue恒等式、100份stage对齐及错标签 pipeline_align,模型+RTL
AD05 DWA均衡、静态单位误差、变量q/非法q dwa_encoder,模型+RTL;动态DAC/环路未仿真
AD06 四lane每25core周期调度 ti_adc_backend,功能RTL;物理多相clock未实现
AD07 不同/随机延迟、三通道同拍、槽环绕/故障 ti_reference + tb_ti,独立台账+RTL
AD08 深度8、10/14ns异步域、满空/环绕/协调复位 adc_async_fifo + tb_fifo;不模拟真实亚稳态
AD09 有/无失配采样、量化、噪声、jitter/RC experiments.py ti_signal,数值模型
AD10 offset DFT、gain镜像及FFT归一化 experiments.py,频谱模型
AD11 固定skew解析验证、随机jitter Monte Carlo experiments.py,模型/统计
AD12 RC频率相关误差、正弦秩不足拒绝 experiments.py,模型与失败输入
AD13 ±512LSB、每点每lane8192份、0.7LSB dither experiments.py,host前台估计
AD14 sin/cos/DC拟合与skew experiments.py,理想前端模型;无时钟trim RTL
AD15 14103定点向量、RNE/saturation/flush、导数校正 adc_fixed_correct + tb_fixed;timing仅模型
AD16 平稳均值跟踪与lane相关包络误收敛 experiments.py,条件化offset模型;无通用后台RTL
AD17 pending忙/非法范围/帧提交/在途副本/统计快照 ti_adc_backend + ti_reference,RTL
AD18 ADC→系数→RTL→65536连续样本FFT stream_reference + tb_stream,模型/RTL
AD19 七top映射、timing intent、setup run_genus + check_synth,以实际结果为准
AD20 72Mbit/s负载、假设αCV²f、集成说明 模型预算/交付记录;真实功耗/PVT/物理另做

运行方法

flowchart LR
    S[采样调度 / sample_id] --> A[四 lane ADC 行为模型]
    A --> R[独立返回 / tag 检查 / 八槽重排]
    C[host DC 估计] --> B[pending / active 系数]
    B --> R
    R --> F[P=4 定点校正]
    F --> O[18bit F4 push 输出]
    O --> V[独立整数参考 / FFT]

重排和校正都是寄存器、mux、加法器与乘法器,使用100MHz core;真实多相采样时钟不由此框图证明。

部署、models→sim→stream→synth 命令、完成标记与结果收集统一见 运行指南。逐课源码与证据类型见上表;本页维护接口假设和结果解释,最新验证摘要见 进度。

学习与接口假设

AD02先画trial,再读kept/trial/bit index寄存器。输入在start前完成acquisition并保持;RTL负责bit决策,真实采样开关/异步比较器另设计。AD03的16阈值有17种理想计数0…16,输出5bit,不是标准4bit/15比较器Flash。RTL只规定二值输入,X可能传播,物理metastability未被滤波器解决。

AD04用signed2 trit、signed8/F4 residue、signed12/F8输出;模拟residue范围由前端保证。AD07的sample_id来源是采样而非结果返回,先看独立台账再看slot。25周期间隔与≤60周期转换最多容许三lane同拍;四lane同拍违例案例会先在80周期缺样HALT。

AD15参考用Fraction精确有理数/nearest-even,RTL用宽乘积与余数判断,避免复制同一表达式做验证。18bit/F4输出除16才是ADC LSB,增加小数位不意味着模拟ENOB提高。

AD17整组系数直接从commit接口输入,可由SPI寄存器桥接,本套未新增SPI/APB桥。slot存实际系数,不仅存bank号。epoch由外部协调复位提供,运行时保持不变;独立域重启握手另做。

TI每个slot固定属于lane=slot mod4,因此合法写回只有一个lane来源;RTL按槽展开写回,验证完整tag后才写,不推导任意四写口RAM。全局诊断tick保留64bit,槽内时间只存低8bit:占用不超过80周期、200周期后重用、缺样80周期必HALT,故年龄模256无歧义。normal/random测试跨过多次低位时间回绕;不能将此缩位移植到任意长延迟设计。

时序与错误

首版P=4:采样边沿0、重排边沿80,out_valid在边沿84之后更新,下游在85边沿接受,delivered在85计数。区别寄存器更新与下游接受;snapshot记录快照边沿前的统计,同拍事件下次可见。

missing/late/duplicate/wrong tag/epoch/lane、槽冲突、sink违约、id/version guard均sticky HALT,清未交付valid并拒绝同拍commit。恢复需协调reset取消旧转换;reset_old验证旧epoch不混入新样本。guard测试在TB中加速长计数器,不改变综合RTL。

32bit id到0xfffffffc、16bit coeff version即将重用时走guard fault,随后协调重启;无损drain/无限采集不是首版能力。FIFO要求两域协调reset,不能仅清一个域继续采集。

实现和指标边界

七 top 的映射/setup、接口回归与连续流结果统一见 ADC 验证摘要。以下说明如何把其中的时序与频谱结果对应到电路。

TI最慢路径是校正gain寄存器到乘积寄存器:10ns周期减100ps setup、200ps uncertainty,允许9700ps,报告数据路径7383ps,剩2317ps。沿路径查看FF clk-to-Q、xor/nand/inv、fanout/load,再解释为什么乘法器虽有流水仍可能是瓶颈;不能只凭“P=4”推断每段延迟相等。当前clock net latency为理想0,wireload为教学估计,不是CTS/提取后的结果。

setup用100MHz、1ns input/output delay、core uncertainty0.2ns、输入transition0.1ns、load0.02库电容单位的教学预算。FIFO使用10/14ns两clock,仅对第一级同步器D及稳定payload跨域路径设例外,同域第二级仍检查。Gray bus skew/max delay、MTBF、物理负载和独立复位需对应实现约束。

当前Genus report_timing不支持early/hold选项,这套只报告逻辑setup、timing intent和mapped cells。没有执行hold/CTS、多角、寄生、门级或形式等价。

FFT采用N65536/bin6001、Fs4MHz、A1000LSB,丢弃四份旧版本输出后保留连续窗口;同时记录SFDR/SNDR。offset/gain合成失配下的改善不能说明真实skew/带宽/时钟噪声已消除。参数、seed、版本和脚本都在报告中记录,实际ADC目标需重新填写预算。