Minecraft / Projects

8 bit CCA CPU aka computer

  • 5
  • 1
  • comment2
  • playlist_add
  • share
  • more_horiz
  • Submission on server
  • playlist_add
    PhrozenCookie Server
    120 Diamonds
    4,612 views
    98 comments
    85 favorited
    Posted 12/27/2018
    by _Phrozenbit_
    Game Version: Minecraft 1.13
    photo x 5
    Minecraft Server
avatar Dr_Gradus
Level 7 : Apprentice Engineer
5
Hey people.
So here's a project I'm currently working on. It's a 8 bit CPU or as some people know as computer (I personally don't like this term since it's not technically correct). It's currently being built on the redsignal server on the Phrozencookie network.

The CPU will be built vertically using vertical logic compoents. Currently it only has an 8 bit CCA ALU and a 7 byte pseudo dual read register (pseudo cause it's actually single read but has 2 registers paired together to act as a single one).

I will have the ISA (instruction set architecture) completed on a google doc spreadsheet and will post it on here when finished.

The CPU may or may not be pipelined, most likely not but it's still early enough for me to do that if I want to but it'll take longer if I do. The CPU at the end will be programmed to run the Fibonacci sequence and/or Multiplication. (It will be turing complete so technically any program can be written on it but those are just for demonstration purposes). I also plan on including a GPU interface for line drawing and point plotting and will probably run the bresenham line drawing algorithm for that. It will also have a decimal display for another output. As of now, this CPU will probably be really slow lol but if i pipeline it then it'll probably be decent. Anyway more updates to come!

Components and descriptions

ALU - Arithmetic logic unit - A logic unit built using an adder and other modifications in order to simulate different types of logic operations (such as OR, AND, XOR, etc) (IRL ALUs don't normally have modification lines on adders to change logic but usually use muxes in order to move the inputs to logic arrays. In MC it's easier to modify the adder itself for logic modification.. This ALU specifically has !a, !b, OR, XNOR (flood carry), and carry in. Also by using Demorgan's theorum the ALU can simulate any other logic gate which has a 3 to 1 output ratio by using the OR function since OR has a 3 to 1 output ratio already. This ALU is made using a CCA (carry cancel adder) designed by Koyarno from the Open Redstone Engineers server. The ALU modifications are my own mostly but inspired by the redstone youtuber Bennyscubed who made a video of making an ALU based on Koyarno's design (ALU and CCA videos). Most of the ALU is my own but the right shift logic i took from benny slightly.

Registers - A form or memory which is small but fast. It is immediately used by the ALU to process data quickly without needing to reach far for the larger ammounts of memory in Cache or RAM. Registers are essentially a collection of d flip flops (data flip flops) which can save data inputted and output the saved data to be processed elsewhere. This design is based on a design that I don't know the original creator of but was featured by Bennyscubed again in his CPU tutorial series (Register video).
Progress15% complete
Tags

2 replies

1
01/18/2019 7:33 pm
Level 10 : Journeyman Miner
wethebean
CPU does not mean computer.
1
01/18/2019 10:48 pm
Level 7 : Apprentice Engineer
Dr_Gradus
Yeah I know CPU = central processing unit. If you actually bothered to read the post you would know what I meant cause I clearly differentiate the two and explain why I said "aka computer". I just said aka computer cause most people on mc who don't really know EECE tend to refer to CPUs as computers. Try actually reading a bit before you comment that way you don't say something obvious or stupid.

Planet Minecraft

Browse

Site

© 2010 - 2019
planetminecraft.com

Welcome