0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

瑞萨RA系列FSP库开发实战指南之QSPI通讯协议简介

瑞萨嵌入式小百科 来源:野火电子 2026-03-03 10:56 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第23章

QSPI——读写外部FLASH

我们在上一章中已经学习过关于SPI协议的通讯实验,在本章我们将继续学习关于SPI协议的另一个分支——QSPI。

23.1

QSPI协议简介

QSPI是Queued SPI的简写,是Motorola公司推出的SPI接口的扩展,比SPI应用更加广泛。在SPI协议的基础上,Motorola公司对其功能进行了增强,增加了队列传输机制,推出了队列串行外围接口协议(即QSPI协议)。QSPI是一种专用的通信接口,连接单、双或四(条数据线)SPIFlash存储介质。

该接口可以在以下三种模式下工作:

1. 间接模式:使用QSPI寄存器执行全部操作;

2. 状态轮询模式:周期性读取外部Flash状态寄存器,而且标志位置1时会产生中断(如擦除或烧写完成,会产生中断);

3. 内存映射模式:外部Flash映射到微控制器地址空间,从而系统将其视作内部存储器。

采用双闪存模式时,将同时访问两个Quad-SPI Flash,吞吐量和容量均可提高二倍。

QSPI是Quad SPI的简写,表示6线SPI,是Motorola公司推出的SPI接口的扩展,比SPI应用更加广泛。

在SPI协议的基础上,Motorola公司对其功能进行了增强,增加了队列传输机制,推出了队列串行外围接口协议(即QSPI协议)。

使用该接口,用户可以一次性传输包含多达16个8位或16位数据的传输队列。一旦传输启动,直到传输结束,都不需要CPU干预,极大的提高了传输效率。该协议在ColdFire系列MCU得到广泛应用。

23.1.1

QSPI功能框图

QSPI是一个内存控制器,用于连接具有SPI兼容接口的串行ROM(非易失性存储器,如串行闪存、串行EEPROM或串行FeRAM)。

ac725396-1391-11f1-90a1-92fbcf53809c.pngacd5c700-1391-11f1-90a1-92fbcf53809c.png

QSPI常用的寄存器有通信端口寄存器(SFMCOM)以及通信方式控制寄存器(SFMCMD)

23.1.2

QSPI引脚的定义

我们的开发板采用的是双闪存禁止的模式连接单片QSPI Flash。QSPI使用6个信号连接Flash,分别是四个数据线QIO0~QIO3,一个时钟输出CLK,一个片选输出(低电平有效)QSSL,它们的作用介绍如下:

(1)QSSL:片选输出(低电平有效),适用于FLASH1。如果QSPI始终在双闪存模式下工作,则其也可用于FLASH2从设备选择信号线。QSPI通讯以QSSL线置低电平为开始信号,以QSSL线被拉高作为结束信号。

(2)CLK:时钟输出,适用于两个存储器,用于通讯数据同步。它由通讯主机产生,决定了通讯的速率,不同的设备支持的最高时钟频率不一样,两个设备之间通讯时,通讯速率受限于低速设备。

(3)QIO0:在双线/四线模式中为双向IO,单线模式中为串行输出,适用于FLASH1。

(4)QIO1:在双线/四线模式中为双向IO,单线模式中为串行输入,适用于FLASH1。

(5)QIO2:在四线模式中为双向IO,适用于FLASH1。

(6)QIO3:在四线模式中为双向IO,适用于FLASH1。

23.1.3

QSPI命令序列

QUADSPI通过命令与Flash通信每条命令包括指令、地址、交替字节、空指令和数据这五个阶段,任一阶段均可跳过,但至少要包含指令、地址、交替字节或数据阶段之一。nCS在每条指令开始前下降,在每条指令完成后再次上升。先看看QSPI四线模式下的读命令时序,见下图。

ad33c012-1391-11f1-90a1-92fbcf53809c.png

23.1.4

QSPI内存映射模式

外部QSPI设备空间映射到内部空间如图所示:

外部总线的空间

adea77bc-1391-11f1-90a1-92fbcf53809c.png

串行闪存和控制寄存器在地址空间上的位置由配置中设置的区域的地址范围决定。SPI空间具有32位地址宽度,用于引用串行闪存。当访问SPI空间进行读取时,将自动启动SPI总线周期,并返回从串行闪存中读取的数据。SPI空间的地址宽度固定为32位。

然而,SPI总线的地址宽度在地址模式控制寄存器(SFMSAC)寄存器的SFMAS[1:0]位中可选择为8、16、24或32位。如果选择8、16或24位作为SPI总线的地址宽度,则只有用于访问SPI空间的地址的较低部分被发布到串行闪存。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FlaSh
    +关注

    关注

    10

    文章

    1749

    浏览量

    155553
  • 接口
    +关注

    关注

    33

    文章

    9525

    浏览量

    157081
  • 通讯协议
    +关注

    关注

    10

    文章

    298

    浏览量

    21489
  • QSPI
    +关注

    关注

    0

    文章

    55

    浏览量

    13370

原文标题:QSPI简介及读写外部FLASH——瑞萨RA系列FSP库开发实战指南(77)

文章出处:【微信号:瑞萨嵌入式小百科,微信公众号:瑞萨嵌入式小百科】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RA系列FSP开发实战指南I2C读写EEPROM实验

    使用官方提供的FPS进行编程,官方提供的FPS具有方便、快捷、简洁的特性。
    的头像 发表于 01-27 10:02 3447次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>FSP</b><b class='flag-5'>库</b><b class='flag-5'>开发</b><b class='flag-5'>实战</b><b class='flag-5'>指南</b><b class='flag-5'>之</b>I2C读写EEPROM实验

    RA系列FSP开发实战指南QSPI读写外部Flash芯片实验

    因为本章节的QSPI Flash相关实验例程需要用到板子上的串口功能,因此我们可以直接以前面的“19_UART_Receive_Send”工程为基础进行修改。
    的头像 发表于 03-03 13:57 4140次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>FSP</b><b class='flag-5'>库</b><b class='flag-5'>开发</b><b class='flag-5'>实战</b><b class='flag-5'>指南</b><b class='flag-5'>之</b><b class='flag-5'>QSPI</b>读写外部Flash芯片实验

    RA系列FSP开发实战指南QSPI控制FLASH的指令

    对主机端(RA6M5)来说,只是它遵守最基本的QSPI通讯协议发送出的数据,但在设备端(FLASH 芯片)把这些数据解释成不同的意义,所以才成为指令。
    的头像 发表于 03-03 10:56 3846次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>FSP</b><b class='flag-5'>库</b><b class='flag-5'>开发</b><b class='flag-5'>实战</b><b class='flag-5'>指南</b><b class='flag-5'>之</b><b class='flag-5'>QSPI</b>控制FLASH的指令

    RA系列FSP开发实战指南SPI通讯协议的物理层和协议简介

    RA芯片的SPI分为简单SPI和普通SPI,简单SPI就是SCI模块(Serial Communications Interface)中的SPI模式,它是使用串行总线来模拟SPI,而我们本章我们所要学习的是普通的SPI,是全功能的SPI,它在RA芯片内部实际存在的一个硬件
    的头像 发表于 02-04 08:23 1.1w次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>FSP</b><b class='flag-5'>库</b><b class='flag-5'>开发</b><b class='flag-5'>实战</b><b class='flag-5'>指南</b><b class='flag-5'>之</b>SPI<b class='flag-5'>通讯</b><b class='flag-5'>协议</b>的物理层和<b class='flag-5'>协议</b>层<b class='flag-5'>简介</b>

    e2studio(1)----芯片搭建FSP环境

    视频教学 样品申请 请勿添加外链 e2studio软件 e2studio是的集成开发环境,FSP 提供了众多可提高效率的工具,用于开发
    发表于 09-30 15:28

    RA6E2地奇星开发板试用】开发板介绍及环境搭建

    一、开发简介 “地奇星”是立创联合(Renesas)推出的高性价比 Cortex-M33 入门级开发板,基于 R7FA6E2BB3CN
    发表于 12-22 00:40

    RA4系列开发板体验】开发环境搭建和新手点灯指南

    RA4系列开发板体验】开发环境搭建和新手点灯指南
    发表于 11-24 22:54

    RA4系列开发板体验】体验过程

    拿到板子之后,做了几个实验过程,过程如下:1、在好奇心驱动下,逐步接触;参照网上的实例,学习开发环境一、开箱验货二、搭建环境参考“ 【
    发表于 12-18 16:20

    【野火启明6M5开发板体验】开箱+认识开发板+资料

    按键检测29. WiFi——模块通讯板尺寸:3、资料:*附件:[野火EmbedFire]《RA系列F
    发表于 12-20 23:28

    e2studio(1)----芯片搭建FSP环境

    e2studio是的集成开发环境,FSP 提供了众多可提高效率的工具,用于开发针对
    的头像 发表于 11-14 17:08 3151次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>e2studio(1)----<b class='flag-5'>瑞</b><b class='flag-5'>萨</b>芯片<b class='flag-5'>之</b>搭建<b class='flag-5'>FSP</b>环境

    【有奖直播预报名】电子RA系列产品开发工具FSP4.0.0新特性介绍

    为使用电子RA系列ARM微控制器的嵌入式系统设计提供简单易用且可扩展的高质量软件。 直播主题
    的头像 发表于 11-22 12:20 1534次阅读

    【视频教程】RA单片机FSP开发(3)FSP架构-解释Blinky架构[上]

    干货分享 前篇回顾 【视频教程】RA单片机FSP开发(1)环境搭建(带RASC) 【视频教程】
    的头像 发表于 12-06 12:15 1929次阅读

    使用e² studio FSP基于RA2E1定时器配置PWM输出

    使用e² studio FSP基于RA2E1定时器配置PWM输出
    的头像 发表于 08-01 00:13 2018次阅读
    使用<b class='flag-5'>瑞</b><b class='flag-5'>萨</b>e² studio <b class='flag-5'>FSP</b>基于<b class='flag-5'>RA</b>2E1定时器配置PWM输出

    电子RA系列微控制器的可扩展性强的配置软件包 (FSP)安装下载与使用指南

    电子RA系列微控制器的可扩展性强的配置软件包 (FSP)安装下载与使用指南
    的头像 发表于 06-11 17:21 1895次阅读

    RA系列FSP开发实战指南SPI通讯协议的结构和功能

    RA6M5为例,SPI的功能结构框图如下图所示。接下来我们大致地研究一下它的结构和功能。
    的头像 发表于 02-03 13:53 731次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>FSP</b><b class='flag-5'>库</b><b class='flag-5'>开发</b><b class='flag-5'>实战</b><b class='flag-5'>指南</b><b class='flag-5'>之</b>SPI<b class='flag-5'>通讯</b><b class='flag-5'>协议</b>的结构和功能