Hacking (improving) ECE lab hardware

This post concerns the Michigan State University ECE331 SRB (Switch Register Board) fixes / design corrections & updates.

digital circuit board
schematic of SRB.

ECE331  students reported trouble with the 7476 ripple counter lab. The root cause of these problems was that an IC requiring 4.75 to 5.25 V, but feeding it with 3.9 V may cause malfunctions.

The lab 7 groups experienced failures of the 68HC12 evaluation board to properly display DIP switch states, even though the program was set according to the lab directions. The LED display will work if “immediate” values are entered directly into the program, but not when reading the DIP switches.

There appear to still be problems with excessive voltage drop at the 74LS244–boosting the voltage by removing the load resistors made the circuit work. Other students with totally unmodified SRBs had to power their circuit off of 9 Volts–This is over 25% above the DAMAGE threshold, and over 70% above the nominal VCC voltage range.

Until the SRB is redesigned, popping the 10Kohm resistor pack off the modified SRB will often give enough voltage into the 74LS244 so that it may register desired states. Hopefully your TA will understand your difficulty.

Executive Summary

The SRB (Switch Register Board), designed for use in ECE331 (Microprocessors and Digital Systems) laboratory by Michigan State University electrical and computer engineering students may suffer from a number of design issues.

digital circuit board
SRB modifications.

On Tuesday, Sept 18, 2007, the 74LS76 ripple counter project was severely hampered by failure of the SRB to correctly register inputs. The 7476 ripple counters would get “stuck” at various points of the count, as it attempted to change states but apparently could not build up sufficient voltage. The state machine Lab 5 also saw most students experiencing difficulties–except for the one with the modified SRB.

Students spent extra time rebuilding circuits, swapping ICs, and showing the TA that their circuit was NOT miswired.

The author brought diagnostic equipment into the lab and examined the circuitry.

From the examination, the following are possible SRB design issues:

  • Inadequate internal power supply voltage: SRB TTL logic may fail to consistently read SRB inputs due to voltage 20% lower than OEM spec’s
  • Inadequate IC power filtering: Glitches in SRB operation due to voltage dips through high impedance traces
  • No external circuit signaling return: There is no return (“ground”) wire from the external circuit, causing the SRB to act “flaky” e.g. student touches wires and circuit works or doesn’t work
  • Shared high impedance power/signal ground/returns The SRB uses rather thin circuit board traces throughout. The sharing of long, thin traces for power and signaling “ground” can lead to failure to register student circuit inputs properly. Example: SRB “flakes out” at certain points of a 4-bit ripple counter sequence, getting “stuck” on certain numbers of the count.

Design modifications have been implemented on the author’s SRB, which do not fully fix the SRB troubles, but do make it work better.

It is believed that a redesign of the SRB is warranted to provide a better laboratory equipment environment for ECE331 students.

new digital schematic
SRB modified schematic.

SRB background

The SRB (Switch Register Board) is constructed and used by ECE331 students to interface with their digital logic circuits to provide switch and periodic inputs and visual LED outputs.

The schematic diagram is ©2006 Michigan State University. Image is reproduced under “Fair Use” as provided in Copyright Act of 1976, 17 U.S.C. § 107 for purposes of review.

Inadequate internal power supply voltage

As used in the ECE331 lab in Fall 2007, the students are only provided with one variable DC power supply. This means that digital logic ICs requiring 5.0 V nominal must share power with the SRB. While the students’ digital logic runs “raw” off of the 5.0 V nominal supply, the SRB has provided an LM7805 fixed 5.0 V regulator.

This throws up a red flag–voltage regulators have considerable internal voltage drop, and prima facie we surmise there will be at least several tenths of a volt voltage drop through the LM7805.

The LM7805 is specified with a MINIMUM input voltage of 7 volts, NOT 5 volts as used in the ECE331 lab. The LM7805 datasheet calls for a minimum input of 2 volts greater than the desired output. This condition is not currently met in the ECE331 lab environment.

