Documente Academic
Documente Profesional
Documente Cultură
1. Obiectivul lucrării
2. Introducere teoretică
Transmisiunea serială este o metodă populară de a transmite informaţie între
un calculator şi un dispozitiv periferic (un instrument programabil) sau către alt
calculator. Biţii se transmit pe rând, pe o singură linie de comunicaţie. Acest tip de
transmisiune este folosit atunci când ratele de transfer pot să nu fie ridicate sau când
transferul se face pe distanțe lungi.
Comunicaţia serială s-a impus datorită faptului că cele mai multe calculatoare
au un port serial pe care pot comunica, astfel încât nu este nevoie de niciun alt
dispozitiv hardware (altul decât un cablu) pentru a conecta un periferic la calculator.
Mark este voltajul negativ, iar Space este voltajul pozitiv. Semnalele mai mari
de 3 V semnifică transmiterea unui bit de 0, în timp ce semnalele mai mici de –3 V
semnifică transmiterea unui bit de 1. Semnalul „baleiază” între +12 V şi –12 V, „zona
moartă” dintre +3 V şi –3 V având rolul de a absorbi zgomotul liniei.
Biţii sunt transmişi în logică inversată: adică, 1 pentru voltaj negativ şi 0
pentru voltaj pozitiv, şi în ordine inversă. Ordinea de transmisiune este de la LSB
(Least Significant Bit) către MSB (Most Significant Bit). Pentru a interpreta biţii de
date dintr-un cadru, aceştia trebuie citiţi de la dreapta la stânga şi trebuie considerat 1
pentru voltaj negativ şi 0 pentru voltaj pozitiv.
Porturile seriale se bazează pe un controler special, denumit UART (Universal
Asynchronous Receiver/Transmitter), pentru a efectua transmisiunea. UART-ul preia
informaţia în format paralel de la procesor şi o serializează cu scopul de a o transmite
pe portul serial. UART-ul este un dispozitiv folosit pentru a purta cea mai mare parte
a protocolului transmisiunii seriale.
caractere (0–127) ale setului de caractere ASCII. Fiecare dintre aceste caractere este
reprezentat prin 7 biţi. Setarea cu 8 biţi pe caracter este folosită pentru a transmite
setul extins de caractere ASCII (128–255). Fiecare dintre aceste caractere poate fi
reprezentat folosindu-se 8 biţi.
Un bit de paritate opţional urmează biţii de date în cadru. Bitul de paritate,
dacă este prezent, urmează, de asemenea, logica inversă: 1 pentru voltaje negative şi 0
pentru voltaje pozitive. Acest bit a fost inclus ca o metodă de detecţie a erorilor. Se
specifică la început dacă paritatea este pară sau impară. Bitul de paritate poate avea
una dintre specificaţiile următoare:
None (fără paritate): specifică faptul că sistemul local nu trebuie să creeze
un bit de paritate pentru fiecare caracter transmis. Indică, de asemenea,
faptul că sistemul receptor nu verifică paritatea, dacă ea nu a fost setată de
sistemul care a transmis informaţia.
Even (par): specifică faptul ca numărul total de biţi de 1 dintr-un singur
caracter, împreună cu bitul de paritate, trebuie să fie un număr par. Aceasta
înseamnă că dacă numărul biţilor de 1 din cuvânt este impar valoarea
bitului de paritate va fi 1. Altfel, dacă numărul biţilor de 1 este deja par, el
va lua valoarea 0.
Exemplu. Dacă se doreşte transmiterea literei a – 1100001 în binar – va
produce adăugarea după biţii corespunzători lui a un 1, adică, 11000011, unde ultima
cifră scrisă cu bold este informaţia de paritate. Similar, la transmiterea lui A –
1000001 în binar – bitul de paritate va fi 0, păstrând astfel numărul total al biţilor de 1
ca fiind par, adică, 10000010.
Odd (impar): funcţionează similar variantei pare, cu excepţia că numărul
total de 1, împreună cu bitul de paritate, trebuie să fie impar.
Bit filling (umplere cu biţi): specifică faptul că bitul de paritate va fi
întotdeauna 0. Termenul se explică prin faptul că această metodă se
foloseşte în transmisiunile de cuvinte de 7 biţi către un dispozitiv care
acceptă numai cuvinte de 8 biţi (cei 7 biţi + bitul de Space).
Ultima parte a cadrului constă din bitul sau biţii de stop. Pot exista 1 sau 2
biţi de stop. Aceşti biţi sunt întotdeauna reprezentaţi de o tensiune negativă. Dacă nu
se mai transmit alte caractere, linia rămâne cu acest semnal: condiţia de Mark.
Transmisia următorului caracter, dacă acesta există, începe cu un bit de start pozitiv
(Space). Bitul de stop este forţat să fie un bit Idle, pentru a câştiga timp în procesarea
informaţiei primite.
Un semnal digital este un semnal discontinuu, care îşi schimbă starea în paşi
discreţi. O formă populară de codare digitală este cea binară, adică, cea în care există
două stări posibile între care semnalul alternează. Stările diferite de tensiune sunt
reprezentate prin voltaje diferite. Codarea se referă la sursa de informație care emite.
Non Return to Zero (NRZ) reprezintă un tip de codare în care biţii de 0 şi de 1
sunt codaţi fiecare cu niveluri diferite de tensiune (vezi figura 5), fără a trece prin 0
între doi biți identici. Durata de transmitere a unui bit este mereu aceeaşi. Nivelul
ridicat de tensiune reprezintă un 1, în timp ce nivelul scăzut reprezintă un 0.
Există posibilitatea pierderii sincronizării pentru şiruri lungi de 0 sau de 1.
Codarea Return to Zero (RZ) foloseşte doar jumătate din durata transmiterii
unui bit pentru a marca biţii de 1 (vezi figura 6). După această perioadă egală cu
jumătatea transmiterii unui bit, semnalul „se întoarce” la nivelul de 0.
Pierderi ale sincronizării pot apărea atunci când se transmit şiruri lungi de 0.
Fig. 6. Codările RZ (Return to Zero) – mijloc și NRZI (Non Return to Zero Invert) – jos.
3. Descrierea aplicaţiei
Fig. 15. Ilustrarea calculului parametrilor la formarea cadrelor pe baza setărilor făcute de utilizator.
96 Arhitectura sistemelor de calcul – lucrări practice
4. Desfăşurarea lucrării
3. Transmisiunea asincronă
3.1. Se introduce secvenţa de text în câmpul dedicat (cel mult 5 caractere).
3.2. Se apăsa butonul Generează.
3.3. Se urmăreşte şi se desenează semnalul afişat, notându-se valorile alese.
3.4. Se reia procedeul, alegându-se valori diferite pentru viteza
transmisiunii, tipul de paritate şi numărul biţilor de stop.
4. Parametrii transmisiunii seriale
4.1. Se alege viteza transmisiunii.
4.2. Se alege tipul de paritate (pară sau impară).
4.3. Se alege numărul biților de stop (1 sau 2).
4.4. Se introduce secvența de text în câmpul dedicat (cel mult 5 caractere).
4.5. Se apasă butonul Generează.
4.6. Se urmarește și se desenează semnalul afișat, notându-se valorile
alese și valorile calculate.
4.7. Se reia procedeul, alegându-se valori diferite pentru viteza
transmisiunii, tipul de paritate și numărul biților de stop.
5. Compresia MNP5
5.1. Se introduce secvenţa de text în câmpul dedicat (cel mult 12 caractere).
5.2. Se apăsa butonul Generează.
5.3. Se notează forma detaliată a compresiei MNP5 pentru textul ales şi
valoarea ratei de compresie obţinute. Se recomandă ca textul
L4a: Studiul tehnicilor de transmisiune serială 99
5. Întrebări
14. Indicați o secvență de text pentru care raportul de compresie MNP5 este
supraunitar și o altă secvență pentru care raportul de compresie MNP5 este subunitar.
În ce condiții compresia MNP5 este eficientă?
15. Efectuaţi pe hârtie o codare NRZI pentru secvenţa de biţi 0110010101111
00001100101 şi verificaţi rezultatul obţinut cu cel furnizat de către aplicaţie.
16. Repetați punctul anterior pentru codările NRZ și RZ.
17. Desenaţi tipurile de modulaţii ASK şi FSK pentru secvenţa de biţi
011001010111100001100101.
18. Desenaţi tipurile de modulaţii BPSK şi QPSK pentru secvenţa binară
anterioară.
68 110000100 D 99 110100011 c
98 110100010 b