yttre enheter adressbuss - chalmers...2000-2fff 3000-3fff rom: cxxx ut p ort: 8000 a 13 a 12 rwm a 1...

14
Digital och Datorteknik – EDA451 2010/2011 EDA 451– Digital och datorteknik 2010/2011 Datorsystemets bussar, adressavkodning ”Uppbyggnad_och_funktion.pdf” U i håll t Ur innehållet: Bussystem, intern kommunikation i datorsystemet Adressavkodning, hur primärminne och I/O-enheter kan anslutas Olika principer för intern kommunikation (busskommunikation) (busskommunikation) 1 Datorsystemets bussar, adressavkodning Digital och Datorteknik – EDA451 2010/2011 Bussystem databuss adressbuss t b styrbuss Central- enhet Minnesenheter Gränssnitt mot yttre enheter 2 Datorsystemets bussar, adressavkodning

Upload: others

Post on 22-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

EDA 451– Digital och datorteknik2010/2011/

Datorsystemets bussar, adressavkodningy , g”Uppbyggnad_och_funktion.pdf”

U i håll tUr innehållet:Bussystem, intern kommunikation i datorsystemetAdressavkodning, hur primärminne och I/O-enheterg, p

kan anslutasOlika principer för intern kommunikation

(busskommunikation)(busskommunikation)

1Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Bussystem

databussadressbuss

t bstyrbuss

Central-

enhetMinnesenheterGränssnitt mot yttre enheter

2Datorsystemets bussar, adressavkodning

Page 2: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

Primärminnets organisation

BYTE-d t

WORD- LONGWORDadresserat adresserat -adresserat

3Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

EXEMPEL Ad k d iEXEMPEL: Adressavkodning

V j i bl kVarje minnesblock (kapsel) tilldelas sin unika del av adressrummetadressrummet

4Datorsystemets bussar, adressavkodning

Page 3: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

CPUCPU ”Flyktigt” läs/skriv-minne, RWM

ut-portin-port

5Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

S ifik tiSpecifikation RWM-minnet ska aktiveras om centralenheten genererar någon av

adresserna 0-0FFF.

ROM-minnet ska aktiveras om centralenheten genererar någon avadresserna C000-CFFFadresserna C000-CFFF.

Inporten ska aktiveras om centralenheten genererar adress A000.

Utporten ska aktiveras om centralenheten genererar adress 8000.p g

Kapsel Startadress SlutadressMinneskapsel RWM 4 kbyte 0000 0FFFMinneskapsel RWM 4 kbyte 0000 0FFFMinneskapsel ROM 4 kbyte C000 CFFFBuffert, 8 bitar som inport A000 A000Register, 8 bitar som utport 8000 8000

6Datorsystemets bussar, adressavkodning

Page 4: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

R li i d NAND l ikRealisering med NAND-logik Fullständig avkodning

Kapsel AdressbussA15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

RWM$0FFF 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1$0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

ROM$CFFF 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1$C000 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

inport$A000 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0$A000 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0

utport$8000 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0$8000 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

RWM: 0xxx

&A15

A14 CE

0000-0FFF

1000-1FFF

2000-2FFF

3000-3FFF

ROM: Cxxx

utport: 8000

&14

A13

A12

CERWM

A1

4000-4FFF

5000-5FFF

6000-6FFF

7000-7FFF

8000-8FFFp

inport: A000 &A15

A14

A13

A12

CEROM

9000-9FFF

A000-AFFF

B000-BFFF

C000-CFFF

D000-DFFF

7Datorsystemets bussar, adressavkodning

E000-EFFF

F000-FFFF

Digital och Datorteknik – EDA451 2010/2011

Ofullständig avkodningKapsel Adressbuss Ofullständig avkodningA15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

RWM$0FFF 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1$0000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

ROM$CFFF 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1$C000 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Kapsel Adressbuss

A15 A14 A13$C000 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

inport$A000 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0$A000 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0

utport$8000 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0$8000 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

RWM $0000‐$1FFF 0 0 0

ROM $C000‐$DFFF 1 1 0

inport $A000‐$BFFF 1 0 1

&A15

A14

ACERWM

0000 0FFF

inport $A000 $BFFF 1 0 1

utport $8000‐$9FFF 1 0 0

RWM: 0xxx

A130000-0FFF

1000-1FFF

2000-2FFF

3000-3FFF

4000-4FFF&A15

A14

ACEUT