Further, ICs on the SRB are specified with minimum input voltages of 4.75 V. As measured in the ECE331 lab, the current SRB provides only about 3.8 V when fed with 5.0V input–this is as much as 20% outside of IC specifications! This problem exists for the following ICs on the SRB (note, this is EVERY SINGLE IC on the SRB!):

  • U1, U2, U3: LMC555
  • U5, U6: ICM7228CIPI
  • U7: 74LS244N

Inadequate IC power filtering

The ICM7228 do not have Vcc input filtering as recommended by the manufacturer and by good engineering practice. The lack of power supply rail filtering leaves the ICM7228 subject to glitches caused by switching transients as LED segments are switched, or other I/O or logic transients are experienced. It would be prudent to provide this filtering for all six ICs on the SRB.

Lack of low impedance signaling return to external circuit

For both analog and digital signaling, a low impedance return path is critical to consistent performance. The SRB has no such return path. The signals must find their return through a daisy-chained power supply arrangement. An independent signaling return path to the SRB from external circuitry should be provided.

Students sometimes experience glitches in circuit operation when wires are touched–even just the insulation of the wire–this may be rectified by proper provisioning of signaling paths.

Shared high impedance power/signal ground/returns

I have not yet modified my SRB to address this. It may be that the other four modifications have helped sufficiently to avoid cutting more traces and soldering more wires on the back of the SRB.

Incorrect schematic:

May lead students to connect circuitry in a way potentially disruptive to SRB operation.

R1 and R2 are incorrectly labeled on the schematic as both 10Kohm resistors.

The actual values are:

R1: 1.0Mohm, R2: 100ohm

Reversing the resistors leads to 1/4 Watt dissipation, exceeding the capability of R1 if it is a 1/8 Watt resistor. The “kickback” from the higher load presented with the incorrect wiring may lead to glitches in unfiltered ICs.

SRB Workarounds

To make the Sept 18 2007 ripple counter work, the author did the following:

  • Used a second power supply to provide 9 V to the SRB
  • Provided an independent signaling return to the SRB
  • Removed the pull-down resistors to the 74LS244 in an attempt to further improve signal coupling (this is normally an undesirable configuration, but out of desperation it was tried and helped–other measures should be followed instead as noted above)

The following modifications are under test, and no guarantee is made of their suitability or fitness.

Modification #1: Proper voltage to SRB components AND external circuit

This avoids low voltage to SRB ICs causing failure to properly register states. We modify the SRB to have a +5V regulated output to run the external circuit off of. This means you use one power supply set to 9 V, and run your external circuit ONLY off power from the SRB–plugging your external circuit into the 9 V power supply would then overvoltage your external circuit. So run your external circuit off of the SRB only after the modification.

So, to do this, you first cut the trace between the unused J2 and the +9 V input (pin 1) of the LM7805 regulator and in place of that trace, run a 18 to 22 gauge wire (hookup wire) between the pad that used to run to the +9 V input of the LM7805 regulator and put the wire to the +5 V output of the LM7805 (pin 3). Then on the J2 pads, solder two flexible stranded 16 gauge wires of a convenient length, say 2 feet, to put banana plugs on. THIS IS WHAT YOU WILL RUN YOUR EXTERNAL CIRCUITRY FROM. Obviously, put a black wire to the pad of J2 that is “ground”, and a red wire to the pad that you soldered the wire to the +5V output to.

Modification #2: Filtering of IC power sources

Put a 0.1 µF capacitor of tantalum (low ESR) type from VCC to “ground” on each IC. Do this on the backside of the board, “underneath” each IC. You can figure out which pin of the IC is what from the datasheets.

Modification #3: Separate data return wire

Solder a wire from the unused pin 25 of the SRB DB-25 connector to pin 1 and pin 19 of U7, the 74LS244. This provides a signal return reference point less influenced by the power ground bus. In your logic circuits, always connect from pin 25 of the SRB to your external circuit “ground”.

NOTE: Do not leave this wire as the only ground connection! Always be sure the main black power wire from J2 is also connected to your external circuit!

Modification #4: Lower power input impedance to 74LS244

It is suspected that the 74LS244 may be suffering from voltage glitches due to high input impedance on its power input. This trace has been wired around and will be tested if possible with an oscilloscope vs. an unmodified SRB.