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

Category: Toolchain

Quick changes to test harnesses

August 25, 2024November 17, 2024

When I first set up the test framework, I just had iverilog running the CPU directly, as everything happened inside that and there was no reason to add another layer of complexity. Once I needed to test interrupts however, I […]

sen Toolchain test-harness

Moved development to “the cloud”

November 11, 2022June 14, 2024

Quick update today, I’m in the process of moving off of my current laptop (a MacBook Late 2008) and figured I should look at moving the development/test environment into the cloud (senCloud that is) since there’s no real reason to […]

sen Design Log, Toolchain

Disassembler working!

November 27, 2020

Looking into the toolchain more, the next step after the assembler seemed to be a disassembler. LLVM handles a lot of the details of this using the same data tables created for the assembler, so it seemed like it wouldn’t […]

sen Design Log, Toolchain disassembler, llvm

Simulator Signal Graph

November 23, 2020

I took a break for a few days from working on the design itself, to work on a tool to generate a graph of the simulator signal flow. The signal flow in parts of the CPU is getting complicated enough […]

sen Design Log, Toolchain documentation

Instruction implementation mostly complete!

July 21, 2019July 26, 2019

Finished off the rewrite of the microcode assembler yesterday, the new one has now taken over as the reference implementation and is the primary microcode assembler used by the simulator. I still want to implement some optimization features later on, […]

sen Design Log, Toolchain interrupts, mcgen, microcode, paging

Assembler fully working

April 27, 2019

The new LLVM-based assembler is fully working, and 100% of the regression tests have been moved over to it as of this afternoon. It took close to 9 months to get done, but it’s all working now and gives us […]

sen Design Log, Toolchain llvm, toolchain

Assembler progress

April 11, 2019July 13, 2019

I’ve spent the last few evenings tweaking the LLVM backend’s MC code to fix a lot of minor issues, and it’s to the point where it can generate normal output from ECLair assembly input now! It understands that different instructions […]

sen Design Log, Toolchain llvm, regression tests, toolchain

First successful assembly

April 5, 2019July 13, 2019

Worked on the LLVM backend a bunch more this evening, and it successfully assembled something for the first time! Halt is just 0xfe but the backend only understands 16-bit instructions at the moment, so it assembled as noop, halt, but […]

sen Design Log, Toolchain llvm, toolchain

Lots more toolchain work

April 4, 2019July 13, 2019

I haven’t made any posts here in ages, but that doesn’t mean that work hasn’t been happening behind the scenes! I looked at what my options were last fall when it came to assemblers, and it looked like I had […]

sen Design Log, Toolchain llvm, toolchain

More random reorganizing and a lot more toolchain work

November 3, 2018

Started working on the implementation of jmpe/jmpne, got frustrated that the temporary assembler still doesn’t support two-byte instructions. Fixed this, it now looks at the opcode and figures out which instruction will require a second register-selector byte and handles this […]

sen Design Log, Toolchain

Posts navigation

1 2

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.