Creeaza.com - informatii profesionale despre


Cunostinta va deschide lumea intelepciunii - Referate profesionale unice
Acasa » tehnologie » electronica electricitate
Proiect la disciplina sisteme mutlimicroprocesoare

Proiect la disciplina sisteme mutlimicroprocesoare


UNIVERSITATEA DIN ORADEA

Facultatea de Electrotehnica si Informatica

Sectia Automatizari



PROIECT LA DISCIPLINA

SISTEME

MUTLIMICROPROCESOARE

1.Definirea temei si cerintele proiectului

Sa se proiecteze un modul calculator monoplaca SBC cu microprocesor 8086 cu posibilitati de cuplare intr-o configuratie multimicroprocesor cu magistrala multibus si avand urmatoarele caracteristici:

memorie EPROM de 12K cu circuite 2716;

memorie SRAM de 6K cu circuite 2142;

memorie DRAM de 64K cu circuite 2118;

interfata I/O cu SIO Z80.

Tratarea intreruperilor se va realiza folosind circuitul 8259. In cazul circuitelor programabile se vor prezenta secvente de program pentru aducerea acestora in stare operationala. Se cere schema electrica a modulului, realizata cu un program de proiectare asistata pe calculator.

2.Schema bloc a sistemului

In figura 1 se prezinta schema bloc a modulului proiectat. In aceasta schema se prezinta atat circuitele utilizate cat si interconexiunile dintre ele, la nivel de principiu.

Accesarea resurselor locale sau a celor din sistem e comandata de semnalul SYSB/ . Pentru situatia in care acest semnal devine se face acces la resursele locale, in caz contrar accesul se face la resursele externe. Schema bloc a modulului contine urmatoarele elemente:

microprocesorul 8086 care lucreaza la modul maximal;

generatorul de tact 8284 folosit pentru generarea tactului necesar microprocesorului pentru a asigura functionarea circuitelor interne ale acestuia. Circuitul 8284 face divizarea cu trei a frecventei determinate de cuartul ce se conecteaza la el.

latch de adrese 8282, pentru generarea magistralei interne de adrese, realizata prin demultiplexarea semnalelor AD0-AD15 si A16-19.

buffer de date 8286, pentru generarea magistralei interne de date , realizata prin demultiplexarea semnalelor AD0-AD15;

bloc de memorie EPROM 2716;

bloc de memorie SRAM 2142;

bloc de memorie DRAM 2118.

decodificator de adresa 8205 pentru selectarea blocurilor de memorie;

controler de reimprospatare 8282 pentru reimprospatarea blocului de memorie DRAM;

circuit de interfata I/O cu SIO Z80 si un conector de interfete pentru conectarea sistemului cu exteriorul;

bloc de interfata cu magistrala sistem care face legatura dintre modul si sistemul multimicroprocesor.

Blocul este format din

a).   Controler de magistrala 8288;

b).   Buffer de date 8286;

c).   Latch adrese 8282.

controler de intreruperi 8259;

conector de magistrala multibus.

3.Intocmirea repartizarii spatiului de adrese.

Zonele de memorie alocate pentru blocurile de memorie si porturile I/O :

- adresa de start a lui 8086 (dupa un impuls de RESET) este FFFF0h, acceasta adresa va fi acoperita fizic de o memorie EPROM, care va contine secventa de program de pornire a sistemului; conform acestei precizari cei 12K de memorie EPROM au fost plasati in zona FFFFFh-FD000h.

-pentru obtinerea unei zone de memorie locale cat mai compacta si luand in calcul ca prima portiune a spatiului de adrese este dedicata tabelului de pointeri de adresa pentru intreruperi, se aloca zona 0FFFFh-00000h celor 8K de memorie RAM dinamica

-pentru memoria RAM statica se aloca zona de 6K, intre adresele F0000h-F1800h. Harta memoriei blocului de EPROM se completeaza in binar ,iar datorita dispunerii circuitelor pe bancuri, zonele delimitate pe tabel vor corespunde defapt la cate o pereche de circuite: unul care contine adresele pare, iar celalalt adresele impare din cadrul zonei respective.De aceea bitul 0 participa numai la selectia bancului, selectia unei locatii in interiorul capsulei de memorie fiind asigurata de bitii A1-A11,capacitatea unui circuit fiind de 2K. Bitii de agresa ramasi, A12-A19 determina semnalul de selectie comun pentru cele doua capsule care acopera un interval, in tabel fiind trecute adresele de inceput si sfarsit.

Harta memoriilor si a spatiului de intrare/iesire se prezinta in tabelele urmatoare:

EPROM (12 Ko)

FFFFFh

FD000h

SPATIU LIBER

SRAM (6 Ko)

F1800h

F0000h

SPATIU LIBER

DRAM (64 Ko)

0FFFFh

00000h

4. Proiectarea unitatii centrale.

