QSPI Flash存储控制器(概述)
1. 特征概述
- 内存映射的直接操作模式,用于Flash数据传输和执行Flash存储的代码;
- 软件设置的间接操作模式,用于低延迟、非计算密集Flash数据传输;
- 可选的DMA外设接口,用于在间接操作模式中,与外部DMA同步状态信息;
- 内部提供一个SRAM,用于在间接操作模式中,缓冲Flash数据;
- 提供FLash访问控制控制器,用于执行Flash命令;
- 可寻址的存储颗粒,允许一次超过8字节;
- 支持设备时钟频率,包括133MHz或80MHz;
- 支持XIP,连续模式(可能是跨设备的连续地址可执行模式);
- 支持DDR模式(上升沿和下降沿都可以传输数据)和DTR协议(串行流控协议);
- 支持单、双倍和四倍的IO指令;
- 可编程设备长度;
- 可编程写保护范围,防止系统对这些块的写操作;
- 可编程的访问操作间隔延迟;
- 传统模式,软件可直接访问底层收发FIFOs,绕过高层处理过程;
- 将AHB时钟和SPI时钟解耦,兼容慢系统时钟;
- 可编程波特率发生器,产生分频时钟;
- 具有高速读数据采集机制;
- 可调节时钟,提升读数据采集;
- 可编程中断发生器;
- 最大支持四个外部设备片选;
- 可编程AHB解码器,支持连续寻址模式,可以跨外部设备寻址,并自动检测设备地址边界;
- 支持BOOT模式;
2. 逻辑结构
QSPI Flash存储控制器用于访问串行Flash设备.标准SPI接口兼容双倍和四倍SPI版本。
QSPI Flash存储控制器通过AHB和APB两个总线与片上网络互连。AHB总线可以在直接模式和间接模式下传输数据:例如,直接模式用于CPU执行外部Flash存储上的代码,配置寄存器设置的间接模式用于完成数据请求操作,并通过中断或状态寄存器反馈完成情况。
间接模式,在系统主存和外部Flash存储之间的数据传输通过内部SRAM来实现,AHB总线上的主设备(例如CPU、DMA等)可以对内部SRAM执行低延迟的读写操作。中断或状态寄存器用于通知驱动程序何时访问SRAM相关的配置和控制寄存器。可选的DMA外设总线用于优化外部AHB总线主设备和 QSPI Flash存储控制器之间的数据传输,注意此时为间接模式。
3. 信号接口
这里描述的信号接口主要是芯片内部与片上网络的信号接口;QSPI串行外设接口是芯片外部的信号,主要用于连接外部FLash芯片。根据上面逻辑结构图,整个QSPI Flash存储控制器分为两个部分:SPI传输介质逻辑(右边青色)和Flash存储控制逻辑(左边红棕色)。
从系统软件来看,信号接口主要包括:
- APB从设备接口,系统软件用于可编程寄存器的访问;
- AHB从设备接口,在直接模式下,系统软件用于数据传输;
- 可选的DMA外设接口,与外部DMA同步内部SDRAM状态;
- 内部SDRAM接口,外部DMA用该SDRAM实现与系统主存之间的数据传输。
4. 时钟域
QSPI控制器有三个异步输入的时钟源(AHB时钟源、APB时钟源和参考时钟源)和一个输出的时钟(供外部Flash设备的时钟)。
5 QSPI寄存器表(略)
版权声明:本文为CSDN博主「Kyph」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lsshao/article/details/119752208
暂无评论