views:

117

answers:

5

Please suggest me a book on embedded system design which covers

  1. advance design of embedded sofware

  2. design of hardware to build efficient system

I know, its difficult to learn all the things from books still do suggest me some books.

+3  A: 

Take a look at the website of Jack Ganssle. There is a list of books and there are also a lot of interesting articles.

starblue
Hi Starblue, I really liked Jack's website.
pdssn
+1  A: 

On the software side these two books pretty good on covering issues related to system design:

waffleman
+1  A: 

Those are two very different questions.

  1. For the first question, I'd chose a book focused on the hardware you've chosen, since the implementation, especially the "advanced design" for any particular system, will be very different from chip to chip. Visit the manufacturer's website or forums for suggestions relevant to your chip.
  2. For the second question, you need just some basic circuit design techniques, and to balance the never ending merits of high speed, low cost, low power to suit you. There are also tons of app notes out there to help you tune your circuit, depending, again, on what hardware you've chosen.

For example:

  1. Does your chip support nested interrupts or not? How deep? This makes a difference in how you program.
  2. if you choose an Analog Devices analog to digital converter, versus a Linear Technology part, they'll probably be similar, but different in the details. See the respective manufacturer's website for loads of information.


In general, I find it's easier if you pick your embedded hardware first, lot's of the implementation will change from chip to chip, even from the same manufacturer.

Once you've chosen a chip that (generously) has the speed and memory you think you need, along with any peripherals, then you just need basic circuit design techniques for high speed vs low power vs cost, again, depending on your application.

Plan on designing your first couple of circuits at least twice, leave time and money for both runs, including board spins.

Once you've done this once or twice (or several times) you'll get more comfortable with the range of hardware available, and make better decisions from the get-go.

The hardware external to the chip may remain approximately the same for different chips, the software may change significantly. Ports get read from and written to differently, peripheral set up and usage will likely be very different, and software techniques to minimize your load on the processor will change depending, again, on the chip. (nested interrupts! polling!)

My opinion, long-windedly, is that the best book to learn from is one focused on the architecture you've chosen. That will help you translate all the coding you think you can do to a chip that won't let you do much.

ArielP
A: 

I would suggest you have a look at this book,

ARM System-on-Chip Architecture

In embedded system domain, knowing ARM architecture is always helpful as its widely adopted in industry. This book touches on how you can design system using ARM IP cores, programming models etc.

Chintan
A: 

I have a copy of The Firmware Handbook by Jack Ganssle (ISBN-13: 978-0750676069) and it is full of useful information and tips, well organised and readable. I found the chapter on basic electronics a bit simplistic and there were a couple of errors, but apart from that it's a very good book, if a bit expensive (I bought it at a trade show direct from the publisher with a discount).

From memory, there's not much specifically on efficiency but if you followed the general principles and chose the components and design carefully, efficiency would result.

Martin