news 2026/7/23 0:53:43

12bit 100MHz pipelined SAR ADC模数转换器 设计 65nm工艺,电...

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
12bit 100MHz pipelined SAR ADC模数转换器 设计 65nm工艺,电...

12bit 100MHz pipelined SAR ADC模数转换器 设计 65nm工艺,电源电压1.2V,ENOB=11.6 有详细教程原理文档 有工艺库,直接导入自己的cadence [绿圆]结构: 栅压自举开关 CDAC 两级动态比较器 第一级6位SAR ADC 余量放大器 第二级8位SAR ADC 同步和异步SAR logic都有 原理仿真讲解,文档里都有 适合入门pipelined ADC的拿来练手

在65nm工艺下折腾1.2V供电的ADC就像走钢丝——电源电压低到连阈值电压都要斤斤计较。咱们今天要聊的这个pipelined SAR结构有点意思,第一级6bit SAR和第二级8bit SAR中间夹着个余量放大器,刚好凑够14bit再砍到12bit,实际测出来ENOB 11.6也算对得起观众。

先看输入端的栅压自举开关,这货的Verilog-A模型得这么写:

`include "constants.vams"

module boot_switch (vin, vout, clk);

electrical vin, vout, clk;

parameter real vdd=1.2;

analog begin

@(cross(V(clk)-vdd/2, +1)) begin

V(vout) <+ V(vin); //采样瞬间的电荷注入

end

@(cross(V(clk)-vdd/2, -1)) begin

V(vout) <+ 0; //关断时自动复位

end

end

endmodule

这代码看着简单,实际操作时栅氧可靠性要老命。特别是当输入信号摆幅接近1.2V时,得盯着工艺库里的tox参数算栅压,别让场效应管长期工作在3MV/cm以上的电场强度。

CDAC阵列的匹配才是重头戏。拿65nm工艺的MIM电容来说,单位电容得选0.5fF以上才靠谱。在layout里玩马赛克式交叉耦合,代码里得这么设置匹配参数:

createfloorplan -sidelength 12u -unit_cap 0.5fF

setcapmatching( method=chess, dummy_ratio=0.2 )

两级动态比较器设计最骚的操作是在预放大级加了个正反馈锁存。仿真时得盯着延迟曲线看,当输入差小于200uV时,比较时间直接飙到500ps以上——这时候得手动调管子尺寸:

simWave comparator.tr0

plot tran voutp voutn

meas tran tdelay when voutp-voutn=0.6*vdd rise=last

说到SAR逻辑的状态机,同步模式下用verilog写个状态转移倒是不难,但真跑起来还是异步模式更带劲。注意在异步逻辑里插几个延时单元平衡时序:

always @(posedge comp_out) begin

state <= next_state;

#10ps dacctrl <= newcode; //等电荷稳定再切电容

end

余量放大器这个磨人的小妖精,得在20MHz带宽和80dB增益之间走平衡木。套用工艺库里的折叠共源共栅结构,偏置电流设到200uA刚刚好。实测闭环稳定性时,突然发现相位裕度只有45度——赶紧在补偿电容上并联个10kΩ电阻,把零点往前拽。

最后跑个整体仿真,眼瞅着FFT结果里的三次谐波冒头了。翻出工艺文档查了查,原来是MOM电容的电压系数在作妖。改用地阱隔离的MIM电容后,SFDR立马飙到78dBc。所以说啊,ADC设计就是和工艺偏差斗智斗勇的过程,有时候改个版图比调电路更管用。

这项目最爽的是自带全套工艺库,直接把PDK往Cadence里一扔,吃个午饭的功夫就能开搞。仿真文档里连蒙特卡洛分析脚本都准备好了,跑个五百次迭代看看良率,比相亲还刺激——总有那么几个corner case的DNL会突破±1LSB。不过对于练手来说,能把主通路调通已经算入门了,剩下的玄学问题留给流片后的啤酒解决吧。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/21 20:39:29

终极指南:Qwen3-30B-A3B多GPU分布式推理完整解决方案

终极指南&#xff1a;Qwen3-30B-A3B多GPU分布式推理完整解决方案 【免费下载链接】Qwen3-30B-A3B Qwen3-30B-A3B具有以下特点&#xff1a; 类型&#xff1a;因果语言模型 训练阶段&#xff1a;预训练和后训练 参数数量&#xff1a;总计 305 亿&#xff0c;其中已激活 33 亿 参数…

作者头像 李华
网站建设 2026/7/22 8:14:49

腾讯混元语音驱动数字人技术:重塑动态视频生成新范式

腾讯混元语音驱动数字人技术&#xff1a;重塑动态视频生成新范式 【免费下载链接】HunyuanVideo-Avatar HunyuanVideo-Avatar&#xff1a;基于多模态扩散Transformer的音频驱动人像动画模型&#xff0c;支持生成高动态、情感可控的多角色对话视频。输入任意风格头像图片与音频&…

作者头像 李华
网站建设 2026/7/20 20:35:25

【MicroPython编程-ESP32篇】-Web页面显示DHT11传感器数据

Web页面显示DHT11传感器数据 文章目录 Web页面显示DHT11传感器数据 1、DHT11介绍 2、软件准备 3、硬件准备与接线 4、代码实现 4.1 连接WiFi 4.2 Web服务器实现 在本文中,将介绍在ESP32开发板中,通过MicroPython创建一个简单的 Web 服务器,以显示来自 DHT11 或 DHT22 温度和…

作者头像 李华
网站建设 2026/7/21 12:21:22

DCDC电池模型:基于Matlab 2018b及以上的应用

DCDC电池模型&#xff0c;matlab2018b及以上&#xff08;可改版&#xff09;咱们今天来点硬核的玩转DCDC电池模型。别被那些公式吓到&#xff0c;直接上Matlab实操才是王道&#xff08;2018b以上版本都行&#xff09;。打开Simulink先建个空白模型&#xff0c;咱们从电源到负载…

作者头像 李华
网站建设 2026/7/21 9:41:57

Day 38 - Dataset 和 DataLoader

在深度学习任务中&#xff0c;数据处理是至关重要的一环。面对大规模数据集&#xff0c;显存往往无法一次性存储所有数据&#xff0c;因此需要采用分批训练&#xff08;Batch Training&#xff09;的策略。PyTorch 提供了两个核心工具类来解决数据加载和预处理的问题&#xff1…

作者头像 李华
网站建设 2026/7/22 9:29:29

[C#][winform]基于yolov11的打架行为检测系统C#源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】在社会治安管理朝着智能化、精细化方向加速推进的重要阶段&#xff0c;及时且精准地监测公共场所中的打架行为&#xff0c;已然成为维护社会秩序稳定、保障公民人身安全以及提升城市治理水平的核心任务之一。公共场所作为人员密集且流动频繁的区域&#xff0c;其环…

作者头像 李华