You could say I’m an “Acorn boy” – I cut my programming teeth on personal computers from Acorn in the late ‘70s and early ‘80s. All were based around the 6502 and, perhaps because, it’s where I started, I still look on that processor with great affection. I’ve used many other devices in my 25-year career in embedded software – 6502, 6809, 6811, Z80, 68000, 8051, 8086 to name a few. For the last eleven years, I’ve worked at ARM and have worked almost exclusively with various flavours of the ARM architecture. I had worked with ARM processors before that, though. In my life as a consultant software developer, I was part of the team which ported BSD Unix to what was then the Acorn RISC Machine.
So, you can assume that I’ve changed platforms many times during my career. Each time the process is similar. The programmer’s model changes, the instruction set changes, the register set changes, the exception model changes, but through it all, the actual job of programming changes very little. The skill set is the same and the problems which need solving are still there and are largely unchanged. You just have to work out how to solve them using a new toolbox. Sometimes it’s easy, sometimes it’s not. Often, the new architecture makes the coding task easier as its better suited to the problem in hand; then again, sometimes it makes it more difficult. I once built a DECT phone around an 8051 platform. I have great respect for the 8051, but believe me it isn’t good for wireless telephony!
As ARM’s Training Manager for the last 11 years, I have been involved in training and coaching many of our customers in the details of the ARM architecture. All have been programmers, all have had experience of some kind of another, all have had different backgrounds, but they have been united in one thing – all have been tasked with migrating themselves, their tools, their problems and their expertise to devices based around an ARM processor. Some have found it easy; some have struggled.
As the ARM architecture surges in popularity in almost every sector of the embedded universe, more and more programmers are being faced with the need to grapple with the whole ARM thing. So I have spent the last year or so putting together a series of papers which I hope will help. They cover the issues involved with migrating to an ARM platform and I have written papers covering MIPS, 8051, PIC, PPC and most recently, IA-32. You can find them on the ARM website, under “Application Notes”. More will undoubtedly follow. All are different and this reflects the fact that the particular issues you need to grapple with depend on where you are coming from.
I have written these as one programmer to another and they are deliberately technical rather than pieces of marketing. I have enjoyed writing them and hope they will prove interesting and useful to my fellow programmers worldwide as they come to terms with what it means to join the ARM family.
Chris Shore, Training Manager, ARM, has 11 years of experience in training ARM's customers and end-users all over the world. He has taught and addressed conferences on every continent except Antarctica...opportunities there are limited, but it is surely only a matter of time! Chris has worked in the melting pot which is the "Cambridge Phenomenon" for over 25 years since graduating from Cambridge University in 1986.
2 Comments On This Entry
Please log in above to add a comment or register for an account
Kickin’ It Up in Austin at DAC’s 50th with ARM and its Partners
on May 22 2013 08:34 PM
ARM Cortex-A57 Test Chip on TSMC 16nm FinFET Process Optimizes Tools & Flows
on May 21 2013 08:48 AM
Seven tips for ARM Accredited Engineer exam success
on May 20 2013 09:22 AM
The Server in Your Hand - and the three new interfaces inside it
on May 09 2013 08:54 PM
A DATE with Computing Destiny
on Mar 18 2013 06:57 PM