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.

Current Mode Logic implementation for an AND/NAND gate

Status
Not open for further replies.

ngox

Member level 2
Joined
Aug 4, 2011
Messages
50
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Activity points
1,718
Hi, I am trying to implement an AND/NAND gate using current mode logic, and seem to have some trouble getting the output to exhibit low jitter. From looking at the transient waveform, there does not appear to be any glaring issues, but upon inspecting the eye diagram, it can easily be seen that the signal is quite poor. I have ensured that all transistors are operating in the saturation region (I've built CML XOR and DFFs with no problem), and have also verified that this is not a speed issue as I have lowered the input rates to drastically low rates, and the problem still persists. If anyone can advise on this matter, it would help a great deal.

Pictures attached are the circuit and waveforms. The inputs go to the wires that are not connected to anything in the schematic. The wave output is that of a NAND logic. Thanks!

AND_SCHEMATIC.pngANDWAVES.pngANDWAVES_EYE.png
 

First, in current-mode logic none of the transistors should ever saturate; they all operate in the active region to avoid saturation delays.

Second, normally the size of the eye in the eye diagram is determined by the propagation delays, the rise/fall times of the signals, and the time between signal transition, so I don't see how the circuit would fail at low speeds (unless the time between transitions is still short).
 

First, in current-mode logic none of the transistors should ever saturate; they all operate in the active region to avoid saturation delays.

Second, normally the size of the eye in the eye diagram is determined by the propagation delays, the rise/fall times of the signals, and the time between signal transition, so I don't see how the circuit would fail at low speeds (unless the time between transitions is still short).

Hi crutschow, these are not bipolar, and are mosfets, so they should be operating in the saturation region. There is no forward active for mosfets. As for your second point, that is the dilemna I am having. Thanks.
 

Why are you doing current-mode logic using FETs? :???: It has no significant advantage over standard logic and has the disadvantage of using much more power. CM logic is normally only used with BJTs to eliminate storage delay in the switching transition from ON to OFF.
 

Why are you doing current-mode logic using FETs? :???: It has no significant advantage over standard logic and has the disadvantage of using much more power. CM logic is normally only used with BJTs to eliminate storage delay in the switching transition from ON to OFF.

Even within a CMOS process, CML is still faster than static CMOS logic by far. Also, I do not have a choice of using a bipolar technology; regardless, whether or not I am using a BJT or a MOSFET is not that critical to the problem at hand.

One other thing I should add is that the above circuit, configured as a MUX or an XOR, operates past 10Gbps with no problems, but the simulation waveform above is experiencing issues even at speeds as low as 1.25Gbps.
 
Last edited:

Bump. If anyone has any ideas at all it'd be great. Thanks.
 

In general, if you have a problem with the eye diagram, it's either because of circuit delays or too high rise/fall times.
 

As I have stated, the same circuit configured as an XOR, DFF, etc. works fine up to 10Gbps, hence my confusion. I have tried bringing the speed down to as low as 500Mbps and still the problem persists, so it really is not a speed issue.
 

The pattern you posted is not a normal eye pattern, which should show a superimposed rise and fall, and fall and rise of the signal, giving you something like this. You are only showing one edge of the eye.
 

What I posted is the eye for one unit interval. What you posted is simply two UI. Using infinite persistence, the superposition of a rising and falling edge is the same whether I show one edge or two edges. The distortion of the zero-crossings is still present.
 

The eye is the large center open area between the two sets of rising and falling edges as shown in my reference. It is not the jitter between two simultaneous rising and falling waveforms. When this eye closes it means you can have data errors. The eye is not the small area between simultaneous rising and falling edges.
 

I understand that. I am just saying that what I posted is also an eye diagram. The eye I posted is simply for one unit interval whereas the one you posted is for two. The problem I am having is that the eye I posted exhibits noticeable jitter.
 

You will always get a certain amount of jitter due to inherent noise in the circuit. Does this jitter cause errors in the operation of the circuit?
 

If you looked at the waveform above, you will notice that that is a substantial amount of jitter. It is not due to inherent noise. The characteristic of random noise results in random jitter which would not result in distinct double edges. And yes, it causes some errors.
 

If it's not noise then perhaps there is something causing a bias change in the circuit for different states thus affecting the transition time.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top