Thanassis Tsiodras Works to Build an Open Source Computer From a Defunct Pano Logic G2 Thin-Client
While it doesn't quite reach its final goal, Tsiodras efforts showcase how FPGAs unlock the world of hardware to software developers.
Software developer Thanassis Tsiodras has published a write-up detailing an experiment to make use of a Pano Logic G2, once sold as a thin-client receiver for remote virtual desktop servers, as a fully open source personal computer — based on the free and open source LEON 32-bit microprocessor core.
Every hacker has The Drawer: a collection of development boards and assorted electronics which they'll definitely get around to using Real Soon Now. For many, The Drawer includes products from companies that simply don't exist any more - and in Tsiodras' case, among these is a failed thin-client device from since-shuttered company Pano Logic.
"I am developing a strange habit — I keep 'twisting' products from failed companies into nice toys," Tsiodras writes of his latest project. "After completing my AtomicPI saga, something else caught my attention: a very cheap FPGA board that came out of yet another failed company — the Pano Logic G2. Since the Pano Logic was meant to be a thin client, and comes with VGA, USB, Ethernet... it's packing all the pieces necessary to create a stand-alone computer! Could it be that this can be made into a fully open source computer?"
Thus began a month-long experiment into unlocking and repurposing the field-programmable gate array at the heart of the Pano Logic G2 thin-client system, building on reverse-engineering work published on Tom Verbeure's GitHub repository, in order to load an open source CPU core which could run an open source real-time operating system (RTOS) — "the same OS [RTEMS] that most European satellites and their instruments are using," Tsiodras points out — prepared using an open source cross-compiler.
After a surprisingly difficult time getting Xilinx' WebPACK software to install and operate, Tsiodras was able to program the FPGA with a multi-core system-on-chip design based on the free and open source SPARC-V8-based LEON microprocessor core. The process is notable in that Tsiodras is a software, not hardware, developer — who jokes that hardware design "is a strange land — it is, after all, a land full of clocks!"
The project proved a partial success: "We have ourselves a multi-core CPU, built from our own source code, running binaries built from our own source code, with a cross-compiler that can also be built from openly accessible source code," Tsiodras concludes, though admits that he stopped short of implementing access to the board's USB, Ethernet, and on-board 128MB DDR2 SDRAM peripherals.
"These last two pieces in particular, would elevate it to something like the first 'serious' machine I worked with, back when I was a student: A SPARCStation," Tsiodras writes. "I'd love that, and if the HW controllers involved are supported by Linux, bootstrapping the undisputed king of OSes inside this would be a breeze. Alas, I am told by my friends that DDR controllers are no joke; they are not the playground of bored SW engineers."
The full write-up is available on Tsiodras' blog.