Transcript
Page 1: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

ANNO SCOLASTICO 2002/2003 CLASSE 5^BZ

FIENI DANILO ADERENTI FRANCESCO

TESI DI MATURITA’ DI SISTEMI

PROGRAMMATORE DI EPROM DOCENTE: Ing. AZZANI CLETO

Page 2: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

2

SOMMARIO INTRODUZIONE ......................................................................................................................... 3 CHE COSA E’ UNA EPROM................................................................................................... 3 READ-ONLY MEMORY .......................................................................................................... 4 SCHEMA ELETTRICO .............................................................................................................. 5 MANUALE PROGRAMMATORE........................................................................................ 9 82C55A.............................................................................................................................................. 15

Buffer per il Bus Dati........................................................................................................................ 15 Circuiti logici di controllo e di lettura/scrittura.................................................................................... 15 Operazioni fondamentali dell’82C55A:.............................................................................................. 16 Controllo degli interrupt:................................................................................................................... 16 Modi operativi:................................................................................................................................. 17

FUNZIONAMENTO DEL CIRCUITO ............................................................................... 18

Page 3: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

3

INTRODUZIONE Questa tesi ha lo scopo di interfacciare un programmatore di eprom ad un PC. Il programmatore di eprom ci è stato fornito dalla scuola che ne era già in possesso ma inutilizzato. Nella specie è il modello “PGM512” costruito dalla “MICROLAB”. Nello specifico questo programmatore è in grado di utilizzare eprom che ai giorni nostri non sono più utilizzate ma bisogna considerare che è un progetto del 1987.

CHE COSA E’ UNA EPROM La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura programmabile cancellabile). Le eprom sono memorie programmabili dall’utente per un numero limitato di volte , e rispetto alle prom (rom programmabili) presentano il vantaggio di non dover essere sostituite quando occorre modificare qualche dato memorizzato. Non è possibile, in una eprom, effettuare una cancellazione parziale o una modifica ai dati contenuti. Per scrivere anche un solo bit è necessario cancellare totalmente le informazioni contenute. Questa operazione si effettua esponendo l’integrato per alcuni minuti ad una radiazione ultravioletta; esiste inoltre una categoria alla quale è stata aggiunta l’opzione di cancellazione tramite impulso elettrico: le eeprom (Elettrical Erasable Programmable Read Only Memory). Il meccanismo di cancellazione di una eprom è molto semplice: la radiazione ultravioletta trasporta abbastanza energia per penetrare all’interno dello strato isolante dell’integrato, raggiungere gli elettroni immagazzinati nel floating gate e trasferire loro energia per uscire da questa zona. Il contenitore DIP presenta una finestrella che consente di esporre l’integrato alla radiazione. Questa finestrella normalmente è coperta da materiale opaco per evitare che le radiazioni ultraviolette presenti nella luce naturale cancelli le informazioni contenute nella stessa. Per cancellare il contenuto di una eprom si usano appositi dispositivi (cancellatori di eprom). Le eprom pulite hanno tutte le celle a 1 cioè $FF. Infatti i raggi ultravioletti inseriscono tutti 1 mentre i segnali elettrici portano a 0 il contenuto delle celle. Le eprom commerciali sono identificate da una sigla che inizia per 27 (talvolta per 25) e termina con un numero che rappresenta la capacità in Kbyte della memoria. Fanno eccezione i dispositivi prodotti dalla Texas Instrument e dalla Motorola, le cui sigle iniziano con il numero 68. Ricordiamo infine che, pur essendo realizzate in tecnologia unipolare, le eprom risultano perfettamente compatibili con gli integrati TTL.

Page 4: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

4

