本申请涉及车载芯片,特别是涉及一种基于xspi实现的io扩展方法、系统和设备。
背景技术:
1、xspi(extended serial peripheral interface,扩展型串行外设接口),是串行外设接口(spi)的增强版本,该标准规定了非易失性存储器设备的增强串行外设接口,提供了更高的数据速率、更低的引脚数和与传统spi设备有限的向后兼容性,结合nor flash(或非闪存)的xip(execute in place,芯片内执行)技术,使得处理器可以通过xip直接在闪存设备上运行程序,因此常用于将nor flash集成到mcu(microcontroller unit,微控制器单元)中。目前,微处理器通过io扩展芯片扩展其输入输出端口,以连接多种外围设备如传感器、执行器等。
2、然而相关技术存在一定弊端。一方面,常规的io扩展芯片在支持多种通信协议和外设功能方面存在限制,只能串行处理或io保持,无法满足复杂系统的多样化需求。另一方面,io扩展芯片通常通过spi或者i2c(inter-integrated circuit,互连集成电路)与主控mcu通信,主控mcu通过配置常规的io扩展芯片实现端口配置,其通信速度和灵活性不足以支持低延迟的应用需求。
3、基于此,如何实现一种能够兼顾满足多样化、低延迟的应用需求的io扩展方法,成为业内亟待解决的问题。
技术实现思路
1、为了解决现有技术中存在的至少一个问题,本申请的目的在于提供一种基于xspi实现的io扩展方法、系统和设备,能够实现多种io扩展的应用场景,满足复杂系统的多样化需求,降低软硬件开发的开销,并有助于提高通信速度,且支持并行处理,增强了灵活性。特别是对于增加用于不同功能io扩展的场景,可有效降低集成难度和成本,效果尤为显著。
2、为实现上述目的,本申请提供的基于xspi实现的io扩展方法,应用于包括主控芯片和io扩展芯片的基于扩展型串行外设接口xspi实现的io扩展系统;所述方法包括,
3、所述主控芯片的主控cpu在存储器运行第一外设驱动;其中,所述存储器被配置于所述主控芯片;
4、所述主控cpu通过xspi向第一外设发送外设驱动指令;其中,所述第一外设被配置于所述io扩展芯片,且对应所述第一外设驱动;
5、响应于接收到所述外设驱动指令,所述第一外设进行信息采集;
6、若所述第一外设采集到数据信息,则所述io扩展芯片的直接内存访问模块将所述数据信息通过xspi搬运至所述存储器。
7、进一步地,所述方法还包括,
8、若所述第一外设采集到寄存器标识信息,则将所述寄存器标识信息通过xspi写入对应寄存器,供所述主控cpu读取。
9、进一步地,所述方法还包括,
10、所述主控cpu在所述存储器运行第二外设驱动;
11、所述主控cpu向所述第二外设发送外设驱动指令;其中,所述第二外设被配置于所述主控芯片,且对应所述第二外设驱动;
12、响应于接收到所述外设驱动指令,所述第二外设进行信息采集;
13、若所述第二外设采集到数据信息,所述主控芯片的直接内存访问模块将所述数据信息搬运至所述存储器。
14、更进一步地,所述方法还包括,
15、若所述第二外设采集到寄存器标识信息,将所述寄存器标识信息写入对应寄存器,供所述主控cpu读取。
16、进一步地,所述方法还包括,
17、若存在采用相同外设知识产权核的第一外设和第二外设,则所述主控芯片被配置为基于同一外设驱动对该相同外设知识产权核的第一外设和第二外设进行驱动。
18、进一步地,所述方法还包括,
19、所述io扩展芯片中被配置的所述第一外设包括通用型输入输出单元、模拟数字转换单元、脉冲宽度调制单元、串行外设接口单元和控制器局域网络单元中的至少一种;和/或,
20、所述主控芯片中被配置的所述第二外设通用型输入输出单元、模拟数字转换单元、脉冲宽度调制单元、串行外设接口单元和控制器局域网络单元中的至少一种。
21、进一步地,所述方法还包括,响应于所述数据采集完成,所述io扩展芯片的中断模块向所述主控芯片的中断模块发送中断信息,以使所述主控芯片的中断模块将所述中断信息发送至所述主控cpu。
22、进一步地,在所述主控芯片的主控cpu在存储器运行第一外设驱动的步骤前,所述方法还包括,
23、所述主控芯片初始化主控芯片端xspi模块;
24、所述io扩展芯片初始化时钟模块、控制芯片端xspi模块、中断模块和直接内存访问模块。
25、为实现上述目的,本申请还提供的基于xspi实现的io扩展系统,包括:
26、主控芯片,被配置有存储器;所述主控芯片,用于通过所述主控芯片的主控cpu在所述存储器运行第一外设驱动;并用于通过所述主控cpu采用xspi向第一外设发送外设驱动指令;其中,所述第一外设被配置于所述io扩展芯片,且对应所述第一外设驱动;
27、io扩展芯片,用于通过所述第一外设响应于接收到所述外设驱动指令,进行信息采集;并用于在所述第一外设采集到数据信息的情况下,通过所述io扩展芯片的直接内存访问模块将所述数据信息经xspi搬运至所述存储器。
28、为实现上述目的,本申请还提供的电子设备,包括:存储器和处理器,所述存储器中存储有计算机指令,所述处理器被设置为运行所述指令以执行如上所述的基于xspi实现的io扩展方法。
29、本申请的一种基于xspi实现的io扩展方法、系统和设备,通过主控cpu在主控芯片上的存储器运行第一外设驱动;并通过主控cpu经xspi向io扩展芯片上的第一外设发送外设驱动指令;以及响应于接收到外设驱动指令,第一外设进行信息采集;并在第一外设采集到数据信息的情况下,通过io扩展芯片的直接内存访问模块将数据信息通过xspi搬运至主控芯片。由此,能够实现多种io扩展的应用场景和主控芯片的无感io扩展,满足复杂系统的多样化需求,降低软硬件开发的开销,并有助于提高通信速度,且支持并行处理,增强了灵活性。特别是对于增加用于不同功能io扩展的场景,可有效降低集成难度和成本,效果尤为显著。
30、本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。
1.一种基于xspi实现的io扩展方法,其特征在于,应用于包括主控芯片和io扩展芯片的基于扩展型串行外设接口xspi实现的io扩展系统;所述方法包括,
2.根据权利要求1所述的方法,其特征在于,所述方法还包括,
3.根据权利要求1所述的方法,其特征在于,所述方法还包括,
4.根据权利要求3所述的方法,其特征在于,所述方法还包括,
5.根据权利要求3所述的方法,其特征在于,所述方法还包括,
6.根据权利要求3所述的方法,其特征在于,所述方法还包括,
7.根据权利要求1所述的方法,其特征在于,所述方法还包括,响应于所述数据采集完成,所述io扩展芯片的中断模块向所述主控芯片的中断模块发送中断信息,以使所述主控芯片的中断模块将所述中断信息发送至所述主控cpu。
8.根据权利要求1-7任一项所述的方法,其特征在于,在所述主控芯片的主控cpu在存储器运行第一外设驱动的步骤前,所述方法还包括,
9.一种基于xspi实现的io扩展系统,其特征在于,所述系统包括,
10.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机指令,所述处理器被设置为运行所述指令以执行权利要求1-8中任一项所述的基于xspi实现的io扩展方法。
