Adressavkodning - busskommunikation

Relevanta dokument
Digital och Datorteknik EDA /2011. EDA 451 Digital och datorteknik 2010/2011. Uppbyggnad_och_funktion.pdf

DAT 015 Maskinorienterad programmering 2010/2011. Uppbyggnad_och_funktion.pdf

2 UPPBYGGNAD OCH FUNKTION

Adressrum, programmerarens bild

Digital- och datorteknik

Digital- och datorteknik

Facit till övningsuppgifter Kapitel 13 Anslutning av minnes- och I/O-moduler till buss 13-1

Digital- och datorteknik

Exempel 1 på Tentamen med lösningar

Tentamen 3. EDAxxx Grundläggande Datorteknik DIT791 Grundläggande Datorteknik, GU. Måndag xx Oktober 20xx, kl

Tentamen med lösningar

CHALMERS TEKNISKA HÖGSKOLA

Tentamen. EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU. Onsdag 12 Januari 2011, kl

Grundläggande digital- och datorteknik

Exempel 3 på Tentamen

F9: Minne. Minneskonfiguration. Sammansättning av minnesgrupper Ansluta minne till Interface till olika typer av minnen Användningsområden

Tentamen. EDA432 Digital- och datorteknik, IT DIT790 Digital- och datorteknik, GU. Måndag 18 Oktober 2010, kl

Periferikretsar. ADC/DAC Räknare Realtidsklocka Timer Interrupthanterare UART (Universal Asynchronous Reciever and Transmitter) Seriell dataöverföring

Exempel 2 på Tentamen med lösningar

Tentamen i Digital Design

F7: I/O hantering. Asynkron och synkron busscykel Bussfördelning. Periferikretsar

F9: Minne. Sammansättning av minnesgrupper Ansluta minne till Interface till olika typer av minnen Användningsområden.

Tentamen. EDA452 Grundläggande Datorteknik, D DIT790 Digital- och datorteknik, GU. Måndag 17 December 2012, kl

MC11. Enkortsdator. MC11 - Hårdvarubeskrivning. MC68HC11 är Motorola INC MS-DOS är Microsoft Corporation MC11, MC68 och MD68k är microlf

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

Minneselement,. Styrteknik grundkurs. Digitala kursmoment. SR-latch med logiska grindar. Funktionstabell för SR-latchen R S Q Q ?

Avbrottshantering. Övningsuppgifter

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.

Digital- och datorteknik. Lars-Eric Arebrink. Av institutionen utgiven instruktionlista FLEXIBLE INSTRUKTION SET PROCESSOR FLISP

Ett minneselements egenskaper. F10: Minneselement. Latch. SR-latch. Innehåll:

Sekvensnät i VHDL del 2

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

Maskinorienterad programmering. Mekatronikingenjör åk 2/ lp 3. Lars-Eric Arebrink. Av institutionen utgiven. Lars-Eric Arebrink

Avkodning av minnen (och I/O)

TENTAMEN. Digital- och datorteknik. Institutionen för data- och informationsteknik Avdelningen för datorteknik LEU431. Lars-Eric Arebrink

Assemblerprogrammering del 2

Maskinorienterad programmering

EDA451 - Digital och Datorteknik 2010/2011. EDA Digital och Datorteknik 2010/2011

MANUALBLAD MODULER TILL DIGITALMASKINEN

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Maskinorienterad programmering

Lösningsförslag till Tenta i Mikrodator

Lösningsförslag till Tenta i Mikrodator

EDA480/EDA485 - Maskinorienterad programmering, tentamen 2006-xx-xx 1(7)

Tentamen. DAT015 Maskinorienterad programmering IT DIT151 Maskinorienterad programmering GU. Tisdag 15 december 2009, kl

Lösningsförslag tenta

Tentamen. DAT015 Maskinorienterad programmering IT. Fredag 21 april 2006, kl i V-salar

Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng

SEKVENSKRETSAR. Innehåll

LV6 LV7. Aktivera Kursens mål:

Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng

Maskinorienterad programmering

HF0010. Introduktionskurs i datateknik 1,5 hp

GPIO - General Purpose Input Output

Digitalteknik 7.5 hp distans: 5.1 Generella sekvenskretsar 5.1.1

Digital- och datorteknik. Lars-Eric Arebrink. vid flera tillfällen. Betyg 4: 36 poäng Betyg 5: 48 poäng

Övningsuppgifter i Mikrodatorteknik 4p/5p

IE1205 Digital Design: F9: Synkrona tillståndsautomater

Läsminne Read Only Memory ROM

EDA Digital och Datorteknik

TSEA28 Datorteknik Y (och U)

Datorteknik. Den digitala automaten. En dator måste kunna räkna! Register och bussanslutning

Maskinorienterad programmering. Mekatronikingenjör åk 2/ lp 3. Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen.

ALU:n ska anslutas hur då?

Avkodning av minnen (och I/O)

Dataöverföring på Parallell- och serieform MOP 11/12 1

Beskrivning av porthantering i mikroprocessorn SAM3U som används på vårt labkort SAM3U- EK.

HW-proj ver 3, ett kortsystem

Styrteknik distans: Minneselement, register, räknare, AD-omv D4:1

Felsökning på 6803LAB - ett mikroprocessorkort

Tentamen. EDA485 Maskinorienterad programmering Z. Måndag 6 mars 2006, kl i V-salar

Digital- och datorteknik

Tentamen i Digitalteknik, EITF65

Avkodning av minnen (och I/O)

Nya instruktioner. b 7

6. Minnen. Associativt minne

Labyrintspelet EDI021 Grupp 5

GPIO - General Purpose Input Output

Digital- och datorteknik

Digitala projekt rapport

Tentamen. Datorteknik Y, TSEA28

Sekvensnät vippor, register och bussar

Datorteknik. Den digitala automaten. En dator måste kunna räkna! Register och bussanslutning

Nya instruktioner. b 7

Datorteknik för högskolans ingenjörsutbildningar

Design av digitala kretsar

Försättsblad till skriftlig tentamen vid Linköpings universitet

Föreläsningsanteckningar till Konstruktionsmetoder

Föreläsningsanteckningar 3. Mikroprogrammering II

DESIGN AV SEKVENTIELL LOGIK

Digital- och datorteknik

0.1. INTRODUKTION Instruktionens opcode decodas till en språknivå som är förstålig för ALUn.

Detta häfte innehåller anvisningar om förberedelser och genomförande av fyra laborationer.

Datorteknik. Tomas Nordström. Föreläsning 2. För utveckling av verksamhet, produkter och livskvalitet.

Datormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden

VELKOMMEN!!!! SYFTE o MÅL. till DAT015 / DIT151 Maskinorienterad Programmering. Kurslitteratur. önskar Jan o Rolf. Lektioner LP2 Vanlig vecka

Centralenheten: ALU, dataväg och minne

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

Digitala Projekt - Snake Grupp - 7. Erik Ljung, d01elj Erik Simmons, d01es 25 maj 2005

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte" ARM-instruktioner", A4-format, 17 sidor. Maxpoäng: 60p

Transkript:

Adressavkodning - busskommunikation Kompendie kapitel 10 Bussystem adressbuss databuss styrbuss Ur innehållet: Bussystem, intern kommunikation i datorsystemet Adressavkodning, hur primär och I/O-enheter kan anslutas Olika principer för intern kommunikation (busskommunikation) Gränssnitt mot yttre enheter Minnesenheter Centralenhet 1 2 Primärts organisation EXEMPEL: Adressavkodning Varje sblock (kapsel) tilldelas sin unika del av adressrummet BYTEadresserat WORDadresserat LONGWORD -adresserat 3 4

CPU Flyktigt läs/skriv-, RWM Specifikation RWM-t ska aktiveras om centralenheten genererar någon av adresserna 0-0FFF. ROM-t ska aktiveras om centralenheten genererar någon av adresserna C000-CFFF. Inporten ska aktiveras om centralenheten genererar adress A000. Utporten ska aktiveras om centralenheten genererar adress 8000. in-port ut-port Kapsel Startadress Slutadress Minneskapsel RWM 4 kbyte 0000 0FFF Minneskapsel ROM 4 kbyte C000 CFFF Buffert, 8 bitar som inport A000 A000 Register, 8 bitar som utport 8000 8000 5 6 Realisering med NAND-logik RWM: 0xxx ROM: Cxxx utport: 8000 inport: A000 A 12 A 12 CE RWM CE ROM Fullständig avkodning Kapsel 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 0000-0FFF 1000-1FFF 2000-2FFF 3000-3FFF 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF 9000-9FFF A000-AFFF B000-BFFF C000-CFFF D000-DFFF E000-EFFF F000-FFFF Kapsel 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 RWM: 0xxx utport: 8xxx inport: Axxx ROM: Cxxx CE RWM CE UT CE IN CE ROM Ofullständig avkodning Kapsel A15 A14 A13 RWM $0000 $1FFF 0 0 0 ROM $C000 $DFFF 1 1 0 inport $A000 $BFFF 1 0 1 utport $8000 $9FFF 1 0 0 0000-0FFF 1000-1FFF 2000-2FFF 3000-3FFF 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF 9000-9FFF A000-AFFF B000-BFFF C000-CFFF D000-DFFF E000-EFFF F000-FFFF 7 8

