180 likes | 353 Views
Pamäte Registre Zbernice. Rozdelenie pamäťového priestoru. Mikroprocesor 8051 má oddelené pamäťové priestory pre pamäť programov a pamäť dát, ktoré sú prístupné rôznymi inštrukciami. Jednočipový mikropočítač Intel 8051 má 3 pamäťové moduly : 64kB pamäť programu – interná ROM aj externá ROM
E N D
Pamäte Registre Zbernice
Rozdelenie pamäťového priestoru • Mikroprocesor 8051 má oddelené pamäťové priestory pre pamäť programov a pamäť dát, ktoré sú prístupné rôznymi inštrukciami. Jednočipový mikropočítač Intel 8051 má 3 pamäťové moduly: • 64kB pamäť programu – interná ROM aj externá ROM • 64kB pamäť vonkajšia – pamäť dát – externá RAM • 4kB vnútorná pamäť programu – interná ROM • 256B vnútorná pamäť dát – interná RAM
Adresový priestor pamäte programu – ROM • interná časť – iROM (vo vnútri jednočipového mikropočítača) • externá časť – eROM (samostatný externý modul) • Príznak EA určí, ktorá časť ROM bude použitá • Ak EA = 1, potom CPU realizuje program z vnútornej ROM, pokiaľ adresa neprekročí hodnotu 0FFFH. Ak je adresa v rozmedzí 1000H až FFFFH, potom CPU realizuje program z externej ROM. • Ak EA = 0, potom všetky inštrukcie alebo príkazy sa vyberajú z externej ROM.
Adresový priestor pamäte dát – RAM • Vnútorná časť – iRAM • Vonkajšia časť – eRAM • Vnútorná pamäť dát (iRAM) sa delí na 2 fyzicky oddelené bloky: • nižších 128 Bytov RAM • vyšších 128 Bytov tvoriacich registre špeciálnych funkcií (SFRs)
Použitie externých pamätí • Pre prácu s dátami v externých pamätiach sa používajú špeciálne funkcie (napr. MOVX, MOVC) • Zároveň sa pri: • Čítaní z externej pamäte ROM aktivuje signál PSEN* (nastaví sa na logickú 0) • Čítaní z externej pamäte RAM aktivuje signál RD* (nastaví sa na logickú 0) • Zapisovaní do externej pamäte RAM aktivuje signál RW* (nastaví sa na logickú 0)
Štruktúra vnútornej RAM • RAM má 256B rozdelených na dve časti • Prvá časť - FREE RAM (vnútorná dátová RAM) - zahŕňa byty od adresy 00H až do 7FH. • Druhá časť – SFR (špeciálne funkčné registre) – zahŕňa byty od adresy 80H až do FFH. FFH SFR špeciálne funkčné registre 128 byteov 80H 7FH FREE RAM 128 byteov 00H
Banky registrov 7FH Bytové adresovanie 30H 2FH 2EH • Banky registrov sú 8 bytové (8 registrov po 1 byte) • Umožňujú využívať rôzne byty ako registre R0 – R7 • To, ktorá banka je používaná určuje stavové slovo programu • Výber banky registrov je uskutočňovaný pomocou definovania obsahu registrov RS0 a RS1 v stavovom slove 2DH 2CH 2BH 2AH 29H 28H 27H 26H 25H 24H 23H 22H 21H 20H Banka 3 1FH 18H Banka 2 17H 10H 0FH Banka 1 08H Banka 0 07H 00H
Bitovo adresovateľná oblasť (zelená) 7FH Bytové adresovanie 30H 2FH 2EH 2DH 2CH • Bity v tejto oblasti môžu byť spracúvané jedným z nasledovných spôsobov: • Priamym adresovaním bytov 20H až 2FH. • Pomocou príkazov pre manipuláciu s bitmi. V tomto type príkazu je každý bit adresovaný priamo a má svoju vlastnú 8-bitovú adresu. Napríklad príkaz SETB 0F nastaví bit s adresou 0F na hodnotu 1. 2BH 2AH 29H 28H 27H 26H 25H 24H 23H 22H 21H 20H Banka 3 1FH 18H Banka 2 17H 10H 0FH Banka 1 08H Banka 0 07H 00H
Bytovo adresovateľná oblasť (modrá) 7FH Bytové adresovanie 30H 2FH 2EH 2DH 2CH • Obyčajná oblasť priamej RAM, ktorá ma 80 bytov a siaha od adresy 30H do 7F • V tejto oblasti už nie je možné pristupovať priamo k jednotlivým bitom, ale len k bytom 2BH 2AH 29H 28H 27H 26H 25H 24H 23H 22H 21H 20H Banka 3 1FH 18H Banka 2 17H 10H 0FH Banka 1 08H Banka 0 07H 00H
SFR • Druhá časť pamäte RAM nazvaná SFR obsahuje byty, ktoré sú v skutočnosti špeciálne registre • Existujú osobitné príkazy pre prácu s takýmito registrami • Každý z týchto registrov má svoju funkciu. • Registre sú usporiadané trocha neobvyklým spôsobom – nie všetky byty SFR sú využité a sú rezervované Intel-om pre ďalší vývoj I8051
326 135 327 CPU 328 371 329 461 330 331 332 811 333 334 335 Výber údajov z pamäte 330 330 461 461 čítaj z pamäte
Zbernice • Sú to paralelne vedené vodiče, po ktorých sa vysiela binárny kód ku rôznym častiam počítača • Podľa toho, aké signály sa vysielajú po zbernici, rozlišujeme zbernice na: • Dátovú – prenášajú sa po nej dáta • Adresovú – prenášajú sa po nej adresy • Riadaciu – prenášajú sa po nej riadiace signály
Dátová zbernica • Po tejto zbernici sa prenášajú dáta k rôznym zariadeniam počítača napríklad medzi pamäťou a procesorom • Podľa šírky zbernice sa počítače delia na 8,16,32,64 bitové • Počítač Intel 8051 má 8 bitovú dátovú zbernicu a preto ho zaradzujeme medzi 8 bitové počítače
Adresová zbernica • Vysielajú sa po nej adresy zariadení a adresy pamäťových buniek v RAM pamäti • V počítači Intel 8051 je 16 bitová adresová zbernica, ktorá dokáže „zaadresovať“ 216=65535 pamäťových buniek
Riadiaca zbernica • Slúži na prenos riadiacich signálov medzi zariadeniami počítača • Vysiela napríklad signály, ktoré sprístupňujú pamäť pre čítanie resp. zapisovanie alebo napr. prenos kódu inštrukcie z pamäte do inštrukčného registra