片上系统及其外设数据传输方法和电子设备与流程

    专利查询2025-06-06  68


    本公开涉及芯片,特别涉及一种片上系统的外设数据传输方法和电子设备。


    背景技术:

    1、片上系统(soc,system on a chip)的多处理器架构是在一个芯片上集成多个处理器核心以实现更高性能、更低功耗和更紧凑的系统设计。这种架构通常用于需要处理大量并行任务或需要更高计算能力的应用。在片上系统的多处理器架构中,每个处理器核心可以独立运行程序,执行任务,并通过共享内存或其他通信机制进行通信和协作。

    2、多处理器架构的片上系统中处理器与外设之间路径较长,处理器访问外设的响应等待时间较长,导致片上系统产生整体数据传输性能较低等问题。


    技术实现思路

    1、有鉴于此,本公开提供了一种片上系统及其外设数据传输方法和电子设备,能够有效提升片上系统中外设数据的传输效率,从而提升片上系统的整体数据传输性能、总线数据流的连续性。

    2、根据本公开的第一方面,提供了一种片上系统的外设数据传输方法,所述片上系统包括第一处理器、第二处理器、直接寄存器访问dma控制器、外设控制器、共享内存,所述dma控制器、共享内存以及第二处理器挂接于同一总线;所述片上系统的外设数据传输方法,包括:第一处理器向所述共享内存写入针对外设控制器的读写参数;第二处理器利用所述读写参数配置并使能所述dma控制器;被使能后,所述dma控制器将所述外设控制器中的外设数据搬运至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据。

    3、本公开第一方面的一些实施方式中,所述第二处理器利用所述读写参数配置并使能所述dma控制器,包括:

    4、所述第二处理器根据外设总线传输速率和所述读写参数指示的读写数据量估算总线传输时长,所述外设总线用于挂接所述外设控制器;

    5、若所述总线传输时长大于dma配置时长阈值,则所述第二处理器配置并使能所述dma控制器。

    6、本公开第一方面的一些实施方式中,还包括:若所述总线传输时长小于或等于dma配置时长阈值,则所述第二处理器从所述外设控制器的数据寄存器地址读取所述外设数据并送至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据。

    7、本公开第一方面的一些实施方式中,所述第二处理器利用所述读写参数配置并使能所述dma控制器,包括:确定对应所述外设控制器的dma通道;将所述外设控制器的数据寄存器地址设置为所述dma控制器的源地址;将对应所述外设控制器的共享内存空间地址设置为所述dma控制器的目标地址;根据所述读写参数中的读写数据量设置所述dma控制器的数据传输长度;使能所述dma控制器。

    8、本公开第一方面的一些实施方式中,所述确定对应所述外设控制器的dma通道,包括如下之一:

    9、申请所述dma控制器的空闲dma通道并将所述空闲dma通道绑定至所述外设控制器;

    10、若所述外设控制器已绑定的dma通道当前被标记为空闲,则直接使用所述外设控制器已绑定的dma通道;

    11、若所述dma控制器中所有dma通道被占用,检索处于绑定状态的dma通道,释放被标记为空闲且处于绑定状态的dma通道以获得空闲dma通道,将所述空闲dma通道绑定至所述外设控制器。

    12、本公开第一方面的一些实施方式中,所述dma控制器将所述外设控制器中的外设数据搬运至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据,包括:

    13、所述dma控制器将所述外设控制器的数据寄存器地址处存放的外设数据搬运至所述共享内存,并在搬运完成后发起第二中断;

    14、响应于所述第二中断,第二处理器运行中断服务函数以向所述第一处理器发起第三中断,以使得所述第一处理器响应于所述第三中断向所述共享内存读取所述外设数据。

    15、本公开第一方面的一些实施方式中,所述第二处理器中设置有搬运任务模块,所述搬运任务模块用于响应于来自第一处理器的第一中断唤醒第二处理器的dma控制器配置程序;所述第二处理器利用所述读写参数配置并使能所述dma控制器,具体为:第二处理器运行dma控制器配置程序以完成dma控制器的配置与使能。

    16、本公开第一方面的一些实施方式中,所述读写参数包括多组,每组读写参数针对不同的外设控制器;所述第二处理器利用所述读写参数配置并使能所述dma控制器,包括:响应于第一处理器发起的第一中断,所述第二处理器从所述共享内存中读取所述第一处理器写入的多组读写参数,所述第二处理器对所述多组读写参数排序,按照所述排序流水线式执行每组读写参数的dma控制器的配置与使能,不同的读写参数分配不同的dma通道以使用不同dma通道搬运不同外设控制器的外设数据。

    17、本公开第一方面的一些实施方式中,所述第二处理器对所述多组读写参数排序,包括:

    18、所述第二处理器根据如下信息中之一对所述多组读写参数排序:

    19、读写参数对应的外设控制器的优先级;

    20、读写参数对应的读数据请求的时序;

    21、读写参数对应的读数据请求的应用程序优先级。

    22、本公开第一方面的一些实施方式中,被使能后,所述dma控制器将所述外设控制器中的外设数据搬运至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据,包括:

    23、所述dma控制器按照所述排序使用不同的dma通道流水线式搬运外设控制器的外设数据至所述共享内存,每检测到一个dma通道传输完成则发起一次第二中断;

    24、每收到一次所述第二中断,所述第二处理器发起一次第三中断,所述第三中断用于通知所述第一处理器相应外设控制器的外设数据传输完成,以便所述第一处理器响应于所述第三中断从所述共享内存中读取相应的外设数据,直至多组读写参数对应的外设控制器的外设数据都能够被所述第一处理器读取到。

    25、本公开第一方面的一些实施方式中,所述外设控制器包括如下之一或多种:

    26、通用的串行通信接口uart;

    27、串行通信总线接口i2c;

    28、同步串行数据接口spi;

    29、存储卡接口sd/mmc;

    30、数字音频接口i2s;

    31、增强型串行外设接口espi。

    32、根据本公开的第二方面,提供了一种片上系统,所述片上系统包括第一处理器、第二处理器、直接寄存器访问dma控制器、外设控制器、共享内存,所述dma控制器、共享内存以及第二处理器挂接于同一总线;所述第一处理器,用于向所述共享内存写入针对外设控制器的读写参数;所述第二处理器,用于利用所述读写参数配置并使能所述dma控制器;所述dma控制器,用于被使能后,将所述外设控制器中的外设数据搬运至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据。

    33、根据本公开的第三方面,提供了一种电子设备,包括:上述的片上系统。

    34、由上述技术方案可以看出,本公开实施例通过在片上系统中增设dma,dma控制器设置在第二处理器所在的总线上,第二处理器仅需基于共享内存中的读写参数配置并使能dma控制器,之后可以由dma控制器将来自外设控制器的外设数据搬运至共享内存,而无需第二处理器的参与,由此,在使能dma控制器后,第二处理器的核资源便可被自动释放出来以用于其他外设任务,从而有效避免第二处理器的核资源被占满,解决了第二处理器的数据拥堵问题,提升了第二处理器的核资源利用率和处理效率;同时,由于dma控制器在共享内存和外设控制器之间搬运数据的中间环节更简单、消耗的时间更少,dma控制器搬运数据的耗时往往比第二处理器直接从外设控制器中读取数据所花费的时间更少,且dma控制器搬运数据的耗时通常会低于外设总线上完成实际数据传输的时间,因此,本公开实施例的方法还可减少外设数据的传输耗时,提升总线数据传输的连续性,让外设总线能够满带宽传输,减少带宽资源的浪费,从而提升片上系统的整体数据传输性能。


    技术特征:

    1.一种片上系统的外设数据传输方法,其特征在于,所述片上系统包括第一处理器、第二处理器、直接寄存器访问dma控制器、外设控制器、共享内存,所述dma控制器、共享内存以及第二处理器挂接于同一总线;

    2.根据权利要求1所述的方法,其特征在于,所述第二处理器利用所述读写参数配置并使能所述dma控制器,包括:

    3.根据权利要求2所述的方法,其特征在于,还包括:

    4.根据权利要求1所述的方法,其特征在于,

    5.根据权利要求4所述的方法,其特征在于,所述确定对应所述外设控制器的dma通道,包括如下之一:

    6.根据权利要求1所述的方法,其特征在于,所述dma控制器将所述外设控制器中的外设数据搬运至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据,包括:

    7.根据权利要求1所述的方法,其特征在于,

    8.根据权利要求1所述的方法,其特征在于,

    9.根据权利要求8所述的方法,其特征在于,所述第二处理器对所述多组读写参数排序,包括:

    10.根据权利要求8所述的方法,其特征在于,被使能后,所述dma控制器将所述外设控制器中的外设数据搬运至所述共享内存,以使得所述第一处理器能够从所述共享内存中读取到所述外设数据,包括:

    11.根据权利要求1所述的方法,其特征在于,所述外设控制器包括如下之一或多种:

    12.一种片上系统,其特征在于,所述片上系统包括第一处理器、第二处理器、直接寄存器访问dma控制器、外设控制器、共享内存,所述dma控制器、共享内存以及第二处理器挂接于同一总线;

    13.一种电子设备,其特征在于,包括:权利要求12所述的片上系统。


    技术总结
    本公开提供了一种片上系统及其外设数据传输方法和电子设备,片上系统包括第一处理器、第二处理器、直接寄存器访问DMA控制器、外设控制器、共享内存,所述DMA控制器、共享内存以及第二处理器挂接于同一总线。外设数据传输方法,包括:第一处理器向共享内存写入针对外设控制器的读写参数;第二处理器利用读写参数配置并使能DMA控制器;被使能后,DMA控制器将外设控制器中的外设数据搬运至共享内存,以使得第一处理器能够从共享内存中读取到外设数据。本公开实施例解决了片上系统内外设数据传输中的数据堵塞、耗时太长等问题。

    技术研发人员:廖飞帆,杨维韬
    受保护的技术使用者:飞腾信息技术有限公司
    技术研发日:
    技术公布日:2024/11/26
    转载请注明原文地址:https://tc.8miu.com/read-29128.html

    最新回复(0)