Ofullständig adressavkodning 0000-0FFF 1000-1FFF 2000-2FFF 3000-3FFF 4000-4FFF 5000-5FFF 6000-6FFF 7000-7FFF 8000-8FFF 9000-9FFF A000-AFFF B000-BFFF C000-CFFF D000-DFFF E000-EFFF F000-FFFF 9 10 Exempel: Vi har ett system med 16 bitars adressbuss och 8 bitars databuss. Till centralenheten vill vi ansluta en ROM modul (32 kbyte), en RWM modul(16kbyte) ocheni/o port (en inport och en utport). I/O porten skall placeras på adress $4000, ROM modulen placeras med start på adress $8000, RWM modulen placeras med start på adress 0000 i adressrummet. Konstruera adressavkodningslogiken, dvs. ange booleska uttryck för chip select (CS) signalerna. Använd ofullständig adressavkodning. Alla chip select signaler (CS ROM,CS RWM,CS IN och CS UT ) är aktiva låga. Vi sammanfattar resultaten: A15 A14 A13... ROM $FFFF 1 1 1 $8000 1 0 0 RWM $3FFF 0 0 1 0 0 0 0 IO port $4000 0 1 0 $4000 0 1 0 Vi löser detta på tavlan... 11 12

Fullständig adressavkodning Överlagrad savbildning ROM $FFFF 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 RWM $3FFF 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 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 Metod: Bilda fullständig avkodningssignal för IO-porten. Adressbitar som EJ skiljer sig åt i intervallet används i avkodningslogiken. Använd inversen av IO-portens CS-signal i avkodningslogiken för smodulen. 13 14 Exempel: Lösningsmetod Vi har ett system med 20 bitars adressbuss och 8 bitars databuss. Till centralenheten 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. Konstruera adressavkodningslogiken, dvs. ange booleska uttryck för chip select (CS) signalerna. Båda chip select signalerna (CS ROM och CS IO ) är aktiva låga. Bestäm start och slutadresser och ställ upp en tabell: A19 A18 A17 A16 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 $2201F 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 IO port $22000 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 15 16

Busskommunikation Datorns 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. Regelverket inbegriper alltså överenskommelser om: 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 Bit-ordning big-endian ( LSB 0 ) little-endian ( MSB 0 ) Byte-ordning MSB 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 register LSB 8-bitars ord där b 7 är den MEST signifikanta biten och b 0 den MINST signifikanta biten LSB register MSB α α α+n α+n big-endian byte ordning little-endian byte ordning 17 18 Asynkron buss Läscykel, asynkron buss Vid 1 börjar periferienheten avkoda adressen från adressbussen,. ACK-signalen upptäcks av centralenheten vid 2 och databussen läses av vid nästa positiva klockflank 3. Antalet klockcykler från ACK, tills data klockas in från databussen kallas väntecykler ( wait states ). 19 20

Väntetillstånd Generering av ACK-signal wait state(s) Minneskretsar genererar som regel inte denna signal... CLK databuss VA RE Databuss ACK centralenhet adressbuss avkodningslogik ACK logik Utebliven ACK-signal indikerar Bussfel... CS VA 1 ACK 21 22 Synkron buss Lä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. Centralenheten sätter upp adress och styrsignaler för t. 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. 23 24

Skrivcykel, synkron buss Exempel Vi har ett synkront system med 16 bitars adressbuss och 8 bitars databuss. Data klockas i systemet vid negativ flank hos signalen E. E 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 t. 4. Centralenheten lägger ut data på databussen, adressbussen avkodas och aktiverar skapsel. 5. Skrivcykeln avslutas med en negativ flank hos klocksignalen. Data klockas in till t från databussen. Till centralenheten ska anslutas: ADRESS 8 kbyte ROM med start på adress $E000 16 kbyte RWM med start på adress $8000 512 byte I/O, med start på adress $E000 R/W Konstruera fullständig adressavkodningslogik, dvs. ange booleska uttryck för chip select (CS)- DATA signalerna. Alla chip select signalerna (CS ROM, CS RWM och CS IO ) är aktiva låga. Vi löser detta på tavlan... 25 26 Multiplexad buss CLK A/D Buss Adress Data Adress Data Busscykel Busscykel 27 28