Posibilitati de realizare a transferurilor de date

Similar documents
2. Setări configurare acces la o cameră web conectată într-un router ZTE H218N sau H298N

CURS 9 SEMNALE LA INTERFAŢA UC CU EXTERIORUL CONTINUARE. Şef lucr. dr. ing. Dan FLOROIAN

Versionare - GIT ALIN ZAMFIROIU

9. Memoria. Procesorul are o memorie cu o arhitectură pe două niveluri pentru memoria de program și de date.

Metrici LPR interfatare cu Barix Barionet 50 -

Structura și Organizarea Calculatoarelor. Titular: BĂRBULESCU Lucian-Florentin

SISTEMUL DE INTRARE - IEŞIRE

Titlul lucrării propuse pentru participarea la concursul pe tema securității informatice

Ierarhia memoriilor Tipuri de memorii Memorii semiconductoare Memoria cu unități multiple. Memoria cache Memoria virtuală

Propuneri pentru teme de licență

Mecanismul de decontare a cererilor de plata

Tema 1 - Transferuri de date DMA intr-o arhitectura de tip Cell

Reflexia şi refracţia luminii. Aplicaţii. Valerica Baban

Semnale şi sisteme. Facultatea de Electronică şi Telecomunicaţii Departamentul de Comunicaţii (TC)

Procesarea Imaginilor

Transmiterea datelor prin reteaua electrica

2. PORTUL PARALEL ÎMBUNĂTĂŢIT

ARBORI AVL. (denumiti dupa Adelson-Velskii si Landis, 1962)

Auditul financiar la IMM-uri: de la limitare la oportunitate

REVISTA NAŢIONALĂ DE INFORMATICĂ APLICATĂ INFO-PRACTIC

Excel Advanced. Curriculum. Școala Informală de IT. Educație Informală S.A.

Class D Power Amplifiers

Documentaţie Tehnică

Ghid identificare versiune AWP, instalare AWP şi verificare importare certificat în Store-ul de Windows

ANTICOLLISION ALGORITHM FOR V2V AUTONOMUOS AGRICULTURAL MACHINES ALGORITM ANTICOLIZIUNE PENTRU MASINI AGRICOLE AUTONOME TIP V2V (VEHICLE-TO-VEHICLE)

GHID DE TERMENI MEDIA

Contact Center, un serviciu cri/c!

Programare în limbaj de asamblare 16. Formatul instrucţiunilor (codificare, moduri de adresare).

MODELUL UNUI COMUTATOR STATIC DE SURSE DE ENERGIE ELECTRICĂ FĂRĂ ÎNTRERUPEREA ALIMENTĂRII SARCINII

Update firmware aparat foto

7. INTERFAȚA ATA Prezentare generală a interfeței ATA. Sisteme de intrare/ieșire și echipamente periferice

9. INTERFAŢA SCSI Scopul lucrării Consideraţii teoretice Prezentarea interfeţei SCSI

Aspecte controversate în Procedura Insolvenţei şi posibile soluţii

X-Fit S Manual de utilizare

METODE DE EVALUARE A IMPACTULUI ASUPRA MEDIULUI ŞI IMPLEMENTAREA SISTEMULUI DE MANAGEMENT DE MEDIU

CAIETUL DE SARCINI Organizare evenimente. VS/2014/0442 Euro network supporting innovation for green jobs GREENET

SAG MITTIGATION TECHNICS USING DSTATCOMS

Updating the Nomographical Diagrams for Dimensioning the Concrete Slabs

Subiecte Clasa a VI-a

Achiziţia de date în sistemele SCADA

D în această ordine a.î. AB 4 cm, AC 10 cm, BD 15cm

Lucrarea Nr.1. Sisteme de operare. Generalitati

Arhitectura calculatoarelor Lucrarea de laborator Nr. 6 1 PORTUL PARALEL

