# Data I/O

Data I/O Corporation is a provider of manual and automated data programming and security provisioning systems for flash memory, microcontrollers, and logic devices. Founded in 1969 and incorporated in 1972, the company developed equipment that allowed electronic designers to program non-volatile semiconductor devices with data stored on punched cards or ASCII-encoded (eight-level) punched paper tape. These products were used for the design and manufacturing of systems used in industries such as IoT, medical development, and consumer electronics. Over the next three decades, the company was involved in technologies such as Bipolar, EPROM, EEPROM, NOR FLASH, Antifuse, FRAM, NAND FLASH, eMMC, and Universal Flash Storage (UFS) devices.

## History

Data I/O is headquartered in Redmond, Washington, with offices in Shanghai, China, and Gräfelfing, Germany.
More recently, the company has extended the automated pre-programming system to include security provisioning capabilities for authentication systems secure microcontrollers, microprocessors, and secure flash with their security deployment platform for Original Electronics Manufacturers (OEMs) as well as other markets. The company's products integrate a FIPS 140-2 Level 3 compliant HSM into an automated programming system which is intended to enable provisioning of credentials into security ICs and microcontrollers in high volume.

## Products
### Current

Introduced in 2000, Data I/O FlashCORE technology is optimized for programming of NAND and NOR-based flash devices and Flash microcontrollers and is sold in FlashPAK, PS-System, FLX500, and ProLINE-RoadRunner programmer models spanning engineering to high-volume offline and inline "just-in-time" manufacturing. Data I/O provides Tasklink for Windows software to set up FlashCORE programmers and specify data sources. In addition, they develop software that manages automated and remote programming, secures data, and manages device serialization. Many of these work with TaskLink, while others are independent software packages.
Data I/O manufactures two device programmers that can accommodate DIP (through-hole) devices, the Plus-48 and the Optima. Both are aimed at the small, (relatively) low-cost, desktop programmer (engineering) market.

### Legacy
#### Model 1

One of their first attempts at a 'Universal' programmer was Model 1, Model 5 (TTL-Sequencer based), Model 9 (Microprocessor based), and System 19 (introduced in the late 1970s). It utilized interchangeable device sockets and configuration plug-in printed-circuit cards, consisting mainly of resistors, diodes, and jumpers, to allow the reading and programming of a variety of memory devices.

#### System 29

In the early 1980s, the System 29 series emerged. The first model, the 29A, added user RAM and eliminated the need for configuration cards by offering keypad-programmable 'Family' and 'Pinout' codes to configure the programmer. Introduced along with the 29A was the 'Unipak,' a large plug-in adapter that featured multiple sizes of ZIF sockets to reduce the need for changing socket modules. Since the Unipak was limited to dealing with memory devices, an additional accessory series called the 'LogicPak,' was introduced to handle programmable logic devices (PALs, GALs, etc.)
Later models featured a series of fixed sockets and an interchangeable socket module in one housing. Memory devices up to 40 pins in size could be read or programmed with the simple installation of the appropriate socket module. The 29B chassis could accommodate up to 1MB of user RAM.

#### Uni-family

