Skip to main content Accessibility help
Internet Explorer 11 is being discontinued by Microsoft in August 2021. If you have difficulties viewing the site on Internet Explorer 11 we recommend using a different browser such as Microsoft Edge, Google Chrome, Apple Safari or Mozilla Firefox.

Chapter 8: Combinational building blocks

Chapter 8: Combinational building blocks

pp. 157-198

Authors

, Stanford University, California, , Google Inc., New York, , University of British Columbia, Vancouver
Resources available Unlock the full potential of this textbook with additional resources. There are Instructor restricted resources available for this textbook. Explore resources
  • Add bookmark
  • Cite
  • Share

Summary

A relatively small number of modules, decoders, multiplexers, encoders, etc., are used repeatedly in digital designs. These building blocks are the idioms of modern digital design. Often, we design a module by composing a number of these building blocks to realize the desired function, rather than writing its truth table and directly synthesizing a logical implementation.

In the 1970s and 1980s most digital systems were built from small integrated circuits that each contained one of these building block functions. The popular 7400 series of TTL logic [106], for example, contained many multiplexers and decoders. During that period, the art of digital design largely consisted of selecting the right building blocks from the TTL databook and assembling them into modules. Today, with most logic implemented as ASICs or FPGAs, we are not constrained by what building blocks are available in the TTL databook. However, the basic building blocks are still quite useful elements from which to build a system.

MULTI-BIT NOTATION

Throughout this book we use bus notation in figures to denote multi-bit signals with a single line. For example, in Figure 8.1, we represent the eight-bit signal b7:0 with a single line. The diagonal slash across the signal indicates that this line represents a multi-bit signal. The number “8” below the slash indicates that the width of the bus is eight bits.

Single bits and subfields are selected from a multi-bit signal using diagonal connectors, as shown for bits b7 and b5, and the three-bit subfield b5:3. Each diagonal connector is labeled with the bits being selected. The bit selections may overlap – as is the case with b5 and b5:3. The subfield b5:3 is itself a multi-bit signal and is labeled accordingly – with a slash and the number “3.”

DECODERS

In general, a decoder converts symbols from one code to another. We have already seen an example of a binary to seven-segment decoder in Section 7.3. When used by itself, however, the term decoder means a binary to one-hot decoder. That converts a symbol from a binary code (each bit pattern represents a symbol) to a one-hot code (at most one bit can be high at a time and each bit represents a symbol). In Section 8.4 we will discuss encoders that reverse this process. That is, they are one-hot to binary decoders.

About the book

Access options

Review the options below to login to check your access.

Purchase options

eTextbook
US$95.00
Hardback
US$95.00

Have an access code?

To redeem an access code, please log in with your personal login.

If you believe you should have access to this content, please contact your institutional librarian or consult our FAQ page for further information about accessing our content.

Also available to purchase from these educational ebook suppliers