how to start to design arm boards


i'm beginner in embedded system and arm. i worked with this system for last
four month.
now i can use embedded boards like raspberry pi to install linux and
others, but now i want to design my board with arm cpu. i want some
resource about that.

for example, how can add flash memory or ram to arm microcontrollers?
or after designing board is linux driver programming needed or hardware
they has drivers for linux ?

excuse me for my poor english
thanks in advance

Dave McLaughlin
Have you any experience of doing any kind of PCB design before?

Working with slow speed microcontrollers is not too difficult but the you
start to want to connect a high speed processor to SDRAM, ROM etc, you need
to learn high speed PCB design techniques. There are a few helpful websites
but you are more than likely going to run into design issues if this is
your first time.

I do PCB designs for a living but all my stuff is low speed so as of yet I
have not looked at doing high speed designs yet.

Consider also that the vast majority of ARM processors of the type you want
to use are BGA devices, you will need to learn how to lay these out too and
you PCB software is going to have to be something a little more powerful
than Eagle (unless someone can correct me on this) as you will need to be
sure is has high speed design capability. I run Altium Designer and this
has all the capability but even now I still have not tried it out.

Good luck with it if you decide to have a go.

As for the software, this will depend on the devices you choose and if your
linux development system already supports these.


Dave McLaughlin
Oh yeah, I forgot to add that you will be working with a multilayer PCB for
this. There is very little chance you can track out the BGA connections
with a 2 sided board. Most likely it will be 6 or more. You might get away
with 4 if the processor has few pins.

Mentor Graphics have produced a very nice BGA document that explains how to
fan out and deal with large connection devices. Have a search for it.

hi Dave,

thanks for your attention.

i know PCB design is a big challenge, but now i don't want design PCB. at
this point i want to work with some header board like AT91SAM7X256 and
connect some interfaces like as SD CARD and Touch LCD to that.

at the other mean, i want to know how should i start to design an embedded
board, that means how should i connect SD card and other to arm and

are you think i should start to design PCB ?