Live data from Hacker News

68 Katy – 68000 Linux on a Solderless Breadboard

bigmessowires.com

21–30 of 40 posts

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#21
post #7

This is amazing! It's pretty surprising to me how little there is on the board. It looks comprehensible. I wonder if you could do this with a modern CPU and RAM. What would it look like?

userbinator's comments are good, and to extend his remarks obviously the solution to clock skew is to simply lower the clock rate. Good luck using a solderless breadboard at 500 MHz digital LOL. But breadboards work just fine at single digit MHz rates.

There is a problem. Many processors use dynamic registers and require a clock above a certain rate to refresh the registers. Yes, no kidding, dynamic ram cells as CPU registers. I know for a fact that the first 386 was dynamic and onlyrated down to 10 or 15 or so MHz (was fooling around with low power ops, if the thing sleeps 90% of the time at 25 MHz, you can't run the chip at 100% utilization at 3 MHz...). You can see a slight mismatch if your CPU registers are only rated down to 15 MHz and you can't reliably breadboard above maybe 5 MHz ... Of course this is analog world and a chip rated to run down to 12 Mhz will almost certainly run at 10 Mhz, maybe even 5 at least sometimes, if you're careful not to run at max temp or min power supply voltage or whatever. And adding to the fun, after (sometimes long after) the first dynamic versions of a CPU come out, someone (often a licensed competitor) makes a fully static version of the chip, sometimes pin compatible. As you can imagine, early on in development, being able to troubleshoot logic by running at a tenth of a Hz is very convenient. If you've ever wondered what "fully static" means on a microcontroller data sheet, well, now you know. And you know why you can't breadboard a classic 80386 but maybe a more recent fully static clone would work.

userbinator's comments about packages are also correct and there is a low speed workaround of carrier to DIP converter boards and proto boards. I've hand soldered many a surface mount TQFP, its very easy. There are many companies selling SMD proto boards, some cheaper, some fancier, but a realistic place to start is googling for "schmartboard", as pretty much if the SMD package exists, they sell a proto board for it, ready for projects like this.

Unfortunately the industry is moving toward BGA packages and the official new hardware to mount those is like $5K although I'm sure I could rig something up much cheaper.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#22

"...hung at calibrating display loop. Aha, I needed a timer interrupt...." He must be a true genius, to be able to infer the second from the first.

Not-genius here: I've actually come across this problem trying to boot Linux on enigmatic hardware. If you look in the Linux code it's actually reasonably simple to work out what it's waiting for.

This guy is definitely a genius for other reasons, though!

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#24
Great project! Good hustle with the multiple attempts...

I smile at the use of a 555 as an interrupt timer... I did the same thing in my 8088 senior project in 1996... Typically one wants the interrupts to be accurate and periodic (hence hardware dividers to adjust the rate), but the 555 is (typically) based on RC time constants and as such is subject to heat changes :)

So your operating system runs differently at different times of the day :)

Also, mine had potentiometers to control the two external interrupts (556), so you could change the interrupt rate in hardware and there was plenty of pot noise which was easily detectable in the output audio stream... tee hee memories.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#25
Amazing, he did in 3 weeks and that seems like 3 weeks of part time work, that's amazing. It's amazing how much work we can put out in a small time if we are focused. I lost it during the video when he got tangled up in vi. In 1998, I got a Sun 3 workstation which has a 68000 cpu, the only thing I could get to run on it then was NetBSD. It's amazing that a single person can now build such a computer and run Unix on it within 3 weeks. Just amazing, how time changes things.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#26
post #5
post #3

That is seriously good work and an amazing DIY project! I remember when I was a kid, trying to just get a pre-made Linux-image boot on my Amiga. I had a 68020 CPU, but due to no MMU and no FPU (neither being "normal" accessories at the time) I just couldn't get the thing to boot at all. Later, when I acquired a 68030 CPU, I at least had the MMU covered, but I was still a kid and didn't have a budget for a FPU. So I s…

That's peculiar that a pre-baked linux distro for Amiga would require an FPU to boot. Off the top of my head I can't think why that would be :S

The kernel is required to support FP instructions, either through emulation (processor would trap them) or an FPU. Early on, no one had ported the emu code to Linux 68k, but even later emulation (done by Roman Zippel) could be hit-or-miss, so it was pretty common to not be able to boot without a real FPU.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#27
post #2

To clarify the article's text, uClinux is not (just) a distribution, but a version of the kernel that rus on MMU-less hardware. The full Linux kernel does have m68k support, but it needs a 68020 or better CPU. This gets you real memory protection, VM etc.

Well...68020+68851 PMMU chip. Regular Linux won't run on just an '020.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#28

Amazing, he did in 3 weeks and that seems like 3 weeks of part time work, that's amazing. It's amazing how much work we can put out in a small time if we are focused. I lost it during the video when he got tangled up in vi. In 1998, I got a Sun 3 workstation which has a 68000 cpu, the only thing I could get to run on it then was NetBSD. It's amazing that a single person can now build such a computer and run Unix on i…

I built almost the same thing as a senior final project in digital electronics in 2000. It took me 7 months and I never even troubled myself to go beyond simple assembly programs.

I am humbled.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#29

Earlier quoted context omitted.

A lot of newer CPUs aren't available in DIP packaging which means they won't be usable with a breadboard; the M68k is one of the more unusual ones in that it's available in a 64-pin DIP, the longest common DIP package. E.g. all the x86 processors moved to square packages starting with the 80186/80188, only the 8086/8088 were in DIP. DIP packages are problematic for high-speed operation since the leads to the pins nea…

A lot? Make that pretty much all. The only things you still find in DIP format are very low-end micro-controllers.

Not ARM microcontrollers, which the OP specifically references. NXP’s LPC810 & LPC1114 are really the only game there, and they don't support external memory AFAIK (and it's an M0). Of course, there are a lot of shops bonding an QFP ARM or similar to a slip of PCB that's DIP form factor, but that's not exactly the same.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#30
post #2

To clarify the article's text, uClinux is not (just) a distribution, but a version of the kernel that rus on MMU-less hardware. The full Linux kernel does have m68k support, but it needs a 68020 or better CPU. This gets you real memory protection, VM etc.

Wasn't uClinux merged into mainline a long time ago?

You can build it from the mainline git repo, but what you get is a version of the kernel with defining features of Linux/Unix missing.
Post reply on HN