Click here to learn
about this Sponsor:
Home  |  News  |  Articles  |  Polls  |  Forum

Keywords: Match:
DIY CPU demo'd running Minix
Nov. 03, 2007

Bill Buzbee offered the first public demonstration of the Minix OS -- a cousin of Linux -- running on his homebrew minicomputer, today at the Vintage Computer Festival in Mountain View, Calif. Magic-1, built with 74-series TTL ICs using wire-wrap construction, implements a homebrew, 8086-like ISA.


Bill Buzbee shows off the Magic-1 at the Vintage Computer Festival


Spread the word:
digg this story
Buzbee, a "senior research scientist" at Hewlett-Packard Laboratories, has developed compilers and language tools for over 20 years. Prior to HP Labs, he worked as a software developer for renowned startup Transmeta Corp. (Transmeta, at that time, was "home" to Linux creator Linus Torvalds).

While at Transmeta, Buzbee contributed to the development of the Efficeon processor's "code morphing" software. This innovative technology automatically (and on the fly) translated x86 code into instructions that ran on the Efficeon's proprietary VLIW ISA (very long instruction word instruction set architecture) execution engine, and was said to provide both faster performance and lower power consumption than the same native x86 code running on competing x86 processors from Intel or AMD.


Closeup of the Magic-1 minicomputer
(Click to enlarge)

No doubt this experience contributed to Buzbee's eventual desire to build an entire minicomputer from the ground up, a project that began with creating a totally homebrew CPU (central processing unit) with a unique set of instructions.

Hardware

