Presentation laddar. Vänta.

Presentation laddar. Vänta.

Maskinorienterad Programmering 1 Datorsystemets bussar EDA 480 – Maskinorienterad Programmering 2009/2010 MC68HC12, ”Uppbyggnad.pdf” Ur innehållet: Datorns.

Liknande presentationer


En presentation över ämnet: "Maskinorienterad Programmering 1 Datorsystemets bussar EDA 480 – Maskinorienterad Programmering 2009/2010 MC68HC12, ”Uppbyggnad.pdf” Ur innehållet: Datorns."— Presentationens avskrift:

1 Maskinorienterad Programmering 1 Datorsystemets bussar EDA 480 – Maskinorienterad Programmering 2009/2010 MC68HC12, ”Uppbyggnad.pdf” Ur innehållet: Datorns byggblock Busskommunikation Synkron buss Asynkron buss Multiplex-buss Adressavkodning för minne och I/O Minnesavbildad I/O Direktadresserad I/O

2 Maskinorienterad Programmering Adressrum, programmerarens bild 2 Datorsystemets bussar Linjärt fysiskt adressrum Segmenterat adressrum ”Bank”-indelat adressrum PC IP DP PC BANK CS DS

3 Maskinorienterad Programmering Datorsystemets bussar 3 HCS12DG256, blockdiagram

4 Maskinorienterad Programmering Datorsystemets bussar 4 Minne och IO AD – Analog till Digital omvandling ECT- Räknarkretsar för noggrann tidmätning SCI – Asynkron seriekommunikation Parallell In-Utmatning PWM – Pulsbreddsmodulering Etc…

5 Maskinorienterad Programmering Buss-system Datorsystemets bussar 5 Central- enhet Central- enhet Minnes- enheter Gränssnitt mot yttre enheter databuss adressbuss styrbuss

6 Maskinorienterad Programmering Buss protokoll Datorsystemets bussar 6 • ”Språket”, betydelsen av hög respektive låg logiknivå • 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

7 Maskinorienterad Programmering Logiknivåer ”Aktiv hög” – Logiknivå 1, ”Enable” ”Aktiv låg” – Logiknivå 0, ”Enable” Datorsystemets bussar 7

8 Maskinorienterad Programmering Bit ordning ”bit endianess” Datorsystemets bussar 8 b7b7 b6b6 b5b5 b4b4 b3b3 b2b2 b1b1 b0b0 b0b0 b1b1 b2b2 b3b3 b4b4 b5b5 b6b6 b7b7 big-endian (”LSB 0”) little-endian (”MSB 0”) 8-bitars ord där b 7 är den MEST signifikanta biten och b 0 den MINST signifikanta biten

9 Maskinorienterad Programmering Byte ordning Datorsystemets bussar 9 α+n LSB MSB α minne register little-endian byte ordningbig-endian byte ordning MSB LSB α α+n minne register

10 Maskinorienterad Programmering Exempel: HCS12/Intel 8086 byte ordning Datorsystemets bussar 10 HCS12 (big endian) 11 α α+1 minne register D A 22 B (little endian) 11 α α+1 minne register AX AH 22 AL 22 11

11 Maskinorienterad Programmering Busskommunikation Datorsystemets bussar 11 Synkron buss Multiplex-buss Asynkron buss centralenhetperifer enhet Adressbuss Databuss Giltig adress Accept/Utfört ACK VA centralenhetperifer enhet Adressbuss Databuss ECLK R/W Data Klocka Busscykel Buss A/D Data Adress

12 Maskinorienterad Programmering Synkron buss Datorsystemets bussar 12 centralenhetperifer enhet Adressbuss Databuss ECLK R/W

13 Maskinorienterad Programmering ”Timing” Datorsystemets bussar 13

14 Maskinorienterad Programmering Multiplex Datorsystemets bussar 14 A/D 0 A/D 1 A/D 2 A/D 3 A/D 4 A/D 5 A/D 6 A/D 7 A/D Kombinerad Adressbuss/ Databuss, 8 bitar Styrsignal, Adress eller Data 16 bitar adress 8 bitar data 8 bitar fysisk buss

15 Maskinorienterad Programmering Multiplex Datorsystemets bussar 15 Data Klocka Busscykel Buss A/D Data Adress 16 bitar adress 8 bitar data 16 bitar fysisk buss A0/D 0 A1/D 1 A2/D 2 A3/D 3 A4/D 4 A5/D 5 A6/D 6 A7/D 7 A8 A9 A10 A11 A12 A13 A14 A15 A/D Kombinerad Adressbuss Låg /Databuss, 8 bitar Styrsignal, Adress eller Data Adressbuss hög 8 bitar

16 Maskinorienterad Programmering Datorsystemets bussar 16 Multiplex 16 bitar adress 16 bitar data 16 bitar fysisk buss A0/D 0 A1/D 1 A2/D 2 A3/D 3 A4/D 4 A5/D 5 A6/D 6 A7/D 7 A8/D8 A9/D9 A10/D10 A11/D11 A12/D12 A13/D13 A14/D14 A15/D15 A/D Kombinerad Adressbuss /Databuss, 16 bitar Styrsignal, Adress eller Data Data Klocka Busscykel Buss A/D Data Adress

17 Maskinorienterad Programmering Programmerbar konfiguration hos HCS12 Datorsystemets bussar 17 Vid ”RESET” avläses nivåerna hos pinnar BKGD, PE6, PE5, PK7, ROMON Därefter sätts ev. Port A/B som adress/databuss

18 Maskinorienterad Programmering Synkron Multiplex-buss, CPU12 Datorsystemets bussar 18 CPU12 latch Vid positiv flank hos E(CLK) ”låses” adressen via latchen E 16-bitars adressbuss 16-bitars databuss dataöverföring adress ”låses”

19 Maskinorienterad Programmering Asynkron buss Datorsystemets bussar 19 Dessutom signaler RE, Read Enable WE, Write Enable Bestämmer riktning på dataöverföring Centralenheten signalerar ”Giltig adress på adressbussen” Perifer enhet signalerar ”Data har placerats på databussen” (om RE) ”Data kar klockats in från databussen” (om WE)

20 Maskinorienterad Programmering Datorsystemets bussar 20 Asynkron buss Vid ”1” börjar periferienheten avkoda adressen från adressbussen, detta tar en kort stund, varefter databussen drivs av periferienheten och ACK-signalen aktiveras. ACK-signalen upptäcks av centralenheten vid ”2” och databussen läses av vid nästa positiva klockflank ”3”. Antalet klockcykler från det att centralenheten upptäcker ACK, tills data klockas in från databussen kallas väntecykler (”wait states”).

21 Maskinorienterad Programmering Datorsystemets bussar 21 Asynkron buss, synkrona minnen CPU avkodnings-logik adress ACK-logik data 11 ACK CE VA Enkel ”ACK-logik” CEVAACK CE, VA och ACK är aktivt låga


Ladda ner ppt "Maskinorienterad Programmering 1 Datorsystemets bussar EDA 480 – Maskinorienterad Programmering 2009/2010 MC68HC12, ”Uppbyggnad.pdf” Ur innehållet: Datorns."

Liknande presentationer


Google-annonser