Tentin tekstisisältö

TKT-1100 Mikroprosessorit - 06.04.2010

Tentin tekstisisältö

Teksti on luotu tekstintunnistuksella alkuperäisestä tenttitiedostosta, joten se voi sisältää virheellistä tai puutteellista tietoa. Esimerkiksi matemaattisia merkkejä ei voida esitää oikein. Tekstiä käytetään pääasiassa hakutulosten luomiseen.

Alkuperäinen tentti
TTY TKT-1110 Mikroprosessorit 5 op

Matti Haavisto Tentti 6:4.2010

 

e Tentin mukana jaetaan taulukko "H8S/2000 CPU Instruction set & - codes". Palauta se tentin
jälkeen!!!

e Kirjoita vastauspaperiin, milloin olet tehnyt harjoitustyöt (esim. Talvi 09, Kesä 08...)

e Tentissäon sallittua käyttää tiedekunnan funktiolaskinta.

e Ohjelmointitehtävissä hahmottele vastauksesi ensin suttupaperille.

e Kirjoita selkeästi!!!!!

1 Kirjoita heksadesimaalisina ne luvut, jotka käännin tuottaa kysymysmerkkien
paikalle alla olevan ohjelman riveillä 17, 18 ja 28. (Käskytaulukon
takasivulta näet, mikä luku vastaa mitäkin rekisteriä käskyn rekisterikentässä.)
(4p)

6 O0FFFFCO . section muuttujat,data,locate=h'FFFFC0
7 OOFFFFCO tulos: .res.b EN
8
9 00FFA200 - section omakoodi,code,locate=h'ffa200
10 00FFA200 7A0500FFA22E mov.1 tarvot, ER5
11 00FFA206 6511 XOL.W R1, RI
12 00FFA208 15AA xor.b R2L, R2L
13
14 00FFA20A 6C58 jatka: mov.b GER5+, ROL
15 00FFA20C A80F cmp.b 415, ROL
16 O0FFA20E 58E00006 bgt vali 1 sgreater than
17 00FFA212 2??? cmp.b 4-15, ROL
18 00FFA214 2??? bge vali 2 greater or edual
19
20 00FFA218 17D0 vali 1: exts.w RO
21 00FFA21A 0901 add.w RO, RI
22 00FFA21C 0A0A inc.b R2L
23 vali 2:
24 00FFA21E 7A2500FFA238 cmp.1 tarvot+10, ERS5
25 O0FFA224 46E4 bne jatka
26
27 00FFA226 01D051A1 divxs.b R2L, RI
28 00FFA22A ??? mov.b R1L, Gtulos
29 00FFA22C 40FE bra K
30

31 O0FFA22E 18110A = arvot: .data.b 24, 17, 10
32 O0FFA231 O4FEFSFIEFESE2 .data.b 4, -2, -8, -15, -17, -24, -30
2 a) Kuinka monta kertaa rivillä 25 sijaitseva pne-käsky on suoritettu, kun
rivillä 17 sijaitseva cmp .b-käsky suoritetaan ensimmäisen kerran? (2p)
b) Mikä on osoitteen tulos 8-bittinen sisältö ohjelman päätyttyä? (3p)
c) Miten (millä muutoksilla) ohjelman suoritusaikaa voitaisiin pienentää?
(3p)

3 Yllä olevassa ohjelmassa rivillä 14 sijaitsevan mov . b-käskyn toimintakuvaus on:
(OERs—Rd8,ERs32+1—ERs32; N: 1,Z:1, V:0; states:3. Selosta kaikki käskyn
suoritukseen liittyvät tapahtumat yksitellen (mieluiten ranskalaisin viivoin), kun
tehtävän mov . b-käsky rivillä 14 suoritetaan. Aloita siitä, kun suoritin asettaa
käskyn osoitteen FFA 20A osoiteväylälle. (6p)

KÄÄNNÄ!!!
start:

TGI pa

Viereinen aliohjelma get char lukee

. J : get char: btst 6, ESSR 0
vastaanottimelta merkin ja kaiuttaa sen beg — get char
näytölle. Toteuta aliohjelma niin, että a J
edellisten toimintojen lisäksi luettu merkki (mov.b ROL, 8IDR O
siirretään pääohjelmaan pinon kautta. bclr = 47, ESSR 0
Kirjoita myös esimerkki(pää-)ohjelma, Eks
jossa vastaanotettu merkki haetaan pinosta.

(6P)

Alla oleva palveluohjelma mittaa ajoittimen kanavaan kytketyn signaalin
(kanttiaallon) taajuuden hertzeinä. Kirjoita aliohjelma, joka tulostaa näytölle

lasketun taajuuden kilohertzeinä. Oletetaan, että sarjaliitynnän ohjain on alustettu.

 

(6p)
-gection koodi,code,locate=h'ffa200
mov.1 jh'ffefc0, ER7 ;pino
bclr $5, 2MSTPCRA 7; TPU:n virta päälle
belr 80, &P1DDR 1 TIOCAC tulojohtimeksi
mov.b 8D'00000009, ROL sjatkuva toiminta, esijakaja 1
mov.b ROL, aTCR 0
mov.b f$D'00001000, ROE snousevia reunoja odotetaan
mov.b ROL, sTIORH O
bset 40, aTSTR spulesilaskuri käyntiin
bset $5, aSYSCR ;B-tasoinen keskeytysjärjestelmä
mov.b fh'17, ROL ; TPU:n prioriteetti ykköseksi
mov.b ROL, 2IPRF
mov.b f1, ROL slediportin johdin lähäöksi
mov.b ROL, aPGDDR
belr f0, TSR 0 ;tapahtumalippu nollataan
bret £0, aTSR 0 sodoretaan ensimmäistä tapahtumaa
beg eka
mov.w aTGRA 0, R1 stapahtuman aika talteen
belr 40, 2TSR 0
bset $0, aTIER 0 ssallitaan kanavan AC' keskeytykset
ande $D'11111000, EXR smaski nollaksi

a. mOv.Ww aTGRA 0, RO s luetaan uusi aika
bolr $0, aTSR 0 skuitataan keskeytyspyyntö
mov.w RO, R2 suusi aika välivarastoon
sUD.w RI, RO suusi aika - vanha sika -» RO
mov.1 824000cC0, ERI
divxu.w 20, ERI :ER1 + RO -> R1
MmoOv.w R1, ataajuus
MOV.W R2, R1 suusi aika on nyt vanha aika
rte

-gection vekrorit,code,locate=0

-Gata.1 starr

org n" 30 ""10A-pyynnön vektoripaikka
.Gata.1 TCI pal

.end

mV. RoL, All, Era)


Käytämme evästeitä

Tämä sivusto käyttää evästeitä, mukaanlukien kolmansien puolten evästeitä, vain sivuston toiminnan kannalta välttämättömiin tarkoituksiin, kuten asetusten tallentamiseen käyttäjän laitteelle, käyttäjäistuntojen ylläpitoon ja palvelujen toiminnan mahdollistamiseen. Sivusto kerää käyttäjästä myös muuta tietoa, kuten käyttäjän IP-osoitteen ja selaimen tyypin. Tätä tietoa käytetään sivuston toiminnan ja tietoturvallisuuden varmistamiseen. Kerättyä tietoa voi päätyä myös kolmansien osapuolten käsiteltäväksi sivuston palvelujen tavanomaisen toiminnan seurauksena.

FI / EN