-
SPI NOR FLASH
- 常见框图
- 引脚含义
SPI 通信过程为:把 CS 引脚拉低,然后 SCK 输出时钟,然后就可以在 MOSI 引脚上输出数据,同时可以在 MISO 上获得数据了。
SCK: Serial clock,作用是主设备往从设备传输时钟信号,控制数据交换及速率
SS/CS:Slave Select/Chip Select,用于主设备片选从设备,由主设备控制;
SDO/MOSI:Serial Data Output/Master Out Slave In,主机数据输出,从机数据输入;作用是 SPI 设备发送数据;
SDI/MISO:Serial Data Input/Master In Slave Out主机数据输入,从机数据输出;作用是 SPI 设备接收数据:
/WP:防止状态寄存器被写入;低有效
/HOLD 引脚,当它有效时允许设备暂停。
- SPI FLASH的三种IO
SPI Flash 现在有三种可用的 IO,Winbond 称之为 Standard/Dual/Quad IO, 也有的写为 1X/2X/4X IO。Dual/Quad IO 的目的是为了提升 Standard SPI Flash 的读写速度的。对于一个特定型号的 SPI Flash 器件,其所能支持的 IO 标准是 不一样的。以上三种 IO 每一种 IO 都有自己的管脚定义和自己特有的指令。 以同时支持三种 IO 的 W25Q16BV 为例,其 IO 引脚的定义为:
VCC GND /CS CLK为通用PIN | ||||
Pin脚编号 | 5 | 2 | 3 | 7 |
Standard IO | DI (输入) | DO (输出) | /WP (输入) | /HOLD (输入) |
Dual IO | IO0 | IO1 | /WP (输入) | /HOLD (输入) |
Quad IO | IO0 | IO1 | IO2 | IO3 |
在阅读其它 SPI Flash 芯片的 Datasheet 的时候,也可能会看到不同的 IO 引脚 的称呼,如 CLK/SCLK,DI/SI/SDI/MOSI/SIMO,DO/SO/SDO/MISO/SOMI,这些也是 因为没有标准规范来统一的原因。在设计一个具体的 SPI Flash 的接口电路时, 要考虑是否需要支持其 Dual/Quad IO 功能以提高读写速度。
- 原理图设计要点
1、注意:根据需求选择对应的标注 SPI flash、Dual flash、Quad flash。 具体项目具体看了,理论上在 CLK 一定的情况下, 线数越多访问速度也越 快。
2、如果需要 CS 管脚跟踪 VCC 电压,防止上电或断电时,由于 VCC 电压不 足导致写数据异常,建议 CS 管脚串 10k 电阻到 VCC,起到跟踪保护左右。
3、片选信号:是否要接上拉电阻或者下拉电阻,看具体规格书要求;(一般要加 上拉电阻) 4、电源接滤波电容。
5、建议:IO0-IO3 加上 22 欧姆的电阻作为阻抗匹配;除了 SCK,其余都加上上 拉电阻。 6、在设计一个具体的 SPI Flash 的接口电路时,要考虑是否需要支持其 Dual/Quad IO 功能以提高读写速度。
- PCB设计要点
1、SPI Flash 在布局的时候要紧靠对应的 MCU(FPGA)。
2、注意等长。误差+/- 5mil。
3、注意 3W。
4、千万不要跨分割。
- 原理图