Membaca lembar data SPI Flash , saya menjumpai konsep "dual I / O" dan "quad I / O". Pada awalnya saya berpikir bahwa "dual I / O" itu identik dengan "full duplex", tetapi lalu apa itu "quad I / O"?
Apa itu dual I / O dan quad I / O, dan bagaimana mereka membandingkan do duplex dan full duplex?
Jawaban:
Perangkat multi I / O SPI mampu mendukung peningkatan bandwidth atau throughput dari satu perangkat. Sebuah ganda I / O (dua-bit data bus) interface memungkinkan kecepatan transfer dua kali lipat dibandingkan dengan perangkat memori flash serial standar. Sebuah quad I / O (empat bit data bus) interface meningkatkan throughput empat kali.
sumber
Ini berarti bahwa Anda memiliki lebih banyak garis serial yang berbagi sinyal kontrol yang sama, atau menempatkan berbeda, port serial dengan lebih dari satu jalur data.
Kedua dual-I / O dan quad-I / O adalah setengah dupleks (dijelaskan pada halaman 10), karena dalam dual-I / O kedua baris digunakan secara paralel untuk meningkatkan throughput dengan mempertahankan jumlah kabel yang sama, sedangkan pada quad I / O juga DQ2 dan DQ3 digunakan sebagai I / O bersama dengan DQ0 dan DQ1.
Perhatikan bahwa mode dual-I / O menggunakan jumlah garis yang sama dari bus SPI normal, menghindari kebutuhan pin tambahan di UC dan desain perangkat keras khusus.
sumber
Protokol itu disebut SQI (menyerupai SPI) yang berarti Serial Quad I / O Protocol. Anda dapat menyimpan alamat / perintah / data melalui 4 pin, bukan hanya satu (SPI) dan menerima data melalui 4 pin yang sama.
Menjadi dupleks setengah atau penuh adalah karakteristik dari sistem komunikasi terlepas dari protokol yang Anda putuskan untuk digunakan (tentu saja beberapa protokol memungkinkan dupleks penuh dan ada yang tidak).
Memang, Dual dan Quad I / O tidak sama dengan full-duplex, mereka hanya protokol yang dapat Anda gunakan (kadang-kadang dengan perangkat yang sama). Dimulai dengan SPI (saya berasumsi bahwa Anda tahu apa ini) yang memiliki 1 pin untuk mengirim dan kemudian menerima (artinya protokolnya setengah-rumit); kita kemudian memiliki Dual I / O yang menggunakan 2 pin untuk mengirim dan menerima (half-duplex), dan akhirnya Quad I / O yang menggunakan 4 pin untuk mengirim dan kemudian menerima (juga half-duplex).
sumber
Saat ini, orang menyebutnya sebagai antarmuka SPIFI. Ini sebagian besar digunakan dalam antarmuka Flash.
Lihatlah lembar data LPC18xx, bab 21: SPIFI. Tautan: http://www.nxp.com/documents/user_manual/UM10430.pdf
1 Bit SPI: Data akan di 1 baris.
Misalnya: - Urutan bit 7 6 5 4 3 2 1 0
2 Bit SPI atau Dual SPI: Akan ada data pada 2 baris.
Misalnya: - Urutan bit
4 Bit SPI atau Quad SPI: Akan ada data pada 4 baris.
Misalnya: - Urutan bit
sumber
Seperti disebutkan di tempat lain, beberapa perangkat flash memiliki opsi menggunakan dua atau empat pin untuk menampilkan data. Pilihan lain yang saya lihat pada setidaknya satu chip flash adalah dengan menggunakan satu pin, tetapi data output pada kedua sisi naik dan turun jam. Ini akan memungkinkan transfer kecepatan ganda pada mikrokontroler yang dapat menangani format data seperti itu, tanpa memerlukan pin data tambahan, sehingga empat jam akan menampilkan setiap byte data pada satu pin. Saya tidak mengetahui adanya pengontrol yang mendukung fitur tersebut, meskipun saya juga tidak mengetahui adanya pengontrol yang mendukung penggunaan dua atau empat kabel data.
sumber