CN117520252B - 一种通信控制方法、系统级芯片、电子设备及存储介质 - Google Patents

一种通信控制方法、系统级芯片、电子设备及存储介质 Download PDF

Info

Publication number
CN117520252B
CN117520252B CN202410020675.6A CN202410020675A CN117520252B CN 117520252 B CN117520252 B CN 117520252B CN 202410020675 A CN202410020675 A CN 202410020675A CN 117520252 B CN117520252 B CN 117520252B
Authority
CN
China
Prior art keywords
data packet
target
communication
module
detector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202410020675.6A
Other languages
English (en)
Other versions
CN117520252A (zh
Inventor
刘凡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xi'an Xintong Semiconductor Technology Co ltd
Original Assignee
Xi'an Xintong Semiconductor Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xi'an Xintong Semiconductor Technology Co ltd filed Critical Xi'an Xintong Semiconductor Technology Co ltd
Priority to CN202410020675.6A priority Critical patent/CN117520252B/zh
Publication of CN117520252A publication Critical patent/CN117520252A/zh
Application granted granted Critical
Publication of CN117520252B publication Critical patent/CN117520252B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请公开一种通信控制方法、系统级芯片、电子设备及存储介质,涉及通信技术领域,能够提高SOC芯片中多个Master和多个slave之间的通信效率。该方法应用于系统级芯片,该系统级芯片包括:多个主模块、多个从模块、多个寄存器和多个检测器,一个主模块对应一个寄存器和一个检测器,寄存器中预先配置了对应的主模块的通信带宽。检测器接收对应的目标主模块发送的数据包,数据包中包括目标主模块的接口标识以及待访问的目标从模块的通信地址;检测器根据接口标识从对应的目标寄存器中获取目标主模块的通信带宽,并检测数据包所需的带宽是否小于通信带宽,若确定数据包所需的带宽小于通信带宽后,根据目标从模块的通信地址将数据包发送至目标从模块。

Description

一种通信控制方法、系统级芯片、电子设备及存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种通信控制方法、系统级芯片、电子设备及存储介质。
背景技术
随着技术的发展和产品的功能增强,以及超高清视频及虚拟现实等技术的发展,对系统级芯片(System on Chip,SOC)的带宽要求也越来越高。随着SOC芯片的主模块(Master)个数增多,多个Master同时访问同一个从模块(slave)的概率增大,因此,如何提高多个Master和多个slave之间的通信效率成为亟待解决的问题。
目前,主要通过共享总线结构来实现多个Master和多个slave之间的通信,但由于共享总线结构所能提供的最大带宽有限,很难挂接多个Master。多个Master在争用同一条总线时,不仅降低了有效带宽,也进一步加大了网络延迟,导致通信效率降低。
发明内容
本申请提供一种通信控制方法、系统级芯片、电子设备及存储介质,能够提高SOC芯片中多个Master和多个slave之间的通信效率。
为达到上述目的,本申请采用如下技术方案:
本申请实施例第一方面,提供了一种通信控制方法,应用于系统级芯片,所述系统级芯片包括:多个主模块、多个从模块、多个寄存器和多个检测器,一个主模块对应一个寄存器和一个检测器,所述寄存器中预先配置了对应的主模块的通信带宽,所述方法包括:
所述检测器接收对应的目标主模块发送的数据包,所述数据包中包括所述目标主模块的接口标识以及待访问的目标从模块的通信地址;
所述检测器根据所述接口标识从对应的目标寄存器中获取所述目标主模块的通信带宽,并检测所述数据包所需的带宽是否小于所述通信带宽,若确定所述数据包所需的带宽小于所述通信带宽后,根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
作为一种可能的实现方式,所述系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述寄存器中还预先配置了对应的主模块的优先级,所述若确定所述数据包所需的带宽小于所述通信带宽后,所述方法还包括:
所述检测器将所述数据包发送至所述目标从模块对应的目标仲裁器;
所述目标仲裁器根据所述数据包中的接口标识从对应的目标寄存器中获取所述数据包的优先级;
所述目标仲裁器根据所述优先级确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
作为一种可能的实现方式,所述检测器接收对应的目标主模块发送的数据包之前,所述方法还包括:
为所述仲裁器配置N个通信接口,所述N为2或3,其中一个所述通信接口为所述从模块与最高访问次数的主模块之间的通信接口,一个所述通信接口为共享接口,用于除所述最高访问次数的主模块之外的其余主模块的共享接口。
作为一种可能的实现方式,所述多个寄存器包括一个对应的通信接口,所述检测器接收对应的目标主模块发送的数据包之前,所述方法还包括:
通过所述通信接口为各所述寄存器中预先配置对应的主模块的通信带宽和优先级。
作为一种可能的实现方式,所述系统还包括解码器,所述根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块,包括:
利用所述目标解码器从所述数据包中解析出至少一个目标从模块的通信地址,并根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
作为一种可能的实现方式,所述系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述在确定所述数据包所需的带宽小于所述通信带宽后,所述方法还包括:
所述检测器将所述数据包发送至所述目标从模块对应的仲裁器;
所述仲裁器根据预设的轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
作为一种可能的实现方式,所述系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述在确定所述数据包所需的带宽小于所述通信带宽后,所述方法还包括:
所述检测器将所述数据包发送至所述目标从模块对应的仲裁器;
所述仲裁器根据预设的权重轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
本申请实施例第二方面,提供了一种系统级芯片,所述系统级芯片包括多个主模块、多个从模块、多个寄存器和多个检测器,一个主模块对应一个寄存器和一个检测器,所述寄存器中预先配置了对应的主模块的通信带宽;
所述检测器,用于接收对应的目标主模块发送的数据包,所述数据包中包括所述目标主模块的接口标识以及待访问的目标从模块的通信地址;
所述检测器,用于根据所述接口标识从对应的目标寄存器中获取所述目标主模块的通信带宽,并检测所述数据包所需的带宽是否小于所述通信带宽,若确定所述数据包所需的带宽小于所述通信带宽后,根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
本申请实施例第三方面,提供一种电子设备,所述电子设备包括如本申请实施例第二方面中所述的系统级芯片,所述系统级芯片用于执行本申请实施例第一方面中的通信控制方法。
本申请实施例第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本申请实施例第一方面中所述的通信控制方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例提供的通信控制方法,应用于系统级芯片,该系统级芯片包括多个主模块、多个从模块、多个寄存器和多个检测器,一个主模块对应一个寄存器和一个检测器,其中,寄存器中预先配置了对应的主模块的通信带宽,在实际通信过程中,检测器接收对应的目标主模块发送的数据包,该数据包中包括目标主模块的接口标识以及待访问的目标从模块的通信地址;检测器根据接口标识从对应的目标寄存器中获取目标主模块的通信带宽,并检测数据包所需的带宽是否小于该通信带宽,若确定该数据包所需的带宽小于该通信带宽后,根据目标从模块的通信地址,将该数据包发送至目标从模块,这样可以保证各个主模块的吞吐量,避免总线成为通信性能的瓶颈,可以提高多个Master和多个slave之间的通信效率。
附图说明
图1为本申请实施例提供的一种系统级芯片的结构图;
图2为本申请实施例提供的一种通信控制方法的流程图一;
图3为本申请实施例提供的一种通信控制方法的流程图二;
图4为本申请实施例提供的一种系统级芯片的内部结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
另外,“基于”或“根据”的使用意味着开放和包容性,因为“基于”或“根据”一个或多个条件或值的过程、步骤、计算或其他动作在实践中可以基于额外条件或超出的值。
随着技术的发展和产品的功能增强,以及超高清视频及虚拟现实等技术的发展,对系统级芯片(System on Chip,SOC)的带宽要求也越来越高。随着SOC芯片的主模块(Master)个数增多,多个Master同时访问同一个从模块(slave)的概率增大,因此,如何提高多个Master和多个slave之间的通信效率成为亟待解决的问题。
目前,主要通过共享总线结构来实现多个Master和多个slave之间的通信,但由于共享总线结构所能提供的最大带宽有限,很难挂接多个Master。多个Master在争用同一条总线时,不仅降低了有效带宽,也进一步加大了网络延迟,导致通信效率降低。
为了解决上述问题,本申请实施例提供了一种系统级芯片,如图1所示,该系统级芯片包括多个主模块11、多个从模块12、多个寄存器13和多个检测器14,一个主模块11对应一个寄存器13和一个检测器14,所述寄存器13中预先配置了对应的主模块11的通信带宽。
在具体通信过程中,检测器14接收对应的目标主模块11发送的数据包,该数据包中包括目标主模块11的接口标识以及待访问的目标从模块12的通信地址;检测器14根据接口标识从对应的目标寄存器13中获取目标主模块11的通信带宽,并检测数据包所需的带宽是否小于该通信带宽,若确定该数据包所需的带宽小于该通信带宽后,根据目标从模块12的通信地址,将该数据包发送至目标从模块12。
本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的系统级芯片的限定,可选地系统级芯片可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
需要说明的是,本申请实施例的执行主体可以是上述的系统级芯片还可以是包括该系统级芯片的电子设备,下述方法实施例中就以系统级芯片为执行主体进行说明。
基于如图1所示的系统级芯片,如图2所示,本申请实施例提供的通信控制方法包括以下步骤:
步骤201、所述检测器接收对应的目标主模块发送的数据包,所述数据包中包括所述目标主模块的接口标识以及待访问的目标从模块的通信地址。
其中,主模块与从模块之间为访问和被访问的关系,具体的,主模块用于访问从模块。主模块和从模块之间按照预设的通信协议进行通信。
主模块中包括主接口和主接口对应的主子模块,从模块包括从接口和该从接口对应的从子模块,该主子模块可以为SOC芯片中的CPU、GPU或其他器件,本申请实施例对此不作具体限定,该从子模块包括:DDR、FLASH或其他常被访问的器件,本申请实施例对此不作具体限定。
主模块发送的数据包中包括主模块对于从模块的访问请求,示例的,该访问请求可以为请求从模块的存储数据,或者该访问请求还可以为向从模块写入数据等请求。
步骤202、所述检测器根据所述接口标识从对应的目标寄存器中获取所述目标主模块的通信带宽,并检测所述数据包所需的带宽是否小于所述通信带宽。
其中,一个主模块对应一个寄存器和一个检测器,主模块对应的寄存器中预先配置了对应的主模块的通信带宽。
检测器在接收主模块发送的数据包后,根据数据包中的接口标识从对应的目标寄存器中获取该目标主模块的通信带宽,并检测该数据包所需的带宽是否小于该通信带宽,若该数据包所需的带宽小于该通信带宽,则执行步骤203,若该数据包所需的带宽大于该通信带宽则生成返回信息,并将该返回信息发送至对应的主模块,该返回信息提示该数据包发送不成功,或者,若该数据包所需的带宽大于该通信带宽则生成提示信息,并将该提示信息发送至对应的主模块,该提示信息提示该数据包等待发送。具体的等待时间可以根据对应的目标从模块的通信情况确定。
此外,每个主模块的通信带宽可以根据具体的应用场景进行不同的配置,本申请实施例对此不作具体限定。
步骤203、所述检测器若确定所述数据包所需的带宽小于所述通信带宽后,根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
本申请实施例提供的通信控制方法,应用于系统级芯片,该系统级芯片包括多个主模块、多个从模块、多个寄存器和多个检测器,一个主模块对应一个寄存器和一个检测器,其中,寄存器中预先配置了对应的主模块的通信带宽,在实际通信过程中,检测器接收对应的目标主模块发送的数据包,该数据包中包括目标主模块的接口标识以及待访问的目标从模块的通信地址;检测器根据接口标识从对应的目标寄存器中获取目标主模块的通信带宽,并检测数据包所需的带宽是否小于该通信带宽,若确定该数据包所需的带宽小于该通信带宽后,根据目标从模块的通信地址,将该数据包发送至目标从模块,这样可以保证各个主模块的吞吐量,避免总线成为通信性能的瓶颈,可以提高多个Master和多个slave之间的通信效率。
可选的,系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述寄存器中还预先配置了对应的主模块的优先级,所述检测器若确定所述数据包所需的带宽小于所述通信带宽后,如图3所示,所述方法还包括:
步骤301、所述检测器将所述数据包发送至所述目标从模块对应的目标仲裁器。
步骤302、所述目标仲裁器根据所述数据包中的接口标识从对应的目标寄存器中获取所述数据包的优先级。
步骤303、所述目标仲裁器根据所述优先级确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
也就是说,在第一种实现方式中,可以通过检测器将所述数据包发送至所述目标从模块对应的目标仲裁器,然后所述目标仲裁器根据所述数据包中的接口标识从对应的目标寄存器中获取所述数据包的优先级,最后所述目标仲裁器根据所述优先级确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块,这样可以提高重要任务的处理效率。
需要说明的是,每个主模块的优先级可以根据具体的应用场景进行不同的配置,本申请实施例对此不作具体限定。
示例的,每个Master有固定的优先级我们假设有8个Master需要同时访问一个slave,Master0具有最高优先级,Master7具有最低优先级,优先级高的用户只要保持请求,就会持续得到授权。随着优先级不断降低,用户得到授权的机会也随之下降。可以根据不同Master配置不同的优先级,但低优先级的用户可能长时间得不到服务。此时可以通过对高优先级用户増加一些请求约束的方法来避免低优先级用户被“饿死。
此外,在第二种实现方式中,可以通过所述检测器将所述数据包发送至所述目标从模块对应的仲裁器,然后所述仲裁器根据预设的轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。与固定优先级的仲裁算法不同,轮询仲裁考虑到了公平性,保证所有的Master可以获得平等的优先级。
也就是说,在第二种实现方式中对待所有请求所有用户获得均等的访问机会,不会有用户始终无法得到资源,轮询仲裁机制兼顾了公平性和差异性。
进一步的,在第三种实现方式中,通过所述检测器将所述数据包发送至所述目标从模块对应的仲裁器,然后所述仲裁器根据预设的权重轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块,这样可以在考虑优先级的同时也可以兼顾各Master访问的公平性。
也就是说,在第三种实现方式中,在一个轮询周期内,不同权重的用户会得到不同的访问次数。这样可以在考虑优先级的同时也可以兼顾各Master访问的公平性。
可选的,所述检测器接收对应的目标主模块发送的数据包之前,所述方法还包括:
为所述仲裁器配置N个通信接口,所述N为2或3,其中一个所述通信接口为所述从模块与最高访问次数的主模块之间的通信接口,一个所述通信接口为共享接口,用于除所述最高访问次数的主模块之外的其余主模块的共享接口。
通过为每个仲裁器配置2或3个通信接口,这样可以提高仲裁效率,同时可以减少SOC开发板的面积。
可选的,所述多个寄存器包括一个对应的通信接口,所述检测器接收对应的目标主模块发送的数据包之前,所述方法还包括:
通过所述通信接口为各所述寄存器中预先配置对应的主模块的通信带宽和优先级。这样可以提高寄存器的配置效率,同时可以提高不同应用场景下通信带宽和优先级的更改效率。
可选的,所述系统还包括解码器,所述根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块,包括:
利用所述目标解码器从所述数据包中解析出至少一个目标从模块的通信地址,并根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
如图4所示,本申请实施例提供了还提供了一种系统级芯片的示意图,其中图4中的图中显示了数据包的流向。含有“M”的小矩形分别表示不同的master,含有“S”的小矩形分别表示不同的slave。箭头指向被访问对象。多进一出的圆圈表示仲裁器,对进入的多个请求数据进行仲裁,可以根据项目需求通过工具配置相应的仲裁策略。一进多出的圆圈表示为解码器,将来自一处的请求数据根据地址路由至相应的目的地。“SRVT”即可以通过配置寄存器控制的Qos 生成器。可以设置各master默认的优先级和相应的带宽控制策略。在后期使用时,还可以通过“MNC”接口自由配置相应的寄存器作用于Qos Generator进而影响各master接口的优先级和带宽。便于灵活的应用到不同的项目和针对需求做出精准的调整。
本申请实施例提供的通信控制方法,应用于系统级芯片,该系统级芯片包括多个主模块、多个从模块、多个寄存器和多个检测器,一个主模块对应一个寄存器和一个检测器,其中,寄存器中预先配置了对应的主模块的通信带宽,在实际通信过程中,检测器接收对应的目标主模块发送的数据包,该数据包中包括目标主模块的接口标识以及待访问的目标从模块的通信地址;检测器根据接口标识从对应的目标寄存器中获取目标主模块的通信带宽,并检测数据包所需的带宽是否小于该通信带宽,若确定该数据包所需的带宽小于该通信带宽后,根据目标从模块的通信地址,将该数据包发送至目标从模块,这样可以保证各个主模块的吞吐量,避免总线成为通信性能的瓶颈,可以提高多个Master和多个slave之间的通信效率。此外,通过配置各个Master的优先级,同时采用不同的仲裁策略可以保证重要任务的通信效率的同时兼顾了各Master访问的公平性。
如图1所示,本申请实施例还提供了一种系统级芯片,该系统级芯片包括多个主模块11、多个从模块12、多个寄存器13和多个检测器14,一个主模块11对应一个寄存器13和一个检测器14,所述寄存器13中预先配置了对应的主模块11的通信带宽;
所述检测器14,用于接收对应的目标主模块11发送的数据包,所述数据包中包括所述目标主模块11的接口标识以及待访问的目标从模块12的通信地址;
所述检测器14,还用于根据所述接口标识从对应的目标寄存器13中获取所述目标主模块11的通信带宽,并检测所述数据包所需的带宽是否小于所述通信带宽;
所述检测器14,还用于若确定所述数据包所需的带宽小于所述通信带宽后,根据所述目标从模块12的通信地址将所述数据包发送至所述目标从模块12。
在一个实施例中,所述系统级芯片还包括仲裁器15,一个从模块12对应一个仲裁器15,所述寄存器13中还预先配置了对应的主模块11的优先级:
所述检测器14,还用于将所述数据包发送至所述目标从模块12对应的目标仲裁器15;
所述目标仲裁器15,用于根据所述数据包中的接口标识从对应的目标寄存器13中获取所述数据包的优先级;
所述目标仲裁器15,还用于根据所述优先级确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块12。
在一个实施例中,所述系统级芯片还用于:
为所述仲裁器15配置N个通信接口,所述N为2或3,其中一个所述通信接口为所述从模块12与最高访问次数的主模块11之间的通信接口,一个所述通信接口为共享接口,用于除所述最高访问次数的主模块11之外的其余主模块11的共享接口。
在一个实施例中,所述多个寄存器13包括一个对应的通信接口,所述检测器14接收对应的目标主模块11发送的数据包之前,所述系统级芯片还用于:
通过所述通信接口为各所述寄存器13中预先配置对应的主模块11的通信带宽和优先级。
在一个实施例中,所述系统还包括解码器,所述解码器用于:
利用所述目标解码器从所述数据包中解析出至少一个目标从模块12的通信地址,并根据所述目标从模块12的通信地址将所述数据包发送至所述目标从模块12。
在一个实施例中,所述系统级芯片还包括仲裁器15,一个从模块12对应一个仲裁器15;
所述检测器14,用于将所述数据包发送至所述目标从模块12对应的仲裁器15;
所述仲裁器15,用于根据预设的轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块12。
在一个实施例中,所述系统级芯片还包括仲裁器15,一个从模块12对应一个仲裁器15;
所述检测器14,用于将所述数据包发送至所述目标从模块12对应的仲裁器15;
所述仲裁器15,用于根据预设的权重轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块12。
本申请实施例提供的系统级芯片,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本申请另一实施例还提供了一种电子设备,如图5所示,该电子设备中包括本申请实施例提供的系统级芯片,该系统级芯片用于执行上述方法实施例提供的通信控制方法流程中的各个步骤。
本申请另一实施例中,还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如本申请实施例的通信控制方法流程中的各个步骤。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机执行指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种通信控制方法,其特征在于,应用于系统级芯片,所述系统级芯片包括:多个主模块、多个从模块、多个寄存器和多个检测器,所述主模块包括主接口和所述主接口对应的主子模块,所述从模块包括从接口和所述从接口对应的从子模块,所述主模块用于访问所述从模块,所述主模块和所述从模块之间按照预设的通信协议进行通信,一个主模块对应一个寄存器和一个检测器,所述寄存器中预先配置了对应的主模块的通信带宽,所述方法包括:
所述检测器接收对应的目标主模块发送的数据包,所述数据包中包括所述目标主模块的接口标识以及待访问的目标从模块的通信地址;
所述检测器根据所述接口标识从对应的目标寄存器中获取所述目标主模块的通信带宽,并检测所述数据包所需的带宽是否小于所述通信带宽;
所述检测器若确定所述数据包所需的带宽小于所述通信带宽后,根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
2.根据权利要求1所述的方法,其特征在于,所述系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述寄存器中还预先配置了对应的主模块的优先级,所述检测器若确定所述数据包所需的带宽小于所述通信带宽后,所述方法还包括:
所述检测器将所述数据包发送至所述目标从模块对应的目标仲裁器;
所述目标仲裁器根据所述数据包中的接口标识从对应的目标寄存器中获取所述数据包的优先级;
所述目标仲裁器根据所述优先级确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
3.根据权利要求2所述的方法,其特征在于,所述检测器接收对应的目标主模块发送的数据包之前,所述方法还包括:
为所述仲裁器配置N个通信接口,所述N为2或3,其中一个所述通信接口为所述从模块与最高访问次数的主模块之间的通信接口,一个所述通信接口为共享接口,用于除所述最高访问次数的主模块之外的其余主模块的共享接口。
4.根据权利要求2所述的方法,其特征在于,所述多个寄存器包括一个对应的通信接口,所述检测器接收对应的目标主模块发送的数据包之前,所述方法还包括:
通过所述通信接口为各所述寄存器中预先配置对应的主模块的通信带宽和优先级。
5.根据权利要求1所述的方法,其特征在于,所述系统还包括解码器,所述根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块,包括:
利用所述解码器从所述数据包中解析出至少一个目标从模块的通信地址,并根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
6.根据权利要求1所述的方法,其特征在于,所述系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述检测器在确定所述数据包所需的带宽小于所述通信带宽后,所述方法还包括:
所述检测器将所述数据包发送至所述目标从模块对应的仲裁器;
所述仲裁器根据预设的轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
7.根据权利要求1所述的方法,其特征在于,所述系统级芯片还包括仲裁器,一个从模块对应一个仲裁器,所述检测器在确定所述数据包所需的带宽小于所述通信带宽后,所述方法还包括:
所述检测器将所述数据包发送至所述目标从模块对应的仲裁器;
所述仲裁器根据预设的权重轮询仲裁机制确定各所述数据包的传输顺序,并根据所述传输顺序将所述数据包发送至所述目标从模块。
8.一种系统级芯片,其特征在于,所述系统级芯片包括多个主模块、多个从模块、多个寄存器和多个检测器,所述主模块包括主接口和所述主接口对应的主子模块,所述从模块包括从接口和所述从接口对应的从子模块,所述主模块用于访问所述从模块,所述主模块和所述从模块之间按照预设的通信协议进行通信,一个主模块对应一个寄存器和一个检测器,所述寄存器中预先配置了对应的主模块的通信带宽;
所述检测器,用于接收对应的目标主模块发送的数据包,所述数据包中包括所述目标主模块的接口标识以及待访问的目标从模块的通信地址;
所述检测器,还用于根据所述接口标识从对应的目标寄存器中获取所述目标主模块的通信带宽,并检测所述数据包所需的带宽是否小于所述通信带宽;
所述检测器,还用于若确定所述数据包所需的带宽小于所述通信带宽后,根据所述目标从模块的通信地址将所述数据包发送至所述目标从模块。
9.一种电子设备,其特征在于,所述电子设备包括如权利要求8所述的系统级芯片,所述系统级芯片用于执行权利要求1至7任一项所述的通信控制方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的通信控制方法。
CN202410020675.6A 2024-01-08 2024-01-08 一种通信控制方法、系统级芯片、电子设备及存储介质 Active CN117520252B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410020675.6A CN117520252B (zh) 2024-01-08 2024-01-08 一种通信控制方法、系统级芯片、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410020675.6A CN117520252B (zh) 2024-01-08 2024-01-08 一种通信控制方法、系统级芯片、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN117520252A CN117520252A (zh) 2024-02-06
CN117520252B true CN117520252B (zh) 2024-04-16

Family

ID=89749826

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410020675.6A Active CN117520252B (zh) 2024-01-08 2024-01-08 一种通信控制方法、系统级芯片、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117520252B (zh)

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554083A (zh) * 2001-09-10 2004-12-08 迪吉格雷姆公司 利用数字通信网络在主单元和从单元间传输音频数据的系统
CN105144129A (zh) * 2013-03-06 2015-12-09 萨基姆防卫安全 用于片上系统的带宽控制方法
CN106095711A (zh) * 2016-08-25 2016-11-09 威胜电气有限公司 用于主从模块通信的连接装置和通信方法
CN206162513U (zh) * 2016-08-25 2017-05-10 威胜电气有限公司 用于主从模块通信的连接装置
CN108984443A (zh) * 2018-06-27 2018-12-11 郑州云海信息技术有限公司 一种优先级实时调整装置及方法
CN112231254A (zh) * 2020-09-22 2021-01-15 深圳云天励飞技术股份有限公司 存储器仲裁方法及存储器控制器
CN112506821A (zh) * 2020-09-27 2021-03-16 山东云海国创云计算装备产业创新中心有限公司 一种系统总线接口请求仲裁方法及相关组件
CN114253884A (zh) * 2022-03-01 2022-03-29 四川鸿创电子科技有限公司 基于fpga的多主对多从访问仲裁方法、系统及存储介质
CN115002048A (zh) * 2022-05-31 2022-09-02 珠海格力电器股份有限公司 一种数据传输方法、装置、电子设备及存储介质
CN115842789A (zh) * 2023-02-23 2023-03-24 鹏城实验室 数据包调度方法、设备及可读存储介质
CN116150082A (zh) * 2023-02-21 2023-05-23 上海壁仞智能科技有限公司 访问方法、装置、芯片、电子设备和存储介质
CN116167309A (zh) * 2022-12-28 2023-05-26 芯动微电子科技(武汉)有限公司 一种芯片性能验证方法和系统
CN116383116A (zh) * 2021-12-24 2023-07-04 紫光同芯微电子有限公司 一种基于spi总线的通信方法及装置
CN116743524A (zh) * 2022-03-04 2023-09-12 上海博泰悦臻网络技术服务有限公司 一种用于传输数据的方法及系统、主模块
CN117336534A (zh) * 2023-10-07 2024-01-02 抖音视界有限公司 数据传输方法、装置、电子设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7054968B2 (en) * 2003-09-16 2006-05-30 Denali Software, Inc. Method and apparatus for multi-port memory controller
US8516167B2 (en) * 2011-08-03 2013-08-20 Atmel Corporation Microcontroller system bus scheduling for multiport slave modules

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554083A (zh) * 2001-09-10 2004-12-08 迪吉格雷姆公司 利用数字通信网络在主单元和从单元间传输音频数据的系统
CN105144129A (zh) * 2013-03-06 2015-12-09 萨基姆防卫安全 用于片上系统的带宽控制方法
CN106095711A (zh) * 2016-08-25 2016-11-09 威胜电气有限公司 用于主从模块通信的连接装置和通信方法
CN206162513U (zh) * 2016-08-25 2017-05-10 威胜电气有限公司 用于主从模块通信的连接装置
CN108984443A (zh) * 2018-06-27 2018-12-11 郑州云海信息技术有限公司 一种优先级实时调整装置及方法
CN112231254A (zh) * 2020-09-22 2021-01-15 深圳云天励飞技术股份有限公司 存储器仲裁方法及存储器控制器
CN112506821A (zh) * 2020-09-27 2021-03-16 山东云海国创云计算装备产业创新中心有限公司 一种系统总线接口请求仲裁方法及相关组件
CN116383116A (zh) * 2021-12-24 2023-07-04 紫光同芯微电子有限公司 一种基于spi总线的通信方法及装置
CN114253884A (zh) * 2022-03-01 2022-03-29 四川鸿创电子科技有限公司 基于fpga的多主对多从访问仲裁方法、系统及存储介质
CN116743524A (zh) * 2022-03-04 2023-09-12 上海博泰悦臻网络技术服务有限公司 一种用于传输数据的方法及系统、主模块
CN115002048A (zh) * 2022-05-31 2022-09-02 珠海格力电器股份有限公司 一种数据传输方法、装置、电子设备及存储介质
CN116167309A (zh) * 2022-12-28 2023-05-26 芯动微电子科技(武汉)有限公司 一种芯片性能验证方法和系统
CN116150082A (zh) * 2023-02-21 2023-05-23 上海壁仞智能科技有限公司 访问方法、装置、芯片、电子设备和存储介质
CN115842789A (zh) * 2023-02-23 2023-03-24 鹏城实验室 数据包调度方法、设备及可读存储介质
CN117336534A (zh) * 2023-10-07 2024-01-02 抖音视界有限公司 数据传输方法、装置、电子设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Gao Peng.AMBA bus and its application. Semiconductor Technology.2002,全文. *
方志斌 ; 胡鹏 ; 安学军 ; 孙凝晖 ; .龙芯2E多处理器芯片组的设计与实现.计算机应用研究.2008,(第05期),全文. *
李作勇 ; 刘诗斌 ; 冯勇 ; .基于FPGA的AHB总线与IDE硬盘的接口设计.计算机工程与科学.2009,(第02期),全文. *

Also Published As

Publication number Publication date
CN117520252A (zh) 2024-02-06

Similar Documents

Publication Publication Date Title
US11528229B2 (en) Traffic class arbitration based on priority and bandwidth allocation
US20020152327A1 (en) Network interface adapter with shared data send resources
US8817619B2 (en) Network system with quality of service management and associated management method
US20070070904A1 (en) Feedback mechanism for flexible load balancing in a flow-based processor affinity scheme
US7020161B1 (en) Prescheduling arbitrated resources
JP2016531372A (ja) メモリモジュールアクセス方法および装置
US7533201B2 (en) Queue management mechanism in network processor wherein packets stored at memory device corresponds to addresses stored in plurity of queues within queue management
CN107786458B (zh) 基于dpdk的多端口准入准出的方法
CN116664377A (zh) 数据传输方法及相关装置
US7209489B1 (en) Arrangement in a channel adapter for servicing work notifications based on link layer virtual lane processing
US11343176B2 (en) Interconnect address based QoS regulation
CN117520252B (zh) 一种通信控制方法、系统级芯片、电子设备及存储介质
KR102303424B1 (ko) 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치
US9537799B2 (en) Phase-based packet prioritization
US20020009098A1 (en) Communication control method and device
CN116820769A (zh) 一种任务分配方法、装置及系统
CN116150082A (zh) 访问方法、装置、芯片、电子设备和存储介质
WO2012113224A1 (zh) 多节点计算系统下选择共享内存所在节点的方法和装置
CN115344350A (zh) 云服务系统的节点设备及资源处理方法
KR20050080704A (ko) 프로세서간 데이터 전송 장치 및 방법
US7298698B1 (en) Method and apparatus for statistically controlling priority between queues
CN107920035B (zh) 用于确定性交换式以太网的多核处理器类型装置、系统及运载工具
JP3849578B2 (ja) 通信制御装置
TWI819900B (zh) 記憶體請求優先升級
US20240134970A1 (en) Method for definition, consumption, and controlled access of dpu resources and services

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant