話說最近工作接觸到QSPI通訊協定,在此作紀錄並提供給各位讀者參考
在了解QSPI之前,我們必須先了解一下甚麼是SPI(在這邊我們只探討硬體接線與通訊方法)
下圖是某一個IC的SPI通訊format圖
SPI 需要四條HW線,分別為 CS, CLK,MOSI,與MISO.
---
CS: chip select,在low時,為有效資料取樣期間.
CLK: SPI的clock,通常可以到 10MHz-20MHz,根據IC不同而不同。CLK在閒置時的準位高低,決定 SPI的模式(mode).資料在clk上升時取樣.
MOSI: master output slave input,主控端資料輸出訊號線
MISO:master input slave output, 裝置端資料輸出訊號線
---
了解標準SPI訊號後,我們來看QSPI通訊format:
QSPI需要六條HW線,分別為 CS,CLK,Data0,Data1,Data2,Data3.
簡單說QSPI就是SPI的加強版,加強在DATA的傳輸量;QSPI的Data0-Data3資料線是屬於雙向的,且屬於並列傳輸.
由上面的圖可以看到,原本SPI在單一clk只能傳輸 1 bit資料,現在QSPI在單一clk卻可以傳輸4 bit資料量。
所以從理論來說,QSPI的傳輸速度應該會是SPI的四倍.
以下為某一個IC的data sheet所擷取出來的圖.
下圖很清楚標示出SPI,DUAL SPI,與 QSPI的差異.
我們可以看出SPI需要 8 clk的時間才能傳輸 1 byte資料,但QPSI只要2個clk時間就可以傳輸1 byte資料.
如果量測訊號要看資料是否正確時,記得要注意 D0-D7的訊號解譯要符合上圖,也就是說 D0 是在 clk 2 的Data 0線上,D1在 clk 2 的Data 1線上,依此類堆.
有了上面的基礎認知後,相信大家對於QSPI有了進一步的認識。這樣對於使用QSPI介面的IC就不用害怕了.