Universal Chip Analyzer: Test Old CPUs In Seconds

Collecting old CPUs and firing them up again is all the rage these days, but how do you know if they will work? For many of these ICs, which ceased production decades ago, sorting the good stuff from the defective and counterfeit is a minefield.

Testing old chips is a challenge in itself. Even if you can find the right motherboard, the slim chances of escaping the effect of time on the components (in particular, capacitor and EEPROM degradation) make a reliable test setup hard to come by.

Enter [Samuel], and the Universal Chip Analyzer (UCA). Using an FPGA to emulate the motherboard, it means the experience of testing an IC takes just a matter of seconds. Why an FPGA? Microcontrollers are simply too slow to get a full speed interface to the CPU, even one from the ’80s.

So, how does it actually test? Synthesized inside the FPGA is everything the CPU needs from the motherboard to make it tick, including ROM, RAM, bus controllers, clock generation and interrupt handling. Many testing frequencies are supported (which is helpful for spotting fakes), and if connected to a computer via USB, the UCA can check power consumption, and even benchmark the chip. We can’t begin to detail the amount of thought that’s gone into the design here, from auto-detecting data bus width to the sheer amount of models supported, but you can read more technical details here.

The Mojo v3 FPGA development board was chosen as the heart of the project, featuring an ATmega32U4 and Xilinx Spartan 6 FPGA. The wily among you will have already spotted a problem – the voltage levels used by early CPUs vary greatly (as high as 15V for an Intel 4004). [Samuel]’s ingenious solution to keep the cost down is a shield for each IC family – each with its own voltage converter.

However, due to the need to store FPGA configurations for different shields, the Mojo’s on-board EEPROM wasn’t up to the job, and needed to be upgraded from 4MB to 128MB. Luckily this component switch didn’t require any change on the PCB, though the ATmega32U4 firmware had to be modified, along with the original tool for FPGA firmware upload.

The list of compatible ICs is impressive: Intel 8085/8086/8088, Zilog Z80, RCA/COSMAC 1802, NSC800, Intel 8051 & 8048 are just a few of the currently supported series, and more are being added at an astonishing rate! Shields for RAM and BSP are also underway.

Depending on interest, [Samuel] is considering a non-profit Kickstarter or Indiegogo, so be sure to comment if you dig it!

40 thoughts on “Universal Chip Analyzer: Test Old CPUs In Seconds

    1. The Neoloch tester will do PIA and the 6532 chips.

      I’d be down to buy 2 of these CPU testers and would LOVE to find a tester that would test the AY-3-8910 through 8916 sound chips and their I/O ports…. And one that would test 6522, 8155, and 8255 I/O chips.

      1. No. But not that interested in that legacy stuff, or Nixies btw. We have LEDs, LCD, TFT and OLED. Why use ancient technology which requires >100V and only offers a single color?
        The C64 was really great at it’s time. But why should I have kept it 10yrs later?

    1. Trust me when I tell you that the knowledge gained by actually building something around them is worth a whole heck of a lot more, even in this day and age. Specs may not be “all that” — but there are some things about computers that you only learn when you get down to the chip level and build your own 80s home micro. (I speak from partial experience here.)

      As an aside, I think you *might* be on the wrong site, if you’d rather scrap history for its monetary value. Forbes is thataway –>>

      1. He’s definitely on the wrong site if he thinks he’ll get more from the gold content than from the collectors. But having said that will just make him try and sell things for over inflated prices. *sigh*

    1. Was about to write same comment :)
      except we already have most of the programming done in open source software like flashrom and UniFlash(dinosaur written in Pascal! I was a contributor ages ago).

      What sucks about this tho is $75 FPGA board when ebay is full of $20-35 XC6SLX16 dev boards. For example $20 “XC6SLX16 Spartan 6 Xilinx FPGA Development Board w/ Micro SDRAM Memory 32Mb” (Chinese discount means its cheaper than FPGA in single units from digikey, and you get ram as a bonus on top of that!).

      This could be a great replacement for TL866CS, could even cost the ~same if build from chinese dev board lego.

    2. yeah one programmer we can trust and add our own parts to would be great, especially as the community could verify that programming chip x works rather than hoping that the list of parts that supposedly work with the chinese mystery box isn’t just lies

  1. Yes!!!! I was watching for something like this. I want to build a recycler and I need a way to test circuits. I suppose we can enlarge it for more chips to be added. Maybe something modular can be great. Or simply design new ones for new chips…

    1. The UCA is pretty modular. Shields are swappable. I’m working on many differents Shield : MOS 65xx & MOT 68xx, 286, 386 but also RAMs, support chip like the RIOT, BSP and FPUs. Almost any component can be tested (with or without cheap adapters)

      1. On the contrary, there is a significant market for vintage parts, a couple years ago I bought a 8088 CPU chip to repair a Qbert arcade board, those boards are easy to sell for $200+ these days. An original IBM 5150 PC will cost you a few hundred bucks in working condition, someone with one of those or a related system will buy the 8087. Because you see no value in something doesn’t mean nobody else does. Go troll somewhere else.

  2. I’d love to have one too. If this gets expanded into other areas, I have a lot of arcade related items that I’d like to test. Specifically, the Atari POKEY (I know it’s not a CPU), and the Ricoh RP2A03 (Nintendo CPU / Modified 6502)

    1. I’m working on support for RP2A03/07 and Signetics 2650 right now. If all goes well, they should be added soon with a firmware upgrade. About other IC, the UCA can test almost everything, but I need to build a priority list. Starting a poll is probably a good way to determine the most “wanted” ICs.

  3. I’d like if the documentation was implemented with simple enough stuff to inform other hackaday users about how it does it.
    Personally i’d like to see everything related to it made opensource. So then maybe ppl could port it to their $20-25 XC6SLX16 sdram or ddr3 versions or suggest improvements. As a student i’ll enjoy reading & modifying the code for it.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.