Difference between revisions of "ECLair"

From Hackstrich
(I like an 8-bit data width better, I think.)
(First parts of the microcode worked out.)
Line 2: Line 2:
  
 
== Project Status ==
 
== Project Status ==
 +
* 2012-12-04: Started the logical diagram and the microcode layout.
 +
* 2012-12-01/02: Spent the weekend reading Bit-Slice Microprocessor Design.
 
* 2012-11-24: Basic ideas/architecture starting to get put together.
 
* 2012-11-24: Basic ideas/architecture starting to get put together.
  
Line 13: Line 15:
 
** Unless I can find equally-fast EPROMs
 
** Unless I can find equally-fast EPROMs
 
** Copied to SRAM from EPROM before the system starts
 
** Copied to SRAM from EPROM before the system starts
 +
 +
== Microcode Layout ==
 +
{| class="wikitable sortable" border="1"
 +
! Bit #
 +
! Width
 +
! Function
 +
! Details
 +
|-
 +
| 0
 +
| 1
 +
| MC Addr Source
 +
| low = microcode bits, high = IR
 +
|-
 +
| 1
 +
| 1
 +
| Jump MC Addr
 +
| Microcode sequencer load
 +
|-
 +
| 2-10
 +
| 8
 +
| MC Jump Address
 +
| Used if bit 0 = low
 +
|-
 +
| 11
 +
| 1
 +
| MDR Source
 +
| low = data bus, high = Z
 +
|-
 +
| 12
 +
| 1
 +
| MDR Load
 +
| MDR latch load
 +
|-
 +
| 13
 +
| 1
 +
| MAR Load
 +
| MAR latch load from Z
 +
|-
 +
| 14
 +
| 1
 +
| IR Load
 +
| IR latch load from data bus
 +
|-
 +
| 15
 +
| 1
 +
| PC Increment
 +
| Increment PC by 1
 +
|-
 +
| 16
 +
| 1
 +
| PC Load
 +
| PC counter load from Z
 +
|-
 +
| 17-19
 +
| 3
 +
| Register Load from Z
 +
| 000 - None<br>001 - A<br>010 - B<br>011 - C<br>100 - D<br>101 - SP
 +
|}
  
 
[[Category:Current Projects]]
 
[[Category:Current Projects]]

Revision as of 03:02, 5 December 2012

ECLair is a long-term project to build an ECL minicomputer.

Project Status

  • 2012-12-04: Started the logical diagram and the microcode layout.
  • 2012-12-01/02: Spent the weekend reading Bit-Slice Microprocessor Design.
  • 2012-11-24: Basic ideas/architecture starting to get put together.

Architecture Overview

  • MECL-based
  • 25MHz main clock
  • 8-bit data width
  • 24-bit physical address, 16-bit virtual address
  • DMA support (at least for front panel, maybe one other DMA channel?)
  • Microcoded, running control store in SRAM for speed
    • Unless I can find equally-fast EPROMs
    • Copied to SRAM from EPROM before the system starts

Microcode Layout

Bit # Width Function Details
0 1 MC Addr Source low = microcode bits, high = IR
1 1 Jump MC Addr Microcode sequencer load
2-10 8 MC Jump Address Used if bit 0 = low
11 1 MDR Source low = data bus, high = Z
12 1 MDR Load MDR latch load
13 1 MAR Load MAR latch load from Z
14 1 IR Load IR latch load from data bus
15 1 PC Increment Increment PC by 1
16 1 PC Load PC counter load from Z
17-19 3 Register Load from Z 000 - None
001 - A
010 - B
011 - C
100 - D
101 - SP