Sunteți pe pagina 1din 13

Circuite pentru reţea

Ethernet

Petre OGRUŢAN, decembrie 2010


Circuitul interfaţă de
reţea RTL 8019
RTL 8019 este un controller de reţea Ethernet care oferă o soluţie simplă şi performantă
aplicaţiilor cu transfer de date prin reţea. Circuitul permite transfer full duplex pe UTP (şi
dacă plăcile de reţea sunt cuplate între ele printr-un switch adecvat). Circuitul suportă 3
nivele de economie de energie: mod adormit, mod oprit (Power Down) dar cu tactul în
funcţiune şi mod oprit cu tactul oprit.
La RTL 8019 poate fi conectată o memorie ROM numită BROM (Boot ROM) din care se poate
încărca un set de date care vor aduce sistemul de operare de pe server, caz în care staţia
conectată nu are nevoie de hard disc (aplicaţie importantă la sistemele care comandă
automatizări). Memoria ROM poate fi de 16K, 32K sau 64K şi poate fi citită de sistem prin
interfaţa ISA, începând de la o adresă configurabilă. După incărcarea sistemului de operare
memoria BROM poate fi invalidată pentru a elibera zona de adrese ocupată.
Pentru a mări viteza de transfer, cadrele recepţionate sau cele de emis pot fi stocate într-o
memorie locală SRAM cuplată la RTL 8019. Se pot conecta până la 32Kocteţi SRAM.
Există variante de RTL 8019 cu memorie SRAM integrată.
Configuraţia şi parametrii de iniţializare pot fi stocaţi într-o memorie serială EEPROM cuplată
la circuit. Această memorie (de tip 9346) poate fi programată în circuitul cu RTL 8019.
Programarea circuitului se
Schema bloc
Interfaţa cu Serializare/ Interfaţa cu mediul de 10BaseT
realizează cu un set de registre transmisie
magistrala deserializare
citite /scrise de procesor la paralelă Codare/ decodare
adrese de I/O. Aceste adrese Introducere/
AUI
sunt relative la o adresă de recunoaştere adresă
proprie
bază I/O care poate fi
selectată la iniţializare (una
din 16 adrese posibile). Linia
de întrerupere cu care
lucrează circuitul poate fi
Memorie Comanda Comanda Comanda
programată ca una din 8 linii memoriei
proprie memoriei memoriei
posibile. SRAM EEPROM SRAM BROM
16Kocteţi externe

Programarea adresei de bază de I/O, a dimensiunii memoriei BROM, linia de întrerupere se


fac la iniţializare prin jumperi. Desigur că unii parametrii pot fi modificaţi prin scrierea
registrelor de configurare. Circuitul selectează automat între transmisia 10BaseT sau
AUI (Attachement Unit Interface). Mediul de transmisie (cablu coaxial sau cablu
torsadat (UTP)) trebuie specificat cu jumperi.
Conectarea RTL8019
Selecţia EEPROM se face cu Magistrala
ISA RTL 8019
semnalul EECS generat Adrese MA13-1
de RTL 8019, iar SD15-0
transferul de date are loc Date MD7-
serial prin EEDO şi SA19-0 0
EEDI. Memoria SRAM
este selectată de linia de EECS
INT7-0 EEPROM SRAM BROM
EESK
adresă MA0 iar sensul EEDO
9346 32K
transferului este dat de EEDI
CS CS
semnalele de RD şi WR
Comenzi/ MRDB
(MRDB şi MWRB). stări MWRB
Memoria BROM din MA0
care se poate doar citi
BCSB
este selectată de
semnalul BCSB.
O memorie SRAM ca buffer de date de 16Kocteţi este inclusă în majoritatea modelelor de RTL 8019.
În această memorie internă, controlabilă prin jumperi se pot stoca mai multe cadre. Memoria externă
SRAM este opţională, la fel şi memoria BROM. Dacă este suficientă configurarea prin jumperi şi
memoria EEPROM poate lipsi. Circuitul poate transfera date atât pe 8 cât şi pe 16 biţi. Configuraţia
fără memorii externe şi cu conectarea pe 8 biţi este folositoare pentru aplicaţii cu microcontrollere.
Circuitul interfaţă de
reţea CS8900A
Magistrala EEPROM Tact RJ45
paralelă
Reţea
Ethernet
Controller Ethernet CS8900
Contr
Control al RAM 10BASE-T Transfor-
ol
ISA EEPROM Emiţător şi filtre mator de
separare

10BASE-T
Receptor şi filtre

Codare-
decodare-
PLL
MAC Controller
809.3 de RAM

AUI
Gestionarea
puterii consumate
Structura CS8900A
1.Interfaţa cu magistrala ISA, toate liniile de interconectare având capabilităţi de încărcare standard.
Circuitul poate cere o întrerupere pe una din patru linii şi poate cere un transfer DMA pe una din trei
linii. Liniile se selectează la iniţializarea circuitului.
9.Memoria internă (4K octeţi) face ca o memorie externă să nu mai fie necesară. Circuitul introduce în
această memorie un întreg cadru de trimis sau recepţionat. Accesul la memoria proprie se poate face
fără stări de WAIT.
3.Modulul MAC (Media Access Control) de acces la reţea asigură accesul conform standardului IEEE
809.3 în mod full duplex. MAC se ocupă de toate aspectele legate de transmisia cadrului cum ar fi
detecţia de coliziuni, generarea şi detectarea preambulului, generarea şi verificarea CRC. Modulul
MAC retransmite automat cadrul după detectarea unei coliziuni.
4.Interfaţa cu EEPROM este necesară pentru a citi un EEPROM serial opţional care conţine datele de
configurare ale circuitului. Se elimină astfel microîntrerupătoarele sau jumperii care sunt destul de
scumpi.
5.Interfaţa analogică cu reţeaua conţine codorul şi decodorul Manchester, circuitul de refacere a tactului
din semnalul recepţionat (cu PLL), transceiver pentru 10BASE-T şi o interfaţă AUI (Attachement
Unit Interface). Selecţia între AUI şi 10BASE-T se face automat sau manual. Trei LED-uri arată
starea circuitului: starea ON sau OFF a legăturii, activitatea Ethernet şi starea magistralei.
Transceiverul 10BASE-T conţine emiţătoare şi receptoare de linie şi filtre analogice, în exterior
fiind necesar doar un transformator de separare. Sunt suportate cabluri cu impedanţa caracteristică
de 100, 120 şi 150, ecranate sau neecranate.
Cadrul MAC
Protocolul MAC (Media Access Control) este folosit pentru implementarea nivelului Legătură de Date în tehnologia
Ethernet. Protocolul MAC încapsulează datele adăugând un antet de 14 bytes în faţa datelor şi 4 bytes de
informaţie de control (CRC) la sfârşitul datelor. Întregul cadru de date este precedat de scurtă perioadă de 9.6
microsecunde (la 10 Mbps) şi un preambul de 8 bytes.
Formatul unui cadru de date Ethernet este format din următoarele câmpuri:
·         Preambulul- Orice transmisie de cadru Ethernet începe cu o secvenţă de 8 bytes. Această secvenţă constă din 62
de biţi alternanţi de 1 şi 0 care sunt urmaţi de doi biţi de 1. Scopul acestui câmp este de a permite receptorului sa-
şi sincronizeze ceasul de recepţie a datelor cu ceasul de transmisie.
·         Delimitatorul de început de cadru- Ultimul byte din preambul care se termină cu doi biţi de 1 anunţă începutul
unui cadru de date. La primirea codului special “11” interfaţa Ethernet de recepţie tratează următorii biţi ca date.
·         Adresa sursă şi adresa destinaţie- Aceste adrese sunt de 6 bytes fiecare şi reprezintă adresele fizice (adrese
MAC) ale transmiţătorului şi receptorului.
·         Tip- Prin acest câmp este specificat protocolul superior care va prelua datele după procesarea Ethernet
(valoarea 0x0800 identifică protocolul IP , acesta fiind şi cel mai folosit).
·         Data- După procesarea Ethernet aceste date sunt trimise protocolului superior specificat în câmpul Tip.
Lungimea minimă a acestui câmp este de 46 bytes şi cea maximă este de 1500 bytes. Orice depăşire a acestor
limite este considerată eroare.
·         CRC- acest câmp poartă şi denumirea de FCS – Frame Check Sequence şi este calculat de către sursă şi
recalculat la destinaţie pentru detectarea eventualelor erori survenite în timpul transmisiei. Dacă se detectează
vreo eroare cadrul de date este abandonat. Protocolul MAC nu oferă nici un mecanism prin care să se indice
sursei că un anumit cadru de date a fost abandonat din cauza apariţiei unei erori.
Cadrul MAC
Trebuie menţionat faptul că, fiind vorba de o topologie de tip multipunct (broadcast), cadrele Ethernet din
reţea sunt preluate de către toate calculatoarele conectate la reţea. După efectuarea verificărilor
privind corectitudinea cadrului, se verifică dacă acel cadru este destinat calculatorului respectiv.
Verificarea se face pe baza adresei MAC de destinaţie. Această adresă poate fi chiar adresa MAC a
calculatorului respectiv, şi atunci cadrul este procesat, adresa MAC de broadcast, şi în acest caz
cadrul fiind procesat, sau o altă adresă MAC, şi atunci cadrul este abandonat.
Deoarece tehnologia Ethernet implementează funcţiile celor două nivele OSI, Legătură de Date şi Fizic,
tot aici trebuie implementată şi metoda de adresare fizică. Protocolul MAC conţine şi această
schemă de adresare. Această adresă fizică, ca şi întreaga tehnologie Ethernet, este implementată în
interiorul interfeţei de reţea.
Adresa fizică constă dintr-un număr de 48 de biţi scris în hexazecimal care identifică în mod unic în lume
o interfaţă de reţea. Această unicitate este dată de primii 24 de biţi care reprezintă un număr ce
identifică producătorul interfeţei. Acest număr este denumit OUI – Organizational Unique Identifier
şi este administrat şi distribuit producătorilor de către IEEE. Ceilalţi 24 de biţi reprezintă numărul de
serie al interfeţei şi este administrat de către producător.
Aceste adrese MAC mai poartă şi denumirea de adrese BIAs – Burned-in Addresses deoarece ele sunt
înscrise într-o memorie ROM de pe interfaţa de reţea.
Conectarea CS8900A
Magistrala
ISA
CS8900A EEDATAOUT
SD15- EEDATAIN
0 EESSK
EEPROM
SA19-0 9346

