Читая таблицу SPI Flash , я столкнулся с понятиями «двойной ввод-вывод» и «четырехъядерный ввод-вывод». Сначала я думал, что «двойной ввод / вывод» является синонимом «полного дуплекса», но потом, что такое «четырехъядерный ввод / вывод»?
Что такое двойной ввод-вывод и четырехъядерный ввод-вывод, и как они сравнивают дуплекс и дуплекс?
Ответы:
Устройство SPI с несколькими I / O способно поддерживать увеличенную пропускную способность или пропускную способность от одного устройства. Двойного ввода / вывода интерфейса (два-битной шины данных) обеспечивает скорость передачи данных в два раза по сравнению со стандартными последовательными устройствами флэш - памяти. Quad ввод / вывод интерфейс (четыре-битная шина данных) повышает пропускную способность в четыре раза.
источник
Это означает, что у вас есть больше последовательных линий, которые совместно используют одни и те же сигналы управления, или по-другому, последовательный порт с более чем одной строкой данных.
И двойной ввод / вывод, и четырехканальный ввод / вывод являются полудуплексными (объяснение на стр. 10), потому что в двойном вводе / выводе обе линии используются параллельно для увеличения пропускной способности, обеспечивающей одинаковое количество проводов, тогда как в четырехканальном I / O также DQ2 и DQ3 используются как I / O вместе с DQ0 и DQ1.
Обратите внимание, что режим двойного ввода-вывода использует то же количество линий, что и обычная шина SPI, избегая необходимости дополнительных выводов в uC и выделенной конструкции оборудования.
источник
Этот протокол называется SQI (напоминающий SPI), что означает протокол последовательного ввода-вывода. Вы можете посылать адрес / команду / данные через 4 контакта вместо одного (SPI) и получать данные через те же 4 контакта.
Полудуплекс или дуплекс характерны для системы связи независимо от того, какой протокол вы решили использовать (конечно, некоторые протоколы допускают дуплексный режим, а некоторые просто нет).
Действительно, Dual и Quad I / O - это не то же самое, что полнодуплексный режим, это просто разные протоколы, которые вы можете использовать (иногда с одним и тем же устройством). Начиная с SPI (я предполагаю, что вы знаете, что это такое), у которого есть 1 пин для отправки, а затем получения (это означает, что протокол является полплексным); Затем у нас есть двойной ввод / вывод, который использует 2 контакта для отправки и приема (полудуплекс), и, наконец, Quad I / O, который использует 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 линии будут данные.
Например: - битовая последовательность
4-битный SPI или Quad SPI: в 4 строке будут данные.
Например: - битовая последовательность
источник
Как уже отмечалось, некоторые флэш-устройства имеют возможность использовать два или четыре контакта для вывода данных. Другой вариант, который я видел по крайней мере на одном чипе флэш-памяти, заключался в том, чтобы использовать один вывод, но выводить данные как по нарастающей, так и по падающей частоте тактового сигнала. Это позволило бы осуществлять двухскоростную передачу на микроконтроллере, который мог бы обрабатывать такой формат данных, не требуя дополнительных выводов данных, поэтому четыре тактовых генератора выводили бы каждый байт данных на один вывод. Я не знаю ни о каких контроллерах, которые поддерживают такую функцию, хотя я также не знаю ни о каких, которые поддерживают использование двух или четырех проводов данных.
источник