Autoconfig is an
auto-configuration
Auto-configuration is the automatic configuration of devices without manual intervention, without any need for software configuration programs or jumpers. Ideally, auto-configuring devices should just " plug and play". Auto-configuration has ...
protocol of
Amiga
Amiga is a family of personal computers produced by Commodore International, Commodore from 1985 until the company's bankruptcy in 1994, with production by others afterward. The original model is one of a number of mid-1980s computers with 16-b ...
computers which is intended to automatically assign resources to expansion devices without the need for
jumper settings.
It is analogous to
PCI configuration through
ACPI
Advanced Configuration and Power Interface (ACPI) is an open standard that operating systems can use to discover and configure computer hardware components, to perform power management (e.g. putting unused hardware components to sleep), auto con ...
.
Autoconfig is integrated within the Amiga's
Kickstart firmware, usually stored in
ROM
Rom, or ROM may refer to:
Biomechanics and medicine
* Risk of mortality, a medical classification to estimate the likelihood of death for a patient
* Rupture of membranes, a term used during pregnancy to describe a rupture of the amniotic sac
* ...
.
When the system is switched on,
AmigaOS
AmigaOS is a family of proprietary native operating systems of the Amiga and AmigaOne personal computers. It was developed first by Commodore International and introduced with the launch of the first Amiga, the Amiga 1000, in 1985. Early versions ...
interrogates each expansion device in turn and assigns address space or resources as needed. For example, in the case of a memory card, the OS can dynamically add the memory to the system. Through Autoconfig the OS can access firmware on expansion devices, for example, to boot from a disk connected to a hard disk controller.
Protocol
Expansion devices respond to certain fixed memory addresses starting at hexadecimal (or for
Zorro III) if the /CFGIN signal is asserted and the device is not already configured. The
CPU reads
nibble
In computing, a nibble, or spelled nybble to match byte, is a unit of information that is an aggregation of four- bits; half of a byte/ octet. The unit is alternatively called nyble, nybl, half-byte or tetrade. In networking or telecommuni ...
s of configuration information (usually supplied by a
PAL
Phase Alternating Line (PAL) is a color encoding system for analog television. It was one of three major analogue colour television standards, the others being NTSC and SECAM. In most countries it was broadcast at 625 lines, 50 fields (25 ...
) such as manufacturer ID, product ID, and the amount of address space the device requires. The CPU then writes a base memory address to the device (or tells it to "shut up" if for some reason it can't be configured), and the device asserts /CFGOUT.
The /CFGIN of the first device is tied to ground. The second device's /CFGIN is controlled by the first device's /CFGOUT, and so on.
In a
backplane
A backplane or backplane system is a group of electrical connectors in parallel with each other, so that each pin of each connector is linked to the same relative pin of all the other connectors, forming a computer bus. It is used to connect s ...
design such as the
Amiga 2000
The Amiga 2000 (A2000) is a personal computer released by Commodore in March 1987. It was introduced as a "big box" expandable variant of the Amiga 1000 but quickly redesigned to share most of its electronic components with the contemporary Am ...
, connecting the /CFGOUT of one slot directly to the /CFGIN of the next would create the problem that an unoccupied slot would break the configuration chain. To solve this, the backplane
ORs the /CFGIN and /CFGOUT signals to form the /CFGIN for the next slot (/CFGOUT is pulled low if undriven), which allows empty slots to be bypassed. This requires one
74LS32 (quad OR gate) on the Amiga 2000, which is the only
motherboard
A motherboard, also called a mainboard, a system board, a logic board, and informally a mobo (see #Nomenclature, "Nomenclature" section), is the main printed circuit board (PCB) in general-purpose computers and other expandable systems. It ho ...
hardware required by Autoconfig.
Hardware specifications and bus connections
Autoconfig is part of the
Zorro II and
Zorro III expansion bus specification for configuring expansion devices in Amiga systems.
Zorro II was first used in the Amiga 2000, though a similar expansion bus is present on the
Amiga 1000
The Amiga 1000, also known as the A1000, is the first personal computer released by Commodore International in the Amiga line. It combines the 16/32-bit Motorola 68000 CPU which was powerful by 1985 standards with one of the most advanced grap ...
. Zorro II is a relatively straightforward extension of the
68000
The Motorola 68000 (sometimes shortened to Motorola 68k or m68k and usually pronounced "sixty-eight-thousand") is a 16/32-bit complex instruction set computer (CISC) microprocessor, introduced in 1979 by Motorola Semiconductor Products Sector ...
bus.
Autoconfig requires the 68000 data and address bus to be available to all devices on the bus. In theory, a virtual address system, as used in
PCI, would require a minor revision to Autoconfig.
The Amiga 2000 can accommodate five Zorro expansion cards, such as, RAM expansions, SCSI controllers and graphic cards. However the standard does not put a limit on the number of devices. In the A2000, two Zorro II slots are aligned with
ISA slots. The Zorro bus and ISA bus can be connected by means of a "bridgeboard", such as, the Janus Hardware Emulator, which allows emulation of
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, and Delaware General Corporation Law, incorporated in Delaware. Intel designs, manufactures, and sells computer compo ...
80286
The Intel 80286 (also marketed as the iAPX 286 and often called Intel 286) is a 16-bit microprocessor that was introduced on February 1, 1982. It was the first 8086-based CPU with separate, non-multiplexed address and data buses and also the fi ...
or
80386
The Intel 386, originally released as the 80386 and later renamed i386, is the third-generation x86 architecture microprocessor from Intel. It was the first 32-bit processor in the line, making it a significant evolution in the x86 architect ...
systems.
Zorro III is the 32 bit auto-configuring expansion bus of
Amiga 3000
The Amiga 3000, or A3000, is a personal computer released by Commodore in June 1990. It is the successor to the Amiga 2000 and its upgraded model Amiga 2500 with more processing speed, improved graphics, and a new revision of the operating sys ...
and
Amiga 4000 systems.
From the A3000 design onwards, it was deemed desirable for all enumerable hardware expansions to use Autoconfig. It is OS-legal for non-Autoconfig hardware to be completely ignored and the standard was adopted in AmigaOS 3.1.
Notation
In early Commodore documents it was styled ''Auto Configuration'',
''auto-config''
or ''AutoConfig'',
whereas in later documents it was styled ''AUTOCONFIG''.
References
External links
Amiga Hardware Manufacturer ID Registry
{{Amiga hardware
Amiga
AmigaOS
Computer buses
Computer configuration