# Zilog SCC

El SCC, abreviatura de Serial Communication Controller, és una família de circuits integrats de controlador de port sèrie fabricats per Zilog. Els membres principals de la família són el Z8030/Z8530 i el Z85233.
Desenvolupat a partir dels anteriors dispositius Zilog SIO (Z8443), l'SCC va afegir una sèrie de modes de sèrie a paral·lel que van permetre la implementació interna d'una varietat de protocols de capa d'enllaç de dades com Bisync, HDLC i SDLC.
El SCC es pot configurar com un port RS-232 convencional per conduir sistemes heretats, o alternativament com un port RS-422 per obtenir un rendiment molt superior, fins a 10 Mbit/s. Els detalls d'implementació generalment limitaven el rendiment a 5 Mbit/s o menys.

## Descripció

Un dels usuaris més famosos de l'SCC va ser la línia d'ordinadors Apple Macintosh, que va utilitzar la Z8530 per implementar dos ports sèrie a la part posterior dels primers dissenys, etiquetats com "mòdem" i "impressora". Les comunicacions en sèrie tradicionals s'implementen normalment mitjançant un dispositiu conegut com a UART, com l'Intel 8250 o l'Intel 8251, que tradueix les dades del format paral·lel intern del bus de l'ordinador a sèrie i posterior. Això permet que l'ordinador enviï dades en sèrie simplement fent una escriptura paral·lela regular a un registre d'E/S, i l'UART ho convertirà en forma sèrie i l'enviarà. Generalment hi havia diferents UART per a cada arquitectura d'ordinador, amb l'objectiu de ser el més baix cost possible. Un bon exemple és el Zilog Z-80 SIO de 1977, dissenyat per funcionar amb el Zilog Z80 molt utilitzat per proporcionar dos ports sèrie amb velocitats relativament altes fins a 800 kbit/s. El SIO és tècnicament un USART, ja que entén els protocols síncrons.
Un SCC és essencialment una versió actualitzada del SIO, amb més lògica interna que li permet implementar directament una sèrie de protocols comuns de capa d'enllaç de dades. Per començar, l'SCC va incloure una implementació de maquinari de la comprovació de redundància cíclica (CRC), que li va permetre comprovar, marcar i rebutjar dades inadequades sense el suport de l'ordinador amfitrió. Els protocols de nivell superior inclouen BiSync, HDLC i SDLC . HDLC és més conegut en la seva implementació en el protocol LAPM orientat al mòdem, part de V.42 . En traslladar la implementació d'aquests protocols al maquinari, l'SCC va facilitar la implementació de sistemes de xarxes d'àrea local, com l'SNA d'IBM, sense necessitat que la CPU amfitrió gestiones aquests detalls.
Quan s'utilitza en mode sèrie tradicional, l'SCC es pot configurar per utilitzar 5, 6, 7 o 8 bits/caràcter, 1,1$^1$⁄$_2$, o 2 bits de parada, paritat imparell o sense paritat, i senyals de ruptura detectats o generats automàticament. En els modes síncrons, les dades es podien enviar opcionalment amb codificació NRZ, NRZI o FM, així com amb la descodificació de Manchester, encara que la codificació de Manchester s'havia de gestionar en lògica externa.
La velocitat de transmissió d'un SCC es pot marcar des de tres fonts. Per a comunicacions bàsiques d'estil RS-232, el SCC incloïa un Rellotge intern de 300Hz que es pot multiplicar per 1, 16, 32 a 64, proporcionant velocitats de dades entre 300 i 19.200 bit/s. Alternativament, pot utilitzar el rellotge de l'autobús tal com el proporciona la plataforma amfitrió i després dividir aquest rellotge per 4, 8, 16 o 32 (els dos últims només a la implementació NMOS original). Quan s'utilitza en una màquina que funciona al comú 8 rellotge MHz, això permetia velocitats de fins a 2 Mbit/s.
Finalment, el SCC també va incloure entrades per a la provisió d'un rellotge extern. Això funcionava de manera similar al rellotge amfitrió, però es podia utilitzar per proporcionar qualsevol senyal de rellotge de referència, independentment de la plataforma amfitrió. En aquest mode, el rellotge es pot dividir com en el cas intern, o multiplicar-se per 2 per a velocitats encara més altes, fins a 32,3. Mbit/s en algunes versions. L'ús del rellotge extern va facilitar la implementació d'adaptadors LAN, que normalment funcionaven a velocitats independents de l'ordinador amfitrió.
Les primeres implementacions utilitzades tenien buffers de només 3 bytes de profunditat i un buffer d'enviament d'un sol byte. Això significava que el rendiment del món real estava limitat per la capacitat de la plataforma amfitriona de buidar contínuament els buffers a la seva pròpia memòria. Amb comunicacions semblants a la xarxa, el propi SCC pot fer que l'emissor remot aturi la transmissió quan els buffers estiguin plens i, per tant, evitar la pèrdua de dades mentre l'amfitrió estava ocupat. Amb la sèrie asíncrona convencional això no era possible; al Macintosh Plus, aquest rendiment RS-232 limitat a uns 9600 bit/s o menys, i tan sols 4800 bit/s en models anteriors.
La majoria dels models SCC estaven disponibles en versions dual in line (DIP) o Plastic leaded (PLCC).