READ-ONLY MEMORY A read-only memory (ROM) is a memory device in which a fixed set of binary information is stored. The binary information must first be specified by the user and is then embedded in the unit to for in the required interconnection pattern. Since read-only memories have special internal links, that can be fused or broken, the desired interconnection for a particular application requires the fusion of certain links to form the required circuit paths. Once a pattern is established for a read-only memory it remains fixed even when power is turned off and then on again. A read-only memory consists of n input lines and m output lines. Each bit combination of the input variables is called an address. Each combination that comes out of the output lines is ca1led a word. The number of bits per word is equal to the number ofoutput lines m. An address is essentially a binary number that denotes one of the minterms of n variables. The number of distinct addresses possible with n input variablesis 2n . An output word can be selected by a unique address, and since there are 2n distinct addresses in a read-only memory, there are 2n distinct words which are stored in the unit. For example a 32 x 8 ROM consists of 32 words of 8 bits each. This means that there are eight output lines and that there are 32 distinct words stored in the unit, each of which may be applied to the output lines. The required paths in a read-only memory may be programmed in two different ways. The first is called mask programming and is done by the manufacturer during the last fabrication process. In this case the manufacturer makes the corresponding mask for the paths to produce the l's and 0's according: to the customer’s truth table. For this reason, mask programming is economical only if large quantities of the same read-only memory configuration are to be manufactured. For small quantities, it is more economical to use a programmable read-only memory or PROM that contains all 0’s (or all l’s) in every bit of the stored words. A third type of unit available is called erasable PROM or EPROM. EPROMs can be reconstructed to the initial value even though they have been changed previously. Erasure occurs when an EPROM is placed under a special Ultraviolet light or by electrical signals. The function of a read-only memory can be interpreted in two different ways. The first interpretation is of a unit that implements any combinational circuit. The second interpretation considers the read-only memory to be a storage unit having a fixed pattern of bit strings called words. From this point of view, the inputs specify an address to a specifìc stored word which is then applied to the outputs. This is the reason why the unit is given the name read only memory. Memory is commonly used to designate a storage unit. Read is commonly used to signify that the content of a word specifìed by an address in a storage unit is placed at the output terminals. Thus, a read-only memory is a memory unit with a fixed word pattern that can be read out upon application of a given address. The bit pattern in the read-only memory is permanent and cannot be changed during normal operation. Read-only memories are widely used to implement complex combinational circuits directly from their truth tables. They are useful for converting from one binary code to another (such as ASCII to EBCDIC) and vice versa, for arithmetic functions such as multipliers, for display of characters in a cathode-ray tube and in many other applications requiring a large number of inputs and outputs. They are also employed in the design of micro programmed control units of digital systems.

Page 5: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

5

SCHEMA ELETTRICO

Page 6: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

6

Page 7: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

7

Page 8: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

8

Page 9: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

9

MANUALE PROGRAMMATORE M I C R O L A B sas

Hardware Software Microprocessori 25070 CAINO (Brescia) -Via Nazionale 124- Tel. 030/630018 25100 BRESCIA -Via P. da Cemmo 3/A- Tel. 030/41847 PROGRAMMATORE DI EPROM EPG512 Il programmatore di EPROM mod. EPG512 consente di operare sui seguenti dispositivi : -EPROM : TMS2516 TMS2532 TMS2564 2716 2732 @ 25V. -EPROM : 2732A 2764 27128 27256 @ 21V. -EPROM : 2764 27128 27256 27512 @ 12.5V. -EEPROM : HM-58064 (scrittura e lettura). -RAM : 48Z02 (scrittura e lettura). -PROM : MCM7681 (solo lettura). La scelta del tipo di dispositivo viene effettuata attraverso il software di gestione che si presenta nel modo seguente : M6809-XDOS-EPROM-PROGRAMMER 4.xx-EPG512 by MICROLAB 1987 Port $yyyy - FCPU = zzz MHz 1 - INT2716 02048 x 8 EPROM 2 - TMS2532 04096 x 8 EPROM 3 - INT2732 04096 x 8 EPROM 4 - INT2764 08192 x 8 EPROM 5 - INT2764 08192 x 8 EPROM Algoritmo Intel 6 - INT27128 16384 x 8 EPROM 7 - INT27128 16384 x 8 EPROM Algoritmo Intel 8 - INT27256 32764 x 8 EPROM 9 - INT27256 32764 x 8 EPROM Algoritmo Intel A - TMS2564 08192 x 8 EPROM B - INT27512 65536 x 8 EPROM C - INT27512 65536 x 8 EPROM Algoritmo Intel D - MK48Z02 02048 x 8 RAM E - MCM7681 01024 x 8 PROM F - HM58064 08192 x 8 EEPROM .xx sta ad indicare la revisione del software; $yyyy sta ad indicare l'indirizzo del Port di I/O attivo, zzz sta ad indicare la frequenza di CPU misurata all'atto dell'accensione. Il programmatore di EPROM mod. EPG512 viene connesso direttamente all'Host Computer attraverso l'interfaccia predisposta per la Line-printer (Standard Centronics); il Port-A, solitamente bufferato e percio' unidirezionale, viene usato come port per i segnali di controllo mentre il Port-B, solitamente non bufferato, viene usato come port per il trasferimento dei dati da e verso il dispositivo montato nell'apposito zoccolo. Il programmatore di EPROM mod. EPG512 e' corredato di software per i seguenti sistemi di sviluppo : -EXORciser M6809 sotto MDOS09 3.06 -EXORset 30-33-100 sotto XDOS 4.12 - 4.13 -M6809DS operante sotto XDOS 4.14

