Sunteți pe pagina 1din 25

Cap. 2.

Calculatoare de proces
Partea I-a

4/15/19 12:19:24 PM prof .Margineanu Ioan 1


2. Calculatoare de proces

2.1. Introducere
2.2. Portul serial
2.3. Module de I/O
2.3.1. Magistralele calculatoarelor de proces
2.3.2. Structura de conectare la magistrală a modulelor de intrări
2.3.3. Structura de conectare la magistrală a modulelor de ieşiri
2.3.4. Structuri hardware ale modulelor care permit transferul pe
întreruperi
2.3.5. Structuri hardware ale modulelor care permit transferul DMA

4/15/19 12:19:24 PM prof .Margineanu Ioan 2


Introducere

4/15/19 12:19:24 PM prof .Margineanu Ioan 3


Introducere

Proces

4/15/19 12:19:29 PM prof .Margineanu Ioan 4


Portul serial
Transmisia serială completă

Transmisia serială asincronă

4/15/19 12:19:30 PM prof .Margineanu Ioan 5


Portul serial
Detectarea erorilor
Într-o reţea P2P din care face parte portul serial datele pot fi corupte. Pentru o comunicaţie
sigură erorile trebuie detectate şi corectate.
Detectarea erorilor utilizează conceptul de redundanţă, care înseamnă adăugarea de biţi
suplimentari pentru detectarea erorilor la destinaţie. În loc de a repeta mesajul se adaugă un
grup de biţi la sfârşitul mesajului care permit stabilirea unei erori de transmisie şi în felul
acesta să ceară, numai în acest caz, retransmiterea mesajului. Aceşti biţi sunt eliminaţi din
mesaj imediat ce s-a testat acurateţea mesajului.
La portul serial este realizat o detectare VRC (Vertical Redundancy Check ) care se mai
numeşte şi detectarea parităţii. (Mai există verificări LRC, CRC şi Hamming).
În cadrul VRC se utilizează un singur bit care se adaugă la sfârşitul mesajului astfel încât
numărul de biţi egali cu 1, inclusiv bitul de paritate, să fie par (paritate pară) sau ca numărul
biţilor egali cu 1 să fie impar (paritate impară).

4/15/19 12:19:35 PM prof .Margineanu Ioan 6


Portul serial

Despre paritate Paritate: pară (even) şi


paritate impară (odd)

Transmisie cu paritate pară A → B


A doreşte să se transmită: 10111010
A calculează bitului de paritate: 1^0^1^1^1^0^1^0=1
A adaugă bitul de paritate: 101110101
B recepţionează: 101110101
B calculează paritatea: : 1^0^1^1^1^0^1^0^1=0
B raportează transmisia corectă
Transmisie cu paritate impară A → B
A doreşte să se transmită: 10111010
A calculează bitului de paritate: 1^0^1^1^1^0^1^0 =0
A adaugă bitul de paritate: 101110100
B recepţionează: 101110100
B calculează paritatea: 1^0^1^1^1^0^1^0^0=0
B raportează transmisia corectă

Circuit UART (Universal Asynchronous Receiver/Transmitter).


8250 Viteză 19.5 KBps
16550 Memorie 16ko Viteză 115 kBps

4/15/19 12:19:36 PM prof .Margineanu Ioan 7


Portul serial

Codificarea biţilor

Codificarea NRZ

Codificarea Manchester bifazată

Se asociază -12 V→1 şi +12 V→0


Fiecare perioadă de bit este împarţită în două părţi egale
La mijlocul timpului de bit se realizează tranziţia la polaritatea
opusă

Codificarea Manchester diferenţială

Un bit 1 este indicat prin absenţa tranziţiei la începutul


perioadei de bit, iar un bit 0 este indicat prin prezenţa
tranziţiei la începutul perioadei de bit.
La mijlocul timpului de bit se realizează tranziţia la
polaritatea opusă

4/15/19 12:19:36 PM prof .Margineanu Ioan 8


Portul serial
Dezavantajele portului serial
 Lipsa unui mecanism de control al fluxului de date. Acesta nu este un dezavantaj major
deoarece controlul fluxului de date este asigurat mult mai bine prin software.
 Limitări de distanţă. Distanţa maximă este de 15 m. În principal aceasta este limitată de
valoarea maximă a capacităţii de cca. 2500 pF.
 Limitări de viteză. Vitezele nu depăşesc valoarea de 115 kbps (max. 460 kbps ). ???
 Metoda de împământare. Toate semnalele sunt raportate la masa reprezentată de pinul 7 şi
există diferenţe de potenţial între cele două capete ale cablului. Aceasta poate duce la
posibilitatea interpretării greşite a semnalelor.
 Limitări a numărului de parteneri. Doar două sisteme pot cuplate prin intermediul portului
serial.
 Imposibilitatea de control direct al circuitelor TTL şi CMOS.

Realizarea unor aplicaţii de control şi monitorizare cu mai mulţi parteneri, deci


realizarea unei reţele industriale bazate pe portul serial, necesită ca portul să fie
adaptat atât ca nivel de tensiune cât şi pentru a putea controla fluxul de date pe
reţea. Un astfel de adaptor conţine două părţi distincte: un adaptor de nivele şi o
structură de control a vehiculării informaţiei pe linie.

4/15/19 12:19:38 PM prof .Margineanu Ioan 9


Portul serial
Circuite de adaptare
Control hardware ST 485

Adaptare de nivel

Full-duplex
Reţea RS-485 Half-duplex

4/15/19 12:19:38 PM prof .Margineanu Ioan 10


Portul serial

Studiu de caz
Rezistenţa de eliminare a reflexiilor Deoarece UART eşantionează datele, aşa cum am arătat mai sus, în
mijlocul bit, este important ca nivelul semnalului fi bun în acel moment.
2l
v  0.66c; l  1200m; t   12.2 s; 3reflexii  36.6 s Tbit  104s la 9600Bps
v
Rezistenţa de bias

În scopul de a menţine starea de tensiune corespunzătoare stării inactive,


rezistente numite rezistenţe de polarizare (bias) trebuie introduse la capete
pentru a forţa linia de date în starea inactiv.

Valoarea rezistoarelor bias depinde de sursa folosita şi numărul de


noduri în sistem. Scopul este de a genera un curent de bias în reţea
pentru a menţine un minim de 200 mV între liniile B şi A de date.

Rt R
Rt  120 Rn  12k n  10 Rnod  paralel n  57
2 n
U  200mV ib  3.5mA  R  1428 RB  R  Rn  1371

4/15/19 12:19:43 PM prof .Margineanu Ioan 11


Portul serial - Controlul fluxului de date pe magistrala

4/15/19 12:19:45 PM prof .Margineanu Ioan 12


Magistralele calculatoarelor de proces

carduri sau module

Conector si soclu DIN 41612

Edge Card Edge Connector

4/15/19 12:19:51 PM prof .Margineanu Ioan 13


Magistralele calculatoarelor de proces

Principalele tipuri de magistrale I/O sunt: ISA ( Industrial Standard


Architecture), MCA (Micro Channel Architecture), EISA (Extended ISA), VL-
Bus (VESA Local Bus, PCI (Peripheral Component Interconnect), PC-Card
(fosta PCMCIA: Personal Computer Memory Card Interface Adapter ), VME
(Versa Module European)

Se deosebesc în primul rând prin volumul datelor transferate simultan şi prin


viteza de transfer.  Cum se selectează (adresa)
Configurarea modulelor de proces  Dacă acceptă sau nu întreruperi (adresa de întrerupere)
 Dacă acceptă DMA

Modulele calculatoarelor de proces se selectează uzual în spaţiul de adrese I/O al


PC.
Selecţia modulului se poate face la o adresă fixă (cu porţi logice sau circuite
integrate) sau la o adresă selectabilă cu switch-uri DIP sau jumperi.

Procesul de configurare este destul de dificil şi necesită multă experienţă tehnică.


Setările incorecte pot face ca întregul sistem să nu funcţioneze. Pentru setări
incorecte ale întreruperilor (IRQ) sau a accesului direct la memorie (DMA) sistemul
poate funcţiona corect până se realizează o cerere de întrerupere sau un acces
direct la memorie, când acesta se blochează şi trebuie resetat.

4/15/19 12:19:55 PM prof .Margineanu Ioan 14


Magistralele calculatoarelor de proces

Atât în informatica generală cât şi în cea aplicată a existat o mare presiune pentru
automatizarea procesului de configurare, pentru a scuti utilizatorul sistemului de
complexitatea setării manuale.

I S-au utilizat mai multe tehnici cum ar fi utilizarea unui hardware suplimentar pentru a
permite o configurare software. Modulele erau însoţite de un program de configurare.
Aceasta a permis reducerea numărului de jumperi şi DIP dar nu a rezolvat complet
problema.

II Începând cu anul 1993 Intel şi Microsoft au introdus o nouă versiune de ISA,


numită Plug and Play (PnP) ISA. Această versiune permite sistemului de operare
configurarea modulelor de extensie în mod automat, astfel încât utilizatorii nu
trebuie să utilizeze switch-uri DIP sau jump-eri.

4/15/19 12:19:55 PM prof .Margineanu Ioan 15


Magistralele calculatoarelor de proces
Detectarea automată, configurarea hardware şi software (PnP) nu este o sarcină
simplă. Pentru a realiza acest lucru este necesară o cooperare între hardware şi mai
multe componente software. Cei patru parteneri care trebuie să coopereze sunt:

1. Hardware-ul sistemului. Prin chipset*-ul sistemului şi prin controlerele de magistrală,


hardware-ul trebuie să fie capabil să manipuleze module PnP.

2. Hardware-ul modulelor. Modulele adăugate trebuie să fie PnP compatibile. Aceasta


înseamnă că acestea să se identifice atunci când sunt solicitate şi să fie capabile să
accepte atribuirile de resurse din sistem atunci când sunt făcute.

3. BIOS-ul sistemului. Rolul BIOS în PnP este esenţial. Rutinele sale execută o colectare
a informaţiilor cu privire la diferitele module determinând ce resurse sunt folosite de
acestea. El comunică aceste informaţii sistemului de operare pe care acesta le
foloseşte pentru configurarea driverelor sale şi altor aplicaţii software pentru a face ca
modulele să funcţioneze corect.

4. Sistemul de operare. Acesta trebuie să fie proiectat pentru a lucra cu BIOS-ul, deci
indirect cu hardware-ul. Acesta stabileşte ce software de nivel jos (driverele de nivel
modul) este necesar ca modulul să poată fi utilizat de aplicaţii. De asemenea
comunică cu utilizatorul schimbarea configurării.

* Chipset-ul se referă la un grup de circuite integrate distincte care lucrează împreună


şi care este vândut ca u singur produs.

4/15/19 12:19:55 PM prof .Margineanu Ioan 16


Magistralele calculatoarelor de proces

Cele mai multe lucruri necesare pentru a face PnP sunt realizate de BIOS în cursul procesului
de pornire al sistemului. Principalii paşi pe care îi execută BIOS-ul în procesul de pornire
sunt:

1. Crearea unui tabel cu întreruperile disponibile, canalele DMA şi adresele I/O.

2. Căutarea şi identificarea modulelor PnP.

3. Încărcarea ultimei configuraţii ESCD (Extended System Configuration Data) stocată în memoria
nevolatilă.

4. Compararea configuraţiei curente cu cea încărcată.

5. Dacă configuraţia nu este identică cu cea veche se realizează o reconfigurare.

4/15/19 12:19:55 PM prof .Margineanu Ioan 17


Structura de conectare la bus (ISA)

Status Interrupt Mode


Data

4/15/19 12:19:55 PM prof .Margineanu Ioan 18


Structura de conectare la bus. Studiu de caz I

GETCHAR: IN AL, ASTATUS ; Testarea


; stării modulului
AND AL, MASCA ; Punerea în
; evidenţă a
; bitului de stare
JZ GETCHAR ; Sfârşitul buclei de
; aşteptare
IN AL, ADATA ; Preluarea datei
RET

ADPER=1;
IN Adresa pe magistrala de adrese;
WRITE=0;
4/15/19 12:19:55 PM prof .Margineanu Ioan 19
Structura de conectare la bus. Studiu de caz II
LOOP: IN AL, ASTATUS ; Testarea stării modulului
AND AL, MASCA ; Punerea în evidenţă a
; bitului de stare
JZ LOOP ; Sfârşitul buclei de
; aşteptare
POP AX ; Refacerea informaţiei
OUT ADATA, AL ; Transmiterea datei

ADPER=1;
OUT Adresa pe magistrala de adrese;
WRITE=1;
4/15/19 12:20:02 PM prof .Margineanu Ioan 20
Structuri hardware ale modulelor pentru realizarea transferului pe întreruperi

Nivelul procesor

4/15/19 12:20:09 PM prof .Margineanu Ioan 21


La nivelul port

4/15/19 12:20:19 PM prof .Margineanu Ioan 22


Arbitrare descentralizată

Pin de intrare Pin de ieşire


4/15/19 12:20:23 PM prof .Margineanu Ioan 23
Arbitrare centralizată

4/15/19 12:20:29 PM prof .Margineanu Ioan 24


Structuri hardware ale modulelor pentru realizarea transferului de tip DMA

4/15/19 12:20:29 PM prof .Margineanu Ioan 25

S-ar putea să vă placă și