Bit-Slice Design: Controllers and ALUs

by Donnamaie E. White

Copyright © 1996, 2001, 2002, 2008 Donnamaie E. White

 
 

Preface

Table of Contents

1. Introduction

2. Simple Controllers

3. Adding Programming Support to the Controller

4. Refining the CCU

5. Evolution of the ALU

6. The ALU and Basic Arithmetic

7. Tying the System Together

Glossary

 

 

Introduction

Last Edit October 10, 1996; July 9, 2001


Constructing the CCU

Now that what the CCU must do - namely, translate the opcode received into ALU-ACC controls - is defined, how is the CCU constructed?

Hardwired Design

As stated before, the CCU can be built from the traditional sequential circuit network, an SSI/MSI hardwired unit. The advantages and justifications of this approach are as follows:


  • It is a custom design
  • It may be a more minimal (irredundant, testable) solution
  • It is justified if the design is to remain rigid or fixed
  • It may be the highest-speed implementation
  • It is justified if a high volume is to be produced before redesign

The disadvantages are as follows:


  • There is a lengthy design time
  • Documentation is difficult to create and to maintain due to volume
  • Minimization to remove redundancy is difficult, if done at all
  • If minimization is not done, redundancy will interfere with testability
  • Design changes require a partial or total redesign
  • Debug is difficult, with races and hazards
  • Board space is high
  • Pin count is high (external connections)
  • Modularity and, therefore, structure is usually not present

A hardwired control would consist of an instruction register (IR), decode logic, a timing generator network and a complex sequential-combinational network. Output from the network would be the control signals for the rest of the system, as shown in Figure 1-10.

Figure 1-10 Typical Hard-wired (SSI/MSI) CCU

Microprogrammed Design

Assuming that the required speed has negated using MOS FIS microprocessors, the control can be done with microprogramming.

The simplest microprogrammed computer control unit would require

  • an instruction register
  • decode logic
  • a clock source
  • and a ROM-PROM based control memory.

Output from the control memory would include the control signals for the rest of the system. If a control unit other than a CCU is being developed, the unit could be as simple as a register, a clock source, and a PROM-based control memory, as presented in Figure 1-11.

Figure 1-11 Simplest Control Bit implementation. (Clock signal refers to the rising edge.)

The advantages and justifications of this approach are as follows:


  • It is custom design at a higher level
  • Microprogramming allows a systematic approach to the design
  • The result is a compact, modular physical unit (compared to SSI/MSI)
  • The result is a flexible design (the unit can be microprogammed to perform different control functions and different variations of those functions, in most cases without affecting the physical hardware).
  • If a proper structured programming approach is used to create the microprogram, there will be better documentation of system operation then is possible with a hardware-only design.
  • Diagnostic routines could be microprogrammed into the control memory itself or into special PROMs for use in troubleshooting the system.
  • There is a shorter design time compared to SSI/MSI
  • Design aids via development systems exist[ed] to support the above.


For a hardwired design, the design time goes up as people are added to a project above some critical number, such as two or three people. Microprogrammed design can use groups operating in parallel, since the microcode and hardware development can generally proceed in parallel.

Cost Effectiveness

The trend over time is for microprogramming to become the cost-effective method of control unit design at lower and lower levels of design complexity. The PDP-11 series of computers is a good example of this trend. The PDP-11/20 was designed when hardwired logic was more cost-effective for the level of "functionality" of the PDP-11; the PDP-11/60 was designed when microprogramming had become the more cost-effective choice. The PDP-11/60 has more control functions implemented via microprogramming than does the PDP-11/20, although the functionality (design complexity) of the systems are considered to be approximately equal.

For information about this file or to report problems in its use email [email protected]
Copyright © September 1996, 1999, 2001, 2008 Donnamaie E. White WhitePubs Enterprises, Inc.