I need someone to explain this to me.

2-bit paper processor teaches how they work

Take a few minutes out of your day, grab your scissors, and learn how a simple processor works. [Saito Yutaka] put together an exercise to teach processor operations with paper. After downloading the PDF you can cut out the Address and Data pointer as well as two-bit data tokens for each. The processor has three instruction sets; Increment register by one, Jump if not over flow, and Halt wait for reset.

Once you’ve got your cutouts you can follow along as the program is executed. The INC operation is run, with the JNO used to loop the program. Once the register has reached an overflow the overflow counter halts the program.

One word of warning, we think there’s a typo in one of the captions.  Once the program starts running and gets to address 01(2) the caption still reads 00(2) for both address and data. As long as you compare the values in the picture along the way you should have no problem getting through execution. which has now been fixed.

Peering in a the A4, the iPad’s brain

Sure, tearing down devices to see what components are in there is fun. But tearing down the components themselves is even more fun. iFixit sent off their iPad guts to be laid bare after they were done with their iPad teardown. We’ve seen pictures of stripped chips in the past, but the work that Chipworks is doing for iFixit is quite amazing. Get the skinny on just about every part in there from the package markings and the die photos provided in their analysis.

The iPad has already been rooted, but you never know what power can be unlocked if you know what you’re working with. We’re thinking of the 50MHz to 100Mhz oscilloscope hack.

Processor built with Transistor-Transistor Logic

cpu-built-from-ttl

[Donn] wanted know exactly what is going on inside of a processor so naturally he built a CPU out of TTL components. He had previously built a couple of versions of a computer based on the Z80 processor. Using the troubleshooting skills he learned and a second-hand textbook, he set to work using 74LS series chips connected using the wire-wrap method we’re familiar with from other cpu projects.

The finished product runs well at 1.8 megahertz, but he also included a 2 hertz clock and a step clock for debugging. At the slower speeds, the register board (seen at the left in the picture above) lights LEDs and can be used to tell what the CPU is currently working on. Programming is accomplished through either  a dumb terminal or a PC running a terminal emulator.

His writeup is from about five years ago but that didn’t prevent us from getting that fuzzy feeling in the geek-center of our brain when we read about it. It is well written and thorough so if you’re into this kind of thing there’s plenty to enjoy.

[Thanks Raleigh]

NES processor cloned on a FPGA

nes-on-an-fpga

[Bradley] decided to tackle the challenge to recreate the original Nintendo Entertainment System’s processor in a Field Programmable Gate Array. Say what? The original NES is a Legacy System, still used but no longer manufactured. If a system breaks, it becomes more and more difficult to repair or find replacements parts as time passes. By using a programmable integrated circuit such as a CPLD or a FPGA to clone the functionality of the original hardware, legacy systems can live on long after the original hardware has given up the ghost.

It took [Bradley] about a year to fully implement the NES processor as part of his Master’s project at Bradley University. He used what was known about the processor combined with some detective work with logic probes along the way. The programming was done in VHDL and those files are available for download (click on Documentation).

With the ubiquity of NES emulators on every device known to man you probably won’t be replicating this unless you want a reason to play with a FPGA. What interests us is the hardware solution this type of work provides for obsolete hardware that still serves a useful purpose. If you’ve used a FPGA or similar device to keep an old system running, let us know about it in the comments.