Around 1987, Data I/O introduced the first of the 'Uni-family' programmers in the form of the 'Uni-site.' This was their first engineering programmer to feature software-programmable pin drivers, a technology that allows any pin of the device socket to be configured, through software, for power, ground, or nearly any type of programming waveform.
The first model in this line, the Unisite-40, featured a removable module with a single 40-pin DIP ZIF socket, called the SITE-40, and space to install optional programming adapters to the right of this DIP module. Such modules included the 'SetSite,' a module containing eight 40-pin ZIF sockets to allow gang programming of up to eight identical memory devices, and the 'ChipSite,' an early multi-socket module accommodating several sizes of PLCC and SOIC DIP packages with 'clamshell' ZIF sockets.
The final successor to the ChipSite unit was the PinSite. This featured a universal programming base that could accept a variety of socket adapters, including those for chips packaged in PGA, QFP, TSOP, and many others. There was even a special connection module made available that could, through the Pinsite's base, allow the Unisite to serve as the programming source in automated device handlers in factory floor environments.
The Unifamily was the first series of Data I/O programmers to feature a built-in user menu. All the programmer required for basic operation was a dumb terminal, hooked up via an RS-232 serial port. Facilities were also provided for computer-based remote control via a second serial port.
The early Unifamily all booted and ran from software stored on 720k floppy diskettes (in the case of the Unisite) or 1.44MB floppies (in the case of other Unifamily members). This software consists of the operator's menu system, self-test routines, and device algorithms. Later in production, an option for installation of a miniature hard drive was provided (See MSM, or Mass Storage Module, below). The Unisite is the only programmer that still requires true 720k floppies for non-MSM operation, or updating the MSM's software without the aid of external PC-based software.
The Unisite was the flagship model of the Unifamily line, selling for over $35,000 in a typical configuration and staying in active production for at least 20 years. Data I/O, to make the Unifamily line more attractive to companies with tighter budgets, introduced several other programmers utilizing the same pin-driver technology as the Unisite, all selling for (typically) under $10,000. These included the model 2900, 3900, 3980, and 3980XPi. These units varied in capability, primarily in terms of the number of pin drivers. The basic 2900 featured 44 drivers, while the 39xx series all had 88. Data I/O developed a proprietary multiplexing scheme that allowed Unifamily programmers, equipped with their maximum number of hardware pin drivers, to handle devices with up to 240 pins.
Other differences in the series are minor. Models share a common base design and feature the ability to boot and run from floppy diskettes and provide an internal menu.
The differences are primarily in features. The Unisite, less than a year after entering production, was revised in the form of a new DIP module, referred to as the 'Site48.' This adapter had 48 pins in its DIP socket and remained the standard for many years. Its successor, the Site48-HS, is functionally identical but utilizes solid-state switching for the socket pins instead of the electromechanical relays in earlier adapters such as the 2900 and 39xx series.
The Unisites featured 512K of user RAM, standard. Field-installable upgrade kits, consisting of a separate memory board, an appropriate number of 30-pin SIMMs, a mounting bracket, and interconnecting cable, were made available to upgrade these early units to 1MB or 8MB. The price for the 8MB upgrade kit was around $495 in the mid-1990s. These early kits required considerable labor to install, including extensive disassembly of the programmer, as the memory board was designed to be mounted under the main circuit board.
In response to these difficulties, as well as improvements in available technology, Unisite's main circuit board soon received major revisions. These included the removal of most of the DIP-based DRAM chips and the addition of two 30-pin memory module sockets on the main board. With these changes, upgrading the programmer's available RAM became much easier, requiring only the removal of the top cover, installation of two SIMMs, and replacement of one PAL chip.

## Mass Storage Module

The revisions to the UniSite main board were done to support a new option. Data I/O created the Mass Storage Module (MSM). This consisted of an additional circuit board containing a miniature hard disk drive (either a 2.5-inch PATA/IDE device or a PCMCIA Type III card drive, depending on revision level) and appropriate interface circuitry. All the programmer's operating software and device algorithms could be transferred to the MSM's drive in less than a half-hour, obsoleting floppy diskettes.
The latest revision is entirely solid-state, consisting of a single large FPGA chip as the board's glue logic, an SPROM (Serial Programmable Read-Only Memory) chip, containing the FPGA's operating code, a few SRAM chips for buffering and a solid-state or 'Flash' drive.
The MSM remains an optional, field-installable module for the 3900 and Unisite. Unisite programmers require 8MB of user RAM and controller board revision 701-2313-00 or higher to utilize this option. In addition, the MSM requires operating software revisions of 6.6 or above.
All 3900 series programmers are MSM-compatible at the hardware level. Successful installation of the MSM in a 3900 programmer automatically turns it into the model 3980.
MSM adds another option, a high-speed parallel port interface that supplements the programmer's serial port. In conjunction with a Windows-based PC, and Data I/O's TaskLink software, the parallel port greatly enhances the speed of data transfers to and from the programmer. As one example, a 1MB data file takes at least two minutes to be transferred into or out of a Unifamily programmer via the serial port at its highest available speed (19200 baud). The same file, transferred with the parallel port's help, takes around 30–40 seconds.
Any Unifamily programmer with 'XPi' after its name (Unisite-XPi, 3980-XPi) already has the MSM and parallel port options installed as standard equipment. These programmers represent the end of the Unifamily line and, although no longer in production, are fully supported.