Summer CPU Competition

An initial note: I copied this directly from the announcement message, so it might not have all the updates later on. I’ll do what I can to keep it updated accordingly.

Summer CPU Competition

Attention all! Over the next 2 months June 2, 2023 3:00 PM ET to July 30, 2023 3:00 PM ET we will be hosting a CPU Competition! Head over to /competition and claim a plot! Join the conversation in ⁠CPU Summer 2023 !

Prizes

Each member of the winning teams will receive a corresponding prize 1st Place - $50 Steam Gift Card 2nd Place - $25 Steam Gift Card 3rd Place- $10 Steam Gift Card

Build Principles

Each team will choose a principle to center their build around. This principle must be unique and beneficial or challenging to the design of the CPU. The principle should not lower the quality of your build.

Teams

Each team can have up to 3 members. Once a team has signed up, they cannot be changed, so choose your teammates carefully.

Requirements

  1. Your CPU must not include any significant parts which were prepared prior to the competition.

This doesn’t mean you can’t use an existing ALU or RAM, but avoid massive sections being directly copied from existing builds. The specifics of this are always going to be subjective, so the final say is up to the judges.

  1. Your CPU must be a reasonable attempt at a CPU.

We want to avoid joke CPUs, so they are disallowed during this competition. This also means the CPU should be turing complete and reasonable to operate.

  1. Your team must have the following programs prepared for judging:
  • Return the Nth Fibonacci Number (Fib(0) = 0, Fib(1) = 1, Fib(2) = 1…)
  • String Length (Pointer to a string → String length)
  • String Equivalence Check (Equivalent to the C Language’s strcmp function)
  1. Your CPU must run on the Competition server. MCHPRS performance will not be judged.

Judging

Judges will be composed of ORE members with Engineer rank. Once the competition concludes, judging will begin. The judges will follow the following rubric, the CPU with the highest score wins:

Rubric

1-20 Points Clock speed 1-20 Points Efficiency [which can be based on Pipeline:Clock Speed… or how poweful the instructions are] 1-20 Points Compactness [subjective based on ISA and functionality] 1-20 Points Overall [subjective based on design principles, innovativeness, bugginess, etc] 1-20 Points Adaptability Based on each of 3 Programs: 1-10 Points Length of program 1-10 Points Number of cycles to complete 1-3 Points Creativity Bonus

Optional ISA

There are variations of an ISA provided by LordDecapo which you may use. Use of this ISA is not required but can help move into the building phase quicker. The ISA can be found here: June 2023 ORE CPU Competition - Google Sheets A note about the ISAs: [nick please add this to the announcement]

  1. The test programs will only require upto 8bit data width and 16 bytes of RAM
  2. The instructions marked S will be used in the sample program solutions we give out closer to the end of the comeptition… so if you dont have code to run, you can either use the provided [if you used these ISAs] or based your code off the given.
  3. The O instructions… will NOT be used in those sample programs… so you do NOT need them at all, but they may be nice to have… or swap out for something in order to speed up your system