Che cos'è l'I / O dual / quad?


23

Leggendo una scheda tecnica SPI Flash , ho incontrato i concetti di "dual I / O" e "quad I / O". All'inizio ho pensato che "dual I / O" fosse sinonimo di "full duplex", ma che cos'è "quad I / O"?

Che cos'è l'I / O doppio e l'I / O quad e come si confrontano duplex e full duplex?


Ad esempio, Zynq PS (Cortex A9) ha un controller QSPI e interfacce su una scheda Zed con flash NOR seriale SPI (quad-SPI) a 4 bit. The Spansion S25FL256S

Risposte:


20

Un dispositivo SPI multi I / O è in grado di supportare una maggiore larghezza di banda o velocità effettiva da un singolo dispositivo. Una doppia interfaccia I / O (bus dati a due bit) consente di raddoppiare le velocità di trasferimento rispetto ai dispositivi di memoria flash seriale standard. Un'interfaccia I / O quad (bus dati a quattro bit) migliora la velocità di trasmissione quattro volte.

inserisci qui la descrizione dell'immagine


4
Questo non è un dispositivo SPI - SPI non utilizza pin bidirezionali.
Ben Voigt,

7
Supporto per schede di memoria SD utilizzando un bus a 4 bit. È difficile dire che non sono "un dispositivo SPI" poiché la stessa scheda (in qualche altro momento) può utilizzare il bus SPI standard "1 bit".
David

8

Significa che hai più linee seriali che condividono gli stessi segnali di controllo o, in modo diverso, una porta seriale con più di una linea dati.

Sia il doppio I / O che il quad I / O sono half duplex (spiegati a pagina 10), perché nel doppio I / O entrambe le linee sono utilizzate in parallelo per aumentare il throughput mantenendo lo stesso numero di fili, mentre in quad- I / O anche DQ2 e DQ3 sono usati come I / O insieme a DQ0 e DQ1.

Si noti che la modalità dual-I / O utilizza lo stesso numero di linee rispetto al normale bus SPI, evitando la necessità di pin aggiuntivi nell'uC e nella progettazione hardware dedicata.


1
"una porta seriale con più di una linea di dati" sarebbe chiamata porta parallela.
user253751

@immibis non necessariamente, perché in una porta parallela i due segnali devono essere sincroni tra loro, mentre due linee seriali possono trasmettere flussi indipendenti che sono combinati dal ricevitore
clabacchio

1
Ma l'orologio è condiviso. Entrambi i segnali sono sincronizzati con l'orologio e in modo transitorio l'uno con l'altro.
user253751

1
@immibis intendo dire che anche in parallelo invii simboli a due o quattro bit sulle due linee, mentre qui puoi inviare due flussi seriali veri in parallelo
clabacchio

5

Tale protocollo è chiamato SQI (simile a SPI) che significa protocollo I / O seriale seriale. È possibile sedare l'indirizzo / comando / dati tramite 4 pin anziché solo uno (SPI) e ricevere i dati tramite gli stessi 4 pin.

Essere half duplex o full duplex è una caratteristica di un sistema di comunicazione indipendentemente dal protocollo che si decide di utilizzare (ovviamente alcuni protocolli consentono il full duplex e altri no).

In effetti, Dual e Quad I / O non sono gli stessi del full duplex, sono solo protocolli diversi che è possibile utilizzare (a volte con lo stesso dispositivo). A partire da SPI (suppongo che tu sappia di cosa si tratta) che ha 1 pin da inviare e quindi ricevere (il che significa che il protocollo è half-plex); abbiamo quindi Dual I / O che utilizza 2 pin per inviare e ricevere (half-duplex), e infine Quad I / O che utilizza 4 pin per inviare e quindi ricevere (anche half-duplex).


4

Al giorno d'oggi, la gente lo chiamava come interfaccia SPIFI. Questo è usato principalmente nell'interfaccia Flash.

Dai un'occhiata alla scheda tecnica LPC18xx, capitolo 21: SPIFI. Link: http://www.nxp.com/documents/user_manual/UM10430.pdf

SPI a 1 bit: i dati saranno su 1 riga.

Ad esempio: - Sequenza di bit 7 6 5 4 3 2 1 0

SPI a 2 bit o SPI doppio: ci saranno dati su 2 righe.

Ad esempio: - Sequenza di bit

    Line 1 : 7 5 3 1

    Line 2 : 6 4 2 0

SPI 4 bit o SPI quad: ci saranno dati su 4 righe.

Ad esempio: - Sequenza di bit

    Line 1 : 7 3

    Line 2 : 6 2

    Line 3 : 5 1

    Line 4 : 4 0

1
ehi, penso che ti sei perso di vedere che l'OP ha già accettato la risposta ed è anche una domanda di 4 anni. Anche i tuoi punti sono già coperti.
Umar

1
@Umar, per essere onesti, questa risposta mostra che in realtà si chiama SPIFI e mostra anche le sequenze di bit. Entrambe queste cose non sono coperte in altre risposte. Quindi questo è un contributo valido non importa quanti anni ha la domanda originale.
stanri,

3

Come notato altrove, alcuni dispositivi flash hanno un'opzione che utilizza due o quattro pin per l'output dei dati. Un'altra opzione che ho visto su almeno un chip flash era usare un pin, ma emettere dati su entrambi i fronti di clock in salita e in discesa. Ciò consentirebbe il trasferimento a doppia velocità su un microcontrollore in grado di gestire un tale formato di dati, senza richiedere pin di dati aggiuntivi, quindi quattro clock emetterebbero ogni byte di dati su un pin. Non sono a conoscenza di alcun controller che supporti tale funzionalità, anche se non sono a conoscenza di alcuno che supporti l'uso di due o quattro cavi dati.


1
Il Microchip ATSAMS70 e processori ARM simili supportano dual e quad SPI per eseguire il codice da una memoria flash esterna come i chip flash della serie Micron N25Q, che supportano anche dual / quad SPI.
user4574
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.