PDA

View Full Version : Acorn Archimedes


tcdev
16th February 2009, 12:51 PM
Chris has re-commenced his work on our 6809 core (I'm planning on convincing him to extend it to a 6309 core when it's done) and it got me interested in doing a CPU core myself.

I thought about it for a bit and decided that the ARM2 would be a good choice to cut my teeth on HDL CPU design. I was always impressed with and curious about the Acorn Archimedes - if not primarily by the Zarch/Virus demo/game I first saw running on it. After a few hours on Google researching the ARM2 and the Archimedes, and running the Arculator software emulator, I've convinced myself that I'm interested enough to give it a go.

So tonight I perused the ARM2 data sheet in more detail and started work on the implementation.

Ideally, I'd like to be able to put together a PCB with a real ARM2 and implement the rest of the Archimedes in an FPGA. In parallel I could develop the ARM2 core and run it against the real processor for testing/debug. But that's a way off yet until time and finances permit.

That's the theory. There's plenty of work to be done - huge amounts of work - but seeing all the Apple II's, the Atari ST, the Amiga (Minimig), MSX (OCM) I thought it was time to tackle something reasonably complex rather than simply connecting 8-bit processors to tilemaps and sprite engines.

At the very least, I'll learn something - even if it is how _NOT_ to implement a RISC CPU in VHDL. OTOH if it all goes really well I'll probably end up getting sued by the owners of ARM IP! :p

Fear not, I'll still be dabbling in the other PACE projects as time and the whim allows. Top of my list are incorporating the 1541 changes in the C64 project, finishing off the WD179x implementation, and helping (hindering?) Chris with his 6809 core so I can finish my Coco 1 implementation.

tcdev
18th February 2009, 01:40 PM
I did a little more on the ARM2 core tonight. It's actually coming along quite a bit quicker than I originally thought - not through any brilliance of mine, but rather I found a nice paper that specifies and then mathematically proves the pipelined architecture of the ARM2 processor!!! So I've been busy converting pseudo-code into VHDL... and it even makes sense to me! :p

The upshot of all this is - I "simply" need to transcribe the "rules" in the paper (filling out a few functions that are pretty straightforward) and then implement the ALU. There's a few details which I'm yet to figure out, for example the multiplexing of the PC and the Address Register, but I'm confident the bulk of the logic looks sane.

Of course, everything is relative and there's still several weeks if not months (after hours) work getting the core anywhere near complete. And probably double or triple that effort to gain any sort of confidence that it's actually correct.

Chris also spent a few hours on his 6809 core - and almost got one instruction working! :eek: To be fair, it was the worst instruction to implement...

MiniMorph
24th February 2009, 07:52 PM
Strange making a new 6809 core when John Kent's seems to be at a good stage.

Speaking of 6809 cores has anybody seen a Vectrex in FPGA. Most of it looks pretty easy except a vector to VGA/TV out bit. I guess that should be similar to Asteroids however?

Nice to see some new HDL been coded anyway.

MiniMorph
24th February 2009, 08:04 PM
Just one other thing.

What basis can ARM sue you. I have always been puzzled by that.

I thought patents only lasted 20 years. It is not a copy as such so copyright should not apply should it.

I hear something about the Instruction Set being copyright but that seems a bit weak to me, but then what do I know.

Cheers.

tcdev
25th February 2009, 04:11 AM
Strange making a new 6809 core when John Kent's seems to be at a good stage.

Speaking of 6809 cores has anybody seen a Vectrex in FPGA. Most of it looks pretty easy except a vector to VGA/TV out bit. I guess that should be similar to Asteroids however?

Nice to see some new HDL been coded anyway.

My colleague was interested in doing a CPU, and initially considered the 68K - before the core was freely available. However, he decided it was perhaps a little ambitious as a first CPU, and chose to do a 6809 as a "warm-up exercise". And it would be nice to also have 6309 support too!

Ah Vectrex! I considered that at one point. Looked into it too. Can't recall why I didn't get any further... hmmm...

tcdev
25th February 2009, 04:18 AM
Just one other thing.

What basis can ARM sue you. I have always been puzzled by that.

I thought patents only lasted 20 years. It is not a copy as such so copyright should not apply should it.

I hear something about the Instruction Set being copyright but that seems a bit weak to me, but then what do I know.

Cheers.

I haven't looked into it, and don't have much handle on the law myself, but I recall reading of legal wrangles with ARM architecture patents/copyrights in the past. You may well be correct. I'm not concerned about it atm. ARM have clearly stated that the ARM, ARM2 & ARM3 architecture is "OBSOLETE". They do not offer any documentation on it at all, AFAICT. So their grounds may well be shaky.

The point would be that they could, no doubt, bury me (financially) regardless of the validity of their claims. That tactic has been used many, many times before, especially in the computing industry.

Then again, I could always keep the development completely under wraps. All of a sudden, a new HDL ARM2 core suddenly appears anonymously on some warez site or posted from an internet cafe onto a few dozen newsgroups. How did that get there? Just at the right time, too! :cool: