Programmer (hardware) explained
In the context of installing firmware onto a device, a programmer, device programmer, chip programmer, device burner, or PROM writer[1] is a device that writes, a.k.a. burns, firmware to a target device's non-volatile memory.[2]
Typically, the target device memory is one of the following types: PROM, EPROM, EEPROM, Flash memory, eMMC, MRAM, FeRAM, NVRAM, PLD, PLA, PAL, GAL, CPLD, FPGA.
Connection
Generally, a programmer connects to a device in one of two ways.
Insertion
In some cases, the target device is inserted into a socket (usually ZIF) on the programmer. If the device is not a standard DIP packaging, a plug-in adapter board, which converts the footprint with another socket, is used.[3]
Cable & port
In some cases, a programmer connects to a device via a cable to a connection port on the device. This is sometimes called on-board programming, in-circuit programming, or in-system programming.[4] [5] [6]
Transfer
Data is transferred from the programmer to the device as signals via connecting pins.
Some devices have a serial interface[7] for receiving data (including JTAG interface).Other devices communicate on parallel pins, followed by a programming pulse with a higher voltage for programming the data into the device.[8]
Usually, a programmer is controlled via a connected personal computer through a parallel port,[9] USB port,[10] or LAN interface.[11] A program on the controlling computer interacts with the programmer to perform operations such as configure install parameters and program the device,[9] [12] [13] [14]
Types
There are four general types of programmers:
- Automated programmers often have multiple programming sites/sockets[15] for mass production.[16] Sometimes used with robotic pick and place handlers with on-board sites to support high volume and complex output such as laser marking, 3D inspection, tape input/output, etc.
- Development programmers usually have a single programming site; used for first article development and small-series production.[17]
- Pocket programmers for development and field service.[18]
- Specialized programmers for certain circuit types only, such as FPGA,[19] microcontroller, and EEPROM programmers.
History
Regarding old PROM programmers, as the many programmable devices have different voltage requirements, every pin driver must be able to apply different voltages in a range of 025 Volts.[20] [21] But according to the progress of memory device technology, recent flash memory programmers do not need high voltages.[22] [23]
In the early days of computing, booting mechanism was a mechanical devices usually consisted of switches and LEDs. It means the programmer was not an equipment but a human, who entered machine codes one by one, by setting the switches in a series of "on" and "off" positions. These positions of switches corresponded to the machine codes, similar to today's assembly language.[24] [25] [26] Nowadays, EEPROMs are used for bootstrapping mechanism as BIOS, and no need to operate mechanical switches for programming.[27]
Manufacturers
For each vendor's web site, refer to "External links" section.
See also
External links
- Technical information
- Manufactures
Notes and References
- Book: Cressler. John D.. Silicon Earth: Introduction to Microelectronics and Nanotechnology, Second Edition. 2017. CRC Press. 9781351830201. en.
- Book: Czerwinski. Robert. Kania. Dariusz. Finite State Machine Logic Synthesis for Complex Programmable Logic Devices. 2013. Springer Science & Business Media. 9783642361661. en.
- Book: Edwards. Lewin. So You Wanna Be an Embedded Engineer: The Guide to Embedded Engineering, From Consultancy to the Corporate Ladder. 2006. Elsevier. 9780080498157. 58. plug-in adapters DIP packaging.. en.
- Web site: IEEE 1532-2002 - IEEE Standard for In-System Configuration of Programmable Devices. IEEE.
- Web site: What is the IEEE 1532 Standard?. Keysight Technologies.
- Book: Jacobson. Neil G.. The In-System Configuration Handbook:: A Designer's Guide to ISC. 2012. Springer Science & Business Media. 9781461504894. en.
- Book: Ong. Royan H. L.. Pont. Michael J.. Proceedings of the ninth international symposium on Hardware/Software codesign - CODES '01 . Empirical comparison of software-based error detection and correction techniques for embedded systems . 25 April 2001. 230–235. 10.1145/371636.371739. https://www.researchgate.net/publication/221656717. ACM. 978-1581133646. 10.1.1.543.9943. 15929440.
- Book: Ravichandran. D.. Introduction To Computers And Communication. 2001. Tata McGraw-Hill Education. 9780070435650. en.
- Book: Mueller. Scott. Upgrading and Repairing PCs. 2003. Que Publishing. 9780789727459. registration. 364. PROM programmer PC transfer.. en.
- Web site: Review: XG autoelectric TL866CS MiniPro Universal USB Programmer. Gough's Tech Zone. 22 April 2016.
- Web site: flash programmer with LAN - Google Search. www.google.com. en.
- Book: International Validation Forum. Validation Compliance Annual: 1995. 1995. CRC Press. 9780824794590. en.
- Web site: How to Read, Erase, & Write EProm EEProm Chips Electronic Fuel injection DIY Tuning GQ-4X Programmer. . 2 May 2014.
- Web site: EPROMS: The minimum you need to know to burn your own. www.classic-computers.org.nz.
- Web site: gang Definition of gang in English by Oxford Dictionaries. https://web.archive.org/web/20180317102217/https://en.oxforddictionaries.com/definition/gang. dead. March 17, 2018. Oxford Dictionaries English.
- Book: Mazidi. Muhammad Ali. Naimi. Sarmad. Naimi. Sepehr. The AVR microcontroller and embedded systems : using Assembly and C. 2011. Prentice Hall. Upper Saddle River, N.J.. 9780138003319.
- Web site: EEVblog #411 - MiniPro TL866 Universal Programmer Review - Page 1. www.eevblog.com.
- Web site: EPROM programmer for field service - Google Search. www.google.com. en.
- Book: Pang. Aiken. Membrey. Peter. Beginning FPGA: Programming Metal: Your brain on hardware. 2016. Apress. 9781430262480. en.
- Book: Godse. Atul P.. Godse. Deepali A.. Digital Techniques. 2008. Technical Publications. 9788184314014. en.
- Book: Ball. Stuart. Embedded Microprocessor Systems: Real World Design. 2002. Elsevier. 9780080477572. en.
- Choi. S. J.. Han. J. W.. Jang. M. G.. Kim. J. S.. Kim. K. H.. Lee. G. S.. Oh. J. S.. Song. M. H.. Park. Y. C.. Kim. J. W.. Choi. Y. K.. High Injection Efficiency and Low-Voltage Programming in a Dopant-Segregated Schottky Barrier (DSSB) FinFET SONOS for nor-type Flash Memory. IEEE Electron Device Letters. 2009. 30. 3. 265–268. 10.1109/LED.2008.2010720. 2009IEDL...30..265C . 0741-3106.
- Web site: Remembering the PROM knights of Intel EE Times. EETimes. 2002-07-03.
- Book: DuCastel. Bertrand. Jurgensen. Timothy. Computer Theology: Intelligent Design of the World Wide Web. 2008. Midori Press LLC. 9780980182118. en.
- Web site: Getting Started with Blinking Lights on Old Iron. Hackaday. 10 August 2017.
- Web site: Gooijen. Henk. NOVA 3 console description. www.pdp-11.nl.
- Book: Goel. Anita. Computer Fundamentals. 2010. Pearson Education India. 9788131733097. en.