LABORATION DATORTEKNIK Y DATORTEKNIK D

Storlek: px
Starta visningen från sidan:

Download "LABORATION DATORTEKNIK Y DATORTEKNIK D"

Transkript

1 LABORATION DATORTEKNIK Y DATORTEKNIK D Avbrottsprogrammering på M68008 Version: (OVA) Namn och personnummer Godkänd

2 Till laboranten Inledning Syftet med laborationen är först att ge övning i avbrottsprogrammering (del A) samt därefter att tillämpa dessa kunskaper på ett större problem (del B). Syftet är också att skapa större förståelse för stackhantering i en processor. Efter genomförd laboration ska du, med hjälp av manual över parallellporten, kunna skriva program som kommunicerar med omvärlden via avbrottsstyrd parallellport. I del A kan det vara en fördel att använda den inbyggda radassemblern i TUTOR eftersom du då har större kontroll över var avbrottshanterare samt subrutiner hamnar. Labhäftet är också skrivet utifrån antagandet att radassemblern används. Väljer du att använda korsassemblern i del A behöver du kolla i listfilen för att få reda på var dina olika rutiner har hamnat. I del B används med fördel en korsassembler, se bilaga. Börja med att studera åtminstone kapitel i häftet TUTOR M68008 system och assembler. En del förtydliganden om PIA:n finns som bilaga. Till laborationen ska du ha med dig egna lösningsförslag på alla laborationsuppgifter. Till del B bör det även finnas ett flödesschema. Tänk på att utnyttja eventuella labförberedande lektioner som kan komma att ges i anslutning till laborationstillfället. Extrauppgifterna görs i mån av tid. Praktiska råd Skriv upp vilka adresser du lägger dina program på, välj förslagsvis enkla siffror t.ex. $000, $00, $200 osv. Egentligen disponerar du adressrymden $900 - $7000, men adressområdet $ $2500 kommer att användas av de färdiga subrutinerna. Du kommer att behöva en stack och ditt program måste därför börja med att ladda stackpekaren med något vettigt. Eftersom stacken växer mot lägre adresser kan $7000 vara en lämplig stackstart. Tänk på skillnaden mellan avbrottsnivå i CPU:n och avbrottsflagga i PIA:n. Om programmen inte uppför sig på förväntat sätt måste du felsöka. Störst nytta har du då av kommandot BR (Breakpoint). TR (Trace) är mindre lämpligt eftersom Trace utnyttjar avbrott med lägre prioritet än parallellporten. Om ditt program mystiskt försvinner kan det bero på stack overflow.

3 Färdiga subrutiner För att kunna fokusera på avbrottshanteringen finns det ett antal färdiga subrutiner. Dessa subrutiner finns lagrade i ROM men måste flyttas till RAM, ty om ett program befinner sig i ROM kan man inte sätta brytpunkter i det. Vid laborationens början skall du därför köra ett speciellt skyfflingsprogram för att ladda ner rutinerna till RAM. Detta program har startadressen $C300. Programmet laddar ner följande till minnet: Adress Rutin $20EC PINIT Programmerar PIA:ns PA7-PA0, PB7-PB0 som utgångar samt programmerar CA, CA2, CB och CB2 för att begära avbrott på positiv flank. $2020 SKBAK Skriver på terminalens skärm texten: BAKGRUNDSPROGRAM Texten skrivs längst till vänster på skärmen. $2048 SKAVV Skriver på terminalens skärm texten: AVBROTT vänster SLUT vänster Raderna skrivs i mitten av skärmen med en sekunds intervall. Rutinen förutsätter att köras som avbrottsnivå 2 $20A6 SKAVH Skriver på terminalens skärm texten: AVBROTT höger SLUT höger Raderna skrivs till höger på skärmen med en sekunds intervall. Rutinen förutsätter att köras som avbrottsnivå 5 $2000 DELAY Fördröjningsrutin. Anropas med önskad fördröjning i millisekunder i register D0 (32 bitar) 2 januari 25, 203 2

4 Du kan självklart titta på samtliga färdiga rutiner under laborationstiden, men några kan vara av intresse redan vid förberedelsearbetet och visas därför nedan. PINIT: DELAY: 0020EC CLR.B $ F CLR.B $ F8 3FC00FF MOVE.B #255,$ FC00FF MOVE.B #255,$ FC00F MOVE.B #3,$ FC00F MOVE.B #3,$ A TST.B $ E 4A TST.B $ E75 RTS F0 MOVE.L D,-(A7) C MOVE.L #04,D SUB.L #,D 00200E 6AF8 BPL.S $ SUBQ.L #,D AEE BPL.S $ F MOVE.L (A7)+,D E75 RTS 3

5 Laborationsuppgifter Del A Del A av laborationen består i att göra grundläggande undersökningar av ett mycket enkelt och schematiskt avbrottssystem för M Ett program som skriver texten BAKGRUNDSPROGRAM på terminalen skall kunna avbrytas av två knappar, en som ger ett avbrott på nivå 2 och en som ger ett avbrott på nivå 5. Uppgift Skriv ett bakgrundsprogram som initierar systemet och sedan går in i en oändlig slinga där texten BAKGRUNDSPROGRAM skrivs på skärmen med en sekunds intervall. Initieringen behövs framförallt för uppgift 2 och framåt, och är enligt följande: Ladda stackpekaren, t.ex. med $7000. Programmera PIA:n, t.ex. genom att anropa PINIT. Ladda avbrottsvektorerna för avbrottsnivå 2 och 5 med adresserna $00 respektive $200. Möjliggör avbrott i processorn genom att sänka avbrottsnivån till 0. (Ändra inte bitarna S och T i Statusregistret!) Jorda avbrottsingångarna, dvs anslut CA, CA2, CB och CB2 till 0 på kopplingsplattan. Mata in ditt program med början på adress $000. Provkör. Stoppa med den svarta knappen (ABORT). Tag sedan bort jordanslutningen till CA och CB och anslut i stället de två tryckknapparna. Den vänstra skall anslutas till CB och den högra till CA, så att vänster knapp ger avbrott på nivå 2 och höger på nivå 5. Uppgift 2 Skriv två avbrottsrutiner av vilka den ena ska ge utskriften AVBROTT vänster och den andra utskriften AVBROTT höger. Respektive avbrottsflagga i PIA:n ska nollställas innan utskriften påbörjas, så att ytterligare en avbrottsbegäran kan tas emot under tiden avbrottsrutinen körs. Nollställningen ska ske med en instruktion som inte påverkar innehållet i något data- eller adressregister. I en verklig tillämpning sparar man normalt undan en del interna register på stacken först i sina avbrottsrutiner. Vi skall emellertid i laborationen gå in och titta på stackens innehåll, och för att göra det lätt att hitta och inte få för mycket ovidkommande data på stacken skall du inte spara några register i dina avbrottsrutiner. De färdiga subrutinerna, SKAVV och SKAVH, är skrivna så att de inte förstör varandras registerinnehåll. Mata in dina avbrottsrutiner på adresserna $00 respektive $200. Kontrollera att avbrottsvektorerna i ditt huvudprogram pekar på rätt avbrottsrutin, och att avbrottsrutinerna nollställer rätt port i PIA:n. 4 januari 25, 203 4

