Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Problem in creating logic to electrical connect module in verilogams in Cadence ADE

Status
Not open for further replies.

Indrajit Das

Newbie level 6
Newbie level 6
Joined
Jul 2, 2013
Messages
12
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Visit site
Activity points
1,413
Hi,



I am trying to make a logic to electrical connect module that can convert logic ( '1' or '0') at the input side to electrical pulses at the output side, implementing in verilog-ams, its required for one of the project that I am doing. But, the problem that I am having is that, its running and simulation is taking place, but irrespective of whether I give '1 or a logic '0'', the output is staying at 818.18mV. My Vhigh= 1.8 V and Vlow= 0v.

I am attaching the code that I am trying to implement....

(Taken from the designers guide only....... link: https://www.designers-guide.org/Books/dg-vams/ch4/ch4-listing18.tgz)


// Logic to Electrical Connect Module
//
// Version 1a, 1 June 04
//
// Olaf Zinke
//
// Downloaded from The Designer's Guide Community (www.designers-guide.org).
// Post any questions on www.designers-guide.org/Forum.
// Taken from "The Designer's Guide to Verilog-AMS" by Kundert & Zinke.
// Chapter 4, Listing 18.

`include "disciplines.vams"
`timescale 1ns / 10ps

connectmodule d2a (out, in);
parameter real v0 = 0.0; // output voltage for a logic 0 (V)
parameter real v1 = 5.0; // output voltage for a logic 1 (V)
parameter real vx = 2.5; // output voltage for a logic x (V)
parameter real vz = 5.0; // output voltage for a logic z (V)
parameter real r0 = 1k from (0:inf); // output resistance for a logic 0 (Ohms)
parameter real r1 = 1k from (0:inf); // output resistance for a logic 1 (Ohms)
parameter real rx = 100 from (0:inf); // output resistance for a logic x (Ohms)
parameter real rz = 1M from (0:inf); // output resistance for a logic z (Ohms)
parameter real tr=1n from [0:inf); // rise time (s)
parameter real tf=1n from [0:inf); // fall time (s)
input in;
output out;
logic in;
electrical out;
real v, r;

assign in = in;

initial begin
case(in)
1'b0: begin v = v0; r = r0; end
1'b1: begin v = v1; r = r1; end
1'bx: begin v = vx; r = rx; end
1'bz: begin v = vz; r = rz; end
endcase
end

always @in begin
case(in)
1'b0: begin v = v0; r = r0; end
1'b1: begin v = v1; r = r1; end
1'bx: begin v = vx; r = rx; end
1'bz: begin v = vz; r = rz; end
endcase
end

analog
V(out) <+ transition(v, 0, tr, tf) + transition(r, 0, tr, tf)*I(out);
endmodule


I am trying to implement it in cadence ADE with AMS simulator.

Regards,

Indrajit
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top