According to Buzbee, the Magic-1 contains more than 200 ICs, interconnected by "thousands of individually wrapped wires." Rather than using a commercial microprocessor, Buzbee created his own microcoded CPU that zooms along at 4.09 MHz (yes, that's MHz, not GHz), and is "in the same ballpark as an old 8086 in performance and capabilities," he says. Additionally, it "supports user and supervisor modes, address translation via a hardware page table, six external interrupts, and up to 8 MB of memory (currently has 4 MB)."


Magic-1's front panel
(Click to enlarge)

As seen in the block diagram below, the Magic-1 minicomputer implements a 22-bit physical address bus and an 8-bit data bus. An additional address bit provides selection between the system's "memory" and "device" spaces, and there is a 16-bit data path within the CPU, says Buzbee.


Magic-1 block diagram
(Click to enlarge)

The design is partitioned into four equally-sized boards: an ALU board, a Control board, a Device board, and a Memory board -- all loaded with numerous 74 series TTL ICs, as indicated in the block diagram above . These four boards are pictured below.


Magic-1's ALU, Control, Device, and Memory cards
(Click each image to enlarge)


Software

Generally, the first step in getting application software and an operating system running on a new CPU design is to port a C compiler to the CPU's ISA, and then use that compiler to recompile the desired programs for operation on the CPU.

Accordingly Buzbee began by "retargeting" LCC, a "retargetable" ANSI C cross-compiler, to the Magic-1. To that he added a recompiled TCP/IP stack, a simple operating system that he wrote specifically for the Magic-1, and "hundreds of programs" that he recompiled for the system.

The big software project, though, was to port Minix 2 to the Magic-1. He barely managed to get it working in time to demonstrate it at this weekend's Vintage Computer Festival.


Minix 2 booting on the Magic-1 minicomputer
(Click to enlarge)

Buzbee describes Minix as a "fully multi-user, multi-tasking" OS. Like Linux, Minix is a Unix clone.

Developed by Andy Tanenbaum for educational purposes, Minix was released in 2000 as open-source software under a BSD-like license. Tanenbaum characterizes Minix as "much smaller than Linux and might well be suitable as the operating system for a watch, camera, or transistor radio." The latest version, Minix 3, is said to support x86 processors from 386 up, and in systems equipped with as little as 8MB of RAM. Apparently the older Minix 2 can run in 4MB of RAM, the currently amount available on the Magic-1.

Build your own minicomputer?

Further details on Buzbee's homebrew CPU and minicomputer are available on the Magic-1's website, here. In case you're itching to build one of these nifty minicomputers as your next weekend project, you can download complete schematics and BOMs (bills of materials) from the Magic-1 website.

Vintage Computer Festival

This year's annual West Coast Vintage Computer Festival is taking place this weekend at the Computer History Museum in Mountain View, Calif. Entry to the Festival is $20 for a pass that includes talks, exhibits, and a marketplace, while a limited pass, for exhibits and marketplace only, is available for $12.


-- Rick Lehrbaum




Related Stories:


(Click here for further information)


7 Advantages of D2D Backup
For decades, tape has been the backup medium of choice. But, now, disk-to-disk (D2D) backup is gaining in favor. Learn why you should make the move in this whitepaper.

4 Legal Reasons to Control Internet Access
The Internet is obviously a valuable resource for many organizations. However, many are exposed to legal liability concerns because they fail to control Internet access. Learn if you're safe in this white paper.

Rapidly Resolve J2EE Application Problems
Whether you are in the process of building J2EE applications or have J2EE applications already running in production, you must ensure that they deliver the expected ROI. Learn how in this white paper.

Load Testing 2.0 for Web 2.0
There are many unknowns in stress testing Web 2.0 applications. Find out how to test the performance of Web 2.0 in this white paper.

Build Better Games Online
For the game infrastructure providers, life is complex. Making money from games has become more complicated. Why? Find out in this white paper.

Building a Virtual Infrastructure from Servers to Storage
This white paper discusses the virtual storage solutions that reduce cost, increase storage utilization, and address the challenges of backing up and restoring Server environments.

Gaining Faster Wireless Connections with WiMAX
Welcome to what is quickly becoming the hyperconnected world where anything that would benefit from being connected to the network will be connected. Learn more in this white paper.

Is Your Desktop a Security Threat?
The new wave of sophisticated crimeware not only targets specific companies, but also targets desktops and laptops as backdoor entryways into those business’ operations and resources. Learn how to stay safe in this white paper.

Increasing SAN Reliability by 100 Percent
Storage area networks (SAN) are a strong part of storage plans. Learn how to increase your reliability and uptime by 100 percent in this case study.

 


Got a HOT tip?   please tell us!
Free weekly newsletter
Enter your email...
Click here for a profile of each sponsor:
PLATINUM SPONSORS
GOLD SPONSORS
(Become a sponsor)

ADVERTISEMENT
(Advertise here)

Check out the latest Linux powered...

mobile phones!

other cool
gadgets
HOWTOs: from DevShed & IBM DeveloperWorks:



BREAKING NEWS

• Balanced XIP and the AXFS filesystem
• ARM-based controller has StackableUSB expansion
• Intel multi-core threading library supports Sun Studio
• Multi-protocol wireless mesh gateway runs Debian
• Embedded Linux is doomed. DOOOMED!
• Article explores Linux hot-patching utility
• Sun demo's RIA tools on Android
• Panel PCs support PoE, Linux
• New Palms on horizon?
• Embedded track added to Linux conference
• Ubuntu ported to a PDA
• Linux-friendly SBC hosts dual quad-core Xeons
• Embedded Linux SQL database adds Java, C# bindings
• Lightweight, embedded graphics framework rev'd
• Shock resistant automation computer runs Linux


Most popular stories -- past 30 days:
• Ubuntu ported to ARM
• Linux still top embedded OS
• Linux gains new architecture support
• Linux 2.6.25 release bolsters ARM
• Linux-based diskless notebook costs under $300
• Low-cost MP3 player gains fancy Linux port
• Dutch UMPC runs Ubuntu Linux
• Mini-notebook boasts Linux, near-fullsize keyboard
• PC/104 module runs x86 Linux on 1.85 Watts
• Low-cost Linux-based NAS device supports RAID 1
• Free router distro gains wild WiFi features


Linux-Watch headlines:
• Running a small business on desktop Linux
• Sun launches OpenSolaris
• Via tiptoes toward openness
• Linux certification comes to Italy
• Installing Ubuntu Hardy Heron as a web hosting server
• Black Duck Buys Koders
• Open source conference co-locates with Ubuntu show
• Ubuntu 8.04 ready to challenge Windows
• KDE Linux reaches 52 million Brazilian kids
• Free x86-based Linux router distro rev'd


Also visit our sister site:


Sign up for LinuxDevices.com's...

news feed

Home  |  News  |  Articles  |  Polls  |  Forum  |  About  |  Contact
 
Use of this site is governed by our Terms of Service and Privacy Policy. Except where otherwise specified, the contents of this site are copyright © 1999-2008 Ziff Davis Enterprise Holdings Inc. All Rights Reserved. Reproduction in whole or in part in any form or medium without express written permission of Ziff Davis Enterprise is prohibited. Linux is a registered trademark of Linus Torvalds. All other marks are the property of their respective owners.