Index ¦ Archives ¦ Atom ¦ RSS

The first moxie linux boot output...

Userland, here I come! Check out moxiedev, run "ant build", then do the following...

$ ./root/usr/bin/moxie-elf-run linux-2.6/vmlinux
Linux version 2.6.31-rc3-gb006656-dirty (green@dev.moxielogic.com) (gcc version 4.5.0 20090715 (experimental) [trunk revision 149693] (GCC) ) #6 Sun Jul …

Kernel update: device trees and kernel threads

I've spent a lot of time in airports/planes/hotels recently, which is good news for the moxie linux port. It runs about 6.5M instructions, booting up to the point where a couple of kernel threads are created. However, a few context switches later it all comes tumbling down …


The Moxie Linux port

I've just checked the start of the kernel port into moxiedev. Running "ant build" will produce tools, simulators, u-boot and now a vmlinux you can run with moxie-elf-run or in gdb. It crashes on startup right now, but that's to be expected. I just got it to the point where …


Reverse debugging!

A few weeks ago I happened to be in Palo Alto and met up with my friend and long-time GDB hacker Michael Snyder. He told me about a new feature in GDB called "process recording". The basic idea is that when you tell GDB to enter into "record mode", it …


A Disassembler in Verilog

I've been playing around a little more with verilog. Here's a mostly complete moxie disassembler module written in verilog.

And here's a little driver for it. The driver reads a hex dump file into an array representing memory. On every clock cycle it updates the instruction and data output registers …


ISA improvements

I've committed the PC-relative branch instruction changes upstream. But this is just one of many ISA improvements that need to happen. Here are a handful of other ideas off the top of my head. None of these projects should be particularly difficult.

  • Shorten load/store offsets to 16-bits. They are …

Moxie GCC port is upstream!

The moxie port has been accepted by the GCC steering committee!

I just checked it in.

That is all.


Everything is relative (finally!)

The Moxie ISA still needs quite a bit of tuning. Take branches, for instance. A beq instruction currently encoded like so...

`00001111xxxxxxxx iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii`

...where the "x"s represent "don't care" bits, and "i"s are a 32-bit absolute branch target. That's right -- branch targets are not PC relative! This …


An even newer git repo

So it turns out that hosting a git repo that is only accessible via slow http is no fun.

Fortunately, the great team at github.com were willing to take this on, so now the real repository is accessible via this command:

$ git clone git://github.com/atgreen/moxiedev.git …


New git repo

I'll bottom line this one quickly:

  • moxiedev is now maintained with git. Check it out like so..
    $ git clone http://moxielogic.org/moxiedev.git
  • moxiedev now contains a partial u-boot port. It's "partial" because I fat fingered some commands and blew away four or five important files. They will have …

© Anthony Green. Built using Pelican. Theme by Giulio Fidente on github.