La fereastra de autentificare trebuie executati urmatorii pasi: 1. Introduceti urmatoarele date: Utilizator: - <numarul dvs de carnet> (ex: "9",

Tipuri și nivele de paralelism Clasificarea arhitecturilor paralele Arhitecturi vectoriale Arhitecturi SIMD Arhitecturi sistolice

VIRTUAL INSTRUMENTATION IN THE DRIVE SUBSYSTEM MONITORING OF A MOBIL ROBOT WITH GESTURE COMMANDS

MS POWER POINT. s.l.dr.ing.ciprian-bogdan Chirila

DECLARAȚIE DE PERFORMANȚĂ Nr. 101 conform Regulamentului produselor pentru construcții UE 305/2011/UE

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Mihai ROMANCA. Microprocesoare şi microcontrolere

3.2 Arhitectura setului de instrucţiuni ISA. Copyright Paul GASNER

Eficiența energetică în industria românească

Olimpiad«Estonia, 2003

2. Setări configurare acces la o cameră web conectată într-un echipament HG8121H cu funcție activă de router

Strategii de optimizare a performantelor unei aplicatii client/server

Multicore Multiprocesoare Cluster-e

Utilizarea firelor de executie în Java si C#

Buletinul AGIR nr. 3/2012 iunie-august. Assis. Eng. Ciprian AFANASOV PhD. University "Ştefan cel Mare" Suceava

6.1. Tranzacţii O tranzacţie (transaction), este o unitate logică de

Evoluția pieței de capital din România. 09 iunie 2018

USING SERIAL INDUSTRIAL ROBOTS IN CNC MILLING PROCESESS

SPEED CONTROL OF DC MOTOR USING FOUR-QUADRANT CHOPPER AND BIPOLAR CONTROL STRATEGY

EN teava vopsita cu capete canelate tip VICTAULIC

A NOVEL ACTIVE INDUCTOR WITH VOLTAGE CONTROLLED QUALITY FACTOR AND SELF-RESONANT FREQUENCY

SISTEME DE CALCUL. LIMBAJ DE ASAMBLARE. SIMULATORUL PCSPIM UAL DPE. Fig.1. Structura unui sistem de calcul

UNITATEA CENTRALĂ DE PRELUCRARE CPU12

Specificaţiile mecanice ale interfeţei RS 232 C

ARHITECTURA CALCULATOARELOR LABORATOR PROGRAMĂ ANALITICĂ OBIECTIVE CURS. Obiective educaţionale: Profesor Mihai ROMANCA

PROCEDURA PRIVIND DECONTURILE. 2. Domeniu de aplicare Procedura se aplică în cadrul Universităţii Tehnice Cluj-Napoca

Nume şi Apelativ prenume Adresa Număr telefon Tip cont Dobânda Monetar iniţial final

Software Process and Life Cycle

COMUNICAȚII INFORMATIZARE

Pentru fiecare dintre următorii itemi alegeți litera corespunzătoare răspunsului corect.

Lucrarea nr. 7. Configurarea reţelelor în Linux

Textul si imaginile din acest document sunt licentiate. Codul sursa din acest document este licentiat. Attribution-NonCommercial-NoDerivs CC BY-NC-ND

Lucrarea de laborator nr. 4

ANALIZA COMPORTAMENTULUI LA DESCĂRCARE PENTRU O BATERIE LiFePO 4 UTILIZATĂ LA UN ATV ELECTRIC

CHAMPIONS LEAGUE 2017 SPONSOR:

PACHETE DE PROMOVARE

Modalitǎţi de clasificare a datelor cantitative

Implementarea paralelismului la nivel de instructiune în microprocesoarele superscalare

Managementul referinţelor cu

CAPITOLUL 1 SISTEME DE CALCUL

Laborator 07. Procesorul MIPS versiune pe 16 biți, cu un ciclu de ceas pe instrucțiune

Reţele Neuronale Artificiale în MATLAB

Calculatoare Numerice II Interfaţarea unui dispozitiv de teleghidare radio cu portul paralel (MGSH Machine Guidance SHell) -proiect-

Lucrarea 5. Portul paralel standard

LIDER ÎN AMBALAJE EXPERT ÎN SISTEMUL BRAILLE

Dispozitive Electronice şi Electronică Analogică Suport curs 02 Metode de analiză a circuitelor electrice. Divizoare rezistive.

3. CLOUD COMPUTING Sisteme de calcul distribuite

HEAPSORT I. CONSIDERAŢII TEORETICE

SISTEME DE CALCUL. LIMBAJ DE ASAMBLARE. SIMULATORUL QTSPIM UAL DPE. Fig.1. Structura unui sistem de calcul

The driving force for your business.

Grafuri bipartite. Lecție de probă, informatică clasa a XI-a. Mihai Bărbulescu Facultatea de Automatică și Calculatoare, UPB

Metoda BACKTRACKING. prof. Jiduc Gabriel

Curs 1 17 Februarie Adrian Iftene

Metoda de programare BACKTRACKING

Mods euro truck simulator 2 harta romaniei by elyxir. Mods euro truck simulator 2 harta romaniei by elyxir.zip

Candlesticks. 14 Martie Lector : Alexandru Preda, CFTe

ACTA TECHNICA NAPOCENSIS

Transcription:

Revista Informatica Economica, nr. 1 (17)/2001 1 Posibilitati de realizare a transferurilor de date Lect. Emanuela-Mariana CHICHEA Facultatea de Stiinte Economice, Universitatea din Craiova Transferul informatiilor între memoria interna a calculatorului si mediul exterior se realizeaza prin intermediul dispozitivelor periferice, de calitatea acestuia depinzänd în mare masura performantele calculatorului. în principal se utilizeaza urmatoarele metode de transfer: metoda transferului programat; metoda transferului prin întreruperi; metoda transferului prin acces direct la memorie; metoda transferului prin canale de intrare/iesire. Dintre acestea, transferul prin canale de intrare/iesire elimina dezavantajele celorlalte metode, deoarece modulele de intrare/iesire au fost îmbunatatite prin dispunerea de o memorie locala proprie ceea ce face ca interventia unitatii centrale de prelucrare sa fie minima. în acest mod, modulele de intrare/iesire devin procesoare ce dispun de un set de instructiuni specializat pentru realizarea operatiilor de intrare/iesire (eficientizarea transferului de informatii). Cuvinte cheie: transfer, adresare cu mapare în memorie, adresare izolata, întrerupere, rutina pentru tratarea întreruperii, vector de întrerupere, sistem de întreruperi multiple, sistem de întreruperi cu prioritati, modul DMA, furt de ciclu, transfer în rafala, canale de intrare/iesire, procesoare de intrare/iesire, canal selector, canal multiplexor. 1 Transferul de date Transferurile informatiilor între memoria interna a unui sistem de calcul si mediul sau exterio r se realizeaza prin intermediul sistemului intrare/iesire (I/E) ce înglobeaza urmatoarele componenete principale: a) module de intrare/iesire; b) dispozitive periferice; c) interconexiunile dintre memorie si dispozitivele periferice (magistralele); d) interfata dintre acestea. Dispozitivele periferice nu se ataseaza direct la magistrala sistemului, ci se face apel la modulele de intrare/iesire deoarece: - marea varietate a perifericelor cu metode de functionare diferite nu permite stabilirea logicii necesare în cadrul unitatii centrale de prelucrare (UCP) pentru controlul acestor dispozitive; - deseori, rata de transfer a echipamentelor periferice este mult mai mica decät cea a comunicarii memorie - unitatea centrala de prelucrare; - formatele datelor si lungimile cuvintelor utilizate de dispozitivele periferice difera de multe ori fata de standardele acestora de la calculator. Modulele de intrare/iesire au rolul de a realiza controlul dispozitivelor externe si transferul datelor între aceste dispozitive si memoria interna si/sau registrele unitatii centrale. Din acest motiv, un modul de intrare/iesire trebuie sa posede o interfata interna (cu memoria interna si cu unitatea centrala de prelucrare) si o interfata externa (cu dispozitivul periferic). Un modul de intrare/iesire trebuie sa îndeplineasca o serie de functii: * control si sincronizare; * comunicarea cu unitatea centrala de prelucrare; * comunicarea cu dispozitivele externe; * bufferarea datelor; * detectia erorilor. Dialogul dintre periferic si modulul de intrare/iesire necesar unei operatii de scriere/citire poate îmbraca urmatoarea forma generala: - se cere permisiunea de transmitere a datelor prin activarea de catre modul a unui semnal de control; - se confirma cererea de catre periferic; - are loc transferul datelor, modulul îndeplinindu-si astfel rolul principal;

2 Revista Informatica Economica, nr. 1 (17)/2001 - se confirma receptia datelor de catre dispozitivul periferic. 2. Metoda transferului programat Transferul programat presupune transferul datelor între unitatea centrala de prelucrare si modulul de intrare/iesire, unitatea centrala de prelucrare executänd un program prin care controleaza direct operatia de intrare/iesire. Transferul se realizeaza în urmatoarele etape: - sesizarea starii perifericului; - transmiterea unei comenzi de citire/scriere; - transferul propriu-zis al datelor. Executia unei instructiuni de intrare/iesire implica unitatea centrala de prelucrare determinänd-o sa transmita si adresa dispozitivului periferic, continuta în comanda de intrare/iesire. Data fiind conectarea la sistem a mai multor dispozitive prin module de intrare/iesire, fiecarui dispozitiv i se atribuie o adresa unica iar fiecare modul de intrare/iesire trebuie sa îndeplineasca liniile de adrese pentru a determina daca respectiva comanda îi este destinata. Partajarea aceleiasi magistrale între unitatea centrala, memoria interna si sistemul de intrare/iesire face posibila adresarea sub doua forme: - adresare cu mapare în memorie, care presupune existenta unui spatiu de adrese comun pentru locatiile de memorie si dispozitivele de intrare/iesire; - adresare izolata, caz în care spatiul adreselor de intrare/iesire este izolat de cel alocat memoriei. Adresarea cu mapare în memorie prezinta avantajul utilizarii unui set extins de instructiuni ceea ce conduce la o programare mai eficienta, dar si dezavantajul ocuparii unei parti din spatiul de adrese al memoriei. Comenzile de intrare/iesire pe care le poate receptiona un modul de intrare/iesire atunci cänd este adresatde catre unitatea centrala de prelucrare pot fi împartite în patru clase: * comenzi de control: servesc pentru activarea unui periferic si pentru specificarea operatiei de executat; * comenzi de test: permit testarea diferitelor conditii de stare asociate cu un modul de intrare/iesire si perifericele acestuia, caz în care unitatea centrala de prelucrare trebuie sa determine daca perifericul este operational si disponibil, s-a încheiat ultima operatie lansata, executia operatiei a condus sau nu la aparitia de erori; * comenzi de citire: determina obtinerea unui octet sau cuvänt de date de la periferic si depunerea acestuia în registrul de date al modulului de intrare/iesire; * comenzi de scriere: conduc la prelucrarea de catre modulul de intrare/iesire a unui octet sau cuvänt de pe magistrala de date si transmiterea sa perifericului. Întrucät citirea starii pune unitatea centrala de prelucrare în asteptare päna cänd perifericul devine disponibil sau päna la încheierea operatiei, se ajunge la scaderea performantelor, dezavantaj ce poate fi înlaturat apeländ la metoda transferului programat prin întreruperi. 3. Metoda transferului prin întreruperi Executia unei instructiuni poate fi întrerupta, motiv pentru care întreruperea se va produce dupa încheierea executiei instructiunii curente. Reluarea programului întrerupt, din starea în care se gasea la momentul aparitiei întreruperii, devine posibila doar cu conditia salvarii contextului de lucru al unitatii centrale de prelucrare: - adresa de revenire (continutul controlului de program din momentul aparitiei întreruperii); - indicatorii de stare si de conditii ai unitatii centrale de prelucrare; - registrele interne utilizate de rutina pentru tratarea întreruperilor (asociata evenimentului care a generat întreruperea); - registrele de comanda de intrare/iesire care sunt modificate de catre rutina pentru tratarea întreruperilor. Alegerea adresei rutinei de tratare a întreruperilor se poate face prin doua metode:

