• No se han encontrado resultados

La memòria i l entrada/sortida

N/A
N/A
Protected

Academic year: 2021

Share "La memòria i l entrada/sortida"

Copied!
14
0
0

Texto completo

(1)

La memòria

i

l’entrada/sortida

enmagatzemament de dades

³Necessitem memòria per a enmagatzemar ‘dades’. Tant les dades com el propi

programa a executar. No podem tenir-los tots en registres. ³Tindrem una estructura del tipus:

68000 68000 A23 - A1 AN- A1 A23 - AN+1 FC2 - FC0 @ DECOD. Disp. Mem..1 Disp. Mem..M

. . .

AS LDS UDS

(2)

tipus de memòria

³Read Only Memory (ROM): Memòria de només lectura. No volàtil. La informació ha de ser introduïda pel fabricant de semiconductors; per aquesta raó, només s’utilitza en sèries molt grans. ³Programmable read only memory (PROM): No volàtil. Pot ser programada per l’usuari, mitjançant un

programador (‘fusibles’).

³Erasable PROM (EPROM): No volàtil. Pot ser programada per l’usuari i esborrada en una insoladora UV.

³Electrically Erasable PROM (EEPROM): Esborrable elèctricament. És reprogramable, en alguns casos, incluida en un sistema en funcionament –> Podem considerar que permet realitzar un nombre limitat de cicles d’escriptura molt lents.

³ FLASH: Permet escriure i llegir en el sistema. Té més prestacions que les EEPROM (capacitat, consum, etc.). Des del punt de ista tecnològic, el procès de fabricació és molt complexe.

³Random Access Memory (RAM): Memòria d’accés ‘aleatori’. Memòria de lectura i escriptura, en la que el temps d’accés no depèn de l’element accedit. En general, volàtil i la forma habitual de guardar les dades i el codi del programa a executar (en sistemes d’ús general).

O Static (SRAM): Memòria RAM estàtica. La cel.la de memòria es del tipus biestable, una vegada s’ha escrit un

valor aquest es manté fins una nova escriptura (mentre es manté VDD)

O Dynamic (DRAM): Memoria RAM dinàmica. La cel.la de memòria és una capacitat que enmagatzema la

informació en forma de càrrega. Degut als corrents de fuita, la càrrega del condensardor ha de ser regenerada periòdicament per a mantenir el valor enmagatzemat.

O Non-volatile RAM (NVRAM): RAM no volàtil gràcies a una alimentació externa.

cel.les bàsiques

SRAM Bit Bit ! Bit DRAM s s s

(3)

característiques

³

Velocitat:

O Temps d’accés: Lapse entre @ estable i dada estable. O Temps de cicle: Temps mínim entre accessos consecutius.

³

Densitat:

O Quantitat de bits enmagatzemats per chip. Influeix en el nº de chips i en el cost.

³

Potència dissipada:

O Potència d’operació. O Potència en ‘stand-by’.

O Influència en la temperatura i consum –> Cost i fiabilitat.

³

Cost:

O Cost por chip.

O Cost de la lògica de control.

SRAM versus DRAM

³

DRAM: Gran nivell d’integració, lògica de control (refresc,

@ multiplex. ), baix cost per bit, elevat temps de cicle.

³

SRAM: Menor nivell d’integració, inclusió en sistemes

inmediata, alt cost per bit, baix temps de cicle.

³

Compromís: Cost (memòria + placa + lògica) - velocitat.

³

Sistemes mixtes (memòries ‘cache’).

(4)

DRAM....1/2

³ Gran densitat d'integració. ³ Baix consum de potència.

³ Organització típica: 1bit per posició (x1). ³ Integració ⇒ matrius de cel.les

³ Menor nombre de pins ⇒ @ files i columnes multiplexades ⇒ matriu quadrada ³ Definició estàndard dels pins de sortida d'una DRAM en organizació x1.

64 Kbits DIN WE* VSS CAS* D0 A6 A3 A4 A5 A7 A0 A1 A2 VDD RAS* Dec. F ila Control Buffer Dec. Colum. A0 - AN RAS* CAS* WE* D OUT D IN

DRAM....2/2

³

El nombre de ‘chips’ utilitzat és funció de:

O Ample del bus de dades de la CPU. O La capacitat total de memòria. O La capacitat de cada ‘chip’.

³

S’ha de tenir en compte:

O El consum de potència,

O el cost de: les DRAM’s, de la lògica de control i la placa O tamany i granularitat.

(5)

temporització

³

Exemple d’un cicle de lectura genèric, l’escriptura seria anàloga:

RAS! CAS! @ WE! DO R@ C@ Dades tAC tCYC

refresc

³ Informació enmagatzemada en forma de càrregues en petites capacitats. Corrents de fuita ⇒ pèrdua d’informació

³ Per evitar’ho hem de:

O Llegir la tensió de cada cel.la. O Amplificar-la.

O Carregar la capacitat amb la seva tensió original. O Repetidament en períodes prudencials de temps.

³ Les DRAM’s refresquen ‘automàticament’ el contingut d’una fila si reben una determinada seqüència de control ⇒ hem de tenir una lògica que, en períodes en que no s’accedeixi a memòria, generi successives direccions de fila i la seqüència de control adequada.

(6)

interfície amb la memòria

³ Haurem de realitzar una circuiteria d’interfície entre CPU y memòria:

MUX MUX BUFF CONTROL i Decod. MEM MEM 2 1 8 MEM MEM 2 1 8 . . . @BUS DATA BUS @COL @FIL @REFRESC @BUS-H (decod.) CONTROL-CPU @ CONTROL-MEM

bloc de control

³ En la circuiteria de control es generen els senyals de selecció de banc de

memòria (decodificació de direccions), les direccions a refrescar i les seqüències de cotrol per lectura, escriptura, lectura-modificació, refresc...

TEMP LÒGICA CONTROL CONTA MUX DECOD DECOD LOG LOG Refresc Decodificació CONTROL-CPU @-CPU FILES MEM CONTROL-MEM @BUS-H SELEC

(7)

controladors de memòria dinàmica

³ Realitzen qüasi totes les funcions relacionades amb la gestió dels blocs de

DRAM’s: Part de la decodificació, multiplexació de @ fila-columna, generació de senyals de control, generació de cicles de refresc...

O Simplificació del disseny. O Menors retards.

O Menor nombre de components i menor àrea de placa. O Possible estalvi.

³ Criteris d’elecció:

O Quina memòria soporta, permet accés a byte, nombre de bancs seleccionable. O Quants chips pot atacar (drivers?).

O Retards introduïts. O Gestió del refresc.

³ Ex.: Intel 8203, especialment pensat per a la família i8086.

disseny amb DRAM’s

³ La implementació amb components reals pot presentar una sèrie de problemes

derivats, habitualment, de les capacitats amb que carrega la DRAM i a la circuiteria addicional:

O Retards de propagació, ‘skew’ entre senyals. Augmentem el temps efectiu d’accés

a la memòria, poden provocar disfuncions. Han d’usar-se els mínims components, amb les mínimes diferències (integrats),...

O Pot aparèixer una capacitat excessiva per al driver, la qual cosa provocaria un gran

retard. En podem usar diversos, agrupant diferents bancades.

O Pot aparèixer ‘ringing’ en les conmutacions. Pot provocar falses conmutacions o

danys en les memòries. Utilitzem resistències d‘amortiguació.

O Una gran capacitat conmutant introdueix molt de soroll en l’alimentació.

(8)

SRAM

³ No necessiten refresc. No multiplexen direccions –> Interfície més sençilla. ³ Són normalment más rápides, més voluminoses i més cares.

³ S’acostumen a utilitzar per a instruments o per a implementar petites quantitats. ³ Moltes presenten un OE! per a solucionar el problema de bus contention.

³ No han d’escriure dos dispositius simultàniament en una mateixa línia de bus. Podria passar si volguessim optimitzar temps d’accés i controlar les memòries només pel chip-select.

³ S’utilizen SRAM CMOS en sistemes que requereixen baix consum. Els drivers també seran CMOS. Han de reduir-se les capacitats. No s’han de deixar

entrades CMOS flotants, utilitzarem pull resistors, ...

entrada/sortida

³

Necessitem dispositius d’entrada/sortida:

O Hem de poder prendre dades del món exterior (dades a processar). O Hem de poder entregar dades al món exterior (resultats).

O Hem d’inicialitzar el sistema (omplim la memòria).

³

Veurem:

O Diferenciès amb la memòria.

O Com es direccionen els dispositius. O Com es controlen.

(9)

diferències entre memòria i entrada/sortida

O Els perifèrics són més lents. La memòria traballa a una velocitat

comparable a la del microprocessador. Els dispositius p.e. mecànicos són moltíssim més lents, no podem tractar-los amb wait-states so pena de paralitzar la màquina.

O Els dispositius tenen un major grau de’iniciativa que la memòria. Poden interrompre al processador, li poden demanar els busos, poden indicar el seu estat....

O En la memòria solsament podem llegir i escriure informació. En els dispositius d’entrada/sortida també podrem realitzar altres accions, i d’alguna forma els hi haurem d’indicar (en el fons únicament llegirem i escriurem).

ports d’entrada/sortida

³ Se solen conèixer com a ports aquells ‘punts’ de visibilitat, d’entrada o sortida,

amb el món exterior.

³ Les accions que emprendrà el dispositiu, el seu estat i les dades amb que treballem són accessibles a través d’aquests ports. Habitualment, registres o buffers que nosaltres veiem com a registres.

O Registre de control. O Registre d’estat.

O Registre d’entrada de dades. O Registre de sortida de dades.

CPU CPU DECOD I/O DISP. CONTROL STATUS DAT. OUT DAT. IN W R @BUS DATA BUS

(10)

exemples I/O (1)

³ Vegem dos exemples típics de dispositiu de sortida i dispositiu d’entrada: 1. Impressora:

O Impressora -> Ready

O CPU -> Examinem el bit 0 del registre d’estat. O CPU -> Dades en el registre de sortida de dades.

O CPU -> Print New Character (bit 0 del registre de control) O Impressora -> Examina PNC.

O Impressora -> Imprimeix nou caràcter mantenint RDY = 0. O Impressora -> RDY = 1; Ready.

CARÀCTER DE CPU

@ A

