HCF40181 Noise Issues

Thread Starter

Mirceam94

Joined Dec 17, 2010
5
Hi everyone, my name’s Cris, and I’ve been having a problem with noisy signals for a while now. I’m designing and building a computer for my senior project, and I’ve chosen the HCF40181 monolithic IC ALU to take over the pure-computational tasks that the CPU will be required to execute. The problem is, the outputs of the 40181 are EXTREMELY noisy. Nothing in the computer is being clocked at the moment, so there aren’t any major sources of electrical noise anywhere in the circuit. The power supply is a 9V battery, being run through a 7805 5V regulator. I’ve checked the inputs to the 40181, and they are stable, but the outputs constantly flicker. There is a 74HCT244 between the 40181’s outputs and the data-bus, and all of the inputs are pulled low with 1K resistors. I’ve been trying to solve this problem for a month now, and have resorted to simply skipping this part of the computer, and continuing on building the other components. Can anyone help me with this? If you feel that I should learn everything on my own, since it’s for my senior project, than feel free to at least give me a link to a related Wikipedia article =]

Thank you!
 

#12

Joined Nov 30, 2010
18,224
Welcome to Electrotech online.

It's good to attach a datasheet when you ask about a chip, so I attached it for you.
It's also good to attach a schematic so we can see how you've hooked things together.
Sorry, I can't help with that.

Without a schematic, all I can do is guess at things like, be sure to add "decoupling capacitors" to the power supply, right next to the chip so it can help with fast swtching currents. You'd be amazed at how the inductance in a circuit board trace can mess with fast switching currents.

Please reply with more information. Some major whiz kid might be loking and know something special about this chip, but having a schematic will help the rest of us.

Thank you for asking.
 

Attachments

SgtWookie

Joined Jul 17, 2007
22,230
Hello Cris, and welcome to AAC.

Unfortunately, you have not provided a schematic, nor a photo of your board layout.

Do you have bypass capacitors on EACH of your IC's? Do you have a larger electrolytic cap on your board, too? See the "sticky" thread in the General Electronics Discussion forums.

Are your wire/trace runs as short as possible? Long wires have lots of inductance, and will cause big problems with signals that switch from one state to the other quickly; they'll "ring" like the dickens.
 

jpanhalt

Joined Jan 18, 2008
11,087
Welcome to Electrotech online.
????? It's late, do you know where your browser is? ;)

As for the OP, welcome to All About Circuits, too.

I don't think anyone here is going to tell you to do it by yourself. It is a breath of fresh air to have someone who has actually gotten started, run into problems, and asked for help. That is, an OP who has not asked for someone to do it for him.

A schematic is the place to start. Please show all capacitors.

John

Edit: well, since I am the slowest keyboarder in the group, let me point you to this sticky: http://forum.allaboutcircuits.com/showthread.php?t=45583
 
Last edited:

#12

Joined Nov 30, 2010
18,224
It is true that many people come here with a vague idea and not the slightest effort to apply a pencil to the problem. You are the kind of person we like to work with because you have made an honest attempt to get things working and narrowed the problem down for us. Thank you!

Extreme embarassment on renaming this site! Your forgiveness is appreciated :)
 

Thread Starter

Mirceam94

Joined Dec 17, 2010
5
Sorry for not replying very quickly; I read the replies on friday, but I didn't get a chance to respond untill now. Thanks for all the support already! I've never posted here before, but I've become used too dead forums. This is nice =]

I went ahead and soldered 0.1uf bypass capacitors to every IC's power pins, and between every CLK line and ground on the ALU, but it didn't help...

I did the same on another part of the computer that was having issues, and it solved the problem: I have one card reserved for the operating Registers and RAM, and another card for a "Register Display" of sorts. It has 4 74HCT237s mirroring the 74HCT374s on the Register card, and their outputs are hooked up to LEDs. When I would clock one IC, the surrounding ICs would also receive the clock signal. There was no connectivity between the CLK lines, and I spent 30 minutes trying to isolate the problem between the test card (pushbuttons to send the signals), and the Register Display card. In the end, I soldered 0.1uf bypass caps between the power supply pins, and between every CLK line and ground, and the problem disappeared.

But, as I said, no such luck with the ALU card. I took some measurements on both 40181s...

VDD = 4.99V
Inputs (with all (1)s) = 4.99V
Outputs with 1K pull-down resistors = 3.04V
Outputs without 1K pull-down resistors = 4.99V

I went ahead and took out all the pull-down resistors between the 40181s and the 74HCT244 buffer, and the voltages went to the levels predicted by the HCF40181 datasheet. The voltages across the 74HCT244's outputs were between 4.7V and 4.74V. But, somehow, the LEDs being driven by the 74HCT244 continue to flicker. The 40181 is set to it's AND function, with active-high inputs/outputs, and all (high) inputs. There is not reason for it to flicker. I've tested it in its Add and Subtract modes, and it works fine, no flickering. The outputs of the 74HCT244 go to the Data-Bus, which has all its lines pulled low by 1K resistors. I attached the ALU card's schematic, but keep in mind that the order of the Socket's connections isn't accurate to the actual card; I only added the socket because it's better than having the external connections going off the side of the screen.

EDIT:
I almost forgot to upload the pictures -


 

Attachments

Last edited:

SgtWookie

Joined Jul 17, 2007
22,230
1) You're using 4000-series, 74HC series and 74LS series all in the same circuit.
The 74LS is going to cause a problem, as it's output levels are indeterminate to the 4000-series and 74HC series. You need to stick with 4000 series or 74HC series or 74LS series, or you'll have to perform level translations.

