Programmer (hardware)
   HOME

TheInfoList



OR:

A programmer, device programmer, chip programmer, device burner, or PROM writer is a piece of electronic equipment that arranges written
software Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work. At the lowest programming level, executable code consist ...
to configure programmable
non-volatile Non-volatile memory (NVM) or non-volatile storage is a type of computer memory that can retain stored information even after power is removed. In contrast, volatile memory needs constant power in order to retain data. Non-volatile memory typi ...
integrated circuits An integrated circuit or monolithic integrated circuit (also referred to as an IC, a chip, or a microchip) is a set of electronic circuits on one small flat piece (or "chip") of semiconductor material, usually silicon. Large numbers of tin ...
, called programmable devices. The target devices include PROM, EPROM,
EEPROM EEPROM (also called E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or ...
,
Flash memory Flash memory is an electronic non-volatile computer memory storage medium that can be electrically erased and reprogrammed. The two main types of flash memory, NOR flash and NAND flash, are named for the NOR and NAND logic gates. Both use ...
, eMMC, MRAM,
FeRAM Ferroelectric RAM (FeRAM, F-RAM or FRAM) is a random-access memory similar in construction to DRAM but using a ferroelectric layer instead of a dielectric layer to achieve non-volatility. FeRAM is one of a growing number of alternative non-vol ...
, NVRAM, PLDs, PLAs, PALs, GALs, CPLDs,
FPGAs A field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturinghence the term '' field-programmable''. The FPGA configuration is generally specified using a hardware de ...
, and microcontrollers.


Function

Programmer hardware has two variants. One is configuring the target device itself with a socket on the programmer. Another is configuring the device on a
printed circuit board A printed circuit board (PCB; also printed wiring board or PWB) is a medium used in electrical and electronic engineering to connect electronic components to one another in a controlled manner. It takes the form of a laminated sandwich str ...
. In the former case, the target device is inserted into a socket (usually ZIF) on top of 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. In the latter case, device programmer is directly connected to the printed circuit board by a connector, usually with a cable. This way is called ''on-board programming'', ''in-circuit programming'', or ''
in-system programming In-system programming (ISP), or also called in-circuit serial programming (ICSP), is the ability of some programmable logic devices, microcontrollers, and other embedded devices to be programmed while installed in a complete system, rather than ...
''. Afterwards the data is transferred from the programmer into the device by applying signals through the connecting pins. Some devices have a serial interface for receiving the programming data (including
JTAG JTAG (named after the Joint Test Action Group which codified it) is an industry standard for verifying designs and testing printed circuit boards after manufacture. JTAG implements standards for on-chip instrumentation in electronic design aut ...
interface). Other devices require the data on parallel pins, followed by a programming pulse with a higher voltage for programming the data into the device. Usually device programmers are connected to a
personal computer A personal computer (PC) is a multi-purpose microcomputer whose size, capabilities, and price make it feasible for individual use. Personal computers are intended to be operated directly by an end user, rather than by a computer expert or te ...
through a parallel port, USB port, or
LAN Lan or LAN may also refer to: Science and technology * Local asymptotic normality, a fundamental property of regular models in statistics * Longitude of the ascending node, one of the orbital elements used to specify the orbit of an object in spa ...
interface. A software program on the computer then transfers the data to the programmer, selects the device and interface type, and starts the programming process to read/ write/ erase/ blank the data inside the device.


Types

There are four general types of device programmers: # Automated programmers (multi-programming sites, having a set of sockets) for mass production. These systems utilize robotic pick and place handlers with on-board sites. This allows for high volume and complex output (such as laser marking, 3D inspection, Tape input/output, etc.) # Development programmers (usually single-programming site) for first article development and small-series production. # Pocket programmers for development and field service. # Specialized programmers for certain circuit types only, such as FPGA, microcontroller, and
EEPROM EEPROM (also called E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or ...
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. But according to the progress of memory device technology, recent flash memory programmers do not need high voltages. In the early days of
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
,
booting In computing, booting is the process of starting a computer as initiated via Computer hardware, hardware such as a button or by a software command. After it is switched on, a computer's central processing unit (CPU) has no software in its ma ...
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 In computer programming, assembly language (or assembler language, or symbolic machine code), often referred to simply as Assembly and commonly abbreviated as ASM or asm, is any low-level programming language with a very strong correspondence b ...
. Nowadays,
EEPROM EEPROM (also called E2PROM) stands for electrically erasable programmable read-only memory and is a type of non-volatile memory used in computers, usually integrated in microcontrollers such as smart cards and remote keyless systems, or ...
s are used for bootstrapping mechanism as BIOS, and no need to operate mechanical switches for programming.


Manufacturers

For each vendor's web site, refer to "External links" section. *Batronix
BPM MicrosystemsDiagProg4: CodiProg
* Xeltek Inc. *Conitec Datasystems
MCUmall Electronics Inc.
*
Data I/O Data I/O is a provider of manual and automated data programming and security provisioning systems for flash memory, microcontroller and logic devices, founded in 1972. The company develops products used for the design and manufacturing of system ...
*
Elnec Elnec is a Slovak manufacturer of device programming systems for programmable integrated circuits. History Since its founding in 1991, the company has been oriented towards developing and manufacturing developer tools like device programmers ...
*DediProg Technology Co.,Ltd * *Hi-Lo System Research *Phyton, Inc.


See also

* Off-line programming *
In-system programming In-system programming (ISP), or also called in-circuit serial programming (ICSP), is the ability of some programmable logic devices, microcontrollers, and other embedded devices to be programmed while installed in a complete system, rather than ...
* Debug port * JTAG interface *
Common Flash Memory Interface The Common Flash Memory Interface (CFI) is an open standard jointly developed by Advanced Micro Devices, AMD, Intel, Sharp Corporation, Sharp and Fujitsu. It is implementable by all flash memory vendors, and has been approved by the non-volatile- ...
*
Open NAND Flash Interface Working Group The Open NAND Flash Interface Working Group (ONFI or ONFi with a lower case "i") is a consortium of technology companies working to develop open standards for NAND flash memory and devices that communicate with them. The formation of ONFI wa ...
* Atmel AVR#Programming interfaces * PIC microcontroller#Device programmers * Intel HEX – ASCII file format * SREC – ASCII file format * ELF – Binary file format *
COFF The Common Object File Format (COFF) is a format for executable, object code, and shared library computer files used on Unix systems. It was introduced in Unix System V, replaced the previously used a.out format, and formed the basis for e ...
– Binary file format * Hardware description language


References


External links

*Technical information
JEDEC - Memory Configurations: JESD21-C

JEDEC - Common Flash Interface (CFI) Specification, JESD68.01, September 2003.

Intel - Common Flash Interface (CFI) and Command Sets


** ttps://www.keysight.com/main/editorial.jspx?&ckey=2052199 What is the IEEE 1532 Standard? Keysight Technologies
JEDEC - STANDARD DATA TRANSFER FORMAT BETWEEN DATA PREPARATION SYSTEM AND PROGRAMMABLE LOGIC DEVICE PROGRAMMER: JESD3-C, Jun 1994

JEDEC - JC-42 Solid State Memories
*Manufactures
BPM Microsystems



Xeltek Inc.

Conitec Datasystems Inc.

Data I/O Corporation

Elnec s.r.o.

Dediprog

Minato Holdings Inc.

Hi-Lo System Research Co. Ltd.

Phyton, Inc.

halec
{{DEFAULTSORT:Programmer (Hardware) Computer engineering Integrated circuits Non-volatile memory Gate arrays