Page 10: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

10

Il software fornito di serie consente di effettuare le seguenti operazioni : R EPROM read L LOAD disk-file S SAVE disk-file P EPROM programming E EPROM-RAM verify V EPROM test D MEMORY dump M DATA move X MONITOR entry H EPROM select Q DOS return K SELF-TEST Le temporizzazioni sono sempre effettuate via Software partendo dal clock della CPU che si suppone di 1 MHz in caso di EXORset ma che puo' essere 1.0 - 1.5 - 2.0 MHz in caso di EXORciser ; il programma segnala con apposito messaggio la frequenza di lavoro e verifica che sia fra quelle consentite. La procedura di Test del programmatore consente di controllare l' efficienza dell' hardware in caso si verifichino malfunzionamenti. Per attivare tale procedura e' necessario portare a 1 il flag TSTFLG contenuto nel PSN $0000 (offset 4) attraverso la seguente procedura di DUMP. =DUMP EP512.CM : R 0 : S : 4/1/ : S : W 0 : Q = Caricando il programma EPG512 in memoria il menu delle procedure verra' aggiornato con l' inclusione della procedura di test. All'interno della procedura di test potranno essere effettuate le scelte seguenti : Non inserire EPROM ! 1 Test Read-Status 2 Test PGM-Status 3 Test PGM-Pulse 4 Set Vpp = 0 5 Set Vpp = 5 6 Set Vpp = 12.5 7 Set Vpp = 21 8 Set Vpp = 25 9 Scala tensioni A Generazione indirizzi Q End SELF-TEST Exit via BREAK

Page 11: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

11

LA PROCEDURA DI TEST VA ESEGUITA SENZA ALCUN DISPOSITIVO INSERITO NELLO ZOCCOLO . Scegliendo lo status Read o PGM si puo' verificare la correttezza dei livelli logici presenti ed il valore della tensione di programmazione Vpp (a tale scopo sono stati riportati nelle pagine seguenti le condizioni Read e PGM delle EPROM piu' diffuse). Scegliendo Test PGM Pulse e' possibile verificare con un oscilloscopio la forma d'onda dell' impulso di programmazione. Le caratteristiche di tale impulso sono le seguenti : Ampiezza : livelli compatibili TTL (LLB max. 0.4 V. - LLA min. 2.4 V.) Durata : (dipende dal tipo di algoritmo impiegato) normalmente 2 ms. L'indirizzo base del port-parallelo PIA MC6821 e' : - $EC10 per le versioni MDOS M6800 e M6809 - $EF60 per la versione XDOS M6809 per EXORset - $EFC0 per la versione XDOS M6809 per M6809DS il software fornito riconosce l'indirizzo del port-parallelo della stampante fra una serie di 5 indirizzi collocati nel PSN $0000 del programma di gestione (partendo da offset $16). Non e' quindi piu' necessario inizializzare la zona PORT (offset 2-3) del PSN $0000 del software di gestione. TABELLA PRINTER PORT PSN $0000 Offset Contenuto $16 EF CO Printer Port M6809SBC $18 EF 60 Printer Port EXORset $1A EC 10 Printer Port EXORciser $1C 00 00 Printer Port libero $1E 00 00 Printer Port libero La tabella PRINTER PORT viene scandita dall'alto verso il basso pertanto la prima posizione e' quella a piu' elevata priorita'. Per assegnare un port specifico al programmatore di EPROM (distinto da quello della Line-Printer) e' necessario modificare il contenuto della tabella PRINTER PORT attraverso l'uso dei comandi DUMP o PATCH. Ad esempio si voglia assegnare al Programmatore di EPROM un port con indirizzo-base $ED00; si dovra' procedere come segue : =DUMP EPG512.CM : R 0 : S : 16/ED,00/ : S : W 0 : Q =

