ECLair

Custom ECL CPU

  • About ECLair
  • System Overview
  • Microcode & Control Store
  • Instruction Set
  • Registers
  • Paging Subsystem
  • Expansion/Extension Slots
  • Work Log
  • About ECLair
  • System Overview
  • Microcode & Control Store
  • Instruction Set
  • Registers
  • Paging Subsystem
  • Expansion/Extension Slots
  • Work Log

Author: sen

Started working on pushing PC

May 4, 2013April 29, 2018

Reworked PUSH into push8.imm and push8.? (for future implementation of other non-immediate push8s). Implemented push16.imm and push16.? including their unit test and register transfer diagram. Started working on push16.pc, but ran into an issue where PC is incremented within FETCH, […]

sen Design Log

Finished PUSH

February 24, 2013April 29, 2018

Finished implementing PUSH, including the unit test for it. All seems to be working now, and I fixed a lot of bugs related to RAM while working on this, as this is the first use of RAM in the system. […]

sen Design Log

Started implementing SP

February 20, 2013April 29, 2018

Started working on the unit test for PUSH, found that I hadn’t ever implemented the SP register despite it being the design. Did so, and then did a bunch of troubleshooting related to the new register. At this point tests […]

sen Design Log

First PUSH microcode

February 19, 2013April 29, 2018

Added a first stab at some microcode for PUSH, which is a prerequisite for being able to implement CALL and RETURN. Next step will be to write a useful unit test for it so we can confirm it’s working properly […]

sen Design Log

First bits of interrupt design work

February 17, 2013April 29, 2018

Figured out and diagrammed the initials parts of the logic for handling interrupts. Next step is to implement CALL/RETURN, which will be needed to integrate the design into the system.

sen Design Log

Supervisor/user mode flag implemented

January 16, 2013April 29, 2018

Added supervisor/user mode support and a test for it, everything works as intended. Still need to write the unit test for branch-if-CO.

sen Design Log

First conditional branches

January 8, 2013April 29, 2018

Added conditional branch support and a test for it. Currently only have a test for the branch-if-Z path, not the branch-if-CO path. Next step will be to add a unit test for branch-if-CO, then probably work on fault/trap/interrupt support.

sen Design Log

ALU status bits implemented

January 6, 2013April 29, 2018

Added support for ALU status bits Z (last operation result was zero) and OC (overflow/carry out) and tests for them. Also added add8.ab which adds lower bytes of registers A and B. Next step will be to add conditional branch […]

sen Design Log

Automated unit test system written

January 5, 2013April 29, 2018

Wrote a new unit test system, and implemented tests for all current instructions. Next step will probably be to look at implementation of ALU status bits, so we can do branching in the future.

sen Design Log

Paging works!

December 26, 2012April 29, 2018

Implemented ldi8.flags so that paging can be turned on. Fixed a couple bugs in the system, and now paging works! Also while working on this, I renamed PID to PTB (page table block) as one PID could potentially use more […]

sen Design Log

Posts navigation

1 … 7 8 9 10

Work Log

  • November 2024
  • August 2024
  • November 2022
  • May 2021
  • November 2020
  • July 2019
  • April 2019
  • November 2018
  • October 2018
  • May 2018
  • April 2018
  • March 2018
  • July 2017
  • December 2016
  • July 2015
  • June 2015
  • June 2014
  • May 2014
  • December 2013
  • May 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
Proudly powered by WordPress | Theme: Dream by vsFish.