El ZorroIII salió como una expansión de la Commodore Amiga3000 en 1990. Este bus se utilizó para vincular dispositivos periféricos a la placa base de Amiga. Fue diseñado por el ingeniero jefe de Commodore International, Dave Haynie; el ZorroIII de 32-bit sustituyó al Zorro II de 16-bit, utilizado en la Amiga2000. Al igual que el ZorroII, el ZorroIII permitía la autodetección de conectar y jugar (de forma similar a las placas PCI de PC).

ZorroIII mantuvo el diseño de mapeado de memoria directa de ZorroII (a diferencia de los procesadores 80x86, la familia MC68K que se usó en la Amiga no tenía mecanismo de direcciones de entrada y salida por separado). Al igual que el ZorroII de 24-bits, ZorroIII reservó una gran parte de 32-bits a memoria real para tarjetas de mayor mapeado de memoria y una parte menor a la asignación de granularidad para placas de entrada y salida. Zorro III nunca tuvo compatibilidad con 24bit ni 16bit, requiriendo una CPU completa de 32bit. La CPU podía dirigir directamente cualquier dispositivo ZorroIII como memoria, por lo que las expansiones podían emplearse (y de hecho, se emplearon) como memoria o tarjetas de vídeo, a modo RAM.

El ZorroIII especificaba los ciclos de buses como un bus asíncrono, evaluando la duración durante la cual podría realizarse una transacción conforme a las especificaciones del bus. La implementación inicial del ZorroIII fue en el Fat Buster de Commodore (BUS conTrollER), con ayuda de chips PAL rápidos y varios chip de búfer TTL para el búfer, aislamiento y multiplexación del bus. La implementación de la Amiga4000 fue, fundamentalmente, lo mismo, pero integrando una segunda entrada para sustituir los búfer TTL. El chip Buster proporcionó arbitrariedad en el bus, traducción entre los protocolos del bus MC68030 e incluso entre los ciclos de bus de ZorroII o ZorroIII bus cycles (basados geográficamente en el mapeado de la dirección bus del Zorro) y un mecanismo de interrupción vectorial, el cual no se utilizó apenas.

A pesar de ser un bus de 32bits, el ZorroIII usaba las mismas ranuras de expansión y las 100vías del ZorroII. La dirección adicional y las líneas de datos que se obtenían mediante la multiplexación de algunas conexiones con la naturaleza de las líneas variaban en distintas fases del ciclo de acceso del bus (por ejemplo, al convertir la dirección en datos). Sin embargo, la multiplexación del bus no era total; los primeros 8bits de la dirección estaban disponibles durante los ciclos de datos, permitiendo que el ZorroIII soportase un intenso ciclo de ráfaga. Obviamente, las tarjetas de expansión del ZorroII podían coexistir con las del ZorroIII; no era esencial un maestro de bus del ZorroIII para que fuera compatible con acceso DMA de bus del ZorroII. Las tarjetas podían detectar si era ZorroII o ZorroIII, permitiendo que algunas tarjetas ZorroIII pudieran conectar con buses antiguos de ZorroII, reduciendo el número de datos de las mismas.

El bus del ZorroIII tiene un ancho de banda teórico de 150 MB/s, basado en un dispositivo ideal del ZorroIII ejecutándose con una configuración de ajustes mínima.Dave Haynie, diseñador del Zorro III, dijo en esta publicación que el máximo teórico del Zorro III venía indicado en el "capítulo 5" de las especificaciones técnicas del propio Zorro III Dave Haynie, diseñador del Zorro III, dijo en esta publicación que el Zorro III es un bus asíncrono y, por ello, no tiene un valor de MHz clásico estándar. El valor máximo teórico puede derivarse examinando constantes de tiempo, que vienen detalladas en las especificaciones técnicas del propio Zorro III , de aproximadamente 37,5 MHz. No existen mejoras de implementación a este nivel.Dave Haynie, diseñador del Zorro III, dijo en esta publicación que el Zorro III tenía un valor máximo de 150 MB/s. La velocidad de transferencia real entre la implementación del ZorroIII en Amiga3000/4000 y la tarjeta ZorroIII es de unos 13,5 MB/s debido a las limitaciones del chip de Buster. Esto fue comparable a la primera implementación PCI de Intel, con un pico de 25 M/s. El ZorroIII se optimizó para las implementaciones de protocolo de chip individual que se harían más adelante, pero los recursos disponibles de Commodore en 1990 limitaron la implementación inicial.

Esto también fue una limitación para los servicios de terceros que se dedicaban a expansión de placas base PCI de Amiga, como Elbox Mediator PCI o Matay Prometheus PCI (con 12 MB/s en sistemas de 68k). Las transferencias DMA entre tarjetas ZorroIII (o PCI/placas de expansión PCI) podían ser mucho más rápidas.czex.com - Prometheus FAQ

Mapa de memoria del Amiga (32bits) Dirección Capacidad [MByte] Descripción 0x0000 0000 2.0 Chip de memoria 0x0020 0000 8.0 Expansión de memoria Zorro II 0x00A0 0000 1.5 Expansión de espacio Zorro II I/O 0x00B8 0000 3.0 Espacio de registro placa base A2000 0x00E8 0000 0.5 Zorro II I/O 0x00F0 0000 1.0 Placa base ROM 0x0100 0000 112.0 Espacio de placa base A3000 0x0800 0000 128.0 Expansión de memoria 32-Bit 0x1000 0000 1792.0 Expansión de espacio Zorro III 090430 thule.no p16 fig1-1 0x8000 0000 2032.0 Reservado 0xFF00 0000 64 KB Unidad de config. Zorro III 0xFF01 0000 16.0 Reservado 090501 thule.no p14 0xFFFF FFFF

Físico El conector físico es un conector de tarjetas estándar, de 2,54 mm con 2 × 50pines en fila. 090501 eab.abime.net

Corriente: [Voltios] [Amperios] +5 2.0 -5 < 0.3 +12 < 8.0 -12 < 0.3

Referencias

Enlaces externos Especificaciones del Zorro III (PDF), thule.no Lista de ancho de banda de dispositivos: rendimiento del Zorro III Descripciones de la base de datos del hardware de Amiga y fotos de tarjetas Zorro III, amiga.resource.cx The Big Book of Amiga Hardware, amigahardware.mariomisic.de

Véase también

Zorro III Categoría:Buses Categoría:Ranuras de expansión de placas base