## Versions
### Z8030

Model original implementat a NMOS amb una interfície "Z-Bus" multiplexada que coincideix amb les CPU Zilog Z8000 / Z16C00 / 8086

### Z8530

Funcionalment idèntic al Z8030, però utilitzant un "Universal-Bus" no multiplexat dissenyat per permetre l'ús amb qualsevol CPU o plataforma host, inclòs el Z-80

### Z8031 i Z8531

Versions de la Z8030 i Z8530 amb el suport síncron eliminat, produint un disseny que coincideix més amb el SIO original

### Z80C30 i Z85C30

Implementacions CMOS de la Z8030 i Z8530. Connector compatible amb les primeres versions, afegint la velocitat 2x quan s'utilitza amb el rellotge extern i una sèrie de correccions d'errors i millores en els protocols de la capa d'enllaç.

### Z80230 i Z85230

Implementacions CMOS actualitzades dels Z80C30 i Z85C30, també coneguts com a ESCC

### Z85233

Versió actualitzada de la Z85230 (només), també coneguda com a EMSCC

## Referències

* ↑ "Zilog Z8440 Serial input/Output Controller", Zilog, 1977
* 1 2 «Z80C30 pdf, Z80C30 Description, Z80C30 Datasheet, Z80C30 view ::: ALLDATASHEET :::». [Consulta: 2 setembre 2023].
* ↑ "8530, 8531, Z8530, Z8531 Zilog Serial Communications Controller"
* ↑ «Zilog, Inc.». [Consulta: 2 setembre 2023].

## Bibliografia

* Serial Port Complete: COM Ports, USB Virtual COM Ports, and Ports for Embedded Systems;2nd Edition; Jan Axelson; Lakeview Research; 380 pages; 2007; ISBN 978-1-931-44806-2.
* Serial Port Complete: Programming and Circuits for RS-232 and RS-485 Links and Networks;1st Edition; Jan Axelson; Lakeview Research; 306 pages; 1998; ISBN 978-0-965-08192-4.
* Serial port and Microcontrollers: Principles, Circuits, and Source Codes;1st Edition; Grzegorz Niemirowski; CreateSpace; 414 pages; 2013; ISBN 978-1-481-90897-9.

## Enllaços externs

* Descripció del producte Z80C30
* Descripció del producte Z85C30
* Especificació del producte dels controladors de comunicacions en sèrie Z80C30/Z85C30
* Z80C30/Z85C30/Z80230/Z85230/Z85233 SCC/ESCC Manual d'usuari
* Controlador FreeBSD scc(4).