Page 12: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

12

PSN $0000 Parametri Software - TSTFLG 1 byte Off. $04 (0=NO - 1=SI) - PRINTER-PORT TABLE 11 bytes Off. $16 - FDC-CODE TABLE 16 bytes Off. $06 MESSAGGI DI ERRORE : ** E401 ** Illegal EPROM code ** E402 ** FDC firmware error ** E403 ** FCPU Error ** E404 ** Port Error ***************************************************** * PINOUT VARIE EPROM * ***************************************************** Pinout Comune 24 pin ------------------- ------------------- | Pin Sig. | | Pin Sig. | ------------------- ------------------- 01 A7 24 Vcc 02 A6 23 A8 03 A5 22 A9 04 A4 21 *** 05 A3 20 *** 06 A2 19 *** 07 A1 18 *** 08 A0 17 D7 09 D0 16 D6 10 D1 15 D5 11 D2 14 D4 12 GND 13 D3 ----------------------------------------------------- | Pin 2708 2716 2732 2532 | ----------------------------------------------------- 18 Vpp -CE/PG -CE/-PG A11 19 Vdd A10 A10 A10 20 -CS/WE -OE -OE/Vpp -CE/-PG 21 Vbb Vpp A11 Vpp 2708 24 pin - 1K x 8 EPROM +5 +12 -5 Vdd=+12V, Vbb=-5V PGM Vpp 26 V pulsed NxTpw=100ms, WE to Vdd. RD -CS, Vpp LOW. 2716 24 pin - 2K x 8 EPROM +5V Vpg: 25V PGM PG TTL pulse act. HIGH, -OE HIGH, Vpp=Vpg RD -CE, -OE LOW; Vpp=HIGH 2732 24 pin - 4K x 8 EPROM +5V Vpg: 21V, 25V PGM -PG TTL pulse act. LOW, Vpp=Vpg RD -CE, -OE/Vpp LOW 2532 24 pin - 4K x 8 EPROM +5V Vpg: 25V PGM -PG TTL pulse act. LOW, Vpp=Vpg RD -CE LOW, Vpp HIGH.

Page 13: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

13

Pinout Comune 28 pin ------------------- ------------------- | Pin Sig. | | Pin Sig. | ------------------- ------------------- 01 *** 28 Vcc 02 *** 27 *** 03 A7 26 *** 04 A6 25 A8 05 A5 24 A9 06 A4 23 *** 07 A3 22 *** 08 A2 21 A10 09 A1 20 *** 10 A0 19 D7 11 D0 18 D6 12 D1 17 D5 13 D2 16 D4 14 GND 15 D3 ----------------------------------------------------- | Pin 2564 2764 27128 27256 27512 | ----------------------------------------------------- 01 Vpp Vpp Vpp Vpp A15 02 -CS1 A12 A12 A12 A12 20 A11 -CE -CE -CE -CE 22 -PGM/PD -OE -OE -OE -OE/Vpp 23 A12 A11 A11 A11 A11 26 Vcc N.C. A13 A13 A13 27 -CS2 -PGM -PGM A14 A14 2564 28 pin - 8K x 8 EPROM +5V Vpg: 25V PGM -PGM TTL pulse act. LOW, -CS1, -CS2 LOW, Vpp=Vpg RD -CS1, -CS2, -PGM Low, Vpp HIGH. 2764 28 pin - 8K x 8 EPROM +5V Vpg: 12.5V, 21V PGM -PGM TTL pulse act. LOW, -CE LOW, -OE HIGH, Vpp=Vpg RD -CE, -OE LOW, -PGM, Vpp HIGH. 27128 28 pin - 16K x 8 EPROM +5V Vpg: 12.5V, 21V PGM -PGM TTL pulse act. LOW, -CE LOW, -OE HIGH, Vpp=Vpg RD -CE, -OE LOW, -PGM, Vpp HIGH. 27256 28 pin - 32K x 8 EPROM +5V Vpg: 12.5V, 21V PGM -CE TTL pulse act. LOW, -OE HIGH, Vcc=6V PGV -CE HIGH, -OE LOW, Vpp=Vpg, Vcc=6V RD -CE, -OE LOW, Vpp HIGH, Vcc=5V 27512 28 pin - 64K x 8 EPROM +5V Vpg: 12.5V PGM -CE TTL pulse act. LOW, -OE/Vpp=Vpg, Vcc=6V PGV -CE LOW, -OE/Vpp LOW, Vcc=6V RD -CE, -OE LOW, Vcc=5V