Revista Informatica Economica, nr. 1 (17)/2001 3 * metoda întreruperilor nevectorizate: rutina de tratare se gaseste la o adresa fixa în memorie; * metoda întreruperilor vectorizate: adresa rutinei pentru tratare este oferita procesorului de catre sursa de întrerupere sub forma unui vector de întrerupere; acesta indica adresa de început a rutinei pentru tratarea întreruperilor, sau exprima o referinta la o locatie de memorie unde este memorata a- dresa de început a rutinei pentru tratarea întreuperilor. întreruperile pot proveni din urmatoarele surse: - servicii solicitate de dispozitivele periferice; - supravegherea functionarii normale a sistemului prin intermediul elementelor hardware (circuite pentru detectarea erorii de paritate a memoriei, pentru sesizarea caderii tensiunii de alimentare etc); - evenimente interne (depasiri la calcule, inexistenta unor instructiuni etc). Majoritatea sistemelor prezinta mai multe surse de întrerupere, controlul individual al acestor surse facändu-se cu ajutorul unui registru al mastilor de întrerupere; înregistrarea cererilor de întrerupere are loc sub tutela unui registru al cererilor de întrerupere. Sistemul cu întreruperi multiple se confrunta, în principal, cu doua probleme: a) Identificarea sursei de întrerupere poate avea loc prin adoptarea de solutii, precum: - utilizarea liniilor multiple de întrerupere între unitatea centrala de prelucrare si modulele de intrare/iesire, iar pentru fiecare astfel de linie sa se utilizeze si una din celelalte solutii deoarece este posibil ca la fiecare linie sa fie legate mai multe module de intrare/iesire; - folosirea metodei polling software: la identificarea unei întreruperi va fi executata o rutina pentru tratarea acesteia (de catre unitatea centrala de prelucrare), rutina în sarcina careia cade interogarea fiecarui modul de intrare/iesire în scopul stabilirii modulului care a provocat întreruperea; - conectarea dispozitivelor în lant (polling hardware): toate modulele de intrare/iesire partajeaza o linie comuna pentru cerere de înrerupere (linie înlantuita prin toate modulele) ceea ce face ca la activarea de catre unitatea centrala de prelucrare a unui semnal de activare a întreruperii acesta sa se propage prin lantul modulelor de intrare/iesire päna cänd întälneste modulul implicat în cerere; în general, raspunsul oferit de acest modul consta în plasarea unui vector de întrerupere pe magistrala de date (acesta reprezentänd adresa modulului de intrare/iesire sau un alt identificator unic) care serveste unitatii centrale de prelucrare drept pointer la rutina pentru tratarea întreruperilor, corespunzatoare modulului în cauza; - arbitrajul de magistrala este o tehnica prin care un modul de intrare/iesire trebuie sa preia mai întäi controlul asupra magistralei în scopul crearii posibilitatii de activare a liniei de cerere a întreruperii. b) Alegerea întreruperii prioritare dintr-un sistem de întreruperi multiple simultane poate fi facuta gratie a doua metode: - metoda software: identificarea prin polling a sursei de prioritate maxima, pentru toate întreruperile existänd o rutina comuna de servire care interogheaza sursele de întrerupere (ordinea de interogare a acestor surse determina prioritatea lor); - metoda hardware: cererea de prioritate maxima, generata prin utilizarea circuitelor care accepta cereri de întrerupere de la mai multe surse, constitue punctul de plecare în generarea unei cereri de întrerupere catre procesor. Sistemele de întreruperi multiple cu prioritati pornesc de la necesitatea stabilirii unor prioritati si a determinarii conditiilor în care unitatea centrala de prelucrare poate fi întrerupta în timpul rezolvarii unei întreruperi, respectändu-se regula conform careia perifericele care permit transferuri rapide dobîndesc un grad de prioritate crescut pe cänd cele lente primesc o prioritate mai mica. 4. Metoda transferului prin acces direct la memorie Transferul prin accesul direct la memorie (DMA) înlatura dezavantajele transferului programat, chiar daca acesta are loc prin