utport: 8xxx

inport: Axxx

5000-5FFF

6000-6FFF

7000-7FFF

8000-8FFF

9000-9FFF

A13

&A15

A14

ACEIN

ROM: Cxxx

&A15

A14 CEROM

A000-AFFF

B000-BFFF

C000-CFFF

D000-DFFF

E000-EFFF

&A13

8Datorsystemets bussar, adressavkodning

&A13 F000-FFFF

Page 5: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

9Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Of ll tä di d k d iOfullständig adressavkodning

0000-0FFF

1000-1FFF

2000-2FFF

3000-3FFF

4000-4FFF

5000-5FFF

6000 6FFF6000-6FFF

7000-7FFF

8000-8FFF

9000-9FFF9000-9FFF

A000-AFFF

B000-BFFF

C000-CFFFC000 CFFF

D000-DFFF

E000-EFFF

F000-FFFF

10Datorsystemets bussar, adressavkodning

Page 6: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

E lExempel:

Vi har ett system med 16 bitars adressbuss och 8 bitars databuss Till centralenhetenVi har ett system med 16 bitars adressbuss och 8 bitars databuss. Till centralenhetenvill vi ansluta en ROM‐modul (32 kbyte), en RWM‐modul (16 kbyte) och en I/O‐port(en inport och en utport). I/O‐porten skall placeras på adress $4000, ROM‐modulenplaceras med start på adress $8000 RWM mod len placeras med start på adressplaceras med start på adress $8000, RWM‐modulen placeras med start på adress0000 i adressrummet.

Konstruera adressavkodningslogiken, dvs. ange booleska uttryck för ”chip select”(CS)‐ signalerna. Använd ofullständig adressavkodning. Alla ”chip select” signaler(CSROM, CSRWM, CSIN och CSUT) är aktiva låga.

Vi löser detta på tavlan...

11Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Vi f tt lt tVi sammanfattar resultaten:

Modul AdressbussA15 A14 A13....

ROM$FFFF 1 1 1$8000 1 0 0

RWM$3FFF 0 0 1

RWM0 0 0 0

IO‐port$4000 0 1 0$4000 0 1 0

12Datorsystemets bussar, adressavkodning

Page 7: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

F ll tä di d k d iFullständig adressavkodningModul Adressbuss

A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

ROM$FFFF 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1$8000 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

RWM$3FFF 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

IO‐port$4000 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0$4000 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Adressbitar som EJ skiljer sig åt i intervallet används i avkodningslogiken.

13Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Ö l d i bild iÖverlagrad minnesavbildning

Metod:Metod:Bilda fullständig avkodningssignal för IO-porten.

Använd inversen av IO-portens CS-signal i avkodningslogiken för minnesmodulen.

14Datorsystemets bussar, adressavkodning

Page 8: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

E lExempel:

Vi har ett system med 20 bitars adressbuss och 8 bitars databuss. Tillcentralenheten finns ansluten en 128 kbytes ROM‐modul med start på adress$20000. En I/O‐port, som upptar 32 bytes, ska överlagras på adress $22000.$ / p , pp y , g p $

Konstruera adressavkodningslogiken, dvs. ange booleska uttryck för ”chip select”(CS)‐ signalerna. Båda ”chip select” signalerna (CSROM och CSIO) är aktiva låga.

15Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Lö i t d

B ä h l d h äll b ll

Lösningsmetod

Bestäm start och slutadresser och ställ upp en tabell:Modul Adressbuss

A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0$3FFFF 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

ROM$3FFFF 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1$20000 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

IO‐port$2201F 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1$22000 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0

16Datorsystemets bussar, adressavkodning

Page 9: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

B k ik tiBusskommunikationDatorns buss-kommunikation måste vara fastlagd i ett protokoll. Med protokoll menas helt enkelt regler för hur kommunikationen sker, dvs. hur information, data, utbytes mellan olika enheter i systemet. yRegelverket inbegriper alltså överenskommelser om:

”Språket”, betydelsen av hög respektive låg logiknivå O i ti bit i tt d ” di bit d ” Organisation av bitarna i ett ord, ”endian bit order” Organisation av bytes i ett ord ”endian byte order” Tidsegenskaper händelser korrekt ordnade i tid Tidsegenskaper, händelser korrekt ordnade i tid

17Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Bit d iBit-ordning

b7 b6 b5 b4 b3 b2 b1 b0

b b b b b b b b