Page 14: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

14

--------------------------------------------------- - - - CONNESSIONI CONN. CANNON 25-POLI HDW EPG512 - - - --------------------------------------------------- CONN.25 POLI HDW-EPG512-26 poli 1 ------------------------------ 2 <----------------------------- 1 3 -----------------------------> 12 4 -----------------------------> 9 5 -----------------------------> 10 6 -----------------------------> 7 7 -----------------------------> 8 8 -----------------------------> 5 9 -----------------------------> 6 10 -----------------------------> 3 11 -----------------------------> 4 12 ------------------------------ 13 -----------------------------> 25 14 <----------------------------> 23 15 <----------------------------> 22 16 <----------------------------> 21 17 <----------------------------> 20 18 <----------------------------> 19 19 <----------------------------> 18 20 <----------------------------> 17 21 <----------------------------> 16 22 23 ------------------------------ 11 24 ------------------------------ 24 25 ------------------------------ N.C. 2-13-14-15-26 --------------------------------------------------- - - - CONNESSIONI TRA HOST-COMPUTER E CONNETTORE - - CANNON 25-POLI FEMMINA PER PROGRAMMATORE - - - --------------------------------------------------- CONN.25 POLI SEGNALI-HOST 1 ------------------------------ GND 2 -----------------------------> CA1 3 <----------------------------- CA2 4 <----------------------------- PA0 5 <----------------------------- PA1 6 <----------------------------- PA2 7 <----------------------------- PA3 8 <----------------------------- PA4 9 <----------------------------- PA5 10 <----------------------------- PA6 11 <----------------------------- PA7 12 -----------------------------> CB1 13 <----------------------------- CB2 14 <----------------------------> PB0 15 <----------------------------> PB1 16 <----------------------------> PB2 17 <----------------------------> PB3 18 <----------------------------> PB4 19 <----------------------------> PB5 20 <----------------------------> PB6 21 <----------------------------> PB7 22 ------------------------------ 23 ------------------------------ GND 24 ------------------------------ GND 25 ------------------------------ GND

Page 15: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

15

82C55A Il circuito integrato INTEL 82C55A è un’interfaccia per I/O programmabile (PPI= Programmable Peripheral Interface) atta a collegare una generica periferica al Bus della CPU. La configurazione operativa del 82C55A è controllabile da software,in modo da rendere inutile l’uso di circuiti logici esterni per il normale interfacciamento. È dotato di 24 linee divise in 3 PORT: - 8 linee appartenenti al PortA; - 8 linee appartenenti al PortB; - 8 linee appartenenti al PortC. Le 8 linee del portA e del PortB possono essere programmate per funzionare o da ingressi o da uscite; mentre le linee del PortC possono essere suddivise in 2 gruppi da 4 bit ciascuno.

Buffer per il Bus Dati Viene utilizzato un buffer three-state bidirezionale a 8 bit per interfacciare l’82C55A al Bus Dati del sistema. I dati sono trasmessi o ricevuti dal buffer sotto il controllo delle istruzioni di ingresso o di uscita inviate dalla Cpu. Anche le parole di controllo e le informazioni di stato vengono trasferite attraverso questo buffer.

