proect i8088

Download Proect i8088

Post on 28-Nov-2015

26 views

Category:

Documents

3 download

Embed Size (px)

TRANSCRIPT

Proiectarea unui Sistem pe Baza Microprocesorului I8086

Introducere

n cadrul proiectului dat vom proiecta un dispozitiv pe baza microprocesorului

Intel i8088 sau analogul sau rus K1810BM88.

Dispozitivul reprezint un bloc functional pe baz de microprocesor, cu memorie RAM/ROM si periferie - o tastier cu 64 de taste. Scopul principal al proiectrii este de crea o cale de conexiune ntre tastatur i microprocesor, necesar evident pentru introducerea a diferitor date i comenzi propuse procesorului pentru prelucrare.

La formarea acestei conexiuni vor participa diferite microcircuite care vor fi descrii n cadrul proiectului .

In acest proect vom incepe cu analiza schemei bloc a calculatorului cu arhitectur deschis, care st la baza tuturor sistemelor pe baz de microprocesor necesare pentru introducerea, prelucrarea, obinerea i vizualizarea datelor.

Ideea arhitecturii deschise a calculatorului const n existena unor canale standarte de transmitere a informaiei i de cuplare a blocurilor calculatorului la aceste canale dup necesitate. Structura este standart i permite creterea ei (adugarea blocurilor noi) fr schimbarea configuraiei. Dup acest principiu de arhitectur sunt realizate practic toate calculatoarele contemporane. n calculatorul contemporan (fig.1) exist trei tipuri de magistrale. O magistral conine un anumit numr de bii.

Fig.1. Schema bloc simplificata a sistemului propus spre proectare in baza i8088 cu 3Kb RAMStracutura sistemului si functiile unitatilor structurale:

MA - Magistrala de adrese prin ea se transmit adresele celulelor de memorie i dispozitivelor externe. Magistrala de adrese este unidirecional, adic adresele se transmit ntr-o singur direcie.

MD - Magistrala de date servete pentru transmiterea informaiei prelucrate (datelor). De regul MD este bidirecional.

MC - Magistrala de comand (MC) conine semnale standarte de comand ale sistemului.

Coninutul MA, MD, MC au ieiri la interfaa de sistem. La interfa putem conecta diferite blocuri. Interfaa este nzestrat cu cuplele pentru extensii.

Blocul 1. Procesorul - efectueaz operaii asupra datelor i dirijeaz cu procesul de prelucrare a datelor, cu celelalte uniti a calculatorului i cu dispozitivele externe. Toate datele se prelucreaz n procesor, care ndeplinete funcia de dirijare. Procesorul determin posibilitile calculatorului: viteza de lucru, capacitatea magistralei de date, volumul memoriei operative, posibilitile i tipurile unitilor de intrare ieire, tipurile de operaii asupra datelor prin setul de instruciuni, regimurile de lucru ale calculatorului. n procesul funcionrii calculatorului procesorul ndeplinete urmtoarele operaii:

formeaz adresele de memorie a celulelor;

primete instruciunea urmtoare;

decodific instruciunea;

organizeaz ciclul de executare a instruciunii;

efectueaz operaii de citire i nscriere n memorie;

efectueaz schimbul de informaii cu dispozitivele externe;

recepioneaz i trateaz semnalele de ntrerupere i acces direct la memorie de la dispozitivele externe.

Procesorul conine dou module :

ALU (aritmetical-logical unit) unitatea aritmetico-logic, care servete pentru efectuarea operaiilor logice, aritmetice.

CU (command unit) unitatea de comand, care este destinat pentru producerea semnalelor de comand.

Blocul 2. unitatea de intrare-ieire (Unit I/O) conine dispozitive externe i controlere pentru deservirea lor. Destinaia este de a efectua schimbul de informaie dintre calculator i utilizator. Controlerele adapteaz dispozitivele externe la formatul semnalelor interne ale calculatorului.

Blocul 3. memoria intern, ce conine ROM (memoria fix) i RAM (memoria operativ), n care se pstreaz datele i programele utilizatorului. ROM servete pentru pstrarea programelor de iniializare i testare a calculatorului si coduri de procram fixe. Memoria intern este cuplat la MA, MD, MC.

Ulterior ne vom opri detaliat la fiecare componenta structurala a sistemului in bazaunor module/circuite functionale. La anexa proiectul va fi insotit de o schema principala care va prezenta sistemul functional pentru asamblare.

Capitolul 1.

1.1 Descrierea arhitecturii Microprocesorului Intel 8088.

Microprocesoarele K1810BM88( Intel 8088 ) sunt create conform tehnologiei MOS, tensiunea de alimentare a acestuia fiind de + 5V , curentul de alimentare prevalnd ntre valorile 300340mA.

a) Intel 8088 b) K1810BM88

Fig.3 Aspectul carcasei pentru microprocesoarele studiate

