Autoconfig

Last updated

Autoconfig is an auto-configuration protocol of Amiga computers which is intended to automatically assign resources to expansion devices without the need for jumper settings. [1] It is analogous to PCI configuration through ACPI. [2] [3]

Contents

Autoconfig is integrated within the Amiga's Kickstart firmware, usually stored in ROM. When the system is switched on, AmigaOS 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 0xE8 0000 (or 0xFF00 0000 for Zorro III) if the /CFGIN signal is asserted and the device is not already configured. The CPU reads nibbles of configuration information (usually supplied by a PAL) 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 design such as the Amiga 2000, 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 hardware required by Autoconfig. [4]

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. Zorro II is a relatively straightforward extension of the 68000 bus. [5] 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 80286 or 80386 systems. [5]

Zorro III is the 32 bit auto-configuring expansion bus of Amiga 3000 and Amiga 4000 systems. [6] 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, [5] auto-config [5] or AutoConfig, [7] whereas in later documents it was styled AUTOCONFIG. [6]

Related Research Articles

<span class="mw-page-title-main">Amiga</span> Family of personal computers sold by Commodore

Amiga is a family of personal computers introduced by Commodore in 1985. The original model is one of a number of mid-1980s computers with 16- or 32-bit processors, 256 KB or more of RAM, mouse-based GUIs, and significantly improved graphics and audio compared to previous 8-bit systems. This includes the Atari ST—released earlier the same year—as well as the Macintosh and Acorn Archimedes. Based on the Motorola 68000 microprocessor, the Amiga differs from its contemporaries through the inclusion of custom hardware to accelerate graphics and sound, including sprites and a blitter, and a pre-emptive multitasking operating system called AmigaOS.

<span class="mw-page-title-main">Amiga 500</span> Personal computer by Commodore

The Amiga 500, also known as the A500, is the first low-end version of the Amiga home computer. It contains the same Motorola 68000 as the Amiga 1000, as well as the same graphics and sound coprocessors, but is in a smaller case similar to that of the Commodore 128.

<span class="mw-page-title-main">Amiga 1000</span> 1985 personal computer

The Commodore 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 graphics and sound systems in its class, and runs a preemptive multitasking operating system that fits into 256 KB of read-only memory and shipped with 256 KB of RAM. The primary memory can be expanded internally with a manufacturer-supplied 256 KB module for a total of 512 KB of RAM. Using the external slot the primary memory can be expanded up to 8.5 MB.

<span class="mw-page-title-main">Expansion card</span> Circuit board for connecting to a computer system to add functionality

In computing, an expansion card is a printed circuit board that can be inserted into an electrical connector, or expansion slot on a computer's motherboard to add functionality to a computer system. Sometimes the design of the computer's case and motherboard involves placing most of these slots onto a separate, removable card. Typically such cards are referred to as a riser card in part because they project upward from the board and allow expansion cards to be placed above and parallel to the motherboard.

<span class="mw-page-title-main">Amiga 3000</span> Personal computer by Commodore

The Commodore Amiga 3000, or A3000, is a personal computer released by Commodore in June 1990. It features improved processing speed, improved graphics rendering, and a new revision of the operating system. It is the successor to the Amiga 2000.

<span class="mw-page-title-main">Amiga 2000</span>

The Amiga 2000, or 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 Amiga 500 for cost reduction. Expansion capabilities include two 3.5" drive bays and one 5.25" bay that could be used by a 5.25" floppy drive, a hard drive, or CD-ROM once they became available.

Chip RAM is a commonly used term for the integrated RAM used in Commodore's line of Amiga computers. Chip RAM is shared between the central processing unit (CPU) and the Amiga's dedicated chipset. It was also, rather misleadingly, known as "graphics RAM".

<span class="mw-page-title-main">NuBus</span> 32-bit parallel computer bus

NuBus is a 32-bit parallel computer bus, originally developed at MIT and standardized in 1987 as a part of the NuMachine workstation project. The first complete implementation of the NuBus was done by Western Digital for their NuMachine, and for the Lisp Machines Inc. LMI Lambda. The NuBus was later incorporated in Lisp products by Texas Instruments (Explorer), and used as the main expansion bus by Apple Computer and a variant called NeXTBus was developed by NeXT. It is no longer widely used outside the embedded market.

In computing, a plug and play (PnP) device or computer bus is one with a specification that facilitates the recognition of a hardware component in a system without the need for physical device configuration or user intervention in resolving resource conflicts. The term "plug and play" has since been expanded to a wide variety of applications to which the same lack of user setup applies.

