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.
|