知名大厂的逆向ADC电路, SAR ADC ,sigma-delta ADC。 13# 采用的...

发布时间:2026/7/24 8:33:05

知名大厂的逆向ADC电路, SAR ADC ,sigma-delta ADC。 13# 采用的... 知名大厂的逆向ADC电路 SAR ADC ,sigma-delta ADC。 13# 采用的是标准单元库器件可以直接导入到cadence环境下打开。 有对应文档说明适合有较好的模拟IC功底的小伙伴两个逆向逆向工程大厂ADC电路这事吧说难不难说简单也不简单。手里拿到某大厂SAR ADC和Sigma-Delta ADC的GDS文件时第一反应是直接拿显微镜照版图——后来发现人家给的是标准单元库版本这波操作属实有点骚。先看SAR ADC这货。标准单元库里的比较器模块直接用了动态锁存结构verilogA模型里藏着这样的彩蛋module dynamic_comparator(inp, inn, clk, out); input inp, inn, clk; output reg out; always (posedge clk) begin if (inp inn 0.1) out 1b1; // 这个0.1的offset有意思 else out 1b0; end endmodule注意看注释那行的0.1电压偏移明显是用来对抗比较器kickback noise的骚操作。逆向时候发现DAC阵列电容排布不是常规二进制权重而是搞了个温度计码混合结构这就解释了为什么版图里cap阵列长得像俄罗斯方块。知名大厂的逆向ADC电路 SAR ADC ,sigma-delta ADC。 13# 采用的是标准单元库器件可以直接导入到cadence环境下打开。 有对应文档说明适合有较好的模拟IC功底的小伙伴两个逆向Sigma-Delta这边更有意思。二阶调制器的系数配置直接写在电路网表里G1 (vint1 0) integrator vinn 0 0.5 G2 (vint2 0) integrator vint1 0 0.3 Equant (vq 0) quantizer vint2 0 2.5这个0.5和0.3的积分系数可不是拍脑袋定的逆向发现和时钟频率存在sqrt(2)的玄学关系。最骚的是数字抽取滤波器用了个半带滤波器套娃结构verilog代码里藏着这样的骚操作always (posedge clk) begin if(cnt[3:0]4d7) begin // 每8个周期抽一次 dec_data {acc_reg[23], acc_reg[23:8]}; acc_reg 16d0; end else begin acc_reg acc_reg (data_in ? 24sh7FFFFF : 24sh800000); end end这个24位累加器高位截断的操作实测信噪比比常规方法高了3dB。逆向时发现版图里数字部分和模拟模块的电源走线刻意绕成麻花状估计是防衬底噪声的神操作。在Cadence里导单元库时要注意个坑工艺文件里的layer mapping和PDK默认设置冲突得手动改display.drf里M5到MEOL的映射关系。有个验证脚本挺实用set layers [dbGet top.defs] foreach layer $layers { if {[regexp MET5 $layer]} { dbSetLayerPurpose $layer drawing 8 } }最后说个冷知识这俩ADC的ESD结构居然共用同一个IO pad版图里能看到DAC开关阵列和比较器直接怼在电源轨旁边这种走钢丝设计没点真功夫还真不敢这么玩。逆向完毕的最大感受——大厂工程师的脑洞永远比教科书野多了。

相关新闻