Forgot your password?

typodupeerror
Books Programming Hardware

Ask Slashdot: Sources For Firmware and Hardware Books? 88

Posted by timothy
from the ok-but-what-do-you-call-the-layer-beneath-that? dept.
First time accepted submitter cos(0) writes "Between O'Reilly, Wrox, Addison-Wesley, The Pragmatic Bookshelf, and many others, software developers have a wide variety of literature about languages, patterns, practices, and tools. Many publishers even offer subscriptions to online reading of the whole collection, exposing you to things you didn't even know you don't know — and many of us learn more from these publishers than from a Comp Sci curriculum. But what about publishers and books specializing in tech underneath software — like VHDL, Verilog, design tools, and wire protocols? In particular, best practices, modeling techniques, and other skills that separate a novice from an expert?"
This discussion has been archived. No new comments can be posted.

Ask Slashdot: Sources For Firmware and Hardware Books?

Comments Filter:
  • Free Free Range VHDL (Score:3, Informative)

    by rasmuswikman (2511948) on Thursday April 26, 2012 @03:09PM (#39810889)
    I read the free ebook titled Free Range VHDL out of pure interest. Found it will written, but as I'm no engineer I cannot tell if it's exactly what the poster is asking for. But might be worth a read. http://www.freerangefactory.org/ [freerangefactory.org]
  • Re:Unfortunately... (Score:3, Informative)

    by Anonymous Coward on Thursday April 26, 2012 @03:10PM (#39810895)

    I have the same kind of background and would add that the manufacturers documentation is a must read. Once you have the foundation in programming from the types of books you mentioned, and an understanding of computer hardware, you need to get into the hardware specifics of your platform. Embedded/Firmware differs from what I would call general programming in that it is much more hardware specific. Many chip manufactures have software examples, documentation even training classes(sometimes even free) that get you the kind of information you are looking for.

  • by gmarsh (839707) on Thursday April 26, 2012 @03:22PM (#39811019)

    - Grab a couple books on C/C++ and Verilog. I highly recommend "Fundamentals of Digital Logic with Verilog Design", great for both learning and for reference. For C/C++, I've always been a fan of the Sam's "Learn __ in 24 hours" books.

    - Get yourself a FPGA development card, so you can get some "hardware play" in and familiarize yourself with some development tools. I have an Altera DE1 educational card that's a few years old, but it's got endless blocks on it (displays, LEDs, buttons, flash, SDRAM, VGA, sound... you name it) which makes it a great little card for embedded system learning. There's a whole set of Verilog and Nios (embedded processor) tutorials available for it, and lots of online hackers who have ported x86 processors (Zet project), hardware emulations of the NES, etc... to it. Xilinx and Actel also make some nice evaluation boards that seem to be targeted fairly often by hobbyists.

    Other than that... you can study the heck out of wire protocols, but you'll probably forget everything you learn unless you end up implementing it. You're better off trying to learn as many general things as you can - how to create well organized C/C++ and Verilog code, making your designs meet timing and such - so that if you end up having to implement something, you've got the basics already in place and don't need too much incremental learning. Also if you have some fun ideas for FPGA projects, implement your heart out - that sort of stuff looks great on a resume.

    Good luck!

  • Re:Datasheets (Score:3, Informative)

    by Anonymous Coward on Thursday April 26, 2012 @03:26PM (#39811075)

    Don't forget the appnotes- those are great for picking up pieces of passed down lore that you won't otherwise be exposed to unless you hang out with EE / Hardware types. The problem for me is gaining awareness that a class of parts exists so that I can read the appnotes for them.

  • Vendor tools (Score:2, Informative)

    by Anonymous Coward on Thursday April 26, 2012 @03:37PM (#39811201)

    Just like software project, you'll need to actually dive in to learn anything outside of quoting books. Experience is what separate the junior engineers from the fresh out of school.

    You can get "free" CPLD/FPGA vendor tools from the big 3 chips suppliers - Xilinx, Altera and Lattice. There are restriction on the design tool - either size/the chips selection, but other than that they are more than generous for some large non-trivial real life designs. The environment also have simulations again with some limitations on speed and/or size which would not be an issue. The same vendors and 3rd parties also have evaluation boards should you decided to go the next step of downloading the design onto the target chip.

    As for wired protocol, it is up to you to find the sources from the official standards themselves. Most of them (except USB/Ethernet and some open standards) require some payments. Everything else (i.e books, pre-standards floating on the web) are okay for understand, but should not be the basis for claiming standard compliance without reading up on the real standards and/or 3rd party testing lab.

    "skills that separate a novice from an expert" is hands on experience... It is not something you can get in a book or utube.

People who develop the habit of thinking of themselves as world citizens are fulfilling the first requirement of sanity in our time. -- Norman Cousins

Working...