技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种SPI接口芯片配置系统及方法  >  正文

一种SPI接口芯片配置系统及方法

  • 国知局
  • 2024-09-05 14:51:13

本发明涉及接口配置,尤其涉及一种spi接口芯片配置系统及方法。

背景技术:

1、随着电子行业的迅速发展,电子芯片的集成度越来越高,功能也越来越强大。通常,ad/da这类芯片拥有四线式或三线式串行spi(serial peripheral interface,串行外设接口)接口,允许对芯片内部寄存器参数进行编程和回读。然而,芯片内的寄存器数量多(几十甚至上百个),控制复杂。而现有的配置方法针对不同的芯片,每次都需要大量修改设计代码,移植性差、配置不灵活、功能单一,需要设计一种灵活的、通用的配置方法。

技术实现思路

1、本发明的目的在于克服现有技术缺陷,提出了一种spi接口芯片配置系统,还提出了一种spi接口芯片配置方法,以实现spi接口芯片配置的灵活性和通用性。

2、为实现上述目的,本发明提供了一种spi接口芯片配置系统,基于现场可编程门阵列fpga实现,包括:命令执行模块和spi时序控制模块;其中,

3、所述命令执行模块,用于利用状态机检测及读取指令码表的输出,根据指令码表中的约定格式,对输出的指令码进行命令识别,跳转至对应的状态,并提取对应的操作数,基于识别出的指令码和提取的操作数与spi时序控制模块进行交互,根据当前状态下的跳转条件完成下一状态的跳转,其中,指令码表是预先存储在rom中的,指令码和操作数的位宽以及指令码表的深度根据spi接口芯片类型和项目需求定义;

4、所述spi时序控制模块,用于与命令执行模块进行交互,根据指令码和操作数,对spi接口芯片进行配置。

5、作为上述系统的一种改进,所述指令码表中的指令码包括:写寄存器命令、等待命令、回读监测命令、回读校验命令和跳转命令中部分或全部。

6、作为上述系统的一种改进,所述命令执行模块,具体用于当指令码为写寄存器命令、回读校验命令或回读监测命令时,向spi时序控制模块发起spi配置请求,以及在接收完成当前寄存器配置的通知后,进行rom寻址;

7、spi时序控制模块,具体用于检测到spi配置请求时,与spi接口芯片交互,完成对当前寄存器的读写操作,在当前寄存器配置完成时,通知命令执行模块。

8、作为上述系统的一种改进,所述系统还包括:数据选择器和串口在线调试模块;其中,

9、所述数据选择器,用于接收串口在线调试使能信号,当需要循环刷新配置时,不使能串口在线调试模块;当需要在线修改配置时,使能串口在线调试模块;

10、所述串口在线调试模块,用于通过串口完成对寄存器的写入和回读,实时对某些寄存器进行在线修改;

11、命令执行模块,还用于通过数据选择器与spi时序控制模块交互,当需要循环刷新配置时,在配置完最后一个寄存器后,执行等待命令,等待时长达到预设值后,执行跳转命令跳转至所需刷新寄存器所在rom中的地址,完成循环刷新操作;在需要在线修改配置时,读取、检测和执行rom中的指令码表,直至完成spi接口芯片的最后一个寄存器配置后,切换到串口在线调试模式。

12、作为上述系统的一种改进,所述命令执行模块中包含多个rom,每个rom中存储一张指令码表,一个传输模式匹配一张指令码表;

13、命令执行模块,还用于检测重新配置请求和当前的传输模式,当检测到重新配置请求时,复位状态机,并根据当前的传输模式使能相匹配的指令码表,复位其他模式的指令码表,其中,当前的传输模式为待切换的传输模式。

14、本发明还提供了一种spi接口芯片配置方法,基于上述spi接口芯片配置系统,包括:

15、命令执行模块的状态机检测读取rom指令码表的输出,根据指令码表中的约定格式,对输出的指令码进行命令识别,跳转至对应的状态,并提取对应的操作数;

16、命令执行模块基于识别出的指令码和提取的操作数,与spi时序控制模块进行交互,以便于spi时序控制模块对spi接口芯片进行配置;

17、命令执行模块的状态机根据当前状态下的跳转条件完成下一状态的跳转。

18、作为上述方法的一种改进,所述指令码表中的指令码包括:写寄存器命令、等待命令、回读监测命令、回读校验命令和跳转命令中部分或全部。

19、作为上述方法的一种改进,基于识别出的指令码和提取的操作数,命令执行模块与spi时序控制模块进行交互,包括:

20、当指令码为写寄存器命令、回读校验命令或回读监测命令时,命令执行模块向spi时序控制模块发起spi配置请求;

21、spi时序控制模块检测到spi配置请求时,与spi接口芯片交互,完成对当前寄存器的读写操作,在当前寄存器配置完成时,通知命令执行模块;

22、命令执行模块进行rom寻址。

23、作为上述方法的一种改进,所述方法还包括:

24、当需要循环刷新配置时,数据选择器不使能串口在线调试使能信号,状态机在配置完最后一个寄存器后,执行等待命令,等待时长达到预设值后,执行跳转命令跳转至所需刷新寄存器所在rom中的地址,完成循环刷新操作;

25、当需要在线修改配置时,命令执行模块利用状态机读取、检测和执行rom中的指令码表,直至完成spi接口芯片的最后一个寄存器配置后,数据选择器接收串口在线调试使能信号,切换到串口在线调试模式。

26、作为上述方法的一种改进,所述方法还包括:命令执行模块中包含多个rom,每个rom中存储一张指令码表,一个传输模式匹配一张指令码表;所述方法还包括:

27、命令执行模块检测重新配置请求和当前的传输模式,其中,当前的传输模式为待切换的传输模式;

28、当命令执行模块检测到重新配置请求时,复位状态机,并根据当前的传输模式使能相匹配的指令码表,复位其他模式的指令码表。

29、与现有技术相比,本发明的优势在于:

30、1、本发明实施例的方案提出了在rom中存放包含指令码和操作数的指令码表,随后使用状态机执行指令码表中的指令和操作数,实现spi配置的方案,由于在配置不同的spi接口芯片时,只需按照约定的指令码表格式,基于项目的需求和spi接口芯片类型,重新制作一个指令码表,随后交给状态机使用此指令码表完成spi接口芯片的配置,因此,可移植性强、可重用度高,可以大大减少开发人员的设计难度和时间成本。

31、2、本发明实施例的方案根据实际运行环境需求选择对寄存器进行循环刷新配置或配置完成后进行在线修改等功能,兼顾了不同的运行环境需求。

32、3、本发明实施例的方案根据不同的传输模式完成指令码表的切换选择,以适应模拟器件在不同模式下表现不一致的不足,满足项目的指标要求。

技术特征:

1.一种spi接口芯片配置系统,基于现场可编程门阵列fpga实现,其特征在于,包括:命令执行模块和spi时序控制模块;其中,

2.如权利要求1所述的spi接口芯片配置系统,其特征在于,所述指令码表中的指令码包括:写寄存器命令、等待命令、回读监测命令、回读校验命令和跳转命令中部分或全部。

3.如权利要求2所述的spi接口芯片配置系统,其特征在于,所述命令执行模块,具体用于当指令码为写寄存器命令、回读校验命令或回读监测命令时,向spi时序控制模块发起spi配置请求,以及在接收完成当前寄存器配置的通知后,进行rom寻址;

4.如权利要求1-3任一所述的spi接口芯片配置系统,其特征在于,所述系统还包括:数据选择器和串口在线调试模块;其中,

5.如权利要求1-3任一所述的spi接口芯片配置系统,其特征在于,所述命令执行模块中包含多个rom,每个rom中存储一张指令码表,一个传输模式匹配一张指令码表;

6.一种spi接口芯片配置方法,基于权利要求1所述的spi接口芯片配置系统,包括:

7.如权利要求6所述的spi接口芯片配置方法,其特征在于,所述指令码表中的指令码包括:写寄存器命令、等待命令、回读监测命令、回读校验命令和跳转命令中部分或全部。

8.如权利要求7所述的spi接口芯片配置方法,其特征在于,基于识别出的指令码和提取的操作数,命令执行模块与spi时序控制模块进行交互,包括:

9.如权利要求6所述的spi接口芯片配置方法,其特征在于,还包括:

10.如权利要求6所述的spi接口芯片配置方法,其特征在于,还包括:命令执行模块中包含多个rom,每个rom中存储一张指令码表,一个传输模式匹配一张指令码表;所述方法还包括:

技术总结本发明公开了一种SPI接口芯片配置系统及方法,基于现场可编程门阵列FPGA实现,包括:命令执行模块用于利用状态机检测及读取指令码表的输出,根据指令码表中的约定格式,对输出的指令码进行命令识别,跳转至对应的状态,并提取对应的操作数,基于识别出的指令码和提取的操作数与SPI时序控制模块进行交互,根据当前状态下的跳转条件完成下一状态的跳转;SPI时序控制模块,用于根据指令码和操作数,对SPI接口芯片进行配置。针对拥有标准SPI串行通用接口的不同芯片,本发明只需要维护一个ROM指令码表和一些宏定义参数。大大减少了开发人员的设计难度和时间成本。技术研发人员:刘迪,王竹刚,韩霜雪,饶家宁,王静受保护的技术使用者:中国科学院国家空间科学中心技术研发日:技术公布日:2024/9/2

本文地址:https://www.jishuxx.com/zhuanli/20240905/288476.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。