Qu'est-ce qu'une E / S double / quadruple?

23

En lisant une fiche technique SPI Flash , j'ai rencontré les concepts de "double E / S" et "quad E / S". Au début, je pensais que «dual I / O» était synonyme de «full duplex», mais qu'est-ce que «quad I / O»?

Qu'est-ce que la double E / S et la quadruple E / S, et comment se comparent-elles au duplex et au duplex intégral?

Randomblue
la source
Par exemple, le Zynq PS (Cortex A9) possède un contrôleur QSPI et des interfaces sur une carte Zed vers un flash NOR série 4 bits SPI (quad-SPI). The Spansion S25FL256S

Réponses:

20

Un périphérique SPI à plusieurs E / S est capable de prendre en charge une bande passante ou un débit accru à partir d'un seul périphérique. Une interface double E / S (bus de données à deux bits) permet de doubler les taux de transfert par rapport aux périphériques de mémoire flash série standard. Une interface E / S quadruple (bus de données à quatre bits) améliore quatre fois le débit.

enter image description here

m.Alin
la source
4
Ce n'est pas un appareil SPI - SPI n'utilise pas de broches bidirectionnelles.
Ben Voigt
7
Les cartes mémoire SD prennent en charge l'utilisation d'un bus 4 bits. Il est difficile de dire qu'ils ne sont "pas un périphérique SPI" car la même carte (à un autre moment) peut utiliser le bus SPI "1 bit" standard.
davidcary
8

Cela signifie que vous avez plus de lignes série qui partagent les mêmes signaux de contrôle, ou autrement, un port série avec plus d'une ligne de données.

Les deux E / S et les E / S quadruples sont en semi-duplex (expliqué à la page 10), car en E / S doubles, les deux lignes sont utilisées en parallèle pour augmenter le débit en conservant le même nombre de fils, alors en quadruple. Les E / S également DQ2 et DQ3 sont utilisées comme E / S avec DQ0 et DQ1.

Notez que le mode double E / S utilise le même nombre de lignes que le bus SPI normal, évitant ainsi la nécessité de broches supplémentaires dans le uC et la conception matérielle dédiée.

clabacchio
la source
1
"un port série avec plus d'une ligne de données" serait appelé un port parallèle.
user253751
@immibis pas nécessairement, car dans un port parallèle, les deux signaux doivent être synchrones, tandis que deux lignes série peuvent transmettre des flux indépendants qui sont combinés par le récepteur
clabacchio
1
Mais l'horloge est partagée. Les deux signaux sont synchronisés sur l'horloge et transitivement l'un sur l'autre.
user253751
1
@immibis ce que je veux dire, c'est qu'également en parallèle vous envoyez des symboles à deux ou quatre bits sur les deux lignes, alors qu'ici vous pouvez envoyer deux vrais flux série en parallèle
clabacchio
5

Ce protocole est appelé SQI (ressemblant à SPI), ce qui signifie le protocole Serial Quad I / O. Vous pouvez sed l'adresse / commande / données via 4 broches au lieu d'une seule (SPI) et recevoir des données via les mêmes 4 broches.

Être semi-duplex ou duplex intégral est une caractéristique d'un système de communication quel que soit le protocole que vous décidez d'utiliser (bien sûr, certains protocoles autorisent le duplex intégral et d'autres tout simplement pas).

En effet, les E / S double et quadruple ne sont pas les mêmes que le duplex intégral, ce ne sont que des protocoles différents que vous pouvez utiliser (parfois avec le même appareil). À commencer par SPI (je suppose que vous savez ce que c'est) qui a 1 broche à envoyer puis à recevoir (ce qui signifie que le protocole est semi-plex); nous avons ensuite des E / S doubles qui utilisent 2 broches pour envoyer et recevoir (semi-duplex), et enfin des E / S quadruples qui utilisent 4 broches pour envoyer et recevoir (également semi-duplex).

Sébastien
la source
4

De nos jours, les gens l'appelaient interface SPIFI. Ceci est principalement utilisé dans l'interface Flash.

Jetez un œil à la fiche technique LPC18xx, chapitre 21: SPIFI. Lien: http://www.nxp.com/documents/user_manual/UM10430.pdf

SPI 1 bit: les données seront sur 1 ligne.

Par exemple: - Séquence de bits 7 6 5 4 3 2 1 0

SPI 2 bits ou SPI double: il y aura des données sur 2 lignes.

Par exemple: - Séquence de bits

    Line 1 : 7 5 3 1

    Line 2 : 6 4 2 0

SPI 4 bits ou SPI Quad: il y aura des données sur 4 lignes.

Par exemple: - Séquence de bits

    Line 1 : 7 3

    Line 2 : 6 2

    Line 3 : 5 1

    Line 4 : 4 0
user3497443
la source
1
Hé, je pense que vous avez manqué de voir que le PO a déjà accepté la réponse et c'est aussi une question vieille de 4 ans. Vos points sont déjà couverts également.
Umar
1
@Umar, pour être honnête, cette réponse montre qu'elle s'appelle en fait SPIFI et montre également les séquences de bits. Ces deux choses ne sont pas traitées dans d'autres réponses. Il s'agit donc d'une contribution valable, quel que soit l'âge de la question d'origine.
stanri
3

Comme indiqué ailleurs, certains périphériques flash ont une option qui utilise deux ou quatre broches pour produire des données. Une autre option que j'ai vue sur au moins une puce flash était d'utiliser une broche, mais de produire des données sur les fronts d'horloge montants et descendants. Cela permettrait un transfert à double vitesse sur un microcontrôleur qui pourrait gérer un tel format de données, sans nécessiter de broches de données supplémentaires, de sorte que quatre horloges produiraient chaque octet de données sur une broche. Je ne connais aucun contrôleur prenant en charge une telle fonctionnalité, mais je n'en connais pas non plus qui prennent en charge l'utilisation de deux ou quatre câbles de données.

supercat
la source
1
Le Microchip ATSAMS70 et les processeurs ARM similaires prennent en charge le SPI double et quadruple pour exécuter du code à partir d'une mémoire flash externe telle que les puces flash de la série Micron N25Q, qui prennent également en charge le SPI double / quadruple.
user4574