big-endian (”LSB 0”)

littl di (”MSB 0”)

8-bitars ord där b7 är den MEST signifikanta biten och b0 den MINSTb0 b1 b2 b3 b4 b5 b6 b7little-endian (”MSB 0”) biten och b0 den MINST signifikanta biten

Byte ordningByte-ordning

LSB MSB

minne register

MSB LSB

minne register

αα

α+n

littl di b t d ibi di b t d i

α+n

18Datorsystemets bussar, adressavkodning

little-endian byte ordningbig-endian byte ordning

Page 10: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

A k bAsynkron buss

19Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Lä k l k bLäscykel, asynkron buss

Vid ”1” börjar periferienheten avkoda adressen från adressbussen,.

ACK-signalen upptäcks av g ppcentralenheten vid ”2” och databussen läses av vid nästa positiva klockflank ”3”positiva klockflank 3 .

Antalet klockcykler från ACK, tills data klockas in från databussendata klockas in från databussen kallas väntecykler (”wait states”).

20Datorsystemets bussar, adressavkodning

Page 11: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

Vä t till tå dVäntetillstånd

wait state(s)

CLK

Adressbuss

VA

RE

Databuss

RE

ACK

21Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Generering av ACK-signal

Minneskretsar genererar som regel inte denna signal...

minneminne

databuss

central‐h

adressbuss

enhetavkodningslogik

ACK l ik 1CSACK‐logik

Utebliven ACK-signal indikerar ”Bussfel”...

1 ACKCS

VA

22Datorsystemets bussar, adressavkodning

Utebliven ACK signal indikerar Bussfel ...

Page 12: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

S k bSynkron buss

23Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Lä k l k bLäscykel, synkron buss

1. Läscykeln inleds med en negativ flank hos klocksignalen. 2. Signaler som var giltiga under föregående cykel tas bort och bussarna är nu

i odefinierade tillstånd.3 C t l h t ätt d h t i l fö i t3. Centralenheten sätter upp adress och styrsignaler för minnet.4. Minnet har avkodat adressbussen och lägger ut data på databussen.5. Läscykeln avslutas med en negativ flank hos klocksignalen. Data klockas in

till centralenheten från databussen

24Datorsystemets bussar, adressavkodning

till centralenheten från databussen.

Page 13: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

Sk i k l k bSkrivcykel, synkron buss

1. Skrivcykeln inleds med en negativ flank hos klocksignalen. 2. Signaler som var giltiga under föregående cykel tas bort och bussarna är nu i

odefinierade tillstånd.3. Centralenheten sätter upp adress och styrsignaler för minnet.4 C t l h t lä t d t å d t b d b k d h4. Centralenheten lägger ut data på databussen, adressbussen avkodas och

aktiverar minneskapsel.5. Skrivcykeln avslutas med en negativ flank hos klocksignalen. Data klockas in

till minnet från databussen

25Datorsystemets bussar, adressavkodning

till minnet från databussen.

Digital och Datorteknik – EDA451 2010/2011

E lExempel

E

Vi har ett synkront system med 16 bitars adressbussoch 8 bitars databuss. Data klockas i systemet vidnegativ flank hos signalen E

ADRESS

negativ flank hos signalen E.

Till centralenheten ska anslutas:

• 8 kbyte ROM med start på adress $E000

16 kb t RWM d t t å d $8000R/W

DATA

• 16 kbyte RWM med start på adress $8000

• 512 byte I/O, med start på adress $E000

Konstruera fullständig adressavkodningslogik, dvs.ange booleska uttryck för ”chip select” (CS)- DATAange booleska uttryck för chip select (CS)signalerna. Alla ”chip select” signalerna (CSROM,CSRWM och CSIO) är aktiva låga.

Vi löser detta på tavlan...

26Datorsystemets bussar, adressavkodning

Page 14: yttre enheter adressbuss - Chalmers...2000-2FFF 3000-3FFF ROM: Cxxx ut p ort: 8000 A 13 A 12 RWM A 1 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF inport: A000 & 5 A 14 A 13 A

Digital och Datorteknik – EDA451 2010/2011

M lti l d bMultiplexad buss CLK

A/D

DataBuss

A/D

Data AdressAdress

BusscykelBusscykel

27Datorsystemets bussar, adressavkodning

Digital och Datorteknik – EDA451 2010/2011

Modul Adressbuss

A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0

28Datorsystemets bussar, adressavkodning