Guide til retrocomputere · Del 3

Sådan deler en 74HC245 en 8-bit bus

74HC245 er en portvagt for otte dataledninger. Den kan sende data i begge retninger – eller afbryde forbindelsen mellem siderne, så en anden chip kan bruge bussen.

Se MC74HC245AN

Hvorfor sætte en chip mellem to busser?

I en enkel computer kan flere enheder være forbundet til fælles dataledninger. Hvis to aktive udgange forsøger at sende forskellige værdier samtidig, modarbejder de hinanden. 74HC245 er en tovejs 8-bit bustransceiver: Benene A1–A8 vender mod den ene bus, og B1–B8 mod den anden. Hvert A-ben hører sammen med B-benet med samme nummer. Chippen gemmer ikke en byte og bestemmer ikke, hvilken adresse der vælges; styrelogikken bestemmer, hvornår den sender data videre.

To busser med otte ledninger og en 74HC245 imellem. DIR vælger A til B eller B til A; /OE kan adskille begge sider.
Retningen bestemmer, hvilken side der driver den anden. Output-enable bestemmer, om chippen overhovedet driver nogen af siderne.

To styreindgange, tre tilstande

/OE høj: afbrudt

Udgangene har høj impedans, ofte skrevet Hi-Z. Det betyder, at chippen er elektrisk tavs på begge busser – ikke at den sender logisk 0.

/OE lav, DIR høj: A → B

Logikniveauerne på A1–A8 gengives på B1–B8. A-siden læses som indgang, og B-siden drives som udgang.

/OE lav, DIR lav: B → A

Data går den modsatte vej. B-siden læses som indgang, og A-siden drives som udgang.

Skråstregen i /OE betyder aktiv lav: Et lavt niveau aktiverer udgangene. DIR er ikke aktiv lav; høj betyder A til B. De otte kanaler inverterer ikke signalerne, så 1 forbliver 1.

Find benene

74HC245 med 20 DIP-ben set ovenfra: DIR på ben 1, A1–A8 på ben 2–9, jord på ben 10, B8–B1 på ben 11–18, /OE på ben 19 og VCC på ben 20.
Set ovenfra på kapslingen med 20 ben til gennemgående montering; hakket er i enden med ben 1. Bennumre og funktionstabel følger producentens datablad.

Et konkret læseeksempel

  1. Antag, at en valgt ROM sidder på bus B, mens CPU’en sidder på bus A. Adressedekoderen vælger ROM’en til en læsning.
  2. Styrelogikken sætter DIR lav, så data kan gå fra B til A, og sætter først /OE lav, når ROM’en er klar til at drive bussen.
  3. Byten passerer gennem 74HC245 til CPU’en. Når overførslen slutter, bliver /OE høj igen og adskiller busserne.
Ikke en universalløsning til bussen. En 74HC245 laver ikke selv korrekt timing for læsning/skrivning eller chipvalg. Lad aldrig en anden enhed drive modtagerbussen samtidig. Hold styreindgangene på definerede niveauer, sæt en 0,1 µF afkoblingskondensator tæt ved forsyningen, og kontroller forsyningsspænding, logikgrænser, fan-out og timing for de konkrete dele i dit kredsløb. HC-indgange passer ikke automatisk til alle TTL/NMOS-udgange.

Butikkens MC74HC245AN er en chip med 20 ben til gennemgående montering. Tjek den aktuelle lagerbeholdning og produktbeskrivelsen før bestilling; antallet ændrer sig, når dele sælges. Begynd med guiden til 6502-delene for den større sammenhæng.

Næste: en ensrettet buffer

74HC245 er nyttig, når data skal kunne gå begge veje. Hvis otte signaler kun skal føres én vej, viser guiden til SN74HCT541N et enklere alternativ med to aktivt lave output-enable-indgange og TTL-kompatible indgange. Den kan ikke sende en læsning tilbage i modsat retning.