Circuiti logici di controllo e di lettura/scrittura. La funzione di questo è di gestire tutti i trasferimenti interni ed esterni sia dei dati che delle parole di controllo di stato. Riceve comandi del Bus Indirizzi e da quello di controllo della Cpu e controlla entrambe i gruppi di linee. ___ (CS) Chip Select. La presenza di un livello basso a questo piedino d'ingresso abilita le comunicazioni tra l’interfaccia e la Cpu. ___ (RD) Read. La presenza di un livello basso a questo piedino d'ingresso abilita l’82C55A ad inviare dati o informazioni di stato alla Cpu tramite il Bus Dati. In altre parole la Cpu è abilitata a leggere l’82C55A. ___ (WR) Write. La presenza di un livello basso a questo piedino di ingresso abilita la Cpu a scrivere dati o parole di controllo nell’83C55A. (A0 e A1) __ ___ Port Select 0 e Port Select 1. Questi segnali da ingresso, assieme alle precedenti linee RD e WR, permettono di selezionare una delle tre Port d'accesso ai rispettivi registri di controllo. Normalmente queste due linee sono connesse ai due bit meno significativi del Bus degli indirizzi (appunto A0 e A1). (RESET) Reset. La presenza di un livello alto a questo piedino azzera il registro di controllo e tutti i port (A, B e C) vengono settati come ingresso.

Page 16: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

16

Operazioni fondamentali dell’82C55A:

Possono essere selezionati da software tre diversi modi operatevi: Modo 0 – ingresso/uscita normale Modo 1 – ingresso/uscita controllato da strobe Modo 2 - bus bidirezionale Quando il segnale d’ingresso di reset assume un valore alto tutti i Port vengono selezionati come ingressi (cioè tutte le 24 linee si portano in uno stato di alta impedenza). Quando il comando di reset termina l’82C55A resta in tale condizione senza che siano richiesti altri comandi. Durante l’esecuzione del programma possono essere utilizzati tutti i modi operativi disponibili mediante l’invio dalla Cpu di una sola istruzione contenente la parola di controllo appropriata. Ciò permette di utilizzare un solo 82C55A per gestire contemporaneamente diversi tipi di periferiche. I modi operativi due Port A e B possono essere definiti in maniera indipendente l’uno dall’altro, mentre il Port C viene diviso in due parti in funzione di quanto specificato per gli altri due Port. Tutti i registri d’uscita, inclusi i flip-flop di stato, vengo resettati ogni volta che viene cambiato modo operativo. Le definizioni di modo dei due port possono essere combinare tra di loro in modo da adattare l’interfaccia alle varie periferiche. Ad esempio il gruppo B può essere programmato in modo OUT per controllare la chiusura di una serie di tasti o visualizzare sul display dei risultati, mentre il gruppo A può essere programmato in modo IN per gestire una tastiera o un lettore di schede o qualsiasi altro dispositivo gestibile mediante interrupt. Le definizioni di modo e le loro combinazioni possibili possono all’inizio un inutile complicazione e risultare difficili da comprendere, ma dopo il primo impatto se ne comprenderà la versatilità d’uso offerta da queste scelte e risulteranno alla fine di facile apprendimento. La progettazione dell’82C55A ha tenuto conto di vari fattori, quali l’efficienza della disposizione dei componenti sulla scheda di trasporto e la facile connessione dei segnali di controllo tra CPU e interfaccia, ed ha cercato di offrire la massima versatilità di funzioni svolte sfruttando tutti ipiedini disponibili dell’integrato.

Controllo degli interrupt: quando l’82C55A è programmato per funzionare in modo1 o modo 2, i segnali di controllo possono essere utilizzati direttamente per generare richieste di interrupt alla CPU. Quando ciò avviene, i segnali di richiesta di interrupt generati dal Port C possono essere abilitati o disabilitati ponendo a livello alto o basso il flip-flop INTE associato, utilizzando l’istruzione set/reset di un singolo bit del Port C. Con tali istruzioni il programmatore può permettere o negare ad un dispositivo di I/O la possibilità di lanciare interrupt. Se viene posto ad 1 il contenuto di un dato bit del flip-flop INTE, l’interrupt del dispositivo relativo viene abilitato, mentre se viene posto a 0 l’interrupt risulta disabilitato.

Page 17: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

17