{

PCN @ A+1

RDY SR CR

exemples I/O (2)

³

Un altre exemple típic de dispositiu d’entrada:

³

Teclat:

O Teclat -> Nou caràcter disponible

O CPU -> Examinem el bit 0 del registre d’estat.

O CPU -> Pren la Dada del registre d’entrada de dades. O CPU -> Character Accepted (bit 0 del resgistre de control) O Teclat -> Examina Caràcter aceptat.

O Teclat -> Sitúa un nou caràcter mantenint NCA = 0. O Teclat -> NCA = 1; New character available.

CARÀCTER DE TECLAT

@ A+2

{

CHA @ A+3

NCA SR CR

(11)

espai d’adreces I/O vs. mapejat en memòria

³

Podem tenir l’I/O mapejat juntament amb la memòria (ex.

68000), o en un espai d’@ diferent (ex. 8086).

O Usarem les mateixes instruccions que per accedir a la memòria, o instruccions especials per a entrada/sortida.

O Podrem, en la fase de disseny, distribuïr la memòria segons les nostres necessitats, o ens vindrà fixat l’espaci de memòria i el d’I/O.

O En la decodificació haurem de tenir en compte tot el bus d’@, o solsament aquella part útil en l’entrada/sortida.

³

Instruccions de tranferència de dades a I/O, compactes, ràpides

però poc flexibles:

O IN_PORT

O OUT_PORT

tècniques d’accés a I/O

³ En funció de qui i quan s’inicia la transferència de dades, podem distingir

diverses tècniques per al tractament de l’entrada/sortida:

O Programades: És la CPU, mitjançant l’execució d’un programa, qui inicia la

transmisió.

» Directa: Ho fa de forma directa, sense preocupar-se de l’estat del dispositiu. » Enquesta: Comprova l’estat del dispositiu, i segueix comproban-t’ho fins obtenir la

indicació de dispositiu preparat.

O Per interrupcions: La CPU no consumeix temps en comprovar l’estat del dispositiu.

És el propi dispositiu qui, de forma assíncrona, interromp el procès normal de la CPU i li indica la seva disposició per a transferir dades.

³ En ambós casos, la continuació pot ser idèntica: Amb transferència de paraules o blocs, amb comunicació a través dels registres de control i estat. Solen usar-se uns elements anomenats controladors, que faciliten la comunicació amb el dispositiu.

(12)

DMA

³ DMA: Accés directe a memòria. Si traballem amb dispositius ràpids, pot ser

molt més eficaç que aquests accedeixin directament a memòria, sense passar pel µC.

O Controlador de DMA.

³ La CPU pren la iniciativa de realitzar una transferència per DMA, programa els registres de la controladora (direcció d’inici, sentit i tamany) i cedeix els busos fins que se li indica la finalització del traball.

³ Podem traballar en dos modes:

O Mode robo de cicle (stealing): DMA demana i retorna el control dels busos per a

l’escriptura de cada dada. Indicat en accessos a dispositius lents.

O Mode ràfaga (burst): DMA demana el control dels busos i no els retorna fins que

dóna per finalitzada la transferència de totes les dades. Indicat en dispositius ràpids, quan el temps entre peticions no permet cicles de bus propis. Retrassa la resposta a interrupcions.

seqüència de DMA

³

La seqüència típica d’una transferència DMA és aproximadament:

tractament de l’error CPU llegeix l’estat

del dispositiu d’I/O Preparat?

#paraules = 0? DMA interrupció --> CPU CPU envia al controlador DMA: @ Inici #paraules, direc. Ordre d’inici

DMA inicia transferència de paraula CPU envia ordres de

transferència a I/O #paraules -@inic + + (o - - ) Si No Si No

(13)

DMAC

³

El control de DMA resulta complexe. Usarem controladors integrats:

O Senzillesa.

O Menor volum, consum, retards... O Menor cost.

O Capacitats exteses, p. ex.:

» Transferències memòria-memòria

» Operació possible en diversos modes ( cycle stealing, burst) » Cerca de blocs

» Ample variable de dades. » Transferència I/O - I/O.

» Múltiples canals. Prioritats. Selecció del mode de prioritat. Mode cascada

³

Ejemples de DMAC comercials: 8237A (fam. 8086), 68430 (fam.

68000).

comunicacions

³Per a comunicar dos sistemes digitals podem,

típicament, utilitzar comunicacions:

O

Paral.leles: Transmissió i recepció de tots els bits d’una

paraula en paral.lel. Per a distàncies curtes i grans velocitats de

transmissió. S’utilitzen habitualment, juntament amb el DMA.

Ej. VIA; 6522A.

O

Sèrie: Transmissió i recepció dels bits d’una paraula un derrera

l’altre, per una única línia. Baixa/mitjana velocitat de

transmissió i llargues distàncies.

» Assíncrones: No relació entre un caràcter i un altre. Bits de control. » Síncrones: Sincronisme RX-TX. Menor overhead. Major velocitat.

(14)

protocols de comunicació

RS232

³Comunicacions -> Diversos equips comunicant-se -> Necessitat de compatibilitat -> Definició d’estàndard: Electronic Industries Association recommended standard EIA-232C

Exemple: DUART 68681

³Defineix paràmetres elèctrics i línies amb funcionalitat lògica:

O Connector 25 pins, nivell baix entre -3v y -25v, alt 3v÷25v, 1 nivell alt excepte en TxD y RxD, un

Referencias

Documento similar

a) Bloque de entradas: permite adaptar y codificar de forma comprensible para la CPU las señales procedentes de los dispositivos de entrada o captadores, como

Fuente de emisión secundaria que afecta a la estación: Combustión en sector residencial y comercial Distancia a la primera vía de tráfico: 3 metros (15 m de ancho)..

«Es conveniente centrar el alcance y finalidad del sin- gular procedimiento judicial del art. 8.6 LJCA ) sobre “autorización de entrada en domicilios y restantes lugares cuyo

Se establecerán dos zonas de entrada al recinto escolar (INFANTIL 1º Y 2º DE PRIMARIA) por la puerta izquierda del centro, y 3º,4º,5º y 6º de PRIMARIA por la puerta

Este bus conecta directamente la unidad de control del mando del volante a la Gateway principal del sistema, en esta unidad de control se recogen todos los

Microbial counts (log CFU g -1 ) in unheated (control), conventional (CP) and microwave (MWP; high power/short time and low power/long time doses) pasteurized

Y MINERO DE ESPAÑA CONTROL DE MUESTRAS.. rA-Ñ N 1'-L

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de