CS
Configurarea circuitului se poate face prin IRQ
ELCS
scrierea /citirea registrelor interne de
configurare sau datele de configurare DMARQ,
DMACK
pot fi încărcate dintr-un EEPROM
CSOUT
serial.

SA14-0
BROM

I8282

CS
SD7-0
Funcţionarea CS8900A
Transmisia unui cadru începe cu o comandă (Transmit Command) prin care se precizează când să înceapă
transmisia (după ce toţi octeţii au fost transmişi în CS8900 de exemplu), existenţa CRC etc. Se trimite apoi
lungimea cadrului, (Transmit Length), după care se trimit datele în CS prin transfer de memorie în memoria
proprie sau prin transfer I/O. Circuitul transmite cadrul în reţea începând cu un preambul urmat de adresa
destinaţiei, adresa sursei, date, octeţi de CRC (se pot citi amănunte în paginile anterioare, la structura cadrului
Ethernet).
Recepţia unui cadru este realizată de CS şi cadrul este stocat în memorie. Recepţia se face prin decodare
Manchester, apoi sunt eliminate preambulul, adresa destinatarului este verificată şi dacă corespunde cu adresa
programată în CS cadrul este memorat şi se anunţă procesorul printr-o întrerupere. În a doua fază datele din
memorie se transferă în memoria sistemului pe magistrală, prin transfer de memorie, transfer I/O sau prin
DMA.
Transferul de memorie se face prin accesul direct al procesorului la memoria internă a CS, adresată prin ISA de
liniile de adresă, sensul transferului fiind dat de MEMR sau MEMW. Registrele de configurare pot fi accesate
şi ele în acest mod. La transferul I/O, CS este accesat prin 8 registre de 16 biţi, văzute de procesor în spaţiul de
I/O. Sensul transferului este dat de IOR şi IOW. Acest al doilea mod (I/O) este ales implicit la pornirea
circuitului (sau la RESET).
Programarea circuitului CS8900 se face printr-un concept original de programare, prin intermediul
memoriei interne numită PacketPage. Accesul la această memorie poate fi realizat atât prin transfer cu
memoria cât şi I/O. Transferul cu memoria este preferat deoarece pe ISA ciclul de memorie este cu un tact mai
scurt decât cel de I/O. Conectarea lui CS8900 la un microcontroller face imposibilă tratarea PacketPage prin
transfer de memorie.
Cuplarea RTL8019 la un
P1 Vcc
microcontroller
1 U 1 U 2
14 Vcc D b0 1 40 D 0 36 85
2 D b0 D b1 2 P B 0 /T0 VC C 28 D 0 D 1 37 S D 0 B D 0 84
15 D b2 3 P B 1 /T1 P C 7 /A 1 5 27 D 1 D 2 38 S D 1 B D 1 82
3 D b1 D b3 4 P B 2 /A IN 0 P C 6 /A 1 4 26 D 2 D 3 39 S D 2 B D 2 81 Vcc Vcc
16 R 1 D b4 5 P B 3 /A IN 1 P C 5 /A 1 3 25 D 3 D 4 40 S D 3 B D 3 80
4 D b2 D b5 6 P B 4 /S S P C 4 /A 1 2 24 D 4 D 5 41 S D 4 B D 4 79
17 2K D b6 7 P B 5 /M O S I P C 3 /A 1 1 23 D 5 D 6 42 S D 5 B D 5 78 D 1 D 2
5 D b3 D b7 8 P B 6 /M IS O P C 2 /A 1 0 22 D 6 D 7 43 S D 6 B D 6 77
18 C 1 9 P B 7 /S C K P C 1 /A 9 21 D 7 95 S D 7 B D 7 LED LED
6 D b4 10 R ESET P C 0 /A 8 94 S D 8 74 R 2 1K
19 0 .1 u F 11 P D 0 /R XD 31 93 S D 9 B A 14 73
7 D b5 12 P D 1 /T XD IC P 30 92 S D 10 B A 15 72
20 13 P D 2 /IN T 0 ALE 29 91 S D 11 B A 16 71
8 D b6 14 P D 3 /IN T 1 O C 1B 90 S D 12 B A 17 69
21 15 P D 4 32 88 S D 13 B A 18 68
9 D b7 16 P D 5 /O C 1 A P A 7 /A D 7 33 87 S D 14 B A 19 67 R 3 1K
22 17 P D 6 /W R P A 6 /A D 6 34 S D 15 B A 20 66
10 P D 7 /R D P A 5 /A D 5 35 A 4 33 B A 21
P A 4 /A D 4 R S TD R V 20F001N
23 19 36 A 3 30 62
11 18 XTA L1 P A 3 /A D 3 37 A 2 29 IO W B LED 1 61 R 4 200 6 7
24 XTA L2 P A 2 /A D 2 38 A 1 IO R B LED 0 60 5 T P IN - TP R X- 8
P A 1 /A D 1 LED BN C GN D GN D RJ-45
12 Y 1 20 39 A 0 A 0 5 63
25 GN D P A 0 /A D 0 A 1 7 S A 0 LED 2 C 2 C 3 6
13 A 2 8 S A 1 58 10nF 10nF TP R X-
C 4 C 5 A 3 9 S A 2 TP IN - 59 3
30pF 8MH z 30pF A T90S 8515 A 4 10 S A 3 T P IN + 4 9 TP R X+
11 S A 4 46 3 T P IN + TP R X+ 10
12 S A 5 LD 45 2 TP O U T- TP TX- 11 2
Vcc 13 S A 6 RTL8019AS H D GN D GN D TP TX-
Vcc 15 S A 7 76 C 6 C 7 1
16 S A 8 U5 EEC S 75 10nF 10nF TP TX+
S A 9 BC SB
16

