Anders Nielsen's PhaseLoom Is a Software-Defined Radio Powered by the Classic MOS 6502
The now-50-year-old eight-bit microprocessor has found a new job: driving this quadrature sampling software-defined radio.
Embedded systems developer Anders Nielsen has built a software-defined radio (SDR) with a difference: it's powered by the venerable MOS Technology 6502 eight-bit microprocessor, first released in 1975.
"This little eight-bit CPU powered the Apple I & II, Commodore 64, Atari consoles, and even the [Nintendo] NES," Nielsen writes of the chip, which turned 50 last week. "For many, it was the chip that introduced the world to affordable personal computing. And now, half a century later, it's back β this time running the front end of my homemade SDR. Think of an SDR as the Swiss Army knife of radios. Instead of filling a workbench with dedicated devices, like a garage door opener, a satellite receiver, and a shortwave set, you just plug in an SDR and let software do the heavy lifting. Tuning, filtering, demodulating is all handled by code."
Dubbed the PhaseLoom, Nielsen's SDR is based on a quadrature sampling detector design, with a low-pass filter to reduce noise and a local oscillator generated by a Skyworks Solutions SI5351 clock chip β under the control of MOS Technology's classic 6502 processor, running an assembly program written by Nielsen as proof you don't need a powerful processor or field-programmable gate array (FPGA) to run a simple software-defined radio.
"When I first powered it up, I wasn't sure what to expect. But sure enough, with an antenna hooked up, I could tune into the 40-meter ham band," Nielsen says. "It's rough, noisy, and very much a prototype β but it works. A 6502-powered SDR is alive. Most SDRs today rely on powerful modern processors or FPGAs. Running one from a CPU designed in 1975 is absolutely ridiculous β and thatβs exactly why it's so fun. The 6502 may not be doing the heavy DSP [Digital Signal Processing] (yet), but itβs orchestrating the whole show. And with more development, I plan to push it further β maybe even squeezing in some real signal processing routines on that ancient silicon."
More information on the project is available on Nielsen's blog, while KiCad project files and GNU Radio flowgraphs have been published to GitHub under an unspecified open source license; source code is available in the separate 65uino repository, a 6502-based single-board computer that is required to use the PhaseLoom. Nielsen has also released fully-assembled boards, which include a hand-soldered "bodge wire" board design fix, on his store at β¬55.20 (around $65) β though you'll also need a 65uino, which will set you back an additional β¬18.29 (around $21.50) plus additional component costs for the CPU, IO chip, ROM, and miscellaneous parts.
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.