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