Modi operativi: Modo 0 (ingresso uscita normale). Questa configurazione operativa permette di instaurare su tutti i 3 Port le normali funzioni di lettura o scrittura di un dato. Non è richiesto alcun segnale di controllo tipo handshake in quanto i dati vengono semplicemente letti o scritti nel Port relativo. Caratteristiche del Modo 0: - due Port a 8 bit e due Port a 4 bit; - qualsiasi Port può essere definito come ingresso o come uscita; - le uscite sono memorizzate; - gli ingressi non sono memorizzati; - sono possibili 16 diverse combinazioni di I/O. Modo 1 (ingresso/uscita mediante strobe). Questo tipo di configurazione permette di trasferire i dati da un Port mediante il controllo di segnali di handshake. Nel modo 1 il Port A e il Port B usano le linee del Port C per generare o acquisire questi controlli. Caratteristiche del Modo 1: - due gruppi di trasferimento (gruppo A e gruppo B); - ciascun gruppo contiene un Port di dati da 8 bit e un Port di controllo dei dati da 4 bit; - i due port di dati ad 8 bit possono essere sia d’ingresso che d’uscita. Sia le uscite che gli ingressi sono

memorizzate; - i due Port a 4 bit vengono usati per emettere i segnali di controllo e fornire lo stato del dispositivo alle

periferiche collegate ai due Port ad 8 bit. Modo 2 (ingresso- uscita di dati attraverso bus bidirezionale e segnali di controllo). Questa configurazione operativa permette all’82C55A di interfacciarsi direttamente ad un dispositivo avente un bus bidirezionale ad 8 bit. I segnali di controllo (con modalità di handshake) permettono di regolare il flusso dei dati in maniera analoga a quella vista per il Modo 1. È possibile inoltre sia generare un segnale di interrupt che di abilitarne e disabilitarne il funzionamento. Caratteristiche del Modo 2: - si può usare solo il gruppo A; - un bus bidirezionale ad 8 bit disponibile sul Port A e 5 linee di controllo accessibili sul Port C; - sia gli ingressi che le uscite sono memorizzate; - il Port di controllo a 5 bit (Port C) viene usato per controllare e leggere lo stato del bus

bidirezionale ad 8 bit (Port A) DATA-SHEET 82C55A

Page 18: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

18

FUNZIONAMENTO DEL CIRCUITO L’interfacciamento del PC al programmatore avviene tramite l’8255 che serve per compensare la differenza di architettura dei due dispositivi. Il programmatore ha un’architettura simile a quella Motorola, ha due Port: il PortA e il PortB. Il primo è unidirezionale perché utilizzato esclusivamente per i segnali di controllo che dal Computer vanno verso il programmatore. Il secondo invece, è bidirezionale perché è usato per il trasferimento dei dati da e verso la EPROM montata sullo zoccolo. In più sull’8255 è presente un altro Port ; il PortC che viene utilizzato solo in parte per il controllo dei segnali secondari, come: CB1, CB2, CA2 (guarda schema elettrico, blocco “Port”). Dal PortA i segnali PA7 e PA6 partono verso due contatori CD4040 collegati tra di loro in cascata; PA7 fornisce l’impulso di clock al contatore Ic8, mentre PA6 fornisce l’impulso di reset ad ambo due i contatori. I bit rimanenti del PortA (da PA0 a PA5) vanno verso gli integrati 74LS259 e 74LS174 (blocco “tensioni variabili”). Il 74LS259 è una memoria indirizzabile: le possibili combinazioni derivate dai bit PA0, PA1, PA2, PA3 fanno eccitare il corrispondente relè il quale cambia il funzionamento del piedino sullo zoccolo; perché i piedini delle eprom non sono uguali per tutte. Il 74LS174 invece, è un registro PIPO ( Parallel Input Parallel Output) che ha la funzione di controllare i transistor open collector (SN7407) presenti sulle uscIte dell’integrato per l’utilizzo della esatta tensione di programmazione che varia da EPROM a EPROM. L’alimentazione di tutto il circuito è controllata dal blocco “Generatore” che è costituito da un trasformatore a due linee, una 0-24V e l’altra 0-8V. La prima linea (quella da 0-24V) si occupa della generazione di tutte le tensioni di programmazione necessarie per i diversi tipi di EPROM; mentre la seconda linea (quella da 0-8V) viene utilizzata per alimentare tutti gli integrati presenti nel circuito.

Page 19: PROGRAMMATORE DI EPROM - Home page sito web … · La sigla eprom deriva dall’inglese “Erasable Programmable Read Only Memory” (memoria di sola lettura ... D - MK48Z02 02048

19


Recommended