Structura microprocesorului K1810BM88 conine dou dispozitive funcionale independente: dispozitivul de prelucrare i dispozitivul de joncionare. Dispozitivul de prelucrare (ALU, RDG, RAM superoperativ, registrul fanioanelor) ndeplinete operaii asupra datelor i determin adresele funcionale din memorie. Dispozitivul primete datele sau adresele de la magistral intern, le prelucreaz, iar rezultatul l pstreaz n RAM superoperativ sau pe magistrala intern. Dispozitivul de joncionare (sumatorul de adrese SMA, registrele segmentelor i IP RAM superoperativ, registrele tampon, irul de instruciuni IQ i interfaa magistralei), determin adresele fizice a memoriei, alege i aeaz n irul instruciunile, realizeaz schimbul de date ntre magistral intern i cea extern, formeaz semnalele la ieirile magistralei externe.Ambele dispozitive lucreaz paralel, datorit acestui fapt alegerea i realizarea instruciunilor este corelat n timp. Corelarea nu se realizeaz dac irul este ncrcat, se realizeaz instruciunile sau este cererea pentru schimb de date de la magistrala extern. Lungimea irului instruciunilor pentru K1810BM88 este de 4B.

Modulul de operare const din unitatea aritmetico-logic (ALU), registre de fanioane i un set de registre de uz general.Registrul de fanioane conine informaia suplimentar despre efectuarea operaiilor. Destinaia lor este:

Fig.4. Structura microprocesorului.Cary fanion de transport sau de suprancrcare,(dac c=1atunci avem suprancrcare (9), dac c=0 atunci este normal(8)).

Zero fanionul rezultatului zero, dac z=1 atunci R=0, z=0 atunci R(0.

Parity fanionul de paritate, dac p=1 ( rezultatul conine un numr par de uniti.

Sing fanionul semnului, dac S=1 ( rezultatul e negativ, dac S=0 ( rezultatul e pozitiv.

HC(halfcary)fanionul semitransferului,dac HC=1,are loc transferul din bitul 4 n 5.

Registrele de uz general snt registre de 8 bii i servesc ca memorie superoperativ (cu vitez mare), pentru pstrarea datelor n microprocesor. Opt registre la numr: W i Z neadresabile; B, C; D, E; H, L pot fi adresate cu ajutorul instruciunilor ca fiind perechi de registre i avnd 16 bii.

Tot n blocul de registre avem dou registre specializate. Contorul de program (PC) registru de 16 bii, servete pentru pstrarea adresei instruciunii curente i pentru formarea adresei urmtoare. La nceputul executrii instruciunii, adresa din PC se transmite prin MA n memorie, asigurnd citirea instruciunii curente. La sfritul executrii ei n PC se formeaz adresa instruciunii urmtoare prin incrimentare. Astfel se asigur executarea instruciunilor una dup alta.

Indicatorul memoriei stive SP (stack pointer) registru de 16 bii, conine adresa celulei de vrf a memoriei stive. La operaii de nscriere adresa se implimenteaz automat, la citire se decrementeaz (se micoreaz cu 1).

n modulul de comand intr:

- registrul instruciunii registru de 8 bii, servete pentru pstrarea codului de instruciune n timpul executrii ei.

- unitatea de comand (UC) servete pentru decodificarea instruciunii i organizarea ciclului de executare a ei. La executarea instruciunii curente CPU formeaz adresa celulei de memorie i o transmite prin MA. Concomitent prin MC se transmite comanda MRD care asigur transmiterea instruciunii prin MD n CPU.

n procesul executrii instruciunii CPU poate efectua schimbul de date cu memoria i unitatea IO. n acest caz el formeaz adresele i semnalele de comand necesare. Dup executarea unei instruciuni n mod automat se ncepe executarea instruciunii urmtoare. UC produce i primete urmtoarele semnale de comand: DBIN citirea datelor; WR nscrierea datelor n MD; INT i INTA tratarea ntreruperilor; HOLD i HLDA semnale pentru tratarea regimului de acces direct la memorie; WAIT i READY semnale pentru organizarea lucrului cu dispozitivele lente; SYNC semnal destinat pentru controlerul d sistem, devine activ atunci cnd prin MD se transmite cuvntul de comand; 1 i 2 semnale de ceas; RESET semnal de iniializare oprete executarea instruciunii anuleaz toate semnalele active, n PC nscrie adresa de nceput i MP ncepe executarea programului de la aceast adres.

n regim maximal MP are magistral de stare de trei bii, codul la ieirea creia se utilizeaz pentru dirijarea cu interfaa i dispozitivele de memorie i externe prin itermediul controlerului de magistral. Celelalte ieiri se utilizeaz pentru sincronizarea coprocesorului (QS1,0 i RQ/E1,0) i blocarea accesului la magistrala de sistem (LOCK).

Executarea instruciunilor se face pn la primirea instruciunii HALT. Dup primirea ei MP trece n stare de oprire.

Fiecare segment are un volum de 64kB i se adreseaz cu o adres de 16 bii locul segmentului n volumul de memorie se indic cu o adres de 20 de bii, care const din adresa segmentului din 16 bii i 4 bii inferiori. Segmentele se situeaz cu pasul 24 =16 baii, n orice loc al memoriei. Cuvntul n memorie se situeaz n ordinea crescnd a numrului baitului, baitul inferior corespunde adresei inferioare i invers.

Spaiul adreselor dispozitivelor externe are o organizare logic 64Kx8 baii, nesegmentat