6 Kör huvudprogrammet på adress $000 och kontrollera funktionen hos ditt system enligt följande: Tryck på vänster knapp Vänta tills avbrottsrutinen är klar Tryck på höger knapp Om programmet uppförde sig som väntat gör du följande test: Tryck på vänster knapp Vänta någon sekund Tryck i snabb följd höger, vänster, höger. Om dina avbrottsrutiner är korrekt skrivna skall samtliga avbrott (totalt fyra stycken) tas om hand. Rita ett enkelt diagram som visar i vilken ordning begäran om avbrott kommer in, och i vilken ordning avbrottsrutinerna anropas. Förklara orsaken till att avbrotten inte åtgärdas i den ordning de begärs. Uppgift 3 Du kan genom tryckningar, på knapparna, på olämpliga ställen få texten BAK- GRUNDSPROGRAM att bli osammanhängande. Vi anser det vara väldigt viktigt att utskriften inte avbryts mitt i ett ord, utan kan bara acceptera avbrott i pauserna mellan utskrifter. Vad kan man göra för att få programmet att bete sig så? Gör det! (PIA-kretsen skall inte programmeras om.)... Tryck nu på den svarta ABORT-knappen när bakgrundsprogrammet exekveras. Om du trycker vid en väl (eller illa) vald tidpunkt kan du fortfarande störa utskriften mitt i ordet BAKGRUNDSPROGRAM. Hur är detta möjligt trots den åtgärd du nyss vidtog?... 5

7 Uppgift 4 Tryck på ABORT-knappen mellan två utskrifter av BAKGRUNDSPROGRAM. Programmet befinner sig nu med största sannolikhet i väntesubrutinen DELAY ($2000-$206) och stackdjupet blir då 8 bytes. (Med detta menas att det ligger 8 bytes på stacken, och att stackpekarens värde alltså är $6FF8 om stackpekaren var $7000 från början.) Om du inte skulle få stackdjupet 8 bytes när du avbryter, försök igen. Observera att avbrott genom tryckning på ABORT inte påverkar innehållet på stacken, eftersom avbrottsrutinen för ABORT är skriven så. Du kan om du så vill återstarta ditt program med GO, och det fortsätter som om inget hänt. När du avbrutit med ABORT och stackpekaren har värdet $6FF8, läs av vad som finns på stacken med kommandot MD. Identifiera vad det är som ligger där och varifrån det kommer. Ledning: titta vad som händer först i subrutinen DELAY. Adress Data 6FF FFF Uppgift 5 Sätt nu en brytpunkt på den första instruktionen i subrutinen SKAVH ($20A6). Kör programmet och tryck i snabb följd mellan två utskrifter först på vänster knapp, och sedan på höger knapp. Om du inte har en väldig otur kommer såväl bakgrundsprogrammet som vänster avbrottsrutin att bli avbrutna i subrutinen DELAY ($2000-$206). Stackdjupet blir då 36 bytes. Om du skulle få ett annat stackdjup, starta om och försök igen. Vad bör stackpekaren ha för värde?... Läs återigen av vad som finns på stacken, hela vägen ner till botten, och identifiera exakt vad som ligger där och varifrån det kommer. Rita även en enkel figur som med pilar visar de hopp som sker mellan de olika rutinerna i programmet innan brytpunkten nås. Förklara anledningen till samtliga hopp och vad som lagras på stacken i varje steg. 6 januari 25, 203 6

8 På vilken adress blev bakgrundsprogrammet avbrutet? På vilken adress blev den lägsta avbrottsrutinen avbruten?... Uppgift 6 (Extrauppgift) Antag samma situation som i uppgift 5, men utan brytpunkt. Vad blir det maximala stackdjupet?... 7

9 Laborationsuppgifter Del B Uppgift 7 Konstruera ett PING-PONG spel. Använd två studsfria tryckomkopplare som ansluts till CA respektive CB, samt åtta lysdioder som ansluts till PIAA, se figur. Bollen markeras med en tänd lysdiod, och ska förflyttas fram och tillbaka över lysdiodarrayen så länge de bägge spelarna trycker ned sin knapp exakt då bollen befinner sig i respektive ändläge. U PA PB CA 0 2 CA2 3 4 CB 5 6 CB Spelare V Spelare H Figur. Spelregler Den som vinner en boll får serva. Serve markeras med stillastående boll på den servandes sida. Bollen börjar att röra sig då knappen trycks ned. Spelare V börjar att serva vid spelets start. Om en spelare trycker antingen för tidigt eller för sent när bollen är i spel vinner den andre bollen och får poäng. Likaså om bollen går ut och spelaren inte trycker, då vinner den andre bollen. Nytt servläge ska komma automatiskt när en spelare har fått poäng. 8 januari 25, 203 8

10 Utförande Knappnedtryckningarna ska detekteras mha avbrott. Avbrottsrutinen ska byta flyttningsriktning om bollen är i ändläget hos respektive spelare, annars vidta lämplig åtgärd. Registren D3 och D4 ska, då spelet stoppas (med ABORT), innehålla hur många bollar respektive spelare har vunnit. Ditt program ska innehålla 2 statusflaggor, en som indikerar flyttningsriktning, och en som indikerar om serve ska göras. Då vi har gott om register använder vi ett helt register för respektive flagga. Lämplig registeranvändning är: D0: Tidsfördröjning vid anrop av DELAY. D2: Lagring av hur lysdioderna är tända. D3: Resultatregister spelare A. D4: Resultatregister spelare B. D5: Flyttningsriktning: 00=vänster, FF=höger. D6: Servstatus: 00=ej serve, FF=serve. Uppgift 8 (Extrauppgift) Komplettera spelet med poängvisning på 7-segmentdisplayer. Utnyttja port PIAB enligt figur 2. Poängvisning ska ske med en decimal siffra (0-9) för varje spelare. Om poängsiffran är större än nio ska istället bokstaven E visas. U PA PB CA 0 2 CA2 3 4 CB 5 6 CB PB3-PB0 PB7-PB4 Spelare V Spelare H Figur 2. 9

11 Parallellporten (M682 PIA) Det mesta om parallellporten finns att läsa i kapitel i häftet TUTOR M68008 system och assembler, men några saker kommer att förtydligas här. Kontrollregistrets CR-7 och CR-6 är inte programmerbara, utan nollställning görs genom en läsning av respektive ports data, se figur 3. Figur 4 visar prioritetsavkodningen mellan ABORT, IRQ A och IRQ B, vilket ligger utanför CPU:n. Till CPU:n kommer alltså en avbrottsbegäran, som är den högsta aktuella, och detta jämförs sedan internt med CPU:ns avbrottsnivå. CA- S R Q CRA-7 CRA-0 & IRQA CA-2 S R Q CRA-6 CRA-3 & Läsning i PIAA Figur 3. IRQ A IRQ 5 IRQ B & IRQ 2 ABORT Figur 4. 0 januari 25, 203 0

12 Korsassembler I Tutorkortets programvara finns en Radassembler som erbjuder en möjlighet att snabbt och enkelt komma igång med skrivandet och provkörning av assemblerprogram. Ganska snart upptäcker man att radassemblern är en primitiv utvecklingsmiljö lämpad för små testprogram i storleksordningen 0-20 rader. Vid större assemblerprogram saknar man en del finesser, t.ex: Möjlighet att spara. Möjlighet att använda en avancerad editor. Möjlighet att använda symboliska hoppadresser, så kallade Labels. Lösningen på detta är att använda en PC där en större utvecklingsmiljö är installerad, och du får tillgång till detta genom att i ett terminalfönster skriva module add BUSSENLAB. Vår miljö erbjuder följande: En korsassembler, som är en assembler som körs på en fristående utvecklinsdator, men som genererar kod för ett annat system, målsystemet, i vårt fall Tutor. Ett förbättrat terminalprogram som kan ladda ner binärkod till Tutorkortets RAM. Miljön är enkel att använda och arbetsgången beskrivs i punkterna nedan: Hela assemblerkoden skrivs i en editor och lagras på en fil, t.ex. lab.s. Assemblera filen pingpong.s med kommandot assemble.sh lab.s i ett terminalfönster. Filen assemble.sh är ett s.k. script och innehåller de kommandon som behövs för att assemblera koden. Startadressen kommer alltid att bli $000. Reslutatet kan beskådas i en listfil där talet $000 måste adderas till adressen. Terminalprogrammet körs med kommandot tutor.sh i ett terminalfönster. Med spänningen påslagen ska tutorprompten dyka upp när du slår några returtecken. Den kompilerade filen kan nedladdas till tutorkortet med kommandot ctrl-f l (control-eff ell). Terminalprogrammet avslutas med kommandot ctrl-e. Eventuella brytpunkter kommer att försvinna vid en nerladdning. Tyvärr kan INTE de svenska bokstäverna å,ä och ö ingå i assemblerfilen. Det kan vara lämpligt att lägga editor, assemblering och terminalprogram i olika terminalfönster och att ha dessa uppe samtidigt. Här följer ett programexempel: START MOVE.L #TABS,A2 Kommentar LOOP CMP.B #$0D,(A2)+ Kommentar 2 BNE.S LOOP MOVE.B #228,D7 TRAP #4 TABS DC.B Provstrang DC.B $0D END

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Avbrottsprogrammering på Darma Version 4.03 Februari 2019 (OA, KP) Namn och personnummer Godkänd 1 1 Inledning Syftet med laborationen är först att ge övning i avbrottsprogrammering

Läs mer

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Avbrottsprogrammering på Darma Version 4.02 Februari 2018 (OA, KP) Namn och personnummer Godkänd 1 1 Inledning Syftet med laborationen är först att ge övning i avbrottsprogrammering

Läs mer

Laboration Datorteknik TSIU02 2. I/O-programmering

Laboration Datorteknik TSIU02 2. I/O-programmering Laboration Datorteknik TSIU02 2. I/O-programmering Stefan Gustafsson version 1.1 1. Inledning Laboration: I/O-programmering Du skall i denna laboration programmera TUTOR till att signalera i Morsekod.

Läs mer

CE_O3. Nios II. Inför lab nios2time

CE_O3. Nios II. Inför lab nios2time IS1200 Exempelsamling till övning CE_O3, 2015 CE_O3. Nios II. Inför lab nios2time 3.1. Logiska operationer (se uppgift 1.2 c) Repetera (eller lär dig) innebörden av de logiska operationerna "bitvis AND",

Läs mer

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Kodlås på MC68008 Version 1.6 2012 (AE) 2013 (AE) 2014 (AE) Namn och personnummer Godkänd 1 1 Inledning Syftet med laborationen är att ge övning i assemblerprogrammering samt att

Läs mer

CPU. Carry/Borrow IX. Programräknare

CPU. Carry/Borrow IX. Programräknare Laboration:. Jämförelser mellan assembler och C. CPU ACCA ACCD ACCB 8-bitars ackumulatorer eller 16- bitars ackumulator CCR 1 1 1 SXH I NZVC Flaggregister Carry/Borrow IX IY PC Indexregister X Indexregister

Läs mer

Datorteknik 2 (AVR 2)

Datorteknik 2 (AVR 2) Namn: Laborationen godkänd: Digitala system 15 hp Datorteknik 2 (AVR 2) LTH Ingenjörshögskolan vid Campus Helsingborg Enkel in- och utmatning. Drivrutiner. Bithantering. I denna laboration ska vi förbättra

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #19 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Normaltillstånd vs undantagstillstånd I normaltillstånd

Läs mer

Övningsuppgifter i Mikrodatorteknik 4p/5p

Övningsuppgifter i Mikrodatorteknik 4p/5p Övningsuppgifter i Benny Thörnberg Mittuniversitetet Inst. för Informationsteknologi och medier Hösten 2005 1 Exekvering av assemblerkod 1.1 Statusflaggors beteende Vad blir C-, N- och Z- flaggornas värden

Läs mer

7) Beskriv tre sätt att överföra parametrar mellan huvudprogram och subrutin.

7) Beskriv tre sätt att överföra parametrar mellan huvudprogram och subrutin. 1(5) Övningstentamen i Mikrodatorer och assemblerprogrammering, ELGA05 Hjälpmedel: Bifogad lista med memokoder för MC68xxx. Samtliga programmeringsuppgifter ska innehålla flödesschema med förklaringar

Läs mer

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

TENTAMEN. Datorteknik. D1/E1/Mek1/Ö Hjälpmedel: Häfte ARM-instruktioner, A4-format, 17 sidor. Maxpoäng: TENTAMEN D1/E1/Mek1/Ö1 1400-1800 Hjälpmedel: Häfte "ARM-instruktioner", A4-format, 17 sidor Maxpoäng: Betyg 3 Betyg 4 Betyg 5 60p 24p 36p 48p Frågor under tentamen: Börje Delistrand tel. +46702986358 Bilaga

Läs mer

F8: Undantagshantering

F8: Undantagshantering F8: Undantagshantering Undantagshantering i 68 Vad är ett undantag? Typer av undantag Att skriva undantagsrutiner Undantagshantering, vad och varför? Exempel: Ett system ska mäta temperatur var :e sekund

Läs mer

LEU240 Mikrodatorsystem

LEU240 Mikrodatorsystem Institutionen för data- och informationsteknik 2011-10-11 LEU240 Mikrodatorsystem Vi har tidigare i olika sammanhang sett att det är önskvärt att kunna använda ett högnivåspråk som C för att skriva program

Läs mer

Övningsuppgifter STYRNING - i Mikrodatorteknik för U2 2010

Övningsuppgifter STYRNING - i Mikrodatorteknik för U2 2010 STYRNING - i Mikrodatorteknik för U2 2010 1. Uppgift M10 (5p) aug-09 Skriv ett program i PIC-assembler som - gör PortB till utport - ettställer bit 0, 3 och 4 i PortB - nollställer bit 5 och 6 i PortB

Läs mer

Programallokering. Programtyper. Att placera program i flashrespektive. Program i FLASH-minne. Program i RAM-minne

Programallokering. Programtyper. Att placera program i flashrespektive. Program i FLASH-minne. Program i RAM-minne Programallokering Att placera program i flashrespektive RAM-minne Program i FLASH-minne Bara lokala variabler Globala oinitierade variabler Globala initierade variabler Program med avbrott Program i RAM-minne

Läs mer

Institutionen för elektro- och informationsteknologi, LTH

Institutionen för elektro- och informationsteknologi, LTH Datorteknik Föreläsning 5 Realtidssystem och realtidsprogrammering Mål Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av flera processer Att du ska förstå begreppet tråd

Läs mer

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH.

Datorteknik. Föreläsning 5. Realtidssystem och realtidsprogrammering. Institutionen för elektro- och informationsteknologi, LTH. Datorteknik Föreläsning 5 Realtidssystem och realtidsprogrammering Mål Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av flera processer Att du ska förstå begreppet tråd

Läs mer

Laboration A TSEA57 Datorteknik I

Laboration A TSEA57 Datorteknik I Laboration A TSEA57 Datorteknik I Anders Nilsson 2015 version 1.1 Innehåll 1 Introduktion 5 1.1 Syfte....................................... 5 1.2 Förkunskaper.................................. 5 1.3

Läs mer

Laboration Datorteknik D 3. Digitalur

Laboration Datorteknik D 3. Digitalur Laboration Datorteknik D 3. Digitalur Michael Josefsson version 2.2 Innehåll 1. Inledning 5 2. Hårdvara 7 2.1. LED-displaymodul............................... 7 2.1.1. Multiplexning..............................

Läs mer

Laboration 2 i Datorteknik- Assemblerprogrammering II

Laboration 2 i Datorteknik- Assemblerprogrammering II Högskolan i Halmstad 1 (8) - Assemblerprogrammering II Målet med laborationen är att få begrepp om Subrutiner. in/utparametrar. Lokala variabler Maska in bitar till ett register Konstruktion av subrutiner

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Tallriksmodellen Stackoperationer Element kan endast

Läs mer

Datorsystemteknik Föreläsning 7DAVA14

Datorsystemteknik Föreläsning 7DAVA14 Datorsystemteknik Föreläsning 7DAVA14 Innehåll Introduktion (forts) Polling (cyklisk avfrågning) Större delen av materialet framtaget av :Jan Eric Larsson, Mats Brorsson och Mirec Novak IT-inst LTH Exempel

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U) Föreläsning 6 Kent Palmkvist, ISY TSEA28 Datorteknik Y (och U), föreläsning 6, Kent Palmkvist 2017-01-30 2 Dagens föreläsning Avbrot Princip Avbrot på 68000 Exempel Flera nivåers

Läs mer

Avbrottshantering. Övningsuppgifter

Avbrottshantering. Övningsuppgifter Avbrottshantering Övningsuppgifter 2013 Besvara kortfattat följande frågor rörande CPU12. Redogör för vad som händer vid RESET och varför detta sker. Förklara kortfattat vad som händer vid ett IRQ avbrott

Läs mer

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser

AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser Namn: Laborationen godkänd: Digitala system 15 hp AVR 3 - datorteknik LTH Ingenjörshögskolan vid Campus Helsingborg Avbrott. Syften med den här laborationen är att introducera avbrott. Avbrott som uppkommer

Läs mer

Laboration Datorteknik TSIU02/TSEA28 3. Digitalur

Laboration Datorteknik TSIU02/TSEA28 3. Digitalur Laboration Datorteknik TSIU02/TSEA28 3. Digitalur Michael Josefsson version 2.3 Innehåll 1. Inledning 5 2. Hårdvara 7 2.1. LED-displaymodul............................... 7 2.1.1. Multiplexning..............................

Läs mer

PC-teknik, 5 p LABORATION ASSEMBLERINTRODUKTION

PC-teknik, 5 p LABORATION ASSEMBLERINTRODUKTION PC-teknik, 5 p LABORATION ASSEMBLERINTRODUKTION Laborationsansvarig: Anders Arvidsson Utskriftsdatum: 2005-08-31 Laborant(er): 1 Syfte Laborationen ska ge studenten möjlighet att genom assemblerinlägg

Läs mer

Polling (cyklisk avfrågning) Avbrott

Polling (cyklisk avfrågning) Avbrott Polling (cyklisk avfrågning) Avbrott Större delen av materialet framtaget av :Jan Eric Larsson, Mats Brorsson och Mirec Novak IT-inst LTH Att känna till begreppet polling (cyklisk avfrågning) och hur det

Läs mer

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18 F3 Föreläsning i Mikrodatorteknink 2006-08-29 Kärnan i microcontrollern består av ett antal register och en ALU. Till detta kommer också ett antal portar. Det finns 64 st portar. Några är anslutna mot

Läs mer

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

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen 68000 Arkitektur F2: Motorola 68000 I/O signaler Processor arkitektur Programmeringsmodell Assembler vs. Maskinkod Exekvering av instruktioner i 68000 Instruktionsformat MOVE instruktionen Adresseringsmoder

Läs mer

Lösningsförslag till Tenta i Mikrodator

Lösningsförslag till Tenta i Mikrodator Lösningsförslag till Tenta i Mikrodator 050113 1. Vilka register finns det i processorn och vad används dessa till? D0 till D7: Dataregister som används för beräkningar A0 till A6: Adressregister som används

Läs mer

Avbrottshantering. Övningsuppgifter Lösningsförslag Uppgift (Reservation för diverse fel!)

Avbrottshantering. Övningsuppgifter Lösningsförslag Uppgift (Reservation för diverse fel!) Avbrottshantering Övningsuppgifter 2013 Lösningsförslag Uppgift 1-19 (eservation för diverse fel!) 1 Koppling: Q 1 Till bit 0 INPOT ÖKA A 1 /W 1 Write 8FF 16 NOLLA Write 8FFF 16 Q 2 1 Q 2 Till bit 1 INPOT

Läs mer

Föreläsningsanteckningar 3. Mikroprogrammering II

Föreläsningsanteckningar 3. Mikroprogrammering II Föreläsningsanteckningar 3. Mikroprogrammering II Olle Seger 2012 Anders Nilsson 2016 1 Inledning Datorn, som vi byggde i förra föreläsningen, har en stor brist. Den saknar I/O. I denna föreläsning kompletterar

Läs mer

Lösningar till tentamen i EIT070 Datorteknik

Lösningar till tentamen i EIT070 Datorteknik Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Torsdagen den 13 mars 2014, klockan 14:00 19:00 i MA:10. Tillåtna hjälpmedel: på tentan utdelad formelsamling,

Läs mer

Laboration Datorteknik D 1. IR-länk

Laboration Datorteknik D 1. IR-länk Laboration Datorteknik D 1. IR-länk Michael Josefsson version 1.3 Innehåll 1. Inledning 5 2. Hårdvara 7 2.1. IR-sändare................................... 7 2.2. IR-mottagare..................................

Läs mer

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen)

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen) MÄLRLENS HÖGSKOL Institutionen för elektroteknik Tentamen Mikrodatorteknik T3760 atum 2005-10-28 Tid 08.30 12.30 nsvarig lärare: Olof ndersson, Telefon 021-101314 (besöker skrivsalen) Om du klarat samtliga

Läs mer

Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3. Namn: Personnummer: Tentamensdatum: 20120410 Tid: 14:00-18:00.

Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3. Namn: Personnummer: Tentamensdatum: 20120410 Tid: 14:00-18:00. Mikrodatorteknik Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3 7,5 högskolepoäng Namn: Personnummer: Tentamensdatum: 20120410 Tid: 14:00-18:00 Hjälpmedel: Totalt antal poäng på tentamen:

Läs mer

Mål. Datorteknik. Introduktion. Innehåll. Verklig situation - pappaledighet. Introduktion (forts)

Mål. Datorteknik. Introduktion. Innehåll. Verklig situation - pappaledighet. Introduktion (forts) Mål Datorteknik Föreläsning 4 Att känna till begreppet polling (cyklisk avfrågning) och hur det implementeras Att förstå varför avbrottstyrd exekvering är överlägset polling Att veta vilken information

Läs mer

Institutionen för elektro- och informationsteknologi, LTH

Institutionen för elektro- och informationsteknologi, LTH Datorteknik Föreläsning 4 Polling och avbrott Mål Att känna till begreppet polling (cyklisk avfrågning) och hur det implementeras Att förstå varför avbrottstyrd exekvering är överlägset polling Att veta

Läs mer

Till assemblersystemet Zuper 80 Assembler krävs en SPECTRAVIDEO 328/318+minst 16K ram extra.

Till assemblersystemet Zuper 80 Assembler krävs en SPECTRAVIDEO 328/318+minst 16K ram extra. ZZZZZ 888 000 A Z 8 8 0 0 A A ZZ 8 8 0 0 A A ZZ u u pppp eee r rrr 888 0 0 AAAAA ZZ u u p p e e rr --- 8 8 0 0 A A ZZ u u p p e ee r 8 8 0 0 A A Z u u p p e r 8 8 0 0 A A ZZZZZ uuuu pppp eeee r 888 000

Läs mer

Mål. Datorteknik. Repetition av avbrott. Innehåll. Mätning och styrning. Datorer för mätning och styrning. timer. Datorsystem A/D. Analog insignal D/A

Mål. Datorteknik. Repetition av avbrott. Innehåll. Mätning och styrning. Datorer för mätning och styrning. timer. Datorsystem A/D. Analog insignal D/A Mål Datorteknik Föreläsning 5 Att du ska förstå hur avbrott används för - Mätning - Styrning - Stöd för körning av fle processer Att du ska förstå begreppet tråd Att du ska veta hur odelba resurser kan

Läs mer

A-del motsvarande KS1

A-del motsvarande KS1 MÄLARDALENS HÖGSKOLA Institutionen för elektroteknik Tentamen Mikrodatorteknik CT3760 Datum 2005-10-28 Tid 08.30 12.30 Svar till A- och B-del A-del motsvarande KS1 Uppgift A1. Vad blir resultatet då instruktionen

Läs mer

F5: Högnivåprogrammering

F5: Högnivåprogrammering F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data via

Läs mer

Föreläsning 2. Operativsystem och programmering

Föreläsning 2. Operativsystem och programmering Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data

Läs mer

F5: Högnivåprogrammering

F5: Högnivåprogrammering 1 F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data

Läs mer

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar.

Laboration 4: Knappstuds Drivrutiner för att eliminera störningar. ATMega16 Laborationer av Kjell 2 Rev:5 Datum: 29.09.2010 Page 1 of 7 Laboration 4: Knappstuds Drivrutiner för att eliminera störningar. Inledning: Laborationskortet EasyAVR6 har bland annat tryckknappar

Läs mer

Enchipsdatorer med tillämpningar LABORATION 7, ROBOT

Enchipsdatorer med tillämpningar LABORATION 7, ROBOT Enchipsdatorer med tillämpningar LABORATION 7, ROBOT Laborationsansvariga: Anders Arvidsson Utskriftsdatum: 2005-05-14 Laboranter: 1 Syfte Denna laboration syftar till att introducera interrupt och watchdog

Läs mer

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Svar Svar till uppgifterna lämnas på separat papper. En poäng per uppgift. Max 30 poäng. Bonuspoäng beräknas enligt följande tabell: 6-10 poäng

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2016-05-31 Lokal Kåra, T1, T2, U1, U15 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal

Läs mer

Stack och subrutiner Programmeringskonventionen

Stack och subrutiner Programmeringskonventionen Stack och subrutiner Programmeringskonventionen Du ska förstå hur en instruktion behandlas i processorn Du ska känna till några fler instruktioner Du ska veta hur maskinkoden för ett program byggs upp

Läs mer

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok.

Besvara de elektroniska frågorna (se kurshemsidan). Läs kapitel i kursbok. Namn: Laborationen godkänd: Laboration 3. Pipeline Laborationens syfte I laborationen ska du bekanta dig med pipelining. Genom laborationen fås kunskap om hur pipelines är konstruerade och hur de används.

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2017-08-15 Lokal TER4 Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen

Läs mer

Programexempel för FLEX

Programexempel för FLEX Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika maskininstruktioner i styrenheten. Kunna använda

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U) Föreläsning 5 Kent Palmkvist, ISY TSEA28 Datorteknik Y (och U), föreläsning 6, Kent Palmkvist 2017-01-23 2 Dagens föreläsning 68000 (Tutor) Adresseringsmoder M68008 stackhantering

Läs mer

Programmering. Scratch - grundövningar

Programmering. Scratch - grundövningar Programmering Scratch - grundövningar Lär känna programmet: Menyer för att växla mellan att arbeta med script, utseende/bakgrund och ljud. Scenen där allting utspelar sig. Här klickar du på bakgrunden

Läs mer

Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C

Laboration 5. Temperaturmätning med analog givare. Tekniska gränssnitt 7,5 p. Förutsättningar: Uppgift: Temperatur:+22 C Namn: Laborationen godkänd: Tekniska gränssnitt 7,5 p Vt 2014 Laboration 5 LTH Ingenjörshögskolan vid Campus Helsingborg Temperaturmätning med analog givare. Syftet med laborationen är att studera analog

Läs mer

Laboration nr 4 behandlar Assemblerprogrammering

Laboration nr 4 behandlar Assemblerprogrammering Laboration nr 4 behandlar Assemblerprogrammering Följande upp gifter ur Arbetsbok för DigiFlisp ska vara utförda som förberedelse för laborationen. Du ska på begäran av laborationshandledare redogöra för

Läs mer

Systemkonstruktion LABORATION REALTIDSPROGRAMMERING

Systemkonstruktion LABORATION REALTIDSPROGRAMMERING Systemkonstruktion LABORATION REALTIDSPROGRAMMERING Laborationsansvariga: Anders Arvidsson, Björn Lundblad Utskriftsdatum: 2002-10-31 Laboranter: 1 Syfte Denna laboration syftar till att öva användningen

Läs mer

Övning2 Datorteknik, HH vt12 - Programmering

Övning2 Datorteknik, HH vt12 - Programmering Övning2 Datorteknik, HH vt12 - Programmering För denna övning behöver man adresskarta och beskrivning av laborationsplattform. Finns bland föreläsningsanteckning samt i bilaga l till Lab l. Använd även

Läs mer

Vilken skillnad gör det var du placerar det? Prova båda.

Vilken skillnad gör det var du placerar det? Prova båda. Micro:bit- Namnskylt Vi börjar med att döpa programmet till något. Till exempel ditt namn. Det gör du längst ner i mitten. Nu ska vi göra ett enkelt program som med lysdioderna skriver ditt namn. När du

Läs mer

Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14

Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14 Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14 Lokal TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 6 Antal sidor (inklusive denna sida) 7 Kursansvarig Andreas

Läs mer

LABORATION. Datorteknik Y

LABORATION. Datorteknik Y LABORATION Datorteknik Y Mikroprogrammering Version 3.3 2012 (AE) 2013 (AE) 2017 (KP) Namn och personnummer Godkänd Uppg. 1-3 1 1 Inledning Syftet med laborationen är att skapa en känsla för vad som händer

Läs mer

1. Introduktion - 3 -

1. Introduktion - 3 - 1. Introduktion 1.1. Historia Den amerikanska halvledartillverkaren Motorolas första och mycket framgångsrika mikroprocessor M6800 kom ut på marknaden 1974. Processorn var en klassisk 8-bitars ackumulatormaskin

Läs mer

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Lösningsförslag för 725G45-tentan 3/11-10 1. Vad menas med Von Neumann-arkitektur? (2p) En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär: Data och instruktioner lagras i samma

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #18 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblerprogrammering Assemblatorer vs kompilatorer

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #8 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Assemblatorer vs kompilatorer En assemblator är ett program

Läs mer

SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR

SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR 2 Projekt mikrobasic PRO for AVR organiserar applikationer som projekt vilka består av en enda projektfil (med filändelsen.mbpav) och en eller flera

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2016-10-18 Lokal TER1 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive

Läs mer

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1

TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1 Halmstad University School of Information Science, Computer and Electrical Engineering Tomas Nordström, CC-lab TENTAMEN Datorteknik (DO2005) D1/E1/Mek1/Ö1 Datum: 2012-05- 23 Tid och plats: 9:00 13:00 i

Läs mer

3. Välj den sprajt (bild) ni vill ha som fallande objekt, t ex en tårta, Cake. Klicka därefter på OK.

3. Välj den sprajt (bild) ni vill ha som fallande objekt, t ex en tårta, Cake. Klicka därefter på OK. Moment 2: Klonspel Instruktioner för deltagare Idag ska du få lära dig om: Kloner - kopior av samma figur (sprajt) Variabler - ett värde, exempelvis antal poäng Slumptal - slå en tärning för att välja

Läs mer

Sekvensnät i VHDL del 2

Sekvensnät i VHDL del 2 Laboration 6 i digitala system ht-16 Sekvensnät i VHDL del 2 Realisering av Mealy och Moore i VHDL............................. Namn............................. Godkänd (datum/sign.) 2 Laborationens syfte

Läs mer

Datorteknik. Föreläsning 4. Polling och avbrott. Institutionen för elektro- och informationsteknologi, LTH. Mål

Datorteknik. Föreläsning 4. Polling och avbrott. Institutionen för elektro- och informationsteknologi, LTH. Mål Datorteknik Föreläsning 4 Polling och avbrott Mål Att känna till begreppet polling (cyklisk avfrågning) och hur det implementeras Att förstå varför avbrottstyrd exekvering är överlägset polling Att veta

Läs mer

Datorsystem Laboration 2: Minnesmappade bussar

Datorsystem Laboration 2: Minnesmappade bussar Datorsystem Laboration 2: Minnesmappade bussar Senast uppdaterad: 14 oktober 2012 Version 1.2 Student: Lärare: Underskrift: Underskrift: Datum: Datorsystem Laboration 2 1 Innehåll 1 Inledning 2 1.1 Introduktion..................................

Läs mer

Laboration Datorteknik TSIU02/TSEA28 3. Digitalur

Laboration Datorteknik TSIU02/TSEA28 3. Digitalur Laboration Datorteknik TSIU02/TSEA28 3. Digitalur Michael Josefsson, Kent Palmkvist version 3.0 Innehåll 1. Inledning 5 2. Hårdvara 7 2.1. LED-displaymodul............................... 7 2.1.1. Multiplexning..............................

Läs mer

Lösningar till tentamen i EIT070 Datorteknik

Lösningar till tentamen i EIT070 Datorteknik Lösningar till tentamen i EIT070 Datorteknik Institutionen för Elektro- och informationsteknik, LTH Onsdagen den 13 mars 2013, klockan 14:00 19:00 i Vic 2 A-D, 3 A-C. Tillåtna hjälpmedel: på tentan utdelad

Läs mer

Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP.

Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP. Övningsuppgifter Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP. F.2 Ett antal på varandra följande minnesord har

Läs mer

Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 TER2, TER4, TERE Tid 14-18

Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 TER2, TER4, TERE Tid 14-18 Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 Lokal TER2, TER4, TERE Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 7 Antal sidor (inklusive denna sida) 10

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2015-06-01 Lokal Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen

Läs mer

Laboration 5 TSEA57 Datorteknik I

Laboration 5 TSEA57 Datorteknik I Laboration 5 TSEA57 Datorteknik I Anders Nilsson 2015 version 1.0 Innehåll 1. Introduktion 5 1.1. Syfte....................................... 5 1.2. Förkunskaper.................................. 5 1.3.

Läs mer

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

Datorteknik. Tomas Nordström. Föreläsning 6. För utveckling av verksamhet, produkter och livskvalitet. Datorteknik Tomas Nordström Föreläsning 6 För utveckling av verksamhet, produkter och livskvalitet. Föreläsning 6 Vad händer vid uppstart SoC och Kringkretsar, PIO Programmering i Assembler Lab2 genomgång

Läs mer

Maskinorienterad programmering

Maskinorienterad programmering Externa avbrott Anslutning av extern avbrottsvippa, programmering med konfigurering och hantering av externa avbrott. Introduktion till time-sharing, enkel task-switch. Ur innehållet: NVIC och EXTI (SYSCFG)

Läs mer

Datorteknik TSIU02 Kursinformation

Datorteknik TSIU02 Kursinformation Datorteknik TSIU02 Kursinformation Michael Josefsson 24 maj 2018 1.1 Allmänt Kursen handlar om praktisk datorteknik på en grundläggande nivå. Programmerar man på en ännu lägre nivå är man processorkonstruktör!

Läs mer

CE_O6. Parallell in/utmatning (I/O). Förberedelser till laboration nios2io.

CE_O6. Parallell in/utmatning (I/O). Förberedelser till laboration nios2io. IS1200 Exempelsamling till övning CE_O6, 2015 CE_O6. Parallell in/utmatning (I/O). Förberedelser till laboration nios2io. 6.1. Läs in data från IN-port (skjutomkopplare TOGGLES18) Skriv en subrutin, Get_Data

Läs mer

Enchipsdatorer med tillämpningar LABORATION 6, ROBOT

Enchipsdatorer med tillämpningar LABORATION 6, ROBOT Enchipsdatorer med tillämpningar LABORATION 6, ROBOT Laborationsansvariga: Tomas Bengtsson, Rickard Holsmark Utskriftsdatum: 2006-05-02 Laboranter: 1 Syfte Syftet med laborationen är att studenterna på

Läs mer

Svar till Övning3 Datorteknik, HH vt12 Avbrott och timers

Svar till Övning3 Datorteknik, HH vt12 Avbrott och timers Svar till Övning3 Datorteknik, HH vt12 Avbrott och timers Avbrott generellt F7.1. Avbrott sköts med hårdvara i processorn, man läser av hårdvarumässigt. Polling är en enklare princip för I/O- hantering.

Läs mer

Lösningsförslag till Tenta i Mikrodator

Lösningsförslag till Tenta i Mikrodator Lösningsförslag till Tenta i Mikrodator 040117 1. Vilka register finns det i processorn och vad används dessa till? D0 till D7: Dataregister som används för beräkningar A0 till A6: Adressregister som används

Läs mer

LABORATION DATORTEKNIK Y. DATORTEKNIK D DATORTEKNIK M/1/C 1.1. TUTOR M68008 SYSTEM OCH ASSEMBLER

LABORATION DATORTEKNIK Y. DATORTEKNIK D DATORTEKNIK M/1/C 1.1. TUTOR M68008 SYSTEM OCH ASSEMBLER LABORATION DATORTEKNIK Y. DATORTEKNIK D DATORTEKNIK M/1/C 1.1. TUTOR M68008 SYSTEM OCH ASSEMBLER Stefan Gustav son, Olle Ro os m fl ISY-LiTH 1996 Innehåll l Introduktion 3 1.1 Historia... 3 1.2 Nutid.......

Läs mer

Tentamen. Datorteknik Y, TSEA28

Tentamen. Datorteknik Y, TSEA28 Tentamen Datorteknik Y, TSEA28 Datum 2015-08-18 Lokal TERE, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive

Läs mer

LV6 LV7. Aktivera Kursens mål:

LV6 LV7. Aktivera Kursens mål: Aktivera Kursens mål: LV6 LV7 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruktruera olika kombinatoriska nät som ingår i en dator. Studera hur addition/subtraktion

Läs mer

Digital- och datorteknik

Digital- och datorteknik Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola F-36 FLEX- och FLIS-datorn Ext-8 Tallriksmodellen Stackoperationer

Läs mer

Hur ser Blue-Bot ut i aktion?

Hur ser Blue-Bot ut i aktion? Hur ser Blue-Bot ut i aktion? Tydliga knappar för barnen att använda vid programmering av Blue-Bot. Möjlighet att spara upp till 80 instruktioner i Blue- Bots minne. Blue-Bot rör sig i samma riktning 15

Läs mer

Datorprojekt, del 1. Digitala system 15 p

Datorprojekt, del 1. Digitala system 15 p Namn: Laborationen godkänd: Digitala system 15 p L T H I n g e n j ö r s h ö g s k o l a n v i d C a m p u s H e l s i n g b o r g Datorprojekt, del 1 Projektet består i att skapa en klocka där tiden visas

Läs mer

TSEA28 Datorteknik Y (och U)

TSEA28 Datorteknik Y (och U) TSEA28 Datorteknik Y (och U), föreläsning 7, Kent Palmkvist 2018-02-12 3 TSEA28 Datorteknik Y (och U) Föreläsning 7 Kent Palmkvist, ISY Praktiska kommentarer Ordningsfråga Glöm inte koppla ned anslutningarna

Läs mer

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

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler Talsystem Talsystem - binära tal F1.1. Hur många unsigned integers kan man göra med n bitar? Vilket talområde får dessa

Läs mer

Extrauppgifter för CPU12

Extrauppgifter för CPU12 1 Extrauppgifter för CPU12 X1a) Skriv en instruktionssekvens som nollställer bit 3-0 i alla minnesord i adressintervallet 2035H, 2049H Använd X-registret för adressering X1b) Skriv en subrutin som maskerar

Läs mer

I denna laboration undersöker vi hur aritmetiska beräkningar utförs. Vi tittar på olika variabeltyper: 8-bitars, 16-bitars, 32-bitars och flyttal.

I denna laboration undersöker vi hur aritmetiska beräkningar utförs. Vi tittar på olika variabeltyper: 8-bitars, 16-bitars, 32-bitars och flyttal. Laboration:. Jämförelser mellan assembler och C. I denna laboration undersöker vi hur aritmetiska beräkningar utförs. Vi tittar på olika variabeltyper: 8-bitars, 16-bitars, 32-bitars och flyttal. Förberedelser:

Läs mer

Kapitel 4 Arkivmenyn Innehåll

Kapitel 4 Arkivmenyn Innehåll Kapitel 4 Arkivmenyn Innehåll ARKIVMENYN...2 Byt aktuell användare...2 Utskrift till skärm eller skrivare...3 SQL verktyget...4 Ny SQL...4 Hämta SQL...5 Spara SQL...5 Kör SQL...5 Visa som...5 Avsluta...5

Läs mer

Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå

Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå Aktivera Kursens mål: LV4 Fo10 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen

Läs mer

F4: Assemblerprogrammering

F4: Assemblerprogrammering F4: Assemblerprogrammering Hoppinstruktioner Branch Jump Med vilkor IF satser Loopar while-loopar do-while- loopar for-loopar Stackhantering Underprogram 1 BRA rel_adr Branch Always Relativadressering

Läs mer