Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Architectures and Processors blog Streamlining the migration to an ARM processor based platform
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tell us what you think
Tags
  • soc_design
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Streamlining the migration to an ARM processor based platform

Chris Shore
Chris Shore
September 11, 2013
2 minute read time.

Now available design strategies and documentation to ease the migration to an ARM platform - From one programmer to another.

  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.

Anonymous

Top Comments

  • Simon Birtwistle
    Simon Birtwistle over 12 years ago +1
    It’s not that easy to find them! I can only find them under “All Application Notes” because they’re not consistently categorised, and the latest doesn’t have an AN number. However, here they all are: ...
  • Chris Shore
    Chris Shore over 12 years ago +1
    Thanks for the comment. Apologies about the categorisation...something I need to get our web team to help me fix when they have a spare minute!Hope you find them useful.
  • Chris Shore
    Chris Shore over 12 years ago
    Thanks for the comment. Apologies about the categorisation...something I need to get our web team to help me fix when they have a spare minute!Hope you find them useful.
    • Cancel
    • Up +1 Down
    • Reply
    • More
    • Cancel
  • Simon Birtwistle
    Simon Birtwistle over 12 years ago
    It’s not that easy to find them! I can only find them under “All Application Notes” because they’re not consistently categorised, and the latest doesn’t have an AN number.

    However, here they all are: [url="http://infocenter.arm.com/help/topic/com.arm.doc.dai0274b/index.html"]IA32[/url]  [url="http://infocenter.arm.com/help/topic/com.arm.doc.dai0245a/index.html"]PPC[/url]  [url="http://infocenter.arm.com/help/topic/com.arm.doc.dai0237a/index.html"]8051[/url]  [url="http://infocenter.arm.com/help/topic/com.arm.doc.dai0235c/index.html"]MIPS[/url]  [url="http://infocenter.arm.com/help/topic/com.arm.doc.dai0234a/index.html"]PIC[/url]
    • Cancel
    • Up +1 Down
    • Reply
    • More
    • Cancel
Architectures and Processors blog
  • When a barrier does not block: The pitfalls of partial order

    Wathsala Vithanage
    Wathsala Vithanage
    Acquire fences aren’t always enough. See how LDAPR exposed unsafe interleavings and what we did to patch the problem.
    • September 15, 2025
  • Introducing GICv5: Scalable and secure interrupt management for Arm

    Christoffer Dall
    Christoffer Dall
    Introducing Arm GICv5: a scalable, hypervisor-free interrupt controller for modern multi-core systems with improved virtualization and real-time support.
    • April 28, 2025
  • Getting started with AARCHMRS Features.json using Python

    Joh
    Joh
    A high-level introduction to the Arm Architecture Machine Readable Specification (AARCHMRS) Features.json with some examples to interpret and start to work with the available data using Python.
    • April 8, 2025