探索Bandgap带隙基准:新手友好指南

Bandgap 带隙基准,基准电压,参考电压带启动电路,无版图,适合新手 每个testbench都有单独的仿真状态,直接安装就可以跑了 温度特性曲线 电源抑制比psr仿真 稳定性仿真,整个环路的增益和相位怎么仿真 噪声仿真,要大概知道噪声的主要贡献来源

嘿,新手小伙伴们!今天咱们来聊聊Bandgap带隙基准,这可是模拟电路里相当重要的一块。它能产生稳定的基准电压(也叫参考电压),在各种芯片设计里都起着关键作用。

带启动电路的Bandgap基准

通常情况下,Bandgap带隙基准需要一个启动电路。为啥呢?想象一下,电路刚上电的时候,如果没有启动电路,它可能就卡在某个非预期的稳定状态,没办法正常启动工作。启动电路就像是一个贴心的小助手,帮它一把,让它能顺利进入正常的工作模式。

咱们来看段简单的启动电路代码示例(以Verilog为例):

verilog 复制代码
module startup_circuit (
    input wire power_on,
    output reg startup_signal
);
    reg [3:0] counter;

    always @(posedge power_on or negedge power_on) begin
        if (!power_on) begin
            counter <= 4'b0000;
            startup_signal <= 1'b0;
        end else begin
            if (counter < 4'b1111) begin
                counter <= counter + 1;
            end else begin
                startup_signal <= 1'b1;
            end
        end
    end
endmodule

分析一下这段代码哈,poweron**是电源上电信号。一开始没上电的时候,counter清零,startup signal也为低电平。上电后,counter开始计数,当计满(4'b1111)时,startup_signal就变成高电平,通知主电路可以正常启动啦。

仿真那些事儿

咱们这个项目,每个testbench都有单独的仿真状态,安装好就能直接跑,是不是超方便!

温度特性曲线仿真

温度对Bandgap带隙基准的输出影响可不小。要仿真温度特性曲线,咱们得在testbench里设置不同的温度值,看看基准电压怎么变化。

verilog 复制代码
module tb_bandgap_temperature;
    reg [7:0] temperature;
    wire bandgap_voltage;

    bandgap uut (
      .temperature(temperature),
      .bandgap_voltage(bandgap_voltage)
    );

    initial begin
        for (temperature = 8'd0; temperature <= 8'd100; temperature = temperature + 8'd10) begin
            #10;
            $display("Temperature: %0d, Bandgap Voltage: %0.4f", temperature, bandgap_voltage);
        end
    end
endmodule

在这段代码里,temperature从0开始,每次增加10,通过#10延时观察不同温度下bandgap_voltage的变化,然后打印出来。咱们就可以根据这些数据画出温度特性曲线啦。

电源抑制比(PSR)仿真

PSR用来衡量电路对电源噪声的抑制能力。仿真PSR,咱们得在电源上注入噪声,看看对基准电压的影响。

verilog 复制代码
module tb_bandgap_psr;
    reg power_noise;
    wire bandgap_voltage;

    bandgap uut (
      .power(power_noise),
      .bandgap_voltage(bandgap_voltage)
    );

    initial begin
        power_noise = 0;
        #100;
        power_noise = 1;
        #100;
        power_noise = 0;
        #100;
        $display("PSR test - Voltage changes observed");
    end
endmodule

这里简单地在电源powernoise**上高低电平切换,观察bandgap voltage的变化,以此来评估PSR性能。

稳定性仿真(环路增益和相位)

要知道整个环路的增益和相位,我们一般会用一些工具,比如Cadence的Spectre。在Spectre里,通过设置AC分析,可以得到环路增益和相位的频率响应。不过这里咱们简单说下思路,假设我们有个反馈环路,我们要找到环路的开环增益,这就需要断开反馈路径,然后在断开处注入一个小信号,测量输出的变化。

噪声仿真

噪声仿真呢,要大概知道噪声的主要贡献来源。通常像晶体管的热噪声、闪烁噪声这些都是噪声源。在仿真工具里,一般有相应的模型来模拟这些噪声。比如在一些工具里,设置晶体管的参数时,就可以设置噪声相关的参数。通过仿真结果,我们可以分析哪个部分的噪声对整体噪声贡献最大,从而想办法优化电路。

虽然咱们现在没有版图相关内容,但等熟悉了这些理论和仿真,版图设计也能更好上手啦。新手小伙伴们,赶紧动手试试这些仿真,深入了解Bandgap带隙基准吧!

相关推荐
电子科技圈3 天前
SiFive车规级RISC-V IP获IAR最新版嵌入式开发工具全面支持,加速汽车电子创新
嵌入式硬件·tcp/ip·设计模式·汽车·代码规范·risc-v·代码复审
聊天QQ:6882388610 天前
59.基于matlab的全离散法单自由度稳定极限切深叶瓣图绘制、两自由度稳定极限切深叶瓣图绘制
代码复审
黑客思维者14 天前
智能配电系统代码审查详细设计与实战体系:从缺陷预防到架构守护
网络·架构·代码复审·代码评审
沟通QQ:48773927816 天前
西门子PLC一拖二换热站自控系统程序探索
代码复审
还是转转22 天前
AI Code Review 工具
人工智能·代码复审
奋进的电子工程师1 个月前
如何实现开源组件的安全与合规治理?
安全·开源·代码规范·设计规范·代码复审
mit6.8243 个月前
[code-review] 文件过滤逻辑 | 范围管理器
人工智能·代码复审
帅次3 个月前
系统分析师-软件工程-软件开发环境与工具&CMM&CMMI&软件重用和再工程
性能优化·软件工程·软件构建·需求分析·规格说明书·代码复审·极限编程
mit6.8243 个月前
[code-review] 日志机制 | `LOG_LEVEL`
人工智能·chatgpt·代码复审