28

I was reading about BIOS recovery and ran across the word "programmer".

(No, it's not talking about people.)

What is it referring to?

3
  • Programming through the Serial Peripheral Interface Bus: en.wikipedia.org/wiki/…
    – Aki
    May 9, 2011 at 15:49
  • @Aki: Thanks for the link, I'll look at it, seems like it's good for an answer too. :)
    – user541686
    May 9, 2011 at 15:54
  • @Robert: Lol nice edit, thanks. :D (Though it's not quite as catchy, haha.)
    – user541686
    May 10, 2011 at 1:28

3 Answers 3

30

The BIOS is usually stored on an EEPROM chip -- an Electrically Erasable Programmable Read-Only Memory. Under ideal conditions you can flash it with a little bit of software. If things go spectacularly bad (i.e. the system is bricked), you'd have to pop the chip out of the motherboard, pop it into a programmer, rewrite the chip with it, then pop it back into the system.

6
  • That's exactly what the website says, but doesn't tell me what a programmer is... is it a chip? An oscilloscope-like device? A simple multimeter? A battery with wires? (obviously joking with last two, but you get the point...)
    – user541686
    May 9, 2011 at 15:53
  • 6
    It's a box with a chip socket that connects to a port on a computer. advin.com/eeprom-programmer.htm May 9, 2011 at 15:53
  • @Ignacio: Ahh, that explains it! Feel free to post it as an answer. :D
    – user541686
    May 9, 2011 at 15:55
  • its a breakout box of sorts - bridgat.com/files/motorla_mc68hc711_eeprom_Programmer.jpg here's an example of a fairly typical one- though not for computer bioses.
    – Journeyman Geek
    May 9, 2011 at 15:56
  • updated mine with a different link to a eeprom programmer ;p
    – Journeyman Geek
    May 9, 2011 at 15:57
53

In this case, the programmer is a device which programs a chip. They are often used to program microcontrollers, flash chips, EEPROM chips, PROM chips and so on.

The two most basic types of programmers are the in-circuit programmer and the traditional programmer. The in-circuit programmers such as this AVR ISP mk.II connect directly to the circuit which is programmed.

AVR ISP mk.2

The little header goes to appropriate connector on the circuit board and once the programing is done, it can be removed form the circuit. Also the advantage is that the memory being programmed does not need to be removed from the circuit.

This one is so called "bitbanging" programmer. It is also in-circuit programmer, but it uses a computer's (in this case) serial port to generate signals for programming the device. They are very cheap to make, but don't work as well with USB to serial chips. The other end of the cable goes to the circuit being programmed.

enter image description here

And now we have the classical programmers. They require the chip to be removed from a circuit and placed on the programmer itself. They are sometimes also called parallel of high-voltage programmers.

Here we have a bit-banging programmer which programs the chip in the socket. It's home-made and its main advantage is its low price, but on the other hand it needs a parallel port on the host computer to work.

EEP-ROM programmer

Here's another programmer into which device needs to be inserted.

willem EPROM programmer

It is common to see different types of sockets on these programmers because related families of chips with similar programming interfaces are often available in several different packages.

The main difference between those two types of programmers is that the in-circuit programmers actually need a chip which is set to accept programming. Sometimes because of bad programming or by design (for example if there aren't enough pins available on the device, so no pins may be left just for programming, or the device's firmware isn't expected to be upgradeable, or because the device simply doesn't support in-circuit programming) the device is left in such state that it cannot be programmed in its own circuit. In such cases it must be removed and placed in external programmer. Usually in-circuit programmers work by connecting to the device and using a bit of firmware to download the new firmware into the device. On the other hand, the classical programmers can force writing directly to device's memory so it can be used even when it's not responsive.

So to connect this to BIOS chips. Motherboards usually have some sort of integrated in-circuit programmer which will update the BIOS chip. In case the BIOS is incorrectly written onto the BIOS chip, the programmer may become inaccessible and external programmer may be needed to flash correct BIOS onto the chip.

3
  • 11
    +1 great pictures + excellent explanation, thank you!
    – user541686
    May 9, 2011 at 16:21
  • 2
    very nice answer! +1
    – studiohack
    May 10, 2011 at 6:09
  • 1
    Excellent answer! The pictures bring back memories of the good old days when educational kits packed with various solid state electronics were the "toys of the times." May 10, 2011 at 6:37
4

It can be a small program that re-programs your BIOS. This programming can entail re-programming of the settings that may have been previously backed up, or just changing the BIOS version itself (but programming the chips with a new BIOS). In your case, the "programmer" may be a hardware device used to program the chip (which will likely be in an IC {an Integrated Circuit}).

Usually these days we refer to this as "flashing the BIOS."

2
  • "If you have a board that wont access the drives after a bad flash then you will probably need to reprogram the BIOS chip or EEPROM using a programmer." --> sounds like a piece of hardware though.
    – user541686
    May 9, 2011 at 15:49
  • @Mehrdad: You're right about it being a piece of hardware. May 9, 2011 at 15:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .