QSPI Flash存储控制器(概述)

1. 特征概述

  1. 内存映射的直接操作模式,用于Flash数据传输和执行Flash存储的代码;
  2. 软件设置的间接操作模式,用于低延迟、非计算密集Flash数据传输;
  3. 可选的DMA外设接口,用于在间接操作模式中,与外部DMA同步状态信息;
  4. 内部提供一个SRAM,用于在间接操作模式中,缓冲Flash数据;
  5. 提供FLash访问控制控制器,用于执行Flash命令;
  6. 可寻址的存储颗粒,允许一次超过8字节;
  7. 支持设备时钟频率,包括133MHz或80MHz;
  8. 支持XIP,连续模式(可能是跨设备的连续地址可执行模式);
  9. 支持DDR模式(上升沿和下降沿都可以传输数据)和DTR协议(串行流控协议);
  10. 支持单、双倍和四倍的IO指令;
  11. 可编程设备长度;
  12. 可编程写保护范围,防止系统对这些块的写操作;
  13. 可编程的访问操作间隔延迟;
  14. 传统模式,软件可直接访问底层收发FIFOs,绕过高层处理过程;
  15. 将AHB时钟和SPI时钟解耦,兼容慢系统时钟;
  16. 可编程波特率发生器,产生分频时钟;
  17. 具有高速读数据采集机制;
  18. 可调节时钟,提升读数据采集;
  19. 可编程中断发生器;
  20. 最大支持四个外部设备片选;
  21. 可编程AHB解码器,支持连续寻址模式,可以跨外部设备寻址,并自动检测设备地址边界;
  22. 支持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存储控制逻辑(左边红棕色)。

从系统软件来看,信号接口主要包括:

  1. APB从设备接口,系统软件用于可编程寄存器的访问;
  2. AHB从设备接口,在直接模式下,系统软件用于数据传输;
  3. 可选的DMA外设接口,与外部DMA同步内部SDRAM状态;
  4. 内部SDRAM接口,外部DMA用该SDRAM实现与系统主存之间的数据传输。

4. 时钟域

QSPI控制器有三个异步输入的时钟源(AHB时钟源、APB时钟源和参考时钟源)和一个输出的时钟(供外部Flash设备的时钟)。

5 QSPI寄存器表(略)

QSPI Flash存储控制器(概述)相关推荐

  1. Flash存储控制器组成!(flash)

    Flash存储控制器组成 Flash存储控制器(Flash Memory Contoller.FMC)包括AHB从接口.Cacte存储控制器.Boot Loader.Flash控制寄存器.Flash初 ...

  2. (嵌入式)关于arm中的存储控制器

    /// 预备知识: 1.存储控制器概述 S3C2440存储控制器提供了访问外部存储设备所需的内存控制信号 .有以下特点: --支持小端/大端字节序(通过软件选择) --地址空间:每个BANK有128M ...

  3. QSPI Flash驱动代码分析 (QSPI控制器初始化)

    QSPI Flash驱动代码分析 (QSPI控制器初始化) 1. 函数cqspi_controller_enable() 该函数主要使能和去能QSPI控制器.QSPI配置寄存器(偏移量0x00)的bi ...

  4. 米联客 ZYNQ/SOC 精品教程 S02-CH29 基于TCP的QSPI Flash bin文件网络烧写

    软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛:www.osrc.cn答疑解惑专栏开通,欢迎大家给我提问!! ...

  5. EEPROM,NAND,NOR,QSPI FLASH的区别

    一,常见存储器        RAM -- 特点:可以存储数据,掉电丢失,速度快        SRAM:静态存储器 .访问之前无需进行复杂的初始化工作 直接访问        DRAM:动态存储器特 ...

  6. 存储控制器(SDRAM操作)

    什么是存储控制器 2440是32位单片机,进行数据访问时通过32位地址访问. CPU发出32位地址信号给存储控制器,存储控制器根据地址信号设置片选信号及地址总线,将相应数据通过数据总线传回存储控制器, ...

  7. Xilinx ZYNQ 7000学习笔记三(qspi flash读写操作)

    参考文献:Zynq-7000 SoC Technical Reference Manual (UG585)-ch12 Quad-SPI Flash Controller 一.nor Flash介绍 z ...

  8. FSMC-灵活的静态存储控制器

    最近在学习SMT32的FSMC模块,现将我自己对FSMC的理解讲解一下,并对学习过程中遇到的疑点和难点进行分享. 0.前言 学习FSMC,我推荐<STM32F4xx中文参考手册>.< ...

  9. 嵌入式开发笔记-存储控制器

    我是一个刚开始学习,嵌入式的小白,最近对协议接口和存储的控制器,有了小小的理解,首先第一点,程序是在存储控制器里面跑起来的,在驱动程里,对相关的驱动寄存器 进行赋值,调用相关的功能. 存储控制器基本理 ...

最新文章

  1. 深度学习发现古人类遗址,AI 考古比胡八一更高效
  2. shape(15,)与(15,1)的区别
  3. Windows-Linux:Windows系统下的命令类似Linux系统下的所有命令集合
  4. [编写高质量代码:改善java程序的151个建议]建议31-在接口中不要存在实现代码...
  5. 自己动手开发SAP Spartacus focus Directive的单元测试
  6. Silverlight:Downloader的使用(event篇)
  7. ssh协议是osi_计算机网络协议分析
  8. App.vue文件本质上也是js文件(javascript文件)
  9. Android studio: 自 maven 增加一個函式庫
  10. Hive表中加载数据的5中方式
  11. 服务器下安装windows操作系统---宝德服务器
  12. 静止、极轨卫星遥感图像太阳及卫星天顶、方位角的计算
  13. 是西电梦了我,还是我梦了西电
  14. python樱花树代码_Python绘图案例:2020年新年画一棵樱花树(源代码)
  15. java int 运算符,java中各种运算符
  16. 透过全球首个知识增强千亿大模型,看到中国AI差异化发展之路
  17. Android自定义View使用总结
  18. ElasticSearch索引生命周期管理(ILM)
  19. android 设置textview 左边,Android设置图片在TextView上、下、左、右
  20. 计算机专业实用设计专利例子,计算机类实用新型专利有几个发明人

热门文章

  1. 解决文件夹换背景软件失败的问题
  2. 如何为平衡耳机系统选择连接器?
  3. MIPS指令集的常用指令分类和相关解释
  4. 如何在手机上找到电子记事本?
  5. mysql的一些新增字段属性操作
  6. Threejs物联网,养殖场3D可视化(一)
  7. 物联网数字管理养殖场
  8. 编程日记-主要编程语言简介
  9. 在硅谷这个神之眷顾的幸运小楼面前,谁都不算锦鲤...
  10. 转速环PI参数整定详解(一)——电机传递函数的来源