2) You've bundled all your wires together, which looks neat, but causes inductive coupling between high-speed signals. This will wreak havoc with your board. It would've been OK if you had been using balanced line transceivers and twisted-pair wiring, but you are not.

3) 0.1uF is WAY too large a cap for the clock line. You could try putting a 100 Ohm resistor in series with the clock source, and a 100pF to 470pF cap to ground to slow the rise/fall times.

[eta]
4) Keep in mind that where pull-up or pull-down resistors for the original 74xx series TTL might be 330 to 510 Ohms, 4000-series CMOS uses 10k Ohms. If you go lower than around 3.9k Ohms, the output levels may not be sensed as valid logic levels (indeterminate).
 
Last edited:

Ron H

Joined Apr 14, 2005
7,063
I didn't see any mention of 74LS parts. Did I miss something?

Cris, do you have ANY floating inputs on the 40181?
 

SgtWookie

Joined Jul 17, 2007
22,230
Ron_H,
In the Eagle schematic, our OP shows IC5A and IC5b as 74LS244N's, IC1 & IC2 as 74LS181N's, etc - unless they are actually using 74HCT series instead of 74LS series and simply didn't change the part number from the default library model names.
 

Thread Starter

Mirceam94

Joined Dec 17, 2010
5
The 74LS244 is in reality a 74HCT244; EaglePCB didn't have the HCT version. And, I used the 74LS181N since Eagle didn't have an HCF40181.

Also, I forgot to include the bypass capacitors in that schematic =/
I attached the corrected version to this post.

Cris, do you have ANY floating inputs on the 40181?
No, all the inputs are connected to either the bus line and pulled low by 1K resistors, or to the outputs of two of the 74HCT273s.

1) You're using 4000-series, 74HC series and 74LS series all in the same circuit.
The 74LS is going to cause a problem, as it's output levels are indeterminate to the 4000-series and 74HC series. You need to stick with 4000 series or 74HC series or 74LS series, or you'll have to perform level translations.
The 74HCTs are CMOS, but with TTL compatible signal levels, and the only 74LS ICs used in the ALU card are the 74LS85 comparators; they haven't been accessed/used in any way in the tests so far, but I'm looking to purchase HCT versions. I haven't actually soldered on bypass caps to them yet, since I don't have that many left, and like I said - they aren't being used in the tests. Their inputs are tied to those of the HCF40181, so they both see the same values.

I sent an order to Mouser for replacement 74LS181s this morning; when I get those, I'll swap them out for the 40181. 74HCTs and 74LSs interface well, don't they?

3) 0.1uF is WAY too large a cap for the clock line. You could try putting a 100 Ohm resistor in series with the clock source, and a 100pF to 470pF cap to ground to slow the rise/fall times.
I'm not clocking it at more than 0.5Hz at the moment (manual testing), but I can see how it would become an issue at higher frequencies. Thanks for the heads-up =]

2) You've bundled all your wires together, which looks neat, but causes inductive coupling between high-speed signals. This will wreak havoc with your board. It would've been OK if you had been using balanced line transceivers and twisted-pair wiring, but you are not.
Are any of those methods simple to implement? I can't see twisted-pair wiring working too well in such a small place... I'll go ahead and google =]
 

Attachments

Ron H

Joined Apr 14, 2005
7,063
Ron_H,
In the Eagle schematic, our OP shows IC5A and IC5b as 74LS244N's, IC1 & IC2 as 74LS181N's, etc - unless they are actually using 74HCT series instead of 74LS series and simply didn't change the part number from the default library model names.
OK, I don't have Eagle, and I was pretty sure the .sch file was not created by Microsoft Schedule+ for Windows 95, which is my file association for .sch files.:D
The breadboard photo shows HCF and 74HCT parts, but there are a couple I can't read.
 

Thread Starter

Mirceam94

Joined Dec 17, 2010
5
Are you using win95? I remember when I used to use win98SE. That was about 3 years ago, sure, but it was way better than winXP (that I now use). If it wasn't for the blue-screens-of-death, and if modern software was compatible with it, I would have never switched.

I went ahead and exported the schematic to an image =]
See attached.

And, a visual description of the hard-to-read ones =]

- The two ICS in the top left corner are 74LS85Ns.
- The one in the middle of the bottom row is a 74HCT244N
 

Attachments

Ron H

Joined Apr 14, 2005
7,063
Are you using win95? I remember when I used to use win98SE. That was about 3 years ago, sure, but it was way better than winXP (that I now use). If it wasn't for the blue-screens-of-death, and if modern software was compatible with it, I would have never switched.

I went ahead and exported the schematic to an image =]
See attached.

And, a visual description of the hard-to-read ones =]

- The two ICS in the top left corner are 74LS85Ns.
- The one in the middle of the bottom row is a 74HCT244N
I was wondering about the Windows 95 thing (I use XP), so I attempted to open your file, just to see what Schedule+ is. It seems to be connected to Outlook.

Thanks for the schematic.:)
I get the BSoD about once every week or two.:mad:
 

Thread Starter

Mirceam94

Joined Dec 17, 2010
5
Yeah, they are; The databus lines are all pulled low by 1K resistors, and the rest of the signals are either switched to +5V or ground, or they're pulled high/low, depending on whether or not they are active low or high. There are no floating inputs =]

Its too late to start over now =] I'll use those boards in future projects though. Since I need so many PCBs for this computer, I can't use expensive ones. I got mine from a small electronics shop for ~$6 =]

As an update, I looked at the data-bus lines with an oscilloscope while the LEDs were "flickering"; the voltage stayed close to 5V (as it should), but there were random dips. Breaks in the line would appear, along with dots below it. I'll try and get a video of it up on youtube, and I'll link it here if you think it would be useful.
 
Last edited:
Top