Що таке подвійний / квадратичний вхід / вивід?


23

Читаючи таблицю даних SPI Flash , я зіткнувся з поняттями "подвійний введення / виведення" та "чотирьох вхід / вивід". Спочатку я думав, що "подвійний введення / виведення" є синонімом "повного дуплексу", але потім що таке "чотири введення / виводу"?

Що таке подвійний введення / виведення та чотирифазний введення / виведення, і як вони порівнюють дуплекс та повний дуплекс?


Наприклад, PS Zynq (Cortex A9) має контролер QSPI та інтерфейси на платі Zed до 4-розрядного SPI (quad-SPI) послідовного спалаху NOR. The Spansion S25FL256S

Відповіді:


20

Мульти введення / виведення SPI - пристрій здатний підтримувати підвищену пропускну здатність або пропускну здатність з одного пристрою. Подвійного введення / виведення інтерфейсу (два-бітної шини даних) забезпечує швидкість передачі даних в два рази по порівнянні зі стандартними послідовними пристроями флеш - пам'яті. Quad введення / виведення інтерфейс (чотири-бітна шина даних) підвищує пропускну здатність в чотири рази.

enter image description here


4
Це не SPI-пристрій - SPI не використовує двосторонніх штифтів.
Бен Войгт

7
Карти пам'яті SD підтримують за допомогою 4-бітної шини. Важко сказати, що вони "не пристрій SPI", оскільки ця ж карта (в інший час) може використовувати стандартну "1-бітну" шину SPI.
davidcary

8

Це означає, що у вас є більше послідовних ліній, які ділять однакові сигнали керування, або, по-різному, послідовний порт з більш ніж однією лінією даних.

І подвійний введення / виведення, і квадро-введення / виведення є напівдуплексними (пояснено на стор. 10), тому що в подвійному вході / виводі обидві лінії використовуються паралельно для збільшення пропускної здатності, що підтримує однакову кількість проводів, при цьому в квадратику I / O також DQ2 і DQ3 використовуються як введення / виведення разом з DQ0 і DQ1.

Зауважте, що в режимі подвійного вводу / виводу використовується однакова кількість ліній, ніж у звичайної шини SPI, уникаючи необхідності додаткових штифтів у комп'ютері та спеціальної конструкції обладнання.


1
"послідовний порт з більш ніж однією лінією даних" буде називатися паралельним портом.
користувач253751

@immibis не обов'язково, тому що в паралельному порту два сигнали повинні бути синхронні один одному, тоді як дві послідовні лінії можуть передавати незалежні потоки, які поєднуються приймачем
clabacchio

1
Але годинник ділиться. Обидва сигнали синхронізуються як на годинник, так і перехідно один на одного.
користувач253751

1
@immibis, що я маю на увазі, що надто паралельно ви надсилаєте дво- або чотирибітні символи у два рядки, тоді як тут ви можете надсилати паралельно два справжні послідовні потоки
clabacchio

5

Цей протокол називається SQI (нагадує SPI), що означає протокол послідовного квадратичного вводу / виводу. Ви можете осісти адресу / команду / дані через 4 штирі замість одного (SPI) та отримати дані через ті самі 4 штирі.

Бути половинним або повним дуплексним сигналом є характеристикою системи комунікацій незалежно від протоколу, який ви вирішили використовувати (звичайно, деякі протоколи дозволяють повнодуплексні, а деякі просто не).

Дійсно, подвійний і квадратичний введення / виведення не збігаються з повнодуплексними, це просто різні протоколи, якими ви можете користуватися (іноді з одним і тим же пристроєм). Починаючи з SPI (я припускаю, що ви знаєте, що це таке), який має 1 штифт для надсилання та отримання (тобто означає, що протокол є напівплекс); Потім у нас є подвійний введення / вивід, який використовує 2 штирі для надсилання та отримання (напівдуплекс), і нарешті Quad I / O, який використовує 4 штирі для надсилання та отримання (також напівдуплексний).


4

Сьогодні люди називали це інтерфейсом SPIFI. В основному це використовується в інтерфейсі Flash.

Погляньте на таблицю даних LPC18xx, глава 21: SPIFI. Посилання: http://www.nxp.com/documents/user_manual/UM10430.pdf

1 бітова SPI: дані будуть на 1 рядок.

Напр .: - послідовність бітів 7 6 5 4 3 2 1 0

2 бітовий SPI або подвійний SPI: будуть дані в 2 рядку.

Напр .: - послідовність бітів

    Line 1 : 7 5 3 1

    Line 2 : 6 4 2 0

4 бітова SPI або Quad SPI: Дані будуть у 4 рядку.

Напр .: - послідовність бітів

    Line 1 : 7 3

    Line 2 : 6 2

    Line 3 : 5 1

    Line 4 : 4 0

1
Ей, я думаю, ти пропустив, щоб побачити, що ОП вже прийняла відповідь, і це питання вже 4 роки. Ваші бали також уже охоплені.
Умар

1
@Umar, якщо чесно, ця відповідь показує, що вона насправді називається SPIFI, а також показує бітові послідовності. Обидва ці речі не висвітлюються в інших відповідях. Тож це вагомий внесок незалежно від того, скільки років було оригінальним питанням.
станрі

3

Як зазначено в інших місцях, деякі флеш-пристрої мають можливість використовувати два або чотири штифта для виведення даних. Ще один варіант, який я бачив принаймні на одному флеш-мікросхемі, полягав у використанні одного штифта, але виводив дані як на зростаючі, так і на падаючі краї годин. Це дозволило б забезпечити двошвидкісну передачу на мікроконтролері, який міг би обробляти такий формат даних, не вимагаючи додаткових штифтів даних, тому чотири годинники виводили б кожен байт даних на один контакт. Я не знаю жодних контролерів, які підтримують таку функцію, хоча я також не знаю жодного, який підтримує використання двох-чотирьох проводів даних.


1
Microchip ATSAMS70 та подібні ARM-процесори підтримують подвійний і квадровий SPI для виконання коду із зовнішньої флеш-пам’яті, наприклад, флеш-мікросхеми серії Micron N25Q, які також підтримують подвійний / чотирьох SPI.
user4574
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.