<span class="mw-page-title-main">Amiga 4000</span> Commodore computer

The Commodore Amiga 4000, or A4000, is the successor of the A2000 and A3000 computers. There are two models: the A4000/040 released in October 1992 with a Motorola 68040 CPU, and the A4000/030 released in April 1993 with a Motorola 68EC030.

PCI configuration space is the underlying way that the Conventional PCI, PCI-X and PCI Express perform auto configuration of the cards inserted into their bus.

Released as the expansion bus of the Commodore Amiga 3000 in 1990, the Zorro III computer bus was used to attach peripheral devices to an Amiga motherboard. Designed by Commodore International lead engineer Dave Haynie, the 32-bit Zorro III replaced the 16-bit Zorro II bus used in the Amiga 2000. As with the Zorro II bus, Zorro III allowed for true Plug and Play autodetection wherein devices were dynamically allocated the resources they needed on boot.

Zorro II is the general purpose expansion bus used by the Amiga 2000 computer. The bus is mainly a buffered extension of the Motorola 68000 bus, with support for bus mastering DMA. The expansion slots use a 100-pin connector and the card form factor is the same as the IBM PC. Zorro II cards implement the Autoconfig protocol for automatic address space assignment.

AmigaOS is the proprietary native operating system of the Amiga personal computer. Since its introduction with the launch of the Amiga 1000 in 1985, there have been four major versions and several minor revisions of the operating system.

<span class="mw-page-title-main">Minimig</span>

Minimig is an open source re-implementation of an Amiga 500 using a field-programmable gate array (FPGA).

<span class="mw-page-title-main">Amiga 4000T</span>

The Amiga 4000T, also known as A4000T, is a tower version of Commodore's A4000 personal computer. Using the AGA chipset, it was originally released in small quantities in 1994 with a 25 MHz Motorola 68040 CPU, and re-released in greater numbers by Escom in 1995, after Commodore's demise, along with a new variant which featured a 50 MHz Motorola 68060 CPU. Despite the subsequent demise of Escom, production was continued by QuikPak in North America into at least 1997.

Kickstart is the bootstrap firmware of the Amiga computers developed by Commodore International. Its purpose is to initialize the Amiga hardware and core components of AmigaOS and then attempt to boot from a bootable volume, such as a floppy disk. Most Amiga models were shipped with the Kickstart firmware stored on ROM chips.

<span class="mw-page-title-main">AmigaOS</span> Operating system for Amiga computers

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 of AmigaOS required the Motorola 68000 series of 16-bit and 32-bit microprocessors. Later versions were developed by Haage & Partner and then Hyperion Entertainment. A PowerPC microprocessor is required for the most recent release, AmigaOS 4.

<span class="mw-page-title-main">Amiga 1200</span>

The Amiga 1200, or A1200, is a personal computer in the Amiga computer family released by Commodore International, aimed at the home computer market. It was launched on October 21, 1992, at a base price of £399 in the United Kingdom and $599 in the United States.

<span class="mw-page-title-main">DraCo</span>

The DraCo, also known as DraCo Vision in one of its later models, was a non-linear video editing workstation created by MacroSystem Computer GmbH in 1994, based on the Commodore-Amiga platform.

References

  1. Miner, Jay (1991). Amiga Hardware Reference Manual. Amiga Technical Reference Series (Third ed.). Addison-Wesley. ISBN   0-201-56776-8.
  2. To, Acpi (3 July 2020) [April 29, 2021]. "What Is ACPI (Advanced Configuration and Power Interface)?" . Retrieved 2021-04-29.
  3. Received, Intuition. "The Amiga Museum » Kickstart 1.2" . Retrieved 2021-04-29.
  4. Pic, The. "K / AUTOCONFIG(TM) / The Autoconfig Mechanism" . Retrieved 2021-04-29.
  5. 1 2 3 4 Finkel, Steve (1987), Commodore Amiga A500/A2000 Technical Reference Manual (PDF), Commodore-Amiga, Inc., archived from the original (PDF) on 2012-06-13, retrieved 2011-09-03
  6. 1 2 Haynie, Dave (20 March 1991). "The Zorro III Bus Specification" (PDF). Commodore-Amiga, Inc. Archived from the original (PDF) on 16 July 2012. Retrieved 31 January 2010.
  7. Introduction to the Commodore Amiga 2000 (PDF), Commodore-Amiga, Inc., 1987, archived from the original (PDF) on 2012-06-13, retrieved 2011-09-03