Designer's Notebook: Discrete Logic
These days, a lot of digital design work involves little more than patching together a few highly integrated blocks. It seems as if everything is VLSI (and CPLD/FPGA). A lot is, but not everything. "Discrete" logic ICs are still to be found.
Let's briefly review some historical logic basics. SSI (small-scale integration) referred to ICs containing a few gates or flip-flops. MSI (medium-scale integration) was used for things like counters, comparators, decoders, encoders, and other more esoteric functions. LSI (large-sca... you know the rest) was used to denote devices such as memories, calculator chips, keyboard encoders, and eight-bit microprocessors. I'm not quite sure when VLSI (very large...) came into vogue – perhaps with 16-bit processors. (I find the claims in Wikipedia suspect.)
In the discrete days, optimizing digital designs often meant finding le chip juste, and sometimes a bit of lateral thinking helped repurpose an IC to a function the designers may never have envisioned. There were a couple of standard series of logic parts:
The 7400 series started out as TTL (transistor-transistor logic; an acronym still widely used to describe logic levels). Over the years, it spawned many sub-series, such as 74L, 74S, 74F, and 74LS. When CMOS processes became fast enough, we started seeing 74HC, 74AC, and so on. Many of these parts are still available, though less common parts in less common families have disappeared. Those who lived through the era can still recite a large number of parts by heart: 7400 is a quad NAND gate, 7404 is a hex inverter, 7432 is a quad OR, 7493 is a four-bit counter, 7474 is a dual flip-flop... OK, I'll stop.
The other common series was metal-gate CMOS – the 4000 series. This is also still available, and though it's slow, it has the sometimes useful attribute of working from a very wide supply range (3-18V). There has also been some cross-fertilization. One may find a 74C00: 4000 technology in 7400 clothing (pinout), or a 74HC4060: 4000 functionality implemented with the faster 74HC silicon-gate technology.
Of course, the introduction of programmable logic (PLAs and PALs) started a revolution in design. This story is entertainingly told in the award-winning book The Soul of a New Machine. But that's another story.
Where is standard discrete logic still used? I would surmise that the most common parts are 8/16/32-bit buffers, transceivers, and registers, and the various forms of "tiny" logic – chips rooted in the 7400 past but containing only one or two gates or flip-flops, and coming in small six- or eight-pin packages. These parts minimize size and let you place logic exactly where you need it.
To illustrate some uses of discrete logic, let me describe some examples from past designs.
The first falls into the "lateral thinking" category. I was updating a small datacom protocol converter. The system address bus was 20 bits wide, but one of the new peripheral chips had a four-channel DMA controller that drove only 16 bits. The problem percolated in my head for a while, and then the answer appeared to me. A 74670. This chip is a four-word by four-bit dual-port register file. Very MSI. I hooked it up so the processor could write to the registers as part of DMA configuration. The outputs drove the top four bits of the address when the DMA controller had the bus. The controller had two outputs indicating the channel in use, which were used to address the register file. Talk about a perfect fit.
The 74670 register file block diagram
A good example of 4000 series CMOS use is from an audio processor design, ca. 1999. Here, in an otherwise all-analog box, the low power and slow speed of the CMOS chips was an advantage. The main use of the parts was for volume control. I needed to control four signals, and I deemed the use of "LogDACs" preferable to an expensive, inaccurate, and custom four-section pot. The actual volume control was an incremental encoder, and a flip-flop plus a few gates converted those pulses to clock and up/down signals to drive an eight-bit counter. A few more gates and some RC networks generated the addressing and strobes required to write to the DACs. I guess a $1 PIC could have done the job too, but I find this kind of constraints-limited design challenging and rewarding.
My last example is even more archaic – an analog music synthesizer module I designed for a high school project. Here we have counters, comparators, latches, multiplexers, a number of gates, and, at the heart, a pair of 2101 SRAMs (that's right – 256×4 each). All this logic & memory implemented a VCO and envelope generator with a programmable waveshape. What fun.
So, the next time you need to brush a pretty bit of logic onto your PCB canvas, give the old discretes a try. There's life in them still.
- Programmable logic: A practical introduction for beginners
- What on Earth is an all-pass filter?
- Avoid problems with multiple DC-DC converters
- Of books and things