LBP 2: CPU & Memory Proof of Concept

I just wanted to mention that I have now finished my CPU project that I have been working on since the Beta test.  What my level does is prove that LittleBigPlanet 2’s addition of Logic Gates allows for the construction of highly advanced circuits including the ability to create simple working computers.

Search for: LBP 2: CPU or Deamos

http://lbp.me/v/w4zh7w

Stats of Computer:

  • Over 3000+ wire connections
  • Took over around 48 hours straight of work
  • Hundreds of Logic Gates
  • 8 bit CPU
  • 8 bytes of Writable Memory
  • 18 Fourteen Segment Displays
  • “Keyboard/Mouse” Input
  • 8 bit ALU to that supports AND, OR, Invert, and Adding Operations
  • 3 ALU 8 bit registers for performing operations
  • 1 8 bit W(Working) Working Register
  • 8 Instruction Set Commands

Instruction Set Commands

Data Movement Commands

LW: Writes a binary Value to the W Register

  • EX: LW00001111  (Writes the value 00001111 to WREG)

RW: Reads the current value stored in the W Register and displays on the Screen

  • EX: RW (Doesn’t matter what else is displayed as long as RW is in the far left)

WA: Writes the value in the W Register to an address (Allowed addresses are 00000000 to 00001001)

  • EX: WA00000011 (Stores WREG values in Address 00000011)

MA: Moves the Value in the Address to the W Register

  • EX: MA00000011 (Moves whatever is stored in Address 00000011 to the WREG)

ALU Commands

AN: ANDs Address 00001000 (Also Called A) with Address 00001001 (Also Called B) and stores the result in Address 00001010 (Called the ALU Output)

  • EX: If A=11110000 & B=11001111 Then Inputing the command AN will make address 00001010 = 11000000

AI: Inverts Address 00001000 (Also Called A) and stores the value in 00001010 (Called the ALU Output)

  • EX: If A = 11110000 then inputing AI will make address 00001010 = 00001111

AA: Adds the values of Address 00001000 & 00001001 and stores the Sum in Address 00001010 (Only a maximum of 255 can be stored due to bit restrictions

  • EX: if A = 00000010 & B = 00000011 then Issuing the command of AA will make address 00001010 = 00000101

AO: ORs address 00001000 & 00001001 and stores the result in 00001010

  • EX: if A= 00110000 & B= 01010010 then issuing the command of AO will make address 00001010 = 01110010

For controlling the mouse, it is all handed by the left analog stick.  Pressing the X button will type a button from the keyboard, and Circle will input the command in to the CPU. Triangle will exit the keyboard and mouse.

I know it all sounds a bit complicated and this level is more geared towards those with an understanding of Computer Engineering and Advanced Logic.

I am planning on eventually doing a second version of the CPU to be distributed to players to use in their own levels to handle advanced logic functions.  In addition, I am also planning on starting up the next version of my Logic Labs series to help explain some of the new LBP2 Logic and how to use it.

I will be adding more information on how to use as I build on the original design including a video.

Thanks guys and Enjoy!

Leave a Reply