Das eBook Angewandte Mikroelektronik wurde von Hans Lohninger zur Unterstützung verschiedener Lehrveranstaltungen geschrieben. Weitere Informationen finden sie hier.


Anschlüsse des Z80-PIO

Die Abbildung zeigt die Pinfunktionen und das Anschlussschema des Bausteins. Die Anschlüsse können in mehrere Gruppen zusammengefasst werden, die im Folgenden kurz besprochen werden.

Z80-PIO Anschlussschema

Datenbus

Der Datenbus besteht aus acht bidirektionalen Datenleitungen D0 - D7, auf denen der Transfer von Daten und Befehlen zwischen Mikroprozessor und PIO vor sich geht. D0 ist das LSB, D7 das MSB.

Steuerleitungen

Die Steuerleitungen dienen dem ansteuernden Mikroprozessor zur Kontrolle des Bausteins. Folgende Anschlüsse sind dazu vorgesehen:

CLK

Clock (Eingang).

Der Anschluss CLK wird mit dem Systemtakt des Mikroprozessors verbunden und dient zur Synchronisation der internen Abläufe.

/RD

Read (Eingang, aktiv = LOW).

Der Pin /RD wird von der CPU aktiviert, wenn Daten oder Befehle zwischen dem Z80-PIO und der CPU transferiert werden sollen. Der PIO weist keinen entsprechenden Write-Eingang auf, sondern der Schreibvorgang wird durch ein Nichtanliegen des /RD-Signals gekennzeichnet (siehe auch /IORQ).

/IORQ

Input Output Request (Eingang, aktiv = LOW).

Die IORQ-Leitung wird in Verbindung mit den Leitungen /RD, /CE, B/A und C/D zur Steuerung des Daten- und Befehltransfers zwischen CPU und PIO verwendet. Die folgende Tabelle gibt die möglichen Kombinationen dieser Signale und deren Bedeutung wieder:

/CE /IORQ /RD C/D B/A  

1

X

X

X

X

PIO nicht selektiert

0

1

X

X

X

PIO bereit für Transfer

0

0

0

0

0

Lesen von Daten von Port A

0

0

0

0

1

Lesen von Daten von Port B

0

0

0

1

0

Befehlsregister Port A lesen

0

0

0

1

1

Befehlsregister Port B lesen

0

0

1

0

0

Ausgabe von Daten auf Port A

0

0

1

0

1

Ausgabe von Daten auf Port B

0

0

1

1

0

Befehle an Port A ausgeben

0

0

1

1

1

Befehle an Port B ausgeben

 

/M1

Machine Cycle 1 (Eingang, aktiv = LOW).

Dieser Anschluss dient zur Synchronisation von bestimmten internen Operationen des PIO und zur Interruptbestätigung. Er wird mit dem Anschluss /M1 der CPU verbunden.

/CE

Chip Enable (Eingang, aktiv = LOW).

Ein LOW-Signal aktiviert den Baustein, so dass er Befehle oder Daten empfangen oder senden kann.

C/D

Control/Data Select (Eingang, HIGH=Control, LOW=Data).

Dieses Signal dient als Auswahlleitung zwischen Daten und Befehlen. Ist die Leitung HIGH, so werden Befehle und Statusinformationen zwischen CPU und PIO ausgetauscht, ist sie LOW, werden Daten ausgestauscht.

B/A

Port B or A Select (Eingang, HIGH = Port B, LOW = Port A).

Diese Leitung dient zur Auswahl des angesprochenen Ports. Bei Anlegen eines HIGH-Signals wird Port B angesprochen, bei LOW Port A.

Interruptleitungen

Die Interruptleitungen dienen zur Anforderung und Steuerung eines Interruptzyklus.

/INT

Interrupt (Ausgang, aktiv = LOW, open collector).

/INT wird aktiv (LOW), wenn der PIO einen Interrupt an die CPU meldet.

IEI

Interrupt Enable In (Eingang, aktiv = HIGH).

Eingang, der anzeigt, dass kein anderer Peripheriebaustein mit höherer Interrupt-Priorität gerade durch die CPU in einem Interruptzyklus bedient wird. Dieser Eingang wird in Verbindung mit dem Ausgang IEO (siehe unten) zur Bildung einer Daisy-Chain für die Interruptsteuerung verwendet.

IEO

Interrupt Enable Out (Ausgang, aktiv = HIGH).

Dieser Ausgang dient zum Blockieren von Interruptanforderungen von Bausteinen mit niedrigerer Priorität. IEO ist dann aktiv, wenn der Eingang IEI auf HIGH liegt und die CPU den angeforderten Interrupt noch nicht bearbeitet hat.

 

Port A und B

A0-A7

Datenleitungen Port A (bidirektional, Tri-State).

Auf diesen Leitungen werden Informationen vom oder zum angeschlossenen peripheren Gerät transportiert. A0 ist das niederwertigste, A7 das höherwertigste Bit.

ARDY

Port A Ready (Ausgang, aktiv = HIGH).

Die Bedeutung dieses Signals hängt von der Betriebsart von Port A ab:

Output:

ARDY zeigt an, dass die Ausgänge mit der gewünschten Information gesetzt sind und die Leitungen A0-A7 stabil sind.

Input:

ARDY zeigt an, dass das Eingangsregister gelesen worden ist und das nächste Byte übernommen werden kann.

Bidirektional:

ARDY zeigt an, dass das Ausgangsregister von Port A Daten zum Transfer enthält. Die Daten werden aber erst auf den Port gelegt wenn /ASTB aktiviert wurde

/ASTB

Port A Strobe Pulse (Eingang, aktiv = LOW).

Die Bedeutung dieses Signals hängt von der Betriebsart von Port A ab:

Output:

Ein Impuls auf /ASTB zeigt an, dass das Peripherie-Gerät die Daten des Ports übernommen hat.

Input:

Das periphere Bauelement legt einen Impuls an /ASTB, um Daten in den PIO einzugeben.

Bidirektional:

In dieser Betriebsart werden Daten, die im Ausgangsregister von Port A stehen, auf die externen Leitungen gegeben, wenn /ASTB aktiv.

B0-B7

Datenleitungen Port B (bidirektional, Tri-State).

Auf diesen Leitungen werden Informationen vom oder zum angeschlossenen peripheren Gerät transportiert. B0 ist das niederwertigste, B7 das höherwertigste Bit.

BRDY

Port B Ready (Ausgang, aktiv = HIGH).

Die Bedeutung dieses Signals hängt von der Betriebsart von Port B ab:

Output:

BRDY zeigt an, dass die Ausgänge mit der gewünschten Information gesetzt sind und die Leitungen B0-B7 stabil sind.

Input:

BRDY zeigt an, dass das Eingangsregister gelesen worden ist und das nächste Byte übernommen werden kann.

BRDY hat außerdem für den bidirektionalen Modus von Port A die Aufgabe, anzuzeigen, wann das Eingangsregister von Port A leer ist.

/BSTB

Port B Strobe Pulse (Eingang, aktiv = LOW).

Die Bedeutung dieses Signals hängt von der Betriebsart von Port B ab:

Output:

Ein Impuls auf /ASTB zeigt an, dass das Peripherie-Gerät die Daten des Ports übernommen hat.

Input:

Das periphere Bauelement legt einen Impuls an /ASTB, um Daten in den PIO einzugeben.

Außerdem hat /BRDY im bidirektionalen Modus von Port A die Aufgabe, Daten beim Auftreten eines Impulses an /BSTB in Port A zu übernehmen.


Last Update: 2008-05-31