Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Capitolo 1

Home » Programma il Computer » Tutorial Assembly

Capitolo 1 - Il processore - Il Debugger

  Il Processore e il Debugger

PROCESSORE 80x86 1/14 [12 di 60] 

    

    Il Pin-Out della CPU 8086
     
bulletIl modo migliore per tentare di saperne di più sulle linee di controllo è quello di osservare il pin-out di un processore, cioè la disposizione dei suoi piedini.
bulletPoichè l'analisi dei 478 piedini del Pentium 4 sembra improponibile, analizzeremo quelli del vecchio padre 8086 (che per altro abbiamo adottato anche per lo sviluppo dei prossimi programmi in Assembly).
bulletIn quel tempo i componenti integrati avevano ancora la forma snella e allungata dei contenitori Dual-in-Line (cioè con piedini in linea su 2 file) e la dimensione dei più grandi era proprio di 40 pin (20+20) come quella del nostro... Vediamola:

      

      

bulletI limiti di questa struttura hanno subito imposto scelte obbligate ai progettisti; il conto è presto fatto: 20 linee d'indirizzo, più 16 di dato, più 2 per l'alimentazione (Vcc e GND)... fanno 38 piedini!
bulletAvendone solo 40 a disposizione si doveva inventare qualcosa: per recuperare spazio 16 sono stati destinati sia a tutte e 16 le linee del bus dati che alle prime 16 (su 20) linee del bus address.
bulletPer questo già con il processore successivo (descritto nella prossima pagina) la struttura del suo contenitore è cambiata da DIP (Dual InLine Package) a 40 pin alla più capiente PLCC (Plastic Leaded Chip Carrier) o PGA (Pin Grid Array), da 68 pin, più che sufficienti per ospitare tutti i segnali necessari.

      

bulletMa torniamo al nostro 8086: la presenza su quei piedini (AD0 - AD15) di segnali così diversi non può essere contemporanea, per cui il processore pone su di essi, in tempi diversi, prima la parte bassa dell'indirizzo necessario e poi il dato a 16 bit.
bulletIl problema è ora scaricato sulle spalle del progettista che si trova nella necessità di memorizzare l'indirizzo poco dopo la sua apparizione sul bus, per mantenerlo stabile e visibile anche quando sarà sostituito dal dato da coinvolgere con la  memoria o con il dispositivo di I/O corrispondente a quel indirizzo; per questa operazione è indispensabile un segnale di controllo, ALE (Address Latch Enable), che entra in gioco nel seguente modo:
bulletil processore porta ALE a 1 (a riposo questo segnale vale 0) e subito dopo mette su AD0 - AD15 l'indirizzo che, con le rimanenti linee "libere", AD16 - AD19, punta la locazione (o il dispositivo) desiderata.
bulletquando l'indirizzo è stabile sul suo bus, il processore porta ALE a 0: questo fronte di discesa dovrà essere utilizzato per memorizzare localmente (per esempio con 2 74LS374) il numero a 16 bit dell'indirizzo.
bulletpoco dopo (con ALE sempre a 0) leva l'indirizzo dal bus e mette al suo posto il dato, attivando quasi contemporaneamente WR, cioè portandolo a 0 dallo stato di riposo, 1.
bulletdopo qualche istante riporta prima WR a 1 e poi toglie anche il dato, sperando che la memoria abbia avuto il tempo di riceverlo...

      

bulletQuello ora descritto è un ciclo di scrittura memoria e, per tutto il tempo necessario (circa 4 cicli di clock), il segnale MEM/IO è stato tenuto a 1.
bulletPoichè lo scopo del Tutorial è quello di imparare a programmare questi preziosi oggetti, non ritengo opportuno continuare nella descrizione degli altri segnali di controllo; se si presenterà l'occasione magari potremo riparlarne nella Sezione Hardware, progettando l'intera struttura...

    

Pagina Precedente Capitolo 1 Pagina Successiva PROCESSORE 80x86 1/14   Torna alla Home  del Capitolo1 del "Tutorial" Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
12 di 60
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

    

CAP. 1 » 1. Processore 80x86 2. Istruzioni 80x86  3. Debug  4. La Grande Libreria
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati