EDA 480 2009/2010 MC68HC12, Uppbyggnad.pdf Ur innehållet: Datorns byggblock Busskommunikation Synkron buss Asynkron buss Multiplex-buss avkodning för minne och I/O Minnesavbildad I/O Direktadresserad I/O Datorsystemets bussar 1 rum, programmerarens bild Linjärt fysiskt adressrum Segmenterat adressrum Bank -indelat adressrum CS IP PC PC DS DP BANK Datorsystemets bussar 2 1
HCS12DG256, blockdiagram Datorsystemets bussar 3 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 Datorsystemets bussar 4 2
Buss-system adressbuss databuss styrbuss Gränssnitt mot yttre er Minneser Central- Datorsystemets bussar 5 Buss protokoll 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 Datorsystemets bussar 6 3
Logiknivåer Aktiv hög Logiknivå 1, Enable Aktiv låg Logiknivå 0, Enable Datorsystemets bussar 7 Bit ordning bit endianess big-endian ( LSB 0 ) little-endian ( MSB 0 ) b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 b 0 b 1 b 2 b 3 b 4 b 5 b 6 b 7 8-bitars ord där b 7 är den MEST signifikanta biten och b 0 den MINST signifikanta biten Datorsystemets bussar 8 4
Byte ordning minne MSB register LSB minne LSB register MSB α α α+n α+n big-endian byte ordning little-endian byte ordning Datorsystemets bussar 9 Exempel: HCS12/Intel 8086 byte ordning α α+1 minne 11 22 HCS12 A 11 (big endian) register D B 22 minne α 22 α+1 11 8086 (little endian) 11 22 AH AL register AX Datorsystemets bussar 10 5
Busskommunikation Synkron buss central buss buss perifer. buss buss R/W ECLK Multiplex-buss Processor Asynkron buss buss buss Processor och databuss Buss central VA Giltig adress buss buss perifer buss VA buss ACK Accept/Utfört ACK Datorsystemets bussar 11 Synkron buss central R/W ECLK buss buss perifer Processor buss buss Datorsystemets bussar 12 6
Timing Datorsystemets bussar 13 Multiplex 16 bitar adress 8 bitar data 8 bitar fysisk buss 0 1 2 3 4 5 6 7 Kombinerad buss/ buss, 8 bitar Styrsignal, eller central och databuss Buss H L H L Datorsystemets bussar 14 7
Multiplex 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 Kombinerad buss Låg /buss, 8 bitar buss hög 8 bitar Styrsignal, eller central och databuss Buss Datorsystemets bussar 15 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 Kombinerad buss /buss, 16 bitar Styrsignal, eller central och databuss Buss Datorsystemets bussar 16 8
Programmerbar konfiguration hos HCS12 Vid RESET avläses nivåerna hos pinnar BKGD, PE6, PE5, PK7, ROMON Därefter sätts ev. Port A/B som adress/databuss Datorsystemets bussar 17 Synkron Multiplex-buss, CPU12 Vid positiv flank hos E(CLK) låses adressen via latchen CPU12 E adress låses dataöverföring latch 16-bitars adressbuss 16-bitars databuss Datorsystemets bussar 18 9
Asynkron buss buss Dessutom signaler RE, Read Enable WE, Write Enable Bestämmer riktning på dataöverföring VA buss ACK Centralen signalerar Giltig adress på adressbussen Perifer signalerar har placerats på databussen (om RE) kar klockats in från databussen (om WE) Datorsystemets bussar 19 Asynkron buss wait state 1 2 3 buss VA RE buss ACK Vid 1 börjar periferien avkoda adressen från adressbussen, detta tar en kort stund, varefter databussen drivs av periferien och ACK-signalen aktiveras. ACK-signalen upptäcks av centralen vid 2 och databussen läses av vid nästa positiva klockflank 3. Antalet klockcykler från det att centralen upptäcker ACK, tills data klockas in från databussen kallas väntecykler ( wait states ). Datorsystemets bussar 20 10
Asynkron buss, synkrona minnen data adress CPU avkodnings-logik Enkel ACK-logik CE VA 1 ACK ACK-logik CE VA ACK 0 0 0 0 1 1 1 0 1 1 1 1 CE, VA och ACK är aktivt låga Datorsystemets bussar 21 11