Realizarea acestei etape presupune detalierea schemei bloc a unitati centrale, punandu-se in evidenta numarul de circuite utilizate si modul lor de conectare.

In configuratia multimicroprocesor cum este sistemul multibus, microprocesorul 8086 lucreaza in mod maxim, fapt evidentiat prin legarea la masa a intrarii MN/. In aceasta situatie o parte din pini isi schimba semnificatia, iar microprocesorul nu genereaza direct semnalele de comanda, ci livreaza in fiecare ciclu de magistrala un cuvant de stare controlerului de magistrala, care este raspunzator de decodificarea cuvantului de stare si generarea semnalelor de comanda corespunzatoare. Validarea acestui circuit se face numai cand microprocesorul cere un acces la resursele locale ( SYSB/ =

Demultiplexarea magistralei comune in cea de date si cea de adrese este realizata cu ajutorul latch-urilor de adrese 8282 (3 la numar), respectiv de buffer-ele de date 8286 , circuitele fiind selectate prin semnalele corespunzatoare.

Circuitul 8284 furnizeaza microprocesorului semnalul de tact (CLK) avand frecventa de 5Mhz, prin divizarea cu 3 a frecventei oscilatorului sau intern. De aceea intre pinii x1 si x2 s-a conectat un cristal de cuart, avand frecventa de 15 Mhz. 8284 ofera, de asemenea, microprocesorului si semnalele: READY (caz in care trebuie prevazuta introducerea de stari de asteptare, daca este cazul, cat si sincronizarea, obligatorie, cu operatiile de pe magistrala , cu ajutorul semnalului XACK), RESET (caz in care se necesita conectarea unor componente suplimentare astfel incat initializarea sa se produca la conectarea tensiunii de alimentare sau la apasarea unui buton de initializare, notat in schema cu Reset).

5.1. Circuitul de memorie EPROM (2716)

Circuitul de memorie 2716 are capacitatea de 2Kx8. Asadar, pentru obtinerea celor 12K de care avem nevoie vom utiliza 6 circuite (3 in bancul inferior si 3 in cel superior).

Pentru obtinerea semnalelor de selectie vom intocmi tabelul adreselor limita pe baza hartii realizate in capitolul 3. Acest tabel arata astfel:


A19A18A17A16A15A14A13A12

A11A10A9A8A7A6A5A4A3A2A1

A0

Hexa

Select

1 1 1 1 1 0 1

. . . . . . .

1 1 1 1 1 0 1

0 0 0 0 0 0 0 0 0 0 0

. . . . . . . . .

1 1 1 1 1 1 1 1 1 1

FD000

FDFFF

EPROM1

1 1 1 1 1 1 0

. . . . . . . .

1 1 1 1 1 1 0

0 0 0 0 0 0 0 0 0 0 0

. . . . . . . . .

1 1 1 1 1 1 1 1 1 1

FE000

FEFFF

EPROM2

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

. . . . . . . . .

1 1 1 1 1 1 1 1 1 1

FF000

FFFFF

EPROM3

Liniile de adrese:

A0 - selectie banc

A1 - A11 - selectie in interiorul circuitului de memorie

A12 - A19 - selectie circuit

Sensul transferului este, in cazul acestui tip de memorie, unidirectional, accesul fiind numai pentru citire, deci se poate renunta la semnalele pentru validarea bancurilor: A0 si .

5.2. Circuitul de memorie SRAM (2142)

Circuitul de memorie 2142 are capacitatea de 4Kx1. Pentru a forma 6K de care avem nevoie vom utiliza 12 de circuite (6 in bancul superior si 6 in cel inferior, 3 blocuri de cate 2 circuite).

Conform hartii de memorie realizate in capitolul 3 putem intocmi urmatorul tabel al adreselor limita. Acest tabel arata astfel:

A19A18A17A16A15A14A13A12A11

A10A9A8A7A6A5A4A3A2A1

A0

Hexa

Select

1 1 1 1 0 0 0 0 0

. . . . . . . . .

1 1 1 1 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0

. . . . . . . . . .

1 1 1 1 1 1 1 1 1 1

F0000

F07FF

SRAM

1 1 1 1 0 0 0 0 1

. . . . . . . . .

1 1 1 1 0 0 0 0 1

0 0 0 0 0 0 0 0 0 0

. . . . . . . . . .

1 1 1 1 1 1 1 1 1 1

F0800

F0FFF

SRAM

1 1 1 1 0 0 0 1 0

. . . . . . . . .

1 1 1 1 0 0 0 1 0

0 0 0 0 0 0 0 0 0 0

. . . . . . . . . .

1 1 1 1 1 1 1 1 1 1

F1000

F17FF

SRAM

Semnificatia liniilor de adrese este urmatoarea:

A0 - selectie banc

A1 - A10 - selectie in interiorul circuitului de memorie

A11 - A19 - selectie circuit

5.3.Circuitul de memorie DRAM (2118)

Circuitul de memorie 2118 are capacitatea de 16Kx1. Pentru a forma 64K de care avem nevoie vom utiliza 32 de circuite (16 in bancul superior si 16 in cel inferior, 2 blocuri).

Conform hartii de memorie realizate in capitolul 3 putem intocmi urmatorul tabel al adreselor limita. Acest tabel arata astfel:

A19 A18 A17 A16A15

A14 A13 A12 ........ A1

A0

Hexa

Select

0 0 0 0 0

0 0 0 0 0

0 0 0 ....... 0

1 1 1 ....... 1

00000h

07FFFh

DRAM1

0 0 0 0 1

0 0 0 0 1

0 0 0 ....... 0

1 1 1 ....... 1

00000h

0FFFFh

DRAM2

Acest tip de memorie necesita reimprospatarea periodica a informatiei, astfel incat in schema trebuie adaugat un controler de reimprospatare (8202). Acesta, pe langa reimprospatarea periodica a celulelor de memorie, realizeaza si multiplexarea liniilor de adrese, furnizand circuitelor adresa de rand insotita de semnalul si cea de coloana insotita de semnalul , deoarece circuitul prezinta o structura interioara de tip matriciala.

Semnificatia liniilor de adrese este urmatoarea:

A0 - selectie banc

A1 - A12 - selectie in interiorul circuitului de memorie

A13 - A19 - selectie circuit

Semnalul de selectie a blocului DRAM provenit de la decodificatorul 8205 se va aplica intrarii a controlerului 8202 si va fi folosit pentru deschiderea buffer-elor 8282 in cazul unei comenzi de citire. Circuitul furnizeaza si un semnal de confirmare a transferului care este conectat prin intermediul unui inversor la intrarea RDY1 a generatorului de tact 8284.

Pentru a mentine datele citite din memorie pe magistrala un timp suficient pentru a fi preluate corect de microprocesor, am intercalat intre iesirile circuitelor de memorie si magistrala doua latch-uri pentru date (8282). Inscrierea datelor in latch-uri se face cu ajutorul semnalului , iar validarea iesirii cu si semnalul de selectie a blocului de circuite.

6. Proiectarea unitatilor de INTRARE /IESIRE

Modulul are acces la resurse periferce globale doar prin metoda Memory Mapped I/O. Adresele circuitelor periferice locale sunt:

SIO Z80 32h,34h,36h,38h SERIAL INPUT OUTPUT CONTROLLER

8259 64h,66h INTRERUPT CONTROLLER

Decodificarea bitilor de adresa pentru generarea semnalelor necesare selectiei corespunzatoare a circuitelor, este prezentat in urmatorul tabel:

Pentru circuitul SIO Z80:

A7 A6 A5 A4 A3 A2 A1 A0 Adrese

0 0 1 1 0 0 1 0 32h

0 0 1 1 0 1 0 0 34h

0 0 1 1 1 1 1 0 36h

0 0 1 1 1 0 0 0 38h

Pentru controller-ul 8259A:

A7 A6 A5 A4 A3 A2 A1 A0 Adrese

0 1 1 0 0 1 0 0 64h

0 1 1 0 0 1 1 0 66h

Controller-ul de intreruperi 8259A este conectat la microprocesor sub forma unui dispozitiv de intrare/iesire. Pentru ca vectorul de intreruperi sa fie depus pe D0-D7, controlerul va fi plasat la adresele pare.

7. Programarea circuitelor periferice

Secventa de program pentru circuitul SIO Z80 este:

mov al,32h

out 36h,al

mov al,00h

out 36h,al

Programarea controller-ului de intreruperi 8259A se realizeaza prin trimiterea consecutiva a 3 cuvinte de comanda ( ICW1, ICW2, ICW3 ).

Secventa de programare este:

mov al,1Bh

out 64h,al

mov al,ICW2

out 66h,al

mov al,01h

out 66h,al


8. Blocul de interfata cu magistrala MULTIBUS

Acest bloc contine arbitrul de magistrala (8289), controler magistrala (8288), latchuri (8287) si buffer de date (8283)

Circuitele 8283 si 8287 realizate cu inversoare sunt utilizate pentru a asigura compatibilitatea semnalelor interne cu celor de pe magistrala MULTIBUS. Cererea la magistrala MULTIBUS este semnalizata cand semnalul =1. Arbitrul de magistrala si controlerul de magistrala decodifica cuvantul de stare furnizat de mprocesor si genereaza semnalele de comanda pe magistrala MULTIBUS.

7.Elaborarea schemei electrice finale de ansamblu

Schema electrica finala s-a obtinut prin imbinarea intr-o singura schema a parsilor elaborate in etapele anterioare, detailiate la nivel de circuit, prezentand conectarile tuturor pinilor circuitelor.

schema electrica de ansamblu a fost proiectata cu ajutorul programului ORCAD.





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.