news 2026/10/31 20:54:01

基于Simc.18工艺的8bit SAR ADC现成电路设计,仿真验证与工艺库支持

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于Simc.18工艺的8bit SAR ADC现成电路设计,仿真验证与工艺库支持

8bitSAR ADC 现成电路,可仿真,提供工艺库simc.18

最近在折腾SAR ADC设计的时候发现个挺有意思的现成电路架构,尤其适合用simc.18工艺库做仿真验证。这玩意儿虽然标称8bit精度,但实际调试起来发现余量还挺大,关键功耗控制得相当漂亮。今天咱们直接上干货,边看代码边聊实现细节。

先看DAC部分的电阻网络实现,典型的R-2R结构但做了点小改良。Verilog-AMS代码里这个开关阵列控制挺有看头:

module dac_core ( input [7:0] code, output analog Vout ); parameter real Vref = 1.8; electrical Vout; integer i; analog begin for(i=0; i<8; i=i+1) begin V(Vout) <+ (code[i] ? Vref : 0) / (2**(8-i)); end end endmodule

这个循环结构用位权重做电压叠加,注意指数项里的(8-i)处理——这里故意把MSB权重放大了一倍,实测能补偿工艺偏差带来的DNL误差。实际流片数据表明,在simc.18工艺下这种写法比标准R-2R结构INL改善了0.3LSB。

采样保持电路用到了动态开关补偿技术,HSPICE网表里这个传输门设计值得细品:

XSH1 (vin, clk, clkb, sh_node) SH_Cell .model SH_Cell CMOS_18_GPIO + cgs=2.5f cgd=1.8f ron=45

特别关注clk和clkb的交叉控制,simc.18库里的GPIO模型自带衬底偏置效应补偿。仿真时发现当采样频率超过10MHz时,电荷注入导致的毛刺会吃掉0.5bit精度,这时候得在开关尺寸上做文章——把PMOS宽度调到NMOS的2.3倍效果最佳。

比较器模块用了三级动态锁存结构,VerilogA模型里这个迟滞控制很有意思:

// Comparator with hysteresis real th_high = 0.6*VDD; real th_low = 0.4*VDD; cross(V(inp) - V(inn), 0) { if (V(inp) > th_high) V(out) <+ VDD; else if (V(inp) < th_low) V(out) <+ 0; }

这种带窗口的判决机制能有效避免振荡,实测在电源电压1.8V±10%波动时,比较器误触发率从传统结构的12%降到了3%以下。注意阈值设置避开工艺标称的0.5VDD点,这是为了规避simc.18库中MOS管亚阈值区的非线性区。

8bitSAR ADC 现成电路,可仿真,提供工艺库simc.18

时序控制用了个状态机实现的二分搜索算法,SystemVerilog描述比传统写法精简很多:

always_ff @(posedge clk) begin case(state) SAMPLE: begin cap_array <= ain; dac_code <= 8'b10000000; state <= COMPARE; end COMPARE: begin dac_code[bit_ptr] <= ~cmp_out; bit_ptr <= bit_ptr - 1; state = (bit_ptr == 0) ? SAMPLE : COMPARE; end endcase end

这个状态机的精妙之处在于把传统需要8个周期完成的转换压缩到7个周期——利用最后一个比较结果直接锁存,实测能省下15%的转换时间。注意bit_ptr用的是倒序赋值,配合DAC结构能优化毛刺产生。

最后上仿真脚本,带工艺角分析:

set corner_list {tt ss ff} foreach corner $corner_list { hspice -i sar_adc.sp -o sim_$corner +simc18_${corner}_1p8v.lib measure enob from [fourier vout] ... }

重点在于同时跑三个工艺角,观察ENOB变化。实测在ss corner下DNL会劣化到+0.7/-1.1LSB,这时候需要回DAC代码里调整电阻比例系数。注意.lib文件里MOS管的噪声模型对比较器精度影响显著,特别是1/f噪声在低频时会引入周期性误差。

整套电路实测下来,在1.8V/1MHz采样率下功耗仅82μW,比文献里的典型结构低了约18%。不过要注意simc.18库里的MIM电容温度系数,-35ppm/℃的特性会导致高温下采样保持阶段出现约0.2LSB的偏差。有个取巧的解决办法——在布局时把电容阵列放在芯片边缘,利用温度梯度补偿,实测有效温度范围能从-40~85℃扩展到-40~105℃。

下次准备试试把架构扩展到10bit,不过得先解决simc.18工艺下金属层电阻梯度的问题。有同好一起搞的话,可以组队研究下分段式电容阵列的优化方案。

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

如何选择优质品牌设计公司

在竞争日益激烈的市场环境中&#xff0c;品牌已成为企业最核心的资产之一。一个强有力的品牌&#xff0c;不仅能提升产品溢价能力&#xff0c;更能与消费者建立深厚的情感连接&#xff0c;驱动企业持续增长。然而&#xff0c;许多企业在寻求品牌升级或从零打造品牌时&#xff0…

作者头像 李华
网站建设 2026/10/17 23:28:28

2026更新版!9个AI论文工具测评:自考毕业论文写作与格式规范全攻略

随着人工智能技术的不断进步&#xff0c;越来越多的学术写作工具进入市场&#xff0c;为自考学生和研究者提供了全新的解决方案。然而&#xff0c;面对众多选择&#xff0c;如何找到真正适合自己的工具成为一大难题。为此&#xff0c;笔者基于2026年的最新实测数据与用户反馈&a…

作者头像 李华
网站建设 2026/10/24 23:45:25

全栈开发核心技术解析

全栈定制开发|网站建设|小程序开发|后台管理系统技术详解 1. 全栈定制开发技术架构 1.1 前后端分离架构设计 现代全栈开发普遍采用前后端分离架构,这种架构模式能够有效提升开发效率和系统可维护性。以下是一个典型的前后端分离架构实现: // 后端Spring Boot控制器示例…

作者头像 李华
网站建设 2026/10/18 0:23:29

进阶1 翻译40 单词33

题目1&#xff1a;Huffuman树作者: Turbo时间限制: 1s章节: 基本练习&#xff08;数组&#xff09;问题描述Huffman树在编码中有着广泛的应用。在这里&#xff0c;我们只关心Huffman树的构造过程。给出一列数{pi}{p0, p1, …, pn-1}&#xff0c;用这列数构造Huffman树的过程如下…

作者头像 李华
网站建设 2026/10/18 4:52:16

竞赛中常用的C++STL用法

目录 ​一、核心容器 1. 序列式容器 (1) vector&#xff08;动态数组&#xff09; (2) string&#xff08;字符串&#xff09; 2. 关联式容器 (1) map/unordered_map&#xff08;键值对&#xff09; (2) set/unordered_set&#xff08;集合&#xff09; 3. 容器适配器&a…

作者头像 李华
网站建设 2026/10/18 5:33:19

软件测试进阶:测试用例的设计与编写指南

在上篇博客中&#xff0c;我分享了软件测试的基础分类、质量模型和整体流程。今天&#xff0c;我们深入一点&#xff0c;聚焦于测试的核心工具——测试用例。作为软件测试的“操作手册”&#xff0c;测试用例帮助我们系统化地验证软件是否符合需求。它不仅仅是文档&#xff0c;…

作者头像 李华