18 Y 2
C 8 2 1 C 9 19 S A 10 50 1 12 UTP
+

20 S A 11 OSCI TP O U T+ TP TX+
+

1uF 3 1uF 21 S A 12 51 20MH z


22 S A 13 OSC O
S A 14 U7
P2 C 10 6 4 C 11 23 89 Vcc
+

1 1uF 24 S A 15 V D D 70
6 5 1uF 25 S A 16 V D D 57
2 7 10 26 S A 17 V D D 47
7 27 S A 18 V D D 17
3 8 9 S A 19 V D D 6
8 97 V D D
4 14 11 98 IN T7 86
9 99 IN T6 G N D 83
5 13 12 100 IN T5 G N D 52
1 IN T4 G N D 44
2 IN T3 G N D 28
C OM 3 IN T2 G N D 14
U 5 Vcc 4 IN T1 G N D
15

M A X232 IN T0 49
1 65 TX+ 48
31 JP TX- 56
32 SMEMR B R X+ 55
SMEMW B R X- 54
1 64 C D + 53
34 AU I C D- 96
AEN IO C S 1 6 B 35
IO C H R D Y

R TL8019A S
Cuplarea CS8900A la un microcontroller
JC P2

1 /S T R O B E
1 4 /A U T O F E E D
2 D 0 R S0
1 5 /E R R O R R S1
3 D 1 U 2 R S2
1 6 /IN IT 11 A 3
4 D 2 S TB 9 A 4

30
1 7 /S E L E C T O E U 1 A 5
5 D 3 R S 01 2 8 D 0 D 0 3 9 2 1 A 6
O 7 I7 P 0 .0 /A D 0 P 2 .0 /A 8

A L E /P R O G
18 G N D R S 1 3 7 D 1 D 1 3 8 2 2 A 7
6 D 4 R S 21 4 O 6 I6 6 D 2 D 2 3 7 P 0 .1 /A D 1 P 2 .1 /A 9 2 3
19 G N D A 3 1 5 O 5 I5 5 D 3 D 3 3 6 P 0 .2 /A D 2 P2 .2 /A 1 0 2 4
O 4 I4 P 0 .3 /A D 3 P2 .3 /A 1 1 /C S
7 D 5 A 4 1 6 4 D 4 D 4 3 5 2 5 D 0
20 G N D A 5 1 7 O 3 I3 3 D 5 D 5 3 4 P 0 .4 /A D 4 P2 .4 /A 1 2 2 6
O 2 I2 P 0 .5 /A D 5 P2 .5 /A 1 3 D 1
8 D 6 A 6 1 8 2 D 6 D 6 3 3 2 7
O 1 I1 P 0 .6 /A D 6 P2 .6 /A 1 4 D 2
21 G N D A 7 1 9 1 D 7 D 7 3 2 2 8
O 0 I0 P 0 .7 /A D 7 P2 .7 /A 1 5 D 3
9 D 7
D 4
22 G N D 1 1 0
P 1 .0 /T 2 P 3 .0 /R XD D 5
1 0 /A C K 8282 2 1 1
P 1 .1 /T 2 -E X P 3 .1 /T XD D 6
23 G N D 3 1 2 /IN T
P 1 .2 P 3 .2 /IN T O D 7
11 BU SY 4 1 3
24 G N D 5 P 1 .3 P 3 .3 /IN T 1 1 4 /IN T
12 PE 6 P 1 .4 //S S P 3 .4 /T O 1 5
P 1 .5 /M O S I P 3 .5 /T 1 /W R
25 G N D 7 1 6 /W R
P 1 .6 /M IS O P 3 .6 /W R /R D
1 3 S E L E C T IN 8 1 7 /R D
P 1 .7 /S C K P 3 .7 /R D C LK
19 29
18 XTA L1 PSEN
C E N TR O N IC S D B 2 5 9 XTA L2 31
R ST E A /V P P
R 1
VC C VC C
8 ,2 K A T89S 53
1

Y 1
2 3 10u R ESET R ESET
4 3 C LK
/C S
1 2 A7

2
U 7A SW 1
SN 74126 P2 R ESET
1 G E N E R A TO R 10M H z U 3
SN 74126 6 13 10 VC C

1
2 8 R 1 IN T 2 IN 11
7 RxD 7 R 2 IN T 1 IN 9
6 5 3 14 T2O U T R 2O U T 12 1K
8 TxD T1O U T R 1O U T
4 1
9 3 C +
U 4A
5 1u 4 C 1- 1
4

5 C 2+ 3
Vcc +5V

2 C 2- 2
R S232 D B9 1u VC C 6 V +
V -
SN 7400
10

M A X232
16

VC C
9 8 1u 1u

1u
SN 74126
Cuplarea CS8900A la un microcontroller
T r a n s f o r m a t o r iz o la t o r 1 0 B A S E T JP 1

8
C 2 1 16 7
100 2 6

10

22

23

55

56

57

89

90

85

86

94

95

96

69

70
U 1 0 ,1 u 3 14 5

1
3 7 4

D V D D 1

D VS S 1A

D VD D 2

D V D D 3

D VS S 3A

D VD D 4
A V D D 1

A V D D 2

A V D D 3
D V S S 1

D V S S2

D V S S3

D V S S4
A V S S 1

A V S S 2

A V S S 3

A V S S 4

A V S S 0
A 0 3 8 S A 0 6 11 3
A 1 3 9 S A 1 7 2
A 2 4 0 S A 2 C 1 8 9 1
A 3 4 1 S A 3 84 0 ,1 u
4 2 S A 4 D O - 83 R J45
4 3 S A 5 D O +
4 4 S A 6 80
4 5 S A 7 D I- 79
4 6 S A 8 D I+
4 7 S A 9 82 C 3
4 8 S A 10 C I- 81
5 0 S A 11 C I+
5 1 S A 12 68p
5 2 S A 13 9 2
5 3 S A 14 R XD - 9 1 2 4 ,9
5 4 S A 15 R XD + 8 8
5 8 S A 16 TXD - 8 7 V C C
5 9 S A 17 TXD + 2 4 ,9
6 0 S A 18 7 8 680 D 1
6 5 S A 19 B S TA T U S /H C 1 9 9 D 2
D 0 6 6 S D 0 L IN K L E D /H C 0 1 00
D 1 6 7 S D 1 LA N L E D 1 7
D 2 6 8 S D 2 C S O U T 680 LE D
D 3 7 1 S D 3 LE D
D 4 7 2 S D 4
D 5 7 3 S D 5 97
D 6 7 4 S D 6 XTA L1
D 7 2 7 S D 7
2 6 S D 8 98
2 5 S D 9 XTA L2 Y 1

E D A TA O U T
2 4 S D 10
S D 11

E D A T A IN
H W S LE E P
R EF R E S H

IO C H R D Y
M EM C S 16

2 1 20M H z

H IP S E L
D M A R Q 0
D M A R Q 1
D M A R Q 2

TE S TS E L
D M A C K 1
D M A C K 0

D M A C K 2

S D 12
IN T R Q 2
IN T R Q 0
IN T R Q 1

IN T R Q 3

2 0
IO C S 1 6
R E S ET

S D 13
M E M W
M E M R

1 9

B H E
E C S
E S K

LC S
S D 14

R E S
A E N
IO W

1 8
IO R

S D 15

C
E
E
E
E
E

S
C S 8 9 0 0 A -C Q
8
9
2

9
3
5
4
3
4
2
1
0
5
5

1
6
4
2
7
6

93
1

36
2
2
6
6
4
6
7
3
3
6
3
3
3
3
1
1
1
1
1
1
7
7

4
5
6
3
2
V C C
7

4 ,9 9 K

R 7
/W R R
/R D V C C
U 3A

1 2
/C S

S N 7404

/R E S E T

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