Picture of Level Shifting Between TTL and CMOS
logic family.jpg
There are two lines, called logic families,of analog IC's and while they can generally be interoperable "off the shelf," they work best with ICs of the same family and sometimes IC's of mixed logic families can require a voltage translation to get working correctly.  Often, though, our designs will have need to intermix different logic families.  This isn't always a problem when there is no inherent dependency on signaling between the logic IC's, and in some cases even signaling between them won't pose a problem.  However, in some cases, like when signaling between a CMOS IC and a TTL IC, there can be a problem because each logic family defines the valid range of voltage that make up a valid HIGH and valid LOW and the logic families don't agree on the range.

This instructable will briefly explain the two logic families of IC's you will most likely be encountering and using in your circuit designs and how to ensure that the HIGH or LOW output of the other is translated and interpreted correctly between a TTL and CMOS device.  This process is called voltage level shifting and is the subject of this instructable.

Turn the page and read up on the two logic families that you have probably already implemented in your designs.
dark322 months ago

I don't understand what CD4504 does. Does it change scale up the voltage it gets at its input? I am new to electronics please help.

nevdull (author)  dark321 month ago

The idea is that the CD4504 is powered at the higher of the two voltages, so it can output it's input voltage, say 5V, on the output, or, it can lower it to a voltage corresponding to the TTL equivalent. So, if a TTL device sends a HIGH signal, the CD4504 intercepts it, and if the select pin is HIGH, then it will ramp up the voltage if needed to make the corresponding value to the CMOS attached to the output of the IC. Grab the datasheet. It will probably explain it better than I can.

Good luck!

Mehdi Raza12 months ago

Hi! thankyou for this useful information. I am using a controller
which operates on 3V3. Output of controller goes to a buffer 74HC245
(which operates on 5V). The VOH of controller is 2.9V(min) and the VIH
of the buffer is 3.5V (min). So there are chances that buffer wont
recognize the controller's signal as valid. I checked out the HCT series
of buffer that is 74HCT245 (it's VIH is 2V min). So is it right to use
HCT series instead of HC series. Can you identify the other measures
that can cause problem? or it will work fine? what would be the output
of HCT245 buffer when 3V3 signal is on the input?



Idlemind4 years ago
Thank you for the informative instructable. I am currently taking an electronics class and we are covering TTL and CMOS.
westfw4 years ago
This is OK, I guess. But it's largely a decade or two out of date. You'd be hard-pressed to find either bipolar TTL (ANY of the bipolar ttl families) or 4000 series CMOS in any recently-published project. 74HC logic is pretty much the new standard.

Also, I think you're confusing two issues. One is that 5V TTL output levels (1 is > 2.7V as you say) are not necessarily compatible with CMOS input levels. This turned out to be rarely a problem, and more with supposedly "ttl compatible" devices that output ~3V than with actual TTL chips (which have an output pretty close to 5V, unless heavily loaded.) The other issue is that CMOS logic families can frequently operate off extended power supply levels., while TTL was strictly a 5V family. And there isn't any way that an HC part running on a 2V supply or a cmos microcontroller running at 1.8V is going to produce logic pulse compatible with other chips running at 5V, regardless of logic family. So there you MUST have level shifting.

The reason CMOS has taken over is power consumption. A small 74xx IC consumed as much power as a modern cmos microcontroller, and did a whole lot less.
nevdull (author)  westfw4 years ago
The HEF and CD 4000 series are alive and well, if mouser/digikey/arrow/avnet inventory can say anything about it. Jameco also has a half page of original 7400 series IC's as well as 3/4 page of 4000 series IC's. My hunch is that people are still using them, even in modern designs.

I appreciate those two issues and they definitely are distinct problems. However, I don't touch on 1.8V ICs except with the maxim IC, which is powered at 5V anyway and intercepts all 1.8V signals. The main issue I discuss here between TTL and CMOS is that by their standards, there is a ~ 1V gap between what they each consider to be HIGH levels, and if a signal falls within that gap it is undefined and behavior is unpredictable.