Perché la EEPROM seriale è preferita alla EEPROM parallela?


17

Nella pagina di Wikipedia per EEPROM: http://en.wikipedia.org/wiki/EEPROM si dice che "I dispositivi EEPROM paralleli hanno in genere un bus dati a 8 bit e un bus indirizzo sufficientemente ampio da coprire l'intera memoria" e anche "Il funzionamento di una EEPROM parallela è semplice e veloce rispetto alla EEPROM seriale". In tal caso, perché le EEPROM seriali stanno diventando più popolari delle EEPROM parallele?


2
Richiedono meno pin e vari bus seriali sono molto comuni nei progetti. Con velocità moderne la velocità del seriale è assolutamente perfetta per ciò che viene utilizzato per i dispositivi EEPROM.
David,

Sicuramente con le stesse velocità moderne, un'interfaccia parallela darebbe un throughput molto migliore rispetto a un'interfaccia seriale?
Arpith,

1
Certo, ma se non hai bisogno di una velocità maggiore rispetto a quella seriale, perché i pin di scarico?
David,

1
... ecco perché abbiamo USB, non UPB
Chu,

1
E seriale ATA, PCI express ecc.
David

Risposte:


27

È molto semplice. Numero di pin e costo dell'imballaggio.

I dispositivi EEPROM vengono utilizzati principalmente per memorizzare dati parametrici o costanti di caratterizzazione per un dispositivo. Lo scenario tipico è scrivere molto raramente e leggere in genere una volta ogni volta che si avvia il dispositivo host. Per questo tipo di applicazione i tempi di scrittura relativamente lenti di EEPROM destano poca preoccupazione. E il tempo di lettura per caricare al massimo pochi K-byte di dati da un dispositivo seriale (SPI o I2C) non è normalmente un impatto temporale eccessivo.

C'è un altro fattore che ha giocato nella popolarità dei dispositivi seriali rispetto ai dispositivi paralleli. Questa è stata la migrazione dei dispositivi MCU dalle vecchie unità a microprocessore con bus paralleli ai tipi moderni molto più diffusi che hanno tutta la memoria di archiviazione del programma e la memoria dei dati incorporata direttamente sul chip. Spesso non è più disponibile direttamente un'opzione bus parallelo. E nella maggior parte delle applicazioni c'è ben poco interesse nell'utilizzare scaduti di pin per bit bang su una periferica parallela.


Vuoi dire che l'unico fattore decisivo qui è il settore immobiliare che occupano i pin?
Arpith,

1
@Arpith Non è una considerazione insignificante. Una EEPROM da 32 kilobit parallela richiederebbe oltre 20 pin e un pacchetto corrispondente di grandi dimensioni; uno seriale ne richiede due.
Nick Johnson,

1
@MichaelKaras: +1 per l'ultimo para per la tua risposta (non hai trovato queste informazioni da nessuna parte). Qualche fonte / riferimento per aiutarmi a saperne di più sui tipi di EEPROM?
Arpith,

2
Inoltre, è possibile collegare dispositivi SPI a catena e disporre di più dispositivi I2C su un bus, risparmiando ulteriormente i pin.
pjc50,

1
Le proprietà immobiliari richieste per instradare le tracce extra per un pacchetto parallelo possono essere significative anche in alcune applicazioni.
semaj,

12

All'inizio, i fili erano economici e i transistor erano costosi. In questi giorni è il contrario. Quindi perché quasi tutto viene fatto in serie.

All'inizio, i chip non erano molto sofisticati e una CPU si accendeva e leggeva la prima cosa che trovava sul suo bus di memoria all'indirizzo di partenza, quindi le EEPROM parallele imitavano efficacemente la DRAM che era sospesa sul bus.

In questi giorni, la RAM DDR sta urlando a Gigahertz su enormi autobus di grandi dimensioni, creare un chip flash che potrebbe appendere sullo stesso bus sarebbe proibitivamente costoso e abbastanza inutile quando le moderne CPU hanno abbastanza intelligenza integrata (grazie a piccoli transistor economici) per avvio da I²C / SPI flash.

Con i micro, in questi giorni il programma flash e la RAM sono generalmente interni al dispositivo. La memoria esterna come EEPROM può essere sospesa su un bus I²C, salvando i pin I / O per altre funzioni mantenendo una velocità accettabile. Meno pin I / O si utilizzano, più piccolo, più economico e più efficiente dal punto di vista energetico si ottiene. Inoltre è molto più facile tenere traccia di due fili attorno a una scheda rispetto a due bus larghi 8/16/32 bit, con i relativi problemi EMC, ecc., Ecc.


Se un processore deve utilizzare un bus di memoria per accedere alla sua memoria principale, e se quel bus di memoria è abbastanza lento che il caricamento capacitivo non è un problema particolare, l'interfacciamento di una EEPROM parallela progettata per essere scritta "nel sistema" molti casi sono più facili ed economici rispetto all'interfaccia seriale. I segnali di decodifica dell'indirizzo sono spesso generati in gruppi di otto e se uno ha un segnale di decodifica dell'indirizzo disponibile, l'aggiunta di una EEPROM parallela può richiedere zero circuiti aggiuntivi.
supercat

La memoria di avvio del PC è un'applicazione in qualche modo insolita, sebbene un aspetto interessante sia che alcuni processori abbiano bus altamente configurabili e abbiano abbastanza RAM cache per contenere una quantità significativa di codice senza usare il bus esterno principale. Se il processore può caricare un po 'di codice iniziale prima che debba usare il bus esterno, quel codice può quindi configurare le caratteristiche del bus in modo che corrispondano alla configurazione hardware fisica.
supercat

9

Non dimenticare che esiste una "casa a metà strada" chiamata SQI. Questa è un'interfaccia seriale a più bit paralleli (sta per Serial Quad Interface ).

Dal punto di vista del protocollo è esattamente come lavorare con una normale interfaccia seriale, ma invece di trasferire solo un bit ogni clock, è possibile trasferire 4 bit contemporaneamente. Invece di un singolo data / clock o din / dout / clock dispone di 4 pin di dati e un clock. Ciò offre 4x il throughput di una normale interfaccia seriale e non richiede molti più pin. In effetti molti chip flash SPI possono anche funzionare in modalità SQI senza richiedere più degli 8 pin esistenti che già hanno. Un aumento significativo della velocità senza alcun aumento nel settore immobiliare.

SQI sta diventando un'interfaccia popolare per il caricamento più rapido di programmi da chip flash esterni, non solo per microcontrollori semplici, ma ora anche spesso utilizzato per l'avvio del BIOS di PC, in particolare laptop, in cui lo spazio è una vera preoccupazione.


Wow. Questo di cui non avevo sentito parlare.
Arpith,

SQI offrirà 4 volte la velocità effettiva del flash seriale durante il recupero di dati in sequenza, ma un flash parallelo di 8 bit può essere ancora più veloce di un ordine di grandezza quando un byte ciascuno da molte posizioni "casuali".
supercat,

6

Il basso numero di pin sul dispositivo stesso è probabilmente meno importante del risparmio sull'MCU o sull'FPGA a cui lo si collega.

Trovare 8 pin di dati, oltre a molti altri indirizzi, selezionare e abilitare i pin significa un pacchetto molto più grande e probabilmente anche più spese per l'MCU.


2

Mentre i chip EEPROM paralleli sono più veloci e meno complicati da comunicare, quelli seriali sono meno costosi dal punto di vista hardware, poiché richiedono meno pin, energia e fili / circuiti.


2

Per i sorrisi, diciamo che ho una vecchia radio a 2 vie nel mio aereo, con 16 frequenze disponibili e selezionabili dall'abitacolo, dove risiede l'unità di controllo.

A poppa, da qualche parte, è l'unità trasmettitore-ricevitore con un cavo che corre verso l'unità di controllo contenente, tra le altre cose, i 16 fili che corrono verso il selettore della cabina di pilotaggio necessari per effettuare la selezione della frequenza.

Un giorno, quando parlo con un amico, sollevo l'argomento della radio e gli chiedo se non sarebbe possibile codificare le impostazioni della frequenza della cabina in un numero binario a quattro bit e inviare quel numero su quattro fili (salvando 12 fili ) all'unità T / R dove verrebbe decodificata nei sedici segnali necessari per effettuare la selezione della frequenza.

"Certo", dice, "ma perché fermarsi qui? Invece di inviare il numero [a quattro bit] tutto in una volta, perché non inviarlo un po 'alla volta su un singolo filo e avere il decodificatore nella figura dell'unità T / R la frequenza da selezionare, salvando 15 fili nel cavo e 15 pin ciascuno nei connettori che collegano le unità? "


1

Di seguito sono riportati alcuni motivi per cui la EEPROM seriale è preferita alla EEPROM parallela.

  1. Consumo di corrente inferiore . Ad esempio, le correnti operative per i seriali 16K sono di circa 3 mA; lo stesso per i dispositivi paralleli 16K è di circa 30 mA e oltre. Quindi più bassa è la corrente, minore è il consumo di energia.

  2. Bassa tensione - EEPROM seriali sono disponibili nei mercati che operano a bassa tensione (1,8-2,5 V). Il funzionamento a bassa tensione ha anche un effetto positivo sul consumo di energia.

  3. Programmabilità : le EEPROM seriali sono più facili da programmare rispetto al parallelo. Le EEPROM seriali hanno la capacità e la facilità di programmare un byte alla volta;

  4. Le EEPROM seriali sono disponibili con ingombro ridotto

  5. Conteggio pin inferiore

  6. Disponibile a un prezzo inferiore rispetto a quelli paralleli

  7. Basso sovraccarico e supporto del microcontrollore


Il punto 2 è probabilmente secondario. Non vi è alcun motivo tecnico per cui le EEPROM parallele necessitino di un'alta tensione. Ma le EEPROM a bassa tensione si rivolgono al mercato delle basse potenze e, per questo motivo, quelle EEPROM a bassa potenza sono in serie.
Salterio

2
Non sono sicuro che Sanjeev stia confrontando dispositivi simili a quelli qui, anche se disponibili. Le eeprom parallele sono piuttosto vecchie, mentre quelle seriali sono generalmente un fenomeno più moderno, quindi dire che un dispositivo 16k degli anni '80 è meno efficiente di un dispositivo 16k del 2015 è un po 'un falso confronto, probabilmente useranno tecnologie completamente diverse. ...
John U,

Qual è l'unità per "16K"? Sono 16 kilobit? 16 kilobyte?
Peter Mortensen,

Sono 16 kilobyte.
Sanjeev Kumar,

@ Giovanni Questo confronto non era basato sul tempo. Anche se guardi alle EEPROM seriali più vecchie, non funzionano a tensioni più basse. Questo confronto si basa solo sulla tecnologia disponibile oggi.
Sanjeev Kumar,

-2

Nessuno sembra aver menzionato un'altra ragione per il seriale.

È più veloce. SÌ, più veloce. Perché cercare di mantenere sincronizzati tutti quei segnali paralleli ad alta velocità è difficile. È molto più facile andare veloci con il seriale. E se ciò non è abbastanza veloce, aggiungi un altro canale (seriale parallela).


Si prega di dare un feedback, i voti negativi senza feedback sono inutili.
ctrl-alt-delor
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.