SPI制造技术

技术编号:39421853 阅读:6 留言:0更新日期:2023-11-19 16:10
本公开涉及一种

【技术实现步骤摘要】
SPI控制器、控制方法、系统级芯片以及蓝牙设备


[0001]本公开涉及通信
,具体地,涉及一种
SPI
控制器

控制方法

系统级芯片以及蓝牙设备


技术介绍

[0002]SPI(Serial Peripheral Interface
,串行外设接口
)
是一种高速的,全双工

同步的通信总线,普通的
SPI
总线在芯片上只占用了四根线,分别为
SCK
时钟线
、MOSI
主机输出从机输入线
、MISO
主机输入从机输出线
、SS
从机选择线,如此,一方面线的数量较少使得布设以及数据传输较为简单,另一方面还可以节约芯片的管脚资源

由于这种简单的特性,越来越多的芯片上集成
SPI
通信协议,但是,随着芯片对外部存储设备读写速度的要求,基于普通的
SPI
协议,出现了多种双倍速率可读写的静态随机存储器
(DDR PSRAM)
,这类器件的出现替代了双倍速率同步动态随机存储器
(DDR SDRAM)。
然而,相关技术中,需要通过
DMA(Direct Memory Access
,直接存储器访问
)
或者
CPU(Central Processing Unit
,中央处理器
)
才能实现对
DDR PSRAM
进行访问,如此,会导致带宽利用率较低

访问效率较低的弊端


技术实现思路

[0003]本公开的目的是提供一
SPI
控制器

控制方法

系统级芯片以及蓝牙设备,以解决相关技术中存在的问题

[0004]为了实现上述目的,本公开第一方面提供一种
SPI
控制器,包括:缓存接口模块

寄存器和控制单元,其中,所述控制单元分别与所述缓存接口模块和所述寄存器相连;
[0005]所述缓存接口模块,用于向所述控制单元发送可变长命令;
[0006]所述寄存器,用于存储
SPI
控制器的配置信息,所述配置信息对应不同类型的目标设备;
[0007]所述控制单元,用于根据所述可变长命令和所述配置信息,生成访问命令来访问目标设备

[0008]可选地,所述控制单元,用于在接收到所述可变长命令时,确定对应的访问类型,并根据所述访问类型生成访问命令发送给所述目标设备进行访问,所述访问命令包括写入命令或读取命令

[0009]可选地,所述
SPI
控制器还包括:分别连接控制单元的输入数据存储单元和
/
或输出数据存储单元;
[0010]在所述控制单元确定访问命令为写入命令时,所述控制单元用于根据所述寄存器配置信息向对应类型的目标设备发送所述写入命令和输出时钟信号直至输出预设长度的目标数据给所述目标设备时结束,所述输出数据存储单元用于输出目标数据给所述目标设备;或
[0011]在所述控制单元确定访问命令为读取命令时,所述控制单元用于根据所述寄存器配置信息向对应类型的目标设备发送所述读取命令和输出时钟信号,以及,接收所述目标
设备发送的采集时钟信号,并根据所述采集时钟信号采集所述目标设备返回的数据直至采集到所述预设长度的目标数据时结束,所述输入数据存储单元用于存储所述预设长度的目标数据

[0012]可选地,所述
SPI
控制器还包括:分别连接控制单元的输出延时单元和
/
或输入延时单元;
[0013]所述输出延时单元,用于根据所述配置信息确定输出延时配置,并根据所述输出延时配置对所述输出时钟信号进行延时后将延时后的所述输出时钟信号发送至所述控制单元;和
/

[0014]所述输入延时单元,用于根据所述配置信息确定输入延时配置,并根据所述输入延时配置对所述采集时钟信号进行延时后将延时后的所述采集时钟信号发送至所述控制单元,以由所述控制单元根据延时后的所述采集时钟信号采集所述目标设备返回的数据直至采集到所述预设长度的目标数据时结束

[0015]可选地,所述配置信息包括所述目标设备的边界访问地址;
[0016]所述控制单元,还用于根据所述可变长命令和所述边界访问地址,确定是否存在跨所述边界访问地址进行访问的风险,若存在则对所述可变长命令进行拆分,以得到多个子命令,并根据所述多个子命令来访问目标设备

[0017]可选地,所述
SPI
控制器还包括:连接所述控制单元的门控时钟单元;
[0018]在所述控制单元在预设时长内未收到所述缓存接口模块的可变长命令时,所述门控时钟单元用于关闭所述
SPI
控制器的时钟源头

[0019]可选地,所述缓存接口模块为
DATA
缓存接口模块

[0020]本公开第二方面提供一种
SPI
控制器的控制方法,
SPI
控制器为本公开第一方面所述的
SPI
控制器,所述控制方法包括:
[0021]所述寄存器存储
SPI
控制器的配置信息,所述配置信息对应不同类型的目标设备;
[0022]所述缓存接口模块向所述述控制单元发送可变长命令;
[0023]所述控制单元根据所述可变长命令和所述配置信息,生成访问命令来访问目标设备

[0024]可选地,所述
SPI
控制器还包括:分别连接控制单元的输入数据存储单元和
/
或输出数据存储单元;
[0025]所述控制单元根据所述可变长命令和所述配置信息,生成访问命令来访问目标设备,包括:
[0026]所述控制单元在接收到所述可变长命令时,确定对应的访问类型,所述访问命令包括写入命令或读取命令;
[0027]在确定访问命令为所述写入命令时,所述控制单元根据所述寄存器配置信息向对应类型的目标设备发送所述写入命令和输出时钟信号直至输出预设长度的目标数据给所述目标设备时结束,所述输出数据存储单元用于输出目标数据给所述目标设备;或
[0028]在确定访问命令为所述读取命令时,所述控制单元根据所述寄存器配置信息向对应类型的目标设备发送所述读取命令和输出时钟信号,以及,接收所述目标设备发送的采集时钟信号,并根据所述采集时钟信号采集所述目标设备返回的数据直至采集到所述预设长度的目标数据时结束,所述输入数据存储单元用于存储所述预设长度的目标数据

[0029]可选地,所述
SPI
控制器还包括本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种
SPI
控制器,其特征在于,包括:缓存接口模块

寄存器和控制单元,其中,所述控制单元分别与所述缓存接口模块和所述寄存器相连;所述缓存接口模块,用于向所述控制单元发送可变长命令;所述寄存器,用于存储
SPI
控制器的配置信息,所述配置信息对应不同类型的目标设备;所述控制单元,用于根据所述可变长命令和所述配置信息,生成访问命令来访问目标设备
。2.
根据权利要求1所述的
SPI
控制器,其特征在于,所述控制单元,用于在接收到所述可变长命令时,确定对应的访问类型,并根据所述访问类型生成访问命令发送给所述目标设备进行访问,所述访问命令包括写入命令或读取命令
。3.
根据权利要求2所述的
SPI
控制器,其特征在于,所述
SPI
控制器还包括:分别连接控制单元的输入数据存储单元和
/
或输出数据存储单元;在所述控制单元确定访问命令为写入命令时,所述控制单元用于根据所述寄存器配置信息向对应类型的目标设备发送所述写入命令和输出时钟信号直至输出预设长度的目标数据给所述目标设备时结束,所述输出数据存储单元用于输出目标数据给所述目标设备;或在所述控制单元确定访问命令为读取命令时,所述控制单元用于根据所述寄存器配置信息向对应类型的目标设备发送所述读取命令和输出时钟信号,以及,接收所述目标设备发送的采集时钟信号,并根据所述采集时钟信号采集所述目标设备返回的数据直至采集到所述预设长度的目标数据时结束,所述输入数据存储单元用于存储所述预设长度的目标数据
。4.
根据权利要求3所述的
SPI
控制器,其特征在于,所述
SPI
控制器还包括:分别连接控制单元的输出延时单元和
/
或输入延时单元;所述输出延时单元,用于根据所述配置信息确定输出延时配置,并根据所述输出延时配置对所述输出时钟信号进行延时后将延时后的所述输出时钟信号发送至所述控制单元;和
/
或所述输入延时单元,用于根据所述配置信息确定输入延时配置,并根据所述输入延时配置对所述采集时钟信号进行延时后将延时后的所述采集时钟信号发送至所述控制单元,以由所述控制单元根据延时后的所述采集时钟信号采集所述目标设备返回的数据直至采集到所述预设长度的目标数据时结束
。5.
根据权利要求1所述的
SPI
控制器,其特征在于,所述配置信息包括所述目标设备的边界访问地址;所述控制单元,还用于根据所述可变长命令和所述边界访问地址,确定是否存在跨所述边界访问地址进行访问的风险,若存在则对所述可变长命令进行拆分,以得到多个子命令,并根据所述多个子命令来访问目标设备
。6.
根据权利要求1所述的
SPI
控制器,其特征在于,所述
SPI
控制器还包括:连接所述控制单元的门控时钟单元;在所述控制单元在预设时长内未收到所述缓存接口模块的可变长命令时,所述门控时
钟单元用于关闭所述
SPI
控制器的时钟源头
。7.
根据权利要求1‑6任一项所述的
SPI
控制器,其特征在于,所述缓存接口模块为
DATA
缓存接口模块
。8.
一种
SPI
控制器的控制方法,其特征在于,
SPI
控制器为权利要求1‑
10
中任一项所述的

【专利技术属性】
技术研发人员:董馨
申请(专利权)人:炬芯科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1