應用串行NOR閃存提升內存處理能力
在嵌入式系統中,NOR閃存一直以來仍然是較受青睞的非易失性內存,NOR器件的低延時特性可以接受代碼執(zhí)行和數據存儲在一個單一的產品。雖然NAND記憶體已成為許多高密度應用的首選解決方案,但NOR仍然是低密度解決方案的首選之一。
未來閃存產品具有快速發(fā)展的趨勢,可以發(fā)現,閃存產品從低密度、低性能、低功能的發(fā)展特點轉變?yōu)楦呙芏取⒏咝阅?、高功能的發(fā)展特點。Spansion的NOR閃存廣泛運用于汽車電子、醫(yī)療設備、通訊設備、機頂盒等。
SPI Flash特性
SPI串行結構的EEPROM最早出現于20世紀80年代中期,由摩托羅拉在其MC68HC系列中首先引入,MicroWire是由國半制定的總線標準,它和SPI非常相似,只是MicroWire的時鐘極性CPOL和時鐘相位CPHA是固定的,均為0。I2C也是出現在80年代,由Philips制定,它通過一條數據線和一條時鐘線實現半雙工通信,I2C總線接口實現了最簡單的總線接口方式。三種標準如圖1所示。
SPI和MicroWire很相近,速度非???,且在設計中無需上拉電阻,可以支持全雙工通信操作,抗干擾能力強,缺點是需要占用較多的數據總線,且需要為設備分配單獨的片選信號,沒有接收數據的硬板機制。對I2C總線來說,它占用的總線較少,可以多個設備共同用一根總線,支持接收數據的硬板機制,缺點是速度較低,為3.4MHz以下,只支持半雙工的操作,設計時需要上拉電阻,且對噪聲的干擾相對敏感。
圖1 三種總線標準
SPI的接口從傳統的單進單出已經提升到雙進雙出或者四進四出。如圖2所示,通過單向輸入SI,輸出SO變?yōu)殡p向的傳輸,同時將WP引腳和HOLD引腳復用為雙向的IO口來實現多IO口的接口通信,其協議及基本的讀寫操作和原始EEPROM兼容,同時硬件上實現簡單的完全兼容。
相對于傳統的并行NOR Flash而言,SPI NOR Flash只需要6個引腳就能夠實現單I/O,雙I/O和4個I/O口的接口通信,而并行的NOR Flash則至少需要40個引腳。人們普遍使用的是標準NOR Flash異步讀模式,而ADM及地址數據信號復用,這種并行NOR Flash引腳數相對較少,通過實現突發(fā)讀模式,其數據輸出最快可超過120MB/s,SPI具有較少的引腳,同時,通過采用DDR的方式讀操作,在80MHz的時鐘下,其數據輸出可以達到80MB/s,甚至超過并行NOR Flash的異步讀速度。
圖2 SPI的接口轉變
在過去的幾年中,隨著直接CPU 內存映射功能的支持, SPI的讀操作取得了極大的進步,而傳統的SPI外設控制器仍然在用于傳統的SPI的讀或別的操作,相比之下,通過CPU的直接讀取操作,速度比通過SPI控制器來的更快,延遲低。
SPI雙通道控制器示意圖如圖3所示,雙通道可以使SPI的數據輸出增加一倍,硬件上將片選和時鐘共用的話,只需要10個引腳就能實現SPI Flash所有功能??梢钥紤],實現一片SPI Flash 8bits數據的傳輸,從而提升SPI Flash的數據輸出能力。
圖3 SPI雙通道控制器
關于SPI時序對讀速度的影響,如圖4所示。tV是指時鐘的下降沿到有效數據輸出所需要的時間,一般最大為8ns。tHO是數據輸出后到下一個時鐘下降沿可持續(xù)的時間,一般最小值0ns。這兩個參數和時鐘頻率一起決定了SPI Flash的最大數據輸出速度。事實上,tHO在實際應用中并不能像時鐘周期一樣可以無限壓縮,而往往都會大于0ns。
早期的4個I/O口輸出協議需要對地址和數據分別串行傳送。如,8個命令周期加上24個地址周期至少需要32個時鐘周期完成一個讀操作命令周期,如果Flash的尋址超過128Mbits,僅地址周期就需要32個時鐘周期,非常耗時。
評論