Microcode ROMs and Control Logic

Microcode ROMs

The microcode is stored in a set of 28C256 EEPROMs. Each chip provides 8 control lines. ROM3 is dedicated to bus selection (see below) and the remaining ROMs provide general purpose control lines. ROM3 and ROM2 have their outputs disabled when the Loader is active so that the Loader can control the register selects and register H control. ROM1 and ROM0 are not output disabled, but with the ring counter held in reset, they are asserting logic low on all of their outputs.

The initial build was pre-wired for four ROMs but used only two. When the flags are fully implemented, the final build is expected to use 30 of the 32 available control lines.

ROM addressing

The fifteen ROM address bits are allocated as follows:

A14 A13   A12 A11   A10 A9  A8  A7  A6  A5  A4  A3    A2  A1  A0
 R   R     X   X     I   I   I   I   I   I   I   I     T   T   T
Bits Count Use Source
14..13 2 ROM select Hardwired
12..11 2 Not used Not in use
10..3 8 Instruction (opcode) Instruction Register
2..0 3 T Cycle Ring Counter

A future build may expand the T Cycle bits to four, expanding the number of microinstruction steps from eight to sixteen.

Bus control multiplexing

The NQSAP computer uses 74LS138 3-to-8 decoders to select the read and write source for the bus. Four decoders are used: two for write selection and two for read selection. The decoders are driven by the control lines from microcode ROM 3. This has several advantages over using individual control lines from the microcode ROMs:

  • Reduces the number of microcode control ROM bit needed. Can have 15 read locations and 15 write locations with just 8 control bits
  • Reduces possibility of microcode bus errors - cannot have more than one read location selected at a time
  • The 74138s produce a low signal on the active line and most of the RAMs and registers also use active low controls, reducing the number of inverters needed on microcode ROM control signals

Schematic

Microcode ROMs and Control Logic schematic

The schematic for the microcode ROMs shows the 28C256 ROMs and the register decode logic. The Ring Counter (step counter) and Instruction Register are also included.

Bill of Materials

  • 28C256 32Kx8 EEPROM (4)
  • 74LS138 3-to-8 decoder (4)

Updated: