Predstavitev Čipa

Home
MC 6803
Predstavitev Čipa
Predstavitev Registrov
Diagram Poteka
Navodila Za Uporabo
Delovanje
Download
Programiranje

 

Motorola MC6800

Splošno:

Splošne Informacije

MC6800 je bil prvi Motorolin mikroprocesor. 6800 je bil predstavljen kot direkten konkurent Intelovemu mikrokontrolerju 8080. Zgradba MC6800 je temeljila na Intelovem mikrokontrolerju 8008. MC6800 je imel zelo podobno arhitekturo kot 8080 z majhnimi razlikami le v registerskem področju. Naprimer MC6800 je imel dva akumulatorja, medtem ko je imel 8080 le enega. 6800 je imel manjše število splošnonamenskih registrov, vendar je imel indeksni register kar je pripomoglo k bolšemu dostopu do podatkov. Inštrukcije, ki jih je sprejemal MC6800 so bile bolj komplicirane od inštrukcij, ki jih je poznal Intelov 8080. Glede na aplikacije, ki jih opravljata, je v nekaterih primerih eden mikrokontroler boljpi od drugega.

Izdelava

Druga polovica 1974
Oblikovalci Neznan

Arhitektura:

Type Data Word Naslovni Prostor Ura Inštrukc- ije Assists Reg's  GP Reg's Math Reg's Index IO Ports   Sklad Interrupts Memory
CPU, NMOS 8-bit 64K 1Mhz 78 BCD 2 0 1 8 Zunanji RAM Vectored Multi-level NA

Isto arhitekturo z dodatnimi lastnostmi ima tudi naš mikrokontroler MC6803, ki je le nadgradnja mikrokontrolerja MC6800.

 

MIKROKONTROLER MOTOROLA 6803

Zgradba MC6803

MC 6803 je integrirano vezje, ki ima 40 nogic. Vezje je narejeno na NMOS - tehnologiji. Deluje lahko na dva načina. Oba sta razširjena načina delovanja (expanded mode), zato moramo poleg mikrokontrolerju MC 6803 vedno dodati zunanji pomnilnik, kjer je shranjen program na katerem deluje. Pri razširjenem multipleksiranem načinu (expanden multiplexed mode), so podatkovni signali multipleksirani s spodnjimi 8 naslovnimi signali, medtem, ko imajo podatkovni in naslovni signali pri nemultipleksiranem načinu (expanded non-multiplexed mode) vsak svojo nožico.

Sličica mikrokontrolerja:

Vsebina MC6803:

CPE, ki je izboljšana verzija mikroprocesorja 6800. Dodani so mu tudi nekateri novi ukazi
urin generator
128 zlogov RAM pomnilnika
večnamenski timer
serijski asihronski komunikacijski adapter, ki omogoča serijsko komunikacijo z zunanjimi napravami
paralelni vmesnik - port 1
paralelni vmesnik - port2

 

MC 6803 in osnovni računalniški model

Urina perioda, strojna perioda in ukazna perioda

Delovanje računalnika je zaporedno prevzemanje ukaza in izvajanje ukaza v ritmu, ki ga določa urina perioda. Ena ali več urinih period sestavljajo strojno periodo (pri MC 6803 je strojna perioda enaka urini periodi.

Strojen cikle, v katerih pride do prenosov podatkov ločimo v 3 cikle: bralni cikel, pisalni cikel in ukazno-prevzemni cikel. Pri izvrševanju ukaza pa imamo še posebni cikel imenovan izvršilni cikel, pri katerem pa ne pride do prenosa podatkov med CPE in pomnilnikom

Pod ukazno-prevzemni cikel štejemo samo branje operacijske kode določenega ukaza, ki traja pri MC 6803 natanko eno urino periodo.

Bralni cikel in ukazno-prevzemni cikel sta popolnoma enaka. Pri obeh CPE prebere vsebino lokacije pomnilnika, katere naslov sporoči preko naslovnih signalov od A0 do A15

Pisalni cikel: pri pisalnem ciklu gre za vpis podatka v pomnilnik. Ta podatek mora CPE postaviti na nožice od AD0 do AD7 (D0 do D7), pomnilnik pa bo v tem času svoje signalne linije D0-D7 imel za vhodne in jih postavil v impendančno stanje.

Dostop do pomnilnika s multipleksiranim vezjem

Za demultipleksiranje zadostuje eno vezje (npr. 74LS573). Mikrokontroler preko izhodnega signala AS (adress strobe) pove, kdaj so na signalnih linijah od AD0 do AD7 naslovi. Vedno kadar je signal AS v stanju 1, so na nožicah naslovi.

Prevzem prvega ukaza  

MC 6803 ima vhodni signal za inicializacijo označen z RESET. Potrebuje ga zato, da postavi CPE v točno določeno stanje, da začne z izvajanjem od prvega ukaza dalje. Signal RESET mora aktivirati neko zunanje vezje vsakič, ko želimo da sistem ponovno starta

Ko se signal RESET aktivira CPE mikrokontolerja MC 6803 najprej prebere zgornji dve lokaciji pomnilnika ($FFFE in $FFFF) in njuno vsebino prepiše v PC. za prenos teh dveh lokacij potrebuje CPE 2 bralna cikla zato, ker lahko na enkrat prenese le 8 bitov. Vsebina pomnilniških lokacij, ki se prepiše v programski števec, mora biti naslov prvega ukaza programa, ker CPE v naslednjem trenutku že začne z prevzemanjem prvega ukaza. Logično je, da morata biti zgornji lokaciji shranjeni v neizbrisljivem pomnilniku. Lokacijama pomnilnika z naslovom $FFFE in $FFFE imenujemo reset vektor

Pomnilniško kodiranje pri MC 6803  

Lokacije, ki jih vidi MC 6803 imenujmo logične lokacije, tiste, ki pa se dejansko nahajajo v pomnilniku pa imenujemo fizične lokacije. Vsem fizičnim lokacijam moramo zagotoviti mesto v logičnem naslovnem prostoru CPE. Vezje, ki opravlja dodeljevanje fizičnih lokacij logičnim imenujemo pomnilniški dekoder.

Priključimo EPROM 2764 na CPE. Naslovni izhodi CPE, A0 do A12, so povezani na pripadajoče vhode EPROM-a, prav tako so povezane podatkovne linije D0 do D7, vendar lahko CPE naslavlja 65.536 logičnih lokacij pomnilnika, fizičnih pa vsebuje EPROM le 8192, kar je za osemkrat manj, zato ostanejo nepriključene 3 naslovne linije. Sedaj lahko izberemo 2 načina naslovnega kodiranja.

Prvi način je nepopolno kodiranje. Pri tem načinu dekoder vsako fizično lokacijo preslika v 8 logičnih lokacij (2*2*2 tri proste naslovne linije), tako da CPE vidi v eni fizični lokaciji osem logičnih lokacij.

Drugi način je popolno kodiranje. Pri tem kodiranju pripada točno ena fizična lokacija eni logični lokaciji. Za popolno kodiranje bomo morali uporabiti tudi proste naslovne linije A13, A14 in  A15, vendar se moramo odločiti na katerih naslovih naj CPE vidi fizične lokacije EPROM-a. Predpostavimo da želimo EPROM preslikati v zgornjih 8K naslovnega prostora. Prvo fizično lokacijo bo tako CPE našla na naslovu $E000 zadnjo pa na naslovu $FFFF. Pomnilniške naslove $E000 do $FFFF določajo naslednje vrednosti: A13=1, A14=1 in A15=1, zato moramo dodati dekoder, ki bo omogočal dostop do do EPROM-a samo takrat, ko bodo na naslovnih signalih A13, A14 in A15 vrednosti 1. 

Hosted by www.Geocities.ws

1