当前位置:文档之家› 数模混合仿真 胡宗杰

数模混合仿真 胡宗杰


X2
B
C
将上面电路打包为digital_mix
digital_mix IN D digital2 A X1 digital3 E OUT1 B A analog2 digital4 X3 C F OUT2 将这段代码另存为一个digital_mix.v 文件
MODULE digital_mix(IN,OUT1,OUT2) INPUT IN; OUTPUT OUT1,OUT2; WIRE X1,X2,X3; Digital digital2(.A(X1),.D(IN)); Digital digital3(.B(X2),.E(OUT1)); Digital digital4(.C(X3),.F(OUT2)); AD2 analog2(.B(X2),.C(X3),.A(X1)); ENDMODULE
数模混合仿真
by 胡宗杰
数模混合仿真概念
电路系统
数字电路 Verilog 模拟电路 晶体管 数字电路 Verilog描述 模拟电路 晶体管级描述
数模混合电路架构
数字电路C
模拟电路A L1 A B C 数字电路B D E L3 L5 F H L4
G
L2
模拟电路B
in out
模拟电路与数字电路相连电路示例
all prepared
1.testbench.v 2.analog_top.spi 3.vcsAD.init
准备好待执行文件和环境后,运行指令,产生输 出文件
1.Vcs ./verilog/testbench.v –ad=vcsAD.init –o simv 将电路网表提交给vcs和xa仿真器,生成可执行二进制文件 simv
X1
OUT1
OUT2 仅实现了互连,但仿真器要如何 去仿真呢?? 且这些X1,X2,X3等线在哪里定义 呢?
X 3
analog_mix1
OUT3
IN OUT
testbench
testbench.v
testbench digital_mix1 X1 IN OUT1 X2 digital_mix2 OUT1 OUT1 IN
选择xa作为模拟电路仿真工具,模拟电路网表来自analog_top.spi xa.cmd作为模拟仿真器设置选项 • • • • • The a2d Command &The d2a command The duplicate_net_inst_name Command 允许模块实例和线使用相同名称 Optimize_shadowfile; 阻止数字电路与数字电路之间的接口优化,从而减少接口端点 The param_pass Command ;允许数字端口和模拟端口通信 The print_thru_net Command lower the speed print_thru_net a2a|d2d|all; Use the print_thru_net command to force NanoSim/HSIM/CustomSim to instantiate a dummy A/D or D/A converter at the given mixed-net to make an image of through-nets visible in the other domain.
.SUBCKT AD1 D E 内部连接关系省去 .ends AD1
C .SUBCKT AD2 A B C 内部连接关系省去 .ends AD2 另存为AD2.spi文件
Just care 对外接口!!!
另存为AD1.spi文件
模拟数字端口通信
纯数字电路模块 digital1
IN x1 A
纯模拟电路 analog1
2.Simv 得到输出结果
总结: 重点在于对电路系统本身的理解,明确电 路的层次,配置正确的接口
反 相 器 1
与 非 门
或 非 门
B
D
E
将这段代码另存为一个 analog_mix.v文件
模拟电路端口全部与数字电路相连
IN D digital2 A X1 digital3 E OUT1 B A analog2 digital4 X3 C F OUT2
Digital digital2(.A(X1),.D(IN)); Digital digital3(.B(X2),.E(OUT1)); Digital digital4(.C(X3),.F(OUT2)); AD2 analog2(.B(X2),.C(X3),.A(X1));
• • • • The duplicate_net_inst_name Command 允许模块实例和线使用相同名称 Optimize_shadowfile; 阻止数字电路与数字电路之间的接口优化,从而减少接口端点 The param_pass Command ;允许数字端口和模拟端口通信 The print_thru_net Command lower the speed
数模混合仿真命令
vcs ./verilog/testbench.v –ad=vcsAD.init–o my_simv
测试平台
混合仿真选项设置
输出二进制可执行文件
OK
vcsAD.init
• The choose Command
choose xa –n analog_top.spi –c xa.cmd;
Interface A/D and D/A Signal Conversions
连接模拟和数字电路的接口在进行通信时要进行数据转换 模拟电路 数字电路 信号从模拟电路进入数字电路,需要将模拟电信号转换为数字 逻辑信号,需要一个阈值判断 a2d loth=0.35 hith=0.65 node=top.dout; 同样信号从数字电路进入模拟电路,需要将数字逻辑转换为模 拟电信号 D2a hiv=3 lov=0 cell=inva port=a rf_time=100p delay=50p;
and A B C
纯数字电路module定义
纯数字电路模块 module Digital
Module <模块名> (端口名); Module Digital(A,B); INPUT A; OUTPUT B; //内部逻辑描述此处略去 Endmodule
A
Байду номын сангаас
反相器1
与非门
或非门
B
因此我们将其打包为一个 仅包含外界接口的module, 另存为digital.v文件 内部逻辑关系等verilog描 述由数字电路工程师提供
将用到的模拟电路文件全部打包为analog_top.spi
analog_top.spi AD1.spi opa1 opa2
AD2.spi opa1
opa 2 B opa2 C
D
E
A
.param VDDVAL=3v .global vdd gnd vvdd vdd 0 dc VDDVAL vgnd gnd 0 dc 0v .inc models .inc AD1.spi .inc AD2.spi
testbench作用: • 定义顶层电路互连线 • 连接所有顶层电路 • 初始化,添加激励 • 确定输入文件来源 • 确定输出数据存放位置
OUT2
X3
Module testbench(); wire X1,X2,X3; OUT2 wire OUT1,OUT2,OUT3; OUT2 Digital_mix digtal_mix1(.IN(X1),.OUT1(X2),.OUT2(X3)); Digital_mix digital_mix2(.IN(X2),.OUT1(OUT1),.OUT2(OUT2)); analog_mix analog_mix1(.IN(X3),.OUT(OUT3)); Initial begin//记录输出文件、输入数据文件、设置仿真时间等 analog_mix1 $dumpfile(“verilog.vcd”);$dumpvars(0,testbench.v); #1000; OUT3 $finish; IN OUT end endmodule „inc“analog_mix.v‟‟ „inc “digital_mix.v” „inc “digital.v”
opa1 opa2 OUT
反相 器1
与 非 门
或 非 门
B
D
E
Digital digital1( .A(IN), .B(x1)); AD1 analog1(.D(x1),.E(OUT));
如此实现数字和模拟的互连
将上面电路打包为analog_mix
analog_mix digital1 IN X1 A analog1 opa1 opa2 OUT MODULE analog_mix(IN,OUT) INPUT IN; OUTPUT OUT; WIRE X1; Digital digital1(.A(IN),.D(X1)); AD1 analog1(.D(X1),.E(OUT)); ENDMODULE
X2
B
C
整个电路系统的连接 Digital_mix digtal_mix1(.IN(X1),.OUT1(X2),.OUT2(X3));
Digital_mix digital_mix2(.IN(X2),.OUT1(OUT1),.OUT2(OUT2)); analog_mix analog_mix1(.IN(X3),.OUT(OUT3)); digital_mix1 digital_mix2 X2 IN OUT1 OUT1 IN OUT2 OUT2
vcsAD.init
• The choose Command
choose xa –n analog_top.spi –c xa.cmd;
选择xa作为模拟电路仿真工具,模拟电路网表来自analog_top.spi xa.cmd作为模拟仿真器设置选项
相关主题