4 Revista Informatica Economica, nr. 1 (17)/2001 intermediul sistemului de întreruperi, deoarece se produce un transfer direct între memoria interna si sistemul de intrare/iesire cu participarea aproape nesemnificativa a unitatii centrale de prelucrare. În cazul acestei metode de transfer, controlul asupra magistralelor sistemului poate fi preluat de modulul DMA (controler DMA), un modul suplimentar ce va genera semnalele de comanda necesare si care se compune din urmatoarele elemente principale: - o logica pentru asigurarea legaturii cu memoria (semnale de citire si scriere); - o linie de cerere DMA catre memorie si o linie de acceptare DMA de la unitatea centrala de prelucrare; - o logica de stabilire a prioritatilor (în cazul existentei mai multor canale); - un registru de comenzi pentru validarea modulului DMA, selectarea prioritatii canalelor, alegerea modului de lucru etc. Fiecare canal impune prezenta urmatoarelor registre: 1. registru de adrese: pastreaza adresa curenta si adresa de început a trensferului; 2. registru numarator: pastreaza numarul de cuvinte ce au ramas netransferate înca; 3. registru de stare: indica starea canalului (activata sau neactivata) si conditia de terminare a transferului. Deoarece preia controlul asupra magistralei în scopul efectuarii transferului datelor cu memoria, modulul DMA trebuie sa utilizeze magistrala numai cänd aceasta este libera (nefolosita de catre unitatea centrala de prelucrare), sau sa oblige unitatea la suspendarea temporara a operatiilor. În consecinta, transferul DMA poate fi efectuat în doua moduri: a) transfer prin furt de ciclu (cycle stealing): utilizeaza intervalele de timp în care unitatea centrala de prelucrare nu acceseaza memoria; b) transfer în rafala (data break): operatiile efectuate de catre unitatea centrala de prelucrare în momentul transferului se suspenda si magistrala este trecuta în starea de înalta impedanta; reluarea ciclului de instructiuni se va face din punctul în care a fost suspendat. Ca exemple de sisteme DMA pot fi amintite: calculatoarele IBM PC/AT, calculatoarele PDP-11 etc. 5. Metoda transferului prin canale de intrare/iesire Atät dezavantajele transferului programat prin întreruperi (rata de transfer este limitata de viteza cu care unitatea centrala de prelucrare poate testa si deservi un dispozitiv, gestionarea transferului conduce la ocuparea unitatii centrale de prelucrare deoarece fiecare transfer impune executia unui anumit numar de instructiuni) cät si cele ale transferului DMA (necesitatea a numeroase cicluri de magistrala pentru referintele la memorie, trecerea unitatii centrale de prelucrare în stare de asteptare pe parcursul derularii acestor cicluri, saturarea magistralei prin furturile de ciclu de meorie necesita un anumit timp pentru tratarea întreruperilor) pot fi eliminate prin îmbunatatirea modulelor de intrare/iesire ce pot deveni procesoare care sa dispuna de un set de instructiuni specializat pentru operatiile de intrare/iesire. Astfel, unele module de intrare/iesire dispun de o memorie locala proprie, fiind, de fapt, calculatoare specializate care pot controla un set bogat de dispozitive de intrare/iesire, în conditii de interventie minima a unitatii centrale de prelucrare. Cele mai utilizate canale de intrare/iesire sunt: - canalele selectoare: controleaza mai multe periferice rapide dar la un moment dat este ocupat pentru transferul datelor cu un singur periferic; - canalele multiplexoare: dispun de posibilitatea gestionarii transferurilor simultane cu mai multe periferice, prin tehnici de multiplexare în timp: multiplexare la nivel de octet, pentru periferice lente; multiplexare la nivel de bloc, în cazul dispozitivelor periferice rapide. În mod curent, utilizarea canalelor de intrare/iesire a fost asociata cu calculatoarele mari (mainframe) dar s-a extins si la mini sau chiar la microcalculatoare.

Revista Informatica Economica, nr. 1 (17)/2001 5 Bibliografie [1] Mano, M. Morris, Computer System Architecture, Prentice-Hall, Englewood Cliffs, New Jersey, 1982 [2] Goupille, P.A., Introduction to Computer Hardware and Data Communications, Masson and Prentice Hall International, Hertfordshire, 1993 [3] Norton, P., Secrete PC, Editura Teora, Bucuresti, 1996 [4] Hayes, J.P., Computer Architecture and Organization, McGraw-Hill, 1998 [5] Chiorean, L., Chiorean, M., PC. Initiere hard si soft, Editura Albastra, Cluj-Napoca, 1999 [6] Baruch, Z., Sisteme de intrare/iesire ale calculatoarelor, Editura Albastra, Cluj- Napoca, 2000 [7] Giurgiteanu, N., Chichea, E.M. s.a., Introducere în informatica, Reprografia Universitatii din Craiova, Craiova, 2000