VerilogA 能否描述异步复位的D触发器?
(parameter定义此处省略)
analog begin
@(cross(V(rstb)-vtrans, -1) or cross(V(clk)-vtrans, +1) )
x=(V(vin)>vtrans);
if (V(rstb)<logic_hgih)
V(vout) <+ logic_low;
else
V(vout) <+ transition (logic_high*x, tdel, trise, tfall);
end
但是报错说transition不能用于“conditional executive”语句中,也就是不能写在if else中?
后来就去掉了transition,改成“ V(vout) <+ V(vin);”,于是又开始报“else<<--?”语法错误。
那么应该怎么写才可以呢?
欢迎大家讨论指教~
谢谢!
好东西一个啊,谢谢分享
Is the simulation done with Cadence or Hspice?
module d_ff(vin_d, vclk, vout_q, vout_qbar, reset, set);
input vclk, vin_d, reset, set;
output vout_q, vout_qbar;
electrical vout_q, vout_qbar, vclk, vin_d, reset, set;
parameter real vlogic_high = 5;
parameter real vlogic_low = 0;
parameter real vtrans_clk = 2.5;
parameter real vtrans = 2.5;
parameter real tdel = 3u from [0:inf);
parameter real trise = 1u from (0:inf);
parameter real tfall = 1u from (0:inf);
integer x;
analog begin
@ (cross(V(vclk) - vtrans_clk, +1 ) or cross(V(reset) - vtrans_clk, +1 ) or cross(V(set) - vtrans_clk, +1 ) )
if ( V(reset) > vtrans_clk )
x = 0;
else if ( V(set) > vtrans_clk )
x = 1;
else
x = ( V(vin_d) > vtrans );
V(vout_q) <+ transition( vlogic_high*x + vlogic_low*!x,
tdel, trise, tfall );
V(vout_qbar) <+ transition( vlogic_high*!x + vlogic_low*x,
tdel, trise, tfall );
end
endmodule
谢谢!请问你是不是做AMS仿真比较多啊?
我是做analog的,如果我现在有一个模拟电路,里面一些开关需要用复杂的数字电路控制,我希望用hdl描述这部分数字电路,然后综合,最后在版图阶段将数字模拟连接。那么我模拟部分的pre layout simulation应该怎么做呢?是否应该用verilogA对数字部分建模,然后仿真?
非常感谢!
混仿了。verilog(digital)+analog
都是标准流程的。
我也是做模拟的,只是恰好碰到了。
请问DFF的verilogA描述 是怎么样的/我在网上查了半天也没有查到。
----------------------
混仿了。verilog(digital)+analog
都是标准流程的。----------
混仿,数字描述是不是用的是VERILOGA描述呢?
谢谢!
大神啊
没有钱的来这个灌点水
VERILOGA用的地方还是很多的
没有钱的来这个灌点水
没有钱的来这个灌点水