CN116225995B - 一种总线系统及芯片 - Google Patents
一种总线系统及芯片 Download PDFInfo
- Publication number
- CN116225995B CN116225995B CN202310507424.6A CN202310507424A CN116225995B CN 116225995 B CN116225995 B CN 116225995B CN 202310507424 A CN202310507424 A CN 202310507424A CN 116225995 B CN116225995 B CN 116225995B
- Authority
- CN
- China
- Prior art keywords
- equipment
- access
- clock
- state
- power consumption
- 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
Links
- 238000012545 processing Methods 0.000 claims description 36
- 230000008859 change Effects 0.000 abstract description 10
- 238000000034 method Methods 0.000 description 46
- 230000015654 memory Effects 0.000 description 20
- 238000012544 monitoring process Methods 0.000 description 16
- 238000003672 processing method Methods 0.000 description 11
- 238000005265 energy consumption Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 3
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System 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
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Bus Control (AREA)
Abstract
本发明涉及计算机技术领域,公开了一种总线系统及芯片,总线系统包括设置在芯片上的主设备和从设备之间的仲裁模块,仲裁模块用于:获取访问同一目标从设备的指令信息;根据指令信息确定访问主设备的数量,其中访问主设备为访问目标从设备的主设备;根据访问主设备的数量,确定访问主设备的仲裁规则。由此当访问主设备的数量不同时,仲裁模块采用不同的仲裁规则,即仲裁规则随着访问主设备的数量的变化而变化,从而可以在访问主设备的数量较少时,采用较简单的仲裁规则,减少仲裁模块的功耗。
Description
技术领域
本发明涉及计算机领域,具体涉及一种总线系统及芯片。
背景技术
随着集成电路的不断发展,对片上系统( System on Chip,SOC)芯片处理速度的要求越来越高,同时功耗的要求越来越高。低功耗芯片具有节省能源、提高待机或使用时间、降低芯片温度、延迟芯片的使用寿命、拓展芯片的使用范围等优点。
在SOC芯片中,不同的功能模块一般都是挂载在总线上,通过总线进行数据的交互。系统总线作为连接各个模块的中枢桥梁,对SOC芯片的性能及功耗起到重要影响,特别是在多个主设备Master和多个从设备Slave的系统中。
目前为了降低芯片的功耗,一般采用关闭暂时不使用的主设备和从设备的时钟的方法,但是这种单一的方法在降低芯片功耗方面的效果有限。
发明内容
有鉴于此,本发明提供了一种总线系统及芯片,以降低芯片的功耗。
根据第一方面,本发明实施例提供了一种总线系统,其包括设置在芯片上的主设备和从设备之间的仲裁模块,仲裁模块用于:获取访问同一目标从设备的指令信息;根据指令信息确定访问主设备的数量,其中访问主设备为访问目标从设备的主设备;根据访问主设备的数量,确定访问主设备的仲裁规则。
上述指令处理方法,通过利用仲裁模块获取访问同一目标从设备的指令信息,根据指令信息确定访问主设备的数量,进而可以根据访问主设备的数量确定访问主设备的仲裁规则。也就是说,当访问主设备的数量不同时,仲裁模块采用不同的仲裁规则,即仲裁规则随着访问主设备的数量的变化而变化,从而可以在访问主设备的数量较少时,采用较简单的仲裁规则,减少仲裁模块的功耗。
在一些可选的实施方式中,根据访问主设备的数量,确定访问主设备的仲裁规则包括:当访问主设备为一个时,将访问主设备的指令信息发送至目标从设备;当访问主设备为多个时,确定多个访问主设备的优先级,按照确定的优先级,将多个访问主设备的指令信息发送至目标从设备。
也就是说,当访问主设备为一个时,直接将访问主设备的指令信息发送至目标从设备即可,由于其采用的处理方式较简单,因此可以减少仲裁模块的功耗。
在一些可选的实施方式中,确定多个访问主设备的优先级包括:获取每个访问主设备处于低功耗状态的时长;根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级。由此可以根据芯片的使用环境确定出比较准确的优先级。
在一些可选的实施方式中,根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级包括:根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级,其中处于低功耗状态的时长越长,优先级越高。
这是因为,在芯片中,根据访问主设备处于低功耗状态的时长可以判断访问主设备发送的指令的类型,当访问主设备处于低功耗状态的时长较长时,一般情况下,访问主设备发送为控制指令。采用上述方式,可以给控制指令较高的优先级,保证控制指令可以较快的发送至目标从设备。
在一些可选的实施方式中,按照确定的优先级,将多个访问主设备的指令信息发送至目标从设备包括:按照确定的优先级依次将每个访问主设备的指令信息发送至目标从设备。由此可以保证指令信息能够顺利的发送到目标从设备,而不会产生冲突。
在一些可选的实施方式中,按照确定的优先级,将多个访问主设备的指令信息发送至目标从设备包括:按照确定的优先级依次选取当前轮询访问主设备,其中当前轮询访问主设备为当前需要轮询访问目标从设备的访问主设备;采用轮询访问的方式将当前轮询访问主设备的指令信息发送至目标从设备;当当前轮询访问主设备中的至少一个访问主设备完成指令信息的发送时,按照确定的优先级依次选取下一轮询访问主设备,并将下一轮询访问主设备作为当前轮询访问主设备,返回采用轮询访问的方式将当前轮询访问主设备的指令信息发送至目标从设备的步骤。
由此不仅便于硬件实现,同时可以提高总线的性能。
在一些可选的实施方式中,当前轮询访问主设备为两个。由此不仅便于硬件实现,同时可以提高总线的性能。
在一些可选的实施方式中,轮询访问为均衡轮询访问。由此不仅便于硬件实现,同时可以提高总线的性能。
在一些可选的实施方式中,当访问主设备为一个时,将访问主设备的指令信息发送至目标从设备包括:当访问主设备为一个时,获取预设的缓存队列的状态信息;根据状态信息判断缓存队列是否为空;当缓存队列为空时,将访问主设备的指令信息发送至目标从设备;当缓存队列不为空时,将访问主设备的指令信息写入缓存队列,将缓存队列中的指令信息依次发送至目标从设备。由此可以保证指令信息能够按照时间的先后顺序发送到目标从设备。
在一些可选的实施方式中,指令信息包括指令标识,根据指令信息确定访问主设备的数量包括:根据指令标识确定访问主设备的数量。由此可以简单的确定访问主设备的数量。
在一些可选的实施方式中,在获取访问同一目标从设备的指令信息之前,还包括:获取主设备发送的指令信息;利用译码模块对主设备发送的指令信息进行处理,确定主设备需要访问的目标从设备。由此可以确定出目标从设备。
在一些可选的实施方式中,指令处理方法还包括以下步骤:当第一设备自身能够进入低功耗状态时,根据第一设备的状态信号,关闭或打开第二设备的时钟;或者,当第一设备自身无法进入低功耗状态时,根据第二设备的工作状态信息,关闭第二设备的时钟;其中,第一设备为主设备,第二设备为译码模块;或者,第一设备为从设备,第二设备为仲裁模块。由此,当第一设备自身能够进入低功耗状态时,可以根据第一设备的状态信号关闭第二设备的时钟,使第二设备也进入低功耗状态,进一步降低总线的功耗;当第一设备自身无法进入低功耗状态时,可以根据第二设备的工作状态,关闭第二设备的时钟,使得第二设备进入低功耗状态,降低总线的功耗。
在一些可选的实施方式中,指令处理方法还包括以下步骤:当第一设备自身无法进入低功耗状态时,根据第二设备的工作状态信息,控制第一设备进入低功耗状态。由此当第一设备自身无法进入低功耗状态时,可以根据第二设备的工作状态,控制第一设备进入低功耗状态,降低总线的功耗。
在一些可选的实施方式中,在根据第二设备的工作状态信息,控制第一设备进入低功耗状态之后,还包括以下步骤:当第一设备能够反馈状态信号时,获取第一设备的状态信号;根据第一设备的状态信号判断第一设备是否退出低功耗状态;当第一设备退出低功耗状态时,产生打开第二设备的时钟的请求消息,并将打开第二设备的时钟。由此可以在第一设备退出低功耗状态时,控制第二设备也退出低功耗状态,尽快完成数据处理。
在一些可选的实施方式中,根据第一设备的状态信号,关闭第二设备的时钟包括:获取第一设备的状态信号; 根据第一设备的状态信号判断第一设备处于低功耗状态的时长是否大于预设的第一时长;当第一设备处于低功耗状态的时长大于第一时长时,产生关闭第二设备的时钟的请求消息,并将关闭第二设备的时钟。由此可以比较准确的控制第二设备进入低功耗状态。
在一些可选的实施方式中,根据第一设备的状态信号,打开第二设备的时钟包括:获取第一设备的状态信号;根据第一设备的状态信号判断第一设备是否退出低功耗状态;当第一设备退出低功耗状态时,产生打开第二设备的时钟的请求消息,并打开第二设备的时钟。由此可以在第一设备退出低功耗状态时,控制第二设备也退出低功耗状态,尽快完成数据处理。
在一些可选的实施方式中,根据第二设备的工作状态信息,关闭第二设备的时钟包括:获取第二设备的工作状态信号; 根据第二设备的工作状态信号确定第二设备处于空闲状态的时长是否大于预设的第二时长;当第二设备处于空闲状态的时长大于第二时长时,产生关闭第二设备的时钟的请求消息,并将关闭第二设备的时钟。由此可以比较准确的控制第二设备进入低功耗状态。
在一些可选的实施方式中,根据第二设备的工作状态信息,控制第一设备进入低功耗状态包括:获取第二设备的工作状态信号; 根据第二设备的工作状态信号确定第二设备处于空闲状态的时长是否大于预设的第二时长;当第二设备处于空闲状态的时长大于第二时长时,产生第一设备进入低功耗状态的控制信号,并将控制信号发送至第一设备。由此可以比较准确的控制第一设备进入低功耗状态。
在一些可选的实施方式中,指令处理方法还包括以下步骤:获取第三设备的工作状态信息;根据第三设备的工作状态信息,关闭第四设备的时钟;当第一设备为主设备,第二设备为译码模块时,第三设备为仲裁模块,第四设备为从设备;或者,当第一设备为从设备,第二设备为仲裁模块时,第三设备为译码模块,第四设备为主设备。由此可以根据第三设备的工作状态,关闭第四设备的时钟,使得第四设备进入低功耗状态,进一步降低总线的功耗。
在一些可选的实施方式中,根据第三设备的工作状态信息,关闭第四设备的时钟包括:根据第三设备的工作状态信号确定第三设备处于空闲状态的时长是否大于预设的第三时长;当第三设备处于空闲状态的时长大于第三时长时,产生关闭第四设备的时钟的请求消息,并将关闭第四设备的时钟。由此可以比较准确的控制第三设备进入低功耗状态。
在一些可选的实施方式中,指令处理方法还包括:根据第三设备的工作状态信号判断第三设备是否进入工作状态;当第三设备进入工作状态时,产生打开第四设备的时钟的请求消息,并将打开第四设备的时钟。由此可以在第三设备退出低功耗状态时,控制第四设备也退出低功耗状态,尽快完成数据处理。
根据第二方面,本发明还提供了一种芯片,包括第一方面的总线系统。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例总线系统的仲裁模块中指令处理方法的流程示意图;
图2是根据本发明实施例总线系统的仲裁模块中另一指令处理方法的流程示意图;
图3是根据本发明实施例仲裁模块一示例的结构示意图;
图4是根据本发明实施例总线系统的门控时钟控制模块M中指令处理方法的流程示意图;
图5是根据本发明实施例总线互联部分一示例的结构示意图;
图6是根据本发明实施例总线系统的门控时钟控制模块S中指令处理方法的流程示意图;
图7是根据本发明实施例门控时钟控制模块M一示例的结构示意图;
图8是根据本发明实施例门控时钟控制模块S一示例的结构示意图;
图9是本发明实施例总线系统的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了降低芯片的功耗,一般采用关闭暂时不使用的主设备和从设备的时钟的方法,但是这种单一的方法在降低芯片功耗方面的效果有限。总线作为SOC芯片的组成部分,还可以降低总线的功耗。
在多主多从的总线架构中,一般由仲裁模块(arbiter)或仲裁模块来完成多个主设备同时访问同一个从设备时的获取权限问题。仲裁模块在对多路数据进行仲裁时,仲裁模块的输入端口信号数量是固定的,例如,仲裁模块支持4路仲裁,输入端口数或信号数就是4,在进行仲裁时按照固定的信号数量进行仲裁,由此导致总线的功耗增加。
基于此,根据本发明实施例,提供了一种总线系统实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种总线系统。总线系统包括设置在所述芯片上的主设备和从设备之间的仲裁模块,其中主设备为可以获得总线控制权的设备,其可以主动发起操作;从设备为主设备访问的设备,它只能响应从主设备发来的各种总线命令。
具体的,总线系统可以为高级微控制器总线系统(Advanced MicrocontrollerBus Architecture,AMBA)。AMBA可以满足SOC芯片对于多用户高性能低功耗的需求,其中先进可扩展接口( Advanced eXtensible Interface,AXI)和高级高性能总线( AdvancedHigh Performance Bus,AHB)作为高速高性能总线,在SOC芯片中得到了广泛的应用。
为了便于理解本发明实施例的总线系统,首先说明一下芯片中的指令处理过程。具体的,指令和数据的发送流程为:主设备发送指令和数据至总线互联部分(Interconnect,ICN),ICN中的译码模块Decode根据指令和数据的地址判断发送至对应的从设备的仲裁模块,仲裁模块进行仲裁后将对应的指令和数据发送至从设备端,从设备执行对应的指令,完成后返回对应的数据及完成响应信号,也可以不返回完成响应信号,不同的协议要求不同。
图1是根据本发明实施例总线系统的仲裁模块中指令处理方法的流程示意图,如图1所示,该流程包括如下步骤:
步骤S101,获取访问同一目标从设备的指令信息。
具体的,仲裁模块可以对主设备发送的指令信息进行处理,确定主设备需要访问的从设备。在本实施例中,将主设备需要访问的从设备称为目标从设备。
步骤S102,根据指令信息确定访问主设备的数量,其中访问主设备为访问目标从设备的主设备。
具体的,指令信息中携带有访问主设备的相关信息,因此可以根据指令信息确定访问主设备的数量。
步骤S103,根据访问主设备的数量,确定访问主设备的仲裁规则。
本实施例提供的总线系统,通过利用仲裁模块获取访问同一目标从设备的指令信息,根据指令信息确定访问主设备的数量,进而可以根据访问主设备的数量确定访问主设备的仲裁规则。也就是说,当访问主设备的数量不同时,仲裁模块采用不同的仲裁规则,仲裁规则随着访问主设备的数量的变化而变化,从而可以在访问主设备的数量较少时,采用较简单的仲裁规则;在访问主设备的数量较多时,采用较复杂的仲裁规则,减少仲裁模块的功耗。
需要说明的是,本实施例的指令处理方法不仅可以适用于多主多从的总线系统,对于一主多从或多主一从的总线系统同样适用。
图2是根据本发明实施例总线系统的仲裁模块中另一指令处理方法的流程示意图,如图2所示,该流程包括如下步骤:
步骤S201,获取访问同一目标从设备的指令信息。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S202,根据指令信息确定访问主设备的数量,其中访问主设备为访问目标从设备的主设备。
具体的,指令信息包括指令标识和指令内容。上述步骤S202包括:根据指令标识确定访问主设备的数量。示例的,指令标识可以为指令有效信号,其表示指令内容是有效的。
具体的,如图3所示,在仲裁模块中设置多路选择器(Multiplexer,MUX),通过MUX来确定访问主设备的数量。
步骤S203,根据访问主设备的数量,确定访问主设备的仲裁规则。
具体地,上述步骤S203包括:
步骤S2021,当访问主设备为一个时,将访问主设备的指令信息发送至目标从设备。
在一些可选的实施方式中,上述步骤S2021包括:
步骤a1,当访问主设备为一个时,获取预设的缓存队列的状态信息。
步骤a2,根据状态信息判断缓存队列是否为空;当缓存队列为空时,转入步骤a3,当缓存队列不为空时,转入步骤a4。
步骤a3:将访问主设备的指令信息发送至目标从设备。如图3所示,当先进先出(First Input First Output,FIFO)缓存队列为空时,将访问主设备的指令信息直接传递给旁路(Bypass)单元,由Bypass单元发送至目标从设备。
步骤a4:将访问主设备的指令信息写入缓存队列,将缓存队列中的指令信息依次发送至目标从设备。如图3所示,当先进先出(First FIFO缓存队列不为空时,将访问主设备的指令信息写入FIFO缓存队列中,然后依次在FIFO缓存队列中读出指令信息,传递给Bypass单元,并由Bypass单元发送至目标从设备。
步骤S2022,当访问主设备为多个时,确定多个访问主设备的优先级。
在一些可选的实施方式中,步骤S2022中的确定多个访问主设备的优先级包括:
步骤b1,获取每个访问主设备处于低功耗状态的时长。
具体的,每个访问主设备处于低功耗状态的时长可以理解为:访问主设备自上一次进入低功耗状态的开始时刻至上一次退出低功耗状态的结束时刻的时长。
为了降低芯片的功耗会采用关闭暂时不使用的主设备的时钟的方法使主设备进入低功耗状态,即当长时间没有指令及数据收发时,主设备可以进入低功耗状态。而当主设备需要发送指令和数据时,则需要退出低功耗状态,以保证数据尽快的收发。
步骤b2,根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级。
作为一个可选的实施方式,根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级,其中处于低功耗状态的时长越长,优先级越高。这是因为,在芯片中,根据访问主设备处于低功耗状态的时长可以判断访问主设备发送的指令的类型,当访问主设备处于低功耗状态的时长较长时,一般情况下,访问主设备发送为控制指令。采用上述方式,可以给控制指令较高的优先级,保证控制指令可以较快的发送至目标从设备。
步骤S2023,按照确定的优先级,将多个访问主设备的指令信息发送至目标从设备。
在一些可选的实施方式中,步骤S2023包括:按照确定的优先级依次将每个访问主设备的指令信息发送至目标从设备。
在一些可选的实施方式中,步骤S2023包括:
步骤c1,按照确定的优先级依次选取当前轮询访问主设备,其中当前轮询访问主设备为当前需要轮询访问目标从设备的访问主设备。
具体的,当前轮询访问主设备可以为两个及两个以上。当当前轮询访问主设备为两个时,便于硬件实现,同时可以提高总线的性能。
步骤c2,采用轮询访问的方式将当前轮询访问主设备的指令信息发送至目标从设备。
具体的,轮询访问为均衡轮询访问。由此便于硬件实现,同时可以提高总线的性能。
示例的,当有两个当前轮询访问主设备时,也就是当仲裁模块的两个输入端有指令信号时,将两个输入端口记为A和B,当前时钟周期的仲裁结果为A时,下一个时钟周期的仲裁结果为B,再下一个周期仲裁结果为A,依次交替。
步骤c3,当当前轮询访问主设备中的至少一个访问主设备完成指令信息的发送时,按照确定的优先级依次选取下一轮询访问主设备,并将下一轮询访问主设备作为当前轮询访问主设备,返回步骤c2。
示例的,通过步骤S2022确定多个访问主设备的优先级为主设备4、主设备2、主设备1、主设备3,当当前轮询访问主设备为两个时,则第一次选取主设备4和主设备2作为当前轮询访问主设备;当主设备2完成指令信息的发送时,第二次选取主设备4和主设备1作为当前轮询访问主设备;当主设备4完成指令信息的发送时,第三次选取主设备1和主设备3作为当前轮询访问主设备。
相关技术中,在多路数据进行仲裁时,仲裁模块一般只能使用一种固定的方法,并且仲裁模块的输入端口信号数量也是固定的;并且在数据仲裁时,很难在性能和功耗间取得均衡,例如固定优先级的方法,虽然功耗低,但性能较差;轮询调度的方法,由于全部的主设备都要轮询,因此当主设备数量增多时,其功耗会有明显的增加,同时性能也会有明显的降低。而本实施例将优先级和轮询相结合,不仅可以提高性能,还可以降低功耗。
对于仲裁模块,一般有以下两点基本要求:(1)仲裁速度快,能够尽可能快的计算出仲裁结果;(2)尽可能保证所有的指令都能传递至后级,不要出现其中某个端口的指令长时间等待无法向后传递。
为了将本实施例的仲裁模块的处理方法说明的更加清楚,给出一个具体示例。如图3所示,仲裁模块为并行双层结构,输入端为主设备发送的指令有效信号M_0_vld、M_1_vld、M_2_vld及对应的译码模块的低功耗状态low_D_P_0、 low_D_P_1、low_D_P_2,需要说明的是,译码模块的低功耗状态与主设备的低功耗状态是同步的。有多少个主设备,有多少个M_vld/low_D_P信号组。
信号进入仲裁模块后,首先进入多路选择器MUX,在多路选择器中进行以下处理:
a.若输入端的M_x_vld中只有一组是有效的,即同一时间段只有一个主设备访问目标从设备,进入第一仲裁单元。图3中的缓存队列和旁路属于第一仲裁单元。
b.若输入端的M_x_vld中有多组是有效的,进入第二仲裁单元。图3中的优先级确定单元和轮询单元属于第二仲裁单元。
在第一仲裁单元中进行如下处理:首先判断FIFO的状态,若FIFO内已经缓存了部分指令,且缓存的指令也是由当前指令的主设备发出的,此时将指令写入FIFO中,之后依次读出传递给后级旁路单元;当FIFO的状态为空,此时指令不再写入FIFO中,而是直接传递给旁路单元。
旁路单元是一种简单的仲裁方式,不管指令是从前级FIFO中读出的,还是直接传递过来的,因为在同一时间只有一组是有效的,因此直接响应即可,即将当前指令传递给后级从设备。使用这种方法保证了较快的响应速度。
在第二仲裁单元中进行如下处理:获取每个访问主设备处于低功耗状态的时长;根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级,按照确定的优先级依次将每个访问主设备的指令信息发送至目标从设备。此时第二仲裁单元可以只包括图3中的优先级确定单元。
在第二仲裁单元中还可以进行如下处理:获取每个访问主设备处于低功耗状态的时长;根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级,根据确定的优先级进行轮询,按照轮询结果发送至目标从设备。此时第二仲裁单元包括图3中的优先级确定单元和轮询单元。
示例的。轮询单元是两输入的均衡轮询选择仲裁单元,当两个输入端均有信号时,进行依次输出,将两个输入端口记为A和B,当前时钟周期的仲裁结果为A时,下一个时钟周期的仲裁结果为B,再下一个周期仲裁结果为A,依次交替。
优先级确定单元首先对输入端的低功耗状态进行记录,记录其值连续为1的时间,即始终处于低功耗状态的时间,记为R_L_count,每一个主设备记录一个。当不同主设备同时输入多个指令至仲裁模块时,此时首先比较每个主设备的R_L_conut,按照其值高低赋予不同的内部优先级标记mark_p,一般R_L_conut值越大,内部的优先级标记也越高。在图3中,优先级依次为3、2、1,之后根据优先级的高低依次将对应的指令传递至轮询单元中,并进行后续的仲裁。
本实施例提供的总线系统,当访问主设备为一个时,直接将访问主设备的指令信息发送至目标从设备即可,其采用的处理方式较简单,因此可以减少仲裁模块的功耗;进一步的,当访问主设备为多个时,可以根据多个访问主设备处于低功耗状态的时长确定多个访问主设备的优先级,其中处于低功耗状态的时长越长,优先级越高,由此可以给控制指令较高的优先级,保证控制指令可以较快的发送至目标从设备;更进一步的,将优先级和轮询相结合,不仅可以提高性能,还可以降低功耗。
在本实施例中提供了一种总线系统,该总线系统包括仲裁模块和门控时钟控制模块,其中仲裁模块设置在芯片上的主设备和从设备之间,门控时钟控制模块设置在译码模块和主设备之间和/或者设置在仲裁模块和从设备之间。
为表述清楚,将设置在译码模块和主设备之间的门控时钟控制模块称为门控时钟控制模块M,将设置在仲裁模块和从设备之间的门控时钟控制模块称为门控时钟控制模块S。
图4是根据本发明实施例总线系统的门控时钟控制模块M中指令处理方法的流程示意图,如图4所示,该流程包括如下步骤:
步骤S401,获取主设备发送的指令信息。
步骤S402,利用译码模块对主设备发送的指令信息进行处理,确定主设备需要访问的目标从设备。
示例的,如图5所示,主设备1发送指令信息至译码模块,译码模块确定主设备1需要访问的目标从设备为从设备1;主设备2发送指令信息至译码模块,译码模块确定主设备2需要访问的目标从设备为从设备1;主设备3发送指令信息至译码模块,译码模块确定主设备3需要访问的目标从设备为从设备1。也就是说,主设备1、主设备2、主设备3需要同时访问从设备1,主设备1、主设备2、主设备3称为访问主设备,从设备1称为目标从设备,
步骤S403,当主设备自身能够进入低功耗状态时,根据主设备的状态信号,关闭或打开译码模块的时钟;或者,当主设备自身无法进入低功耗状态时,根据译码模块的工作状态信息,关闭译码模块的时钟。
这是因为,芯片的功耗可分为动态功耗和静态功耗。动态功耗主要是由于信号翻转变化导致的,而静态功耗则是指信号保持不变时仍然会产生的功耗,主要是内部漏电流产生的功耗,关闭暂时不使用的时钟可以降低芯片的功耗。
为了表述清楚,将“当主设备自身能够进入低功耗状态时,根据主设备的状态信号,关闭或打开译码模块的时钟”称为方法A;将“当主设备自身无法进入低功耗状态时,根据译码模块的工作状态信息,关闭译码模块的时钟”称为方法B。
在方法A一些可选的实施方式中,当主设备自身能够进入低功耗状态时,步骤S403中的根据主设备的状态信号,关闭译码模块的时钟包括:获取主设备的状态信号; 根据主设备的状态信号判断主设备处于低功耗状态的时长是否大于预设的第一时长;当主设备处于低功耗状态的时长大于第一时长时,产生关闭译码模块的时钟的请求消息,并将关闭译码模块的时钟。也就是说,当主设备自身能够进入低功耗状态时,不仅主设备能够进入低功耗状态,还可以根据主设备在低功耗状态的持续时长,关闭译码模块的时钟,使译码模块也进入低功耗状态,进一步降低总线的功耗。
在方法A一些可选的实施方式中,当主设备自身能够进入低功耗状态时,步骤S403中的根据主设备的状态信号,打开译码模块的时钟包括:获取主设备的状态信号;根据主设备的状态信号判断主设备是否退出低功耗状态;当主设备退出低功耗状态时,产生打开译码模块的时钟的请求消息,并打开译码模块的时钟。由此可以在主设备退出低功耗状态时,控制译码模块也退出低功耗状态,尽快完成数据处理。
由此可见,在方法A中,当主设备发送指令和数据时,主设备需要退出低功耗状态,对应的译码模块也需要退出,以保证数据尽快的收发。当长时间没有指令及数据收发时,则主设备可以进入低功耗状态,对应的译码模块也可以通过关闭时钟,进入低功耗状态。
作为进一步的实施方式,方法B还包括:根据译码模块的工作状态信息,控制主设备进入低功耗状态。
在方法B一些可选的实施方式中,当主设备自身无法进入低功耗状态时,步骤S403中的根据译码模块的工作状态信息,关闭译码模块的时钟包括:获取译码模块的工作状态信号; 根据译码模块的工作状态信号确定译码模块处于空闲状态的时长是否大于预设的第二时长;当译码模块处于空闲状态的时长大于第二时长时,产生关闭译码模块的时钟的请求消息,并将关闭译码模块的时钟。也就是说,当主设备自身无法进入低功耗状态时,进而不能利用“根据主设备的状态信号,关闭或打开译码模块的时钟”的方法使得译码模块进入低功耗状态;但是可以根据译码模块的工作状态,关闭译码模块时钟,使得译码模块进入低功耗状态,降低总线的功耗。
与根据译码模块的工作状态信息,关闭译码模块的时钟相似,根据译码模块的工作状态信息,控制主设备进入低功耗状态包括:获取译码模块的工作状态信号; 根据译码模块的工作状态信号确定译码模块处于空闲状态的时长是否大于预设的第二时长;当译码模块处于空闲状态的时长大于第二时长时,控制主设备进入低功耗状态。也就是说,当主设备自身无法进入低功耗状态时,可以根据译码模块的工作状态,控制主设备进入低功耗状态,降低总线的功耗。
作为进一步的实施方式,在根据译码模块的工作状态信息,控制主设备进入低功耗状态之后,还包括:获取主设备的状态信号;根据主设备的状态信号判断主设备是否退出低功耗状态;当主设备退出低功耗状态时,产生打开译码模块的时钟的请求消息,并将打开译码模块的时钟。由此可以在主设备退出低功耗状态时,控制译码模块也退出低功耗状态,尽快完成数据处理。需要说明的是,该步骤适用于能够反馈低功耗状态的主设备。
由此可见,在方法B中,当主设备自身无法进入低功耗状态时,不仅可以控制主设备进入低功耗状态,而且还可以使得译码模块进入低功耗状态;同时在主设备退出低功耗状态时,进一步可以控制译码模块也退出低功耗状态,尽快完成数据处理。需要说明的是,图5中的门控时钟控制模块M或者门控时钟控制模块S可以实施上述步骤S403。上面仅以门控时钟控制模块M中的处理过程为例,对步骤S403进行了具体说明。将上述的“主设备”替换成“从设备”,将上述的“译码模块”替换成“仲裁模块”就能够得到在门控时钟控制模块S中的处理过程,在此不再赘述。
步骤S404,利用仲裁模块获取访问同一目标从设备的指令信息。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S405,根据指令信息确定访问主设备的数量,其中访问主设备为访问目标从设备的主设备。详细请参见图2所示实施例的步骤S202,在此不再赘述。
步骤S406,根据访问主设备的数量,确定访问主设备的仲裁规则。详细请参见图2所示实施例的步骤S203,在此不再赘述。
本实施例提供的总线系统,不仅可以在访问主设备的数量较少时,采用较简单的仲裁规则,降低总线的能耗;还可以进一步降低主设备+译码模块的能耗或者从设备+仲裁模块的能耗,进一步降低总线的能耗。
图6是根据本发明实施例总线系统的门控时钟控制模块S中指令处理方法的流程示意图,如图6所示,该流程包括如下步骤:
步骤S601,获取主设备发送的指令信息。详细请参见图4所示实施例的步骤S401,在此不再赘述。
步骤S602,利用译码模块对主设备发送的指令信息进行处理,确定主设备需要访问的目标从设备。详细请参见图4所示实施例的步骤S402,在此不再赘述。
步骤S603,当主设备自身能够进入低功耗状态时,根据主设备的状态信号,关闭或打开译码模块的时钟;或者,当主设备自身无法进入低功耗状态时,根据译码模块的工作状态信息,关闭译码模块的时钟。详细请参见图4所示实施例的步骤S603,在此不再赘述。
步骤S604,利用仲裁模块获取访问同一目标从设备的指令信息。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S605,根据指令信息确定访问主设备的数量,其中访问主设备为访问目标从设备的主设备。详细请参见图2所示实施例的步骤S202,在此不再赘述。
步骤S606,根据访问主设备的数量,确定访问主设备的仲裁规则。详细请参见图2所示实施例的步骤S203,在此不再赘述。
步骤S607,获取仲裁模块的工作状态信息,根据仲裁模块的工作状态信息,关闭从设备的时钟。
在一些可选的实施方式中,根据仲裁模块的工作状态信息,关闭从设备的时钟包括:根据仲裁模块的工作状态信号确定仲裁模块处于空闲状态的时长是否大于预设的第三时长;当仲裁模块处于空闲状态的时长大于第三时长时,产生关闭从设备的时钟的请求消息,并将关闭从设备的时钟。由此可以根据仲裁模块的工作状态,关闭从设备的时钟,使得从设备进入低功耗状态,进一步降低总线的功耗。
步骤S708,根据仲裁模块的工作状态信息,关闭从设备的时钟。
在一些可选的实施方式中,根据仲裁模块的工作状态信息,关闭从设备的时钟包括:根据仲裁模块的工作状态信号判断仲裁模块是否进入工作状态;当仲裁模块进入工作状态时,产生打开从设备的时钟的请求消息,并将打开从设备的时钟。由此可以在仲裁模块进入工作状态时,立即控制从设备也退出低功耗状态,进入工作状态,尽快完成数据处理。
需要说明的是,图5中的门控时钟控制模块S或者门控时钟控制模块M可以实施上述步骤S403。上面仅以门控时钟控制模块S中的处理过程为例,对步骤S403进行了具体说明。将上述的“从设备”替换为“主设备”,“仲裁模块”替换为“译码模块”能够得到在门控时钟控制模块M中的处理过程,在此不再赘述。
本实施例提供的总线系统,不仅可以在访问主设备的数量较少时,采用较简单的仲裁规则,降低总线的能耗;还可以进一步降低主设备+译码模块+从设备的能耗或者从设备+仲裁模块+主设备的能耗,进一步降低总线的能耗;而且可以保证总线上的数据交互顺利进行。
为了把图6所示实施例的总线系统说明的更加清楚,下面结合图7和图8对门控时钟控制模块M、门控时钟控制模块S中的处理方法进行详细说明。
为了详细说明门控时钟控制单元M中的处理方法,首先将主设备master可分为以下4类:
a类:自身可以根据其工作状态进入/退出低功耗状态,外部无法控制,并可以将低功耗状态反馈至总线互联部分中。
b类:支持低功耗模式,但自己无法进入,低功耗模式只能通过外部的信号控制进入,但可以自己退出低功耗模式,并可以将低功耗状态反馈至总线互联部分中。
c类:自身和外部都可以控制其进入/退出低功耗状态,将低功耗状态反馈至总线互联部分中,当发生冲突时,内部可以判断选择合适状态。
d类:不支持进入/退出低功耗状态。
如图7所示,门控时钟控制模块M的处理方法包括以下步骤:
主设备监控单元用来监控主设备的状态,其内部包含一个时钟计数器,用来判断一段时间内的信号变化,时间的长短可以根据实际的硬件结构配置。
对于自身能够进入低功耗状态的主设备,例如a类主设备和c类主设备,门控时钟控制模块M的主设备监控单元监控主设备低功耗的状态信号low_M_P,若在一段时间始终low_M_P=1,即始终在低功耗状态中,则向监控信号处理单元1发出对应的状态信号M_P=1,之后通过控制信号产生单元1向时钟控制单元1发送关闭时钟的请求,时钟控制单元1响应请求,关闭译码模块的时钟,使其进入低功耗状态,并将译码模块的低功耗状态信号修改为1,即low_D_P=1;当主设备的low_M_P信号变为0时,即主设备已经退出了低功耗状态,此时立即(不再通过一段时间判断)则向监控信号处理单元1发出对应的状态信号M_P=0,之后通过控制信号产生单元1向时钟控制单元1发送打开时钟的请求,时钟控制单元1响应请求,打开译码模块的时钟,使其退出低功耗状态,并将译码模块的低功耗状态信号修改为0,即low_D_P=0。
对于自身不能进入低功耗状态的主设备,例如b类和d类主设备,门控时钟控制模块M的译码模块监控单元用来监控译码模块的状态,其结构与主设备监控单元类似,其内部也包含一个时钟计数器,用来判断一段时间内的信号变化,时间的长短可以根据实际的硬件结构配置。门控时钟控制模块M的译码模块监控单元,监控与b类主设备和d类主设备相对应的译码模块的工作状态信号D_WORK,若在一段时间始终D_WORK=0,即译码模块在一段时间内始终空闲未工作,则向监控信号处理单元1发出对应的状态信号D_P=1,之后通过控制信号产生单元1向时钟控制单元1发送关闭时钟的请求,时钟控制单元1响应请求,关闭译码模块的时钟,使其进入低功耗状态,并将译码模块的低功耗状态信号修改为1,即low_D_P=1,同时对于b类主设备,控制信号产生单元1向主设备发送控制主设备进入低功耗状态的控制信号,对d类主设备则不再发送;当b类主设备的low_M_P信号变为0时,即主设备已经退出了低功耗状态,此时立即(不再通过一段时间判断)向监控信号处理单元发出对应的状态信号M_P=0,之后通过控制信号产生单元1向时钟控制单元1发送打开时钟的请求,时钟控制单元1响应请求,打开与b类主设备相对应的译码模块的时钟,使其退出低功耗状态,并将译码模块的低功耗状态信号修改为0,即low_D_P=0。
如图8所示,门控时钟控制模块S设置在仲裁模块和从设备之间。从设备可以分为支持低功耗状态的从设备和不支持低功耗的从设备两种。对于支持低功耗状态的从设备可分为自身可以主动进入/退出低功耗状态、外部控制进入或退出低功耗状态,在处理时不做区分,使用统一的处理方法。对于不支持低功耗状态的从设备,门控时钟控制单元S可以从结构中移除,从设备直接连接仲裁模块即可。
如图8所示,门控时钟控制模块S的仲裁模块监控单元用来监控仲裁模块的输出信号状态,其内部包含一个时钟计数器,用来判断一段时间内的信号变化,时间的长短可以根据实际的硬件结构配置。
门控时钟控制模块S的仲裁模块监控单元监控仲裁模块输出的状态信号arb_out_val,若在一段时间始终arb_out_val=0,表明在一段时间内没有指令和数据发送至后级从设备,此时则向监控信号处理单元2发出对应的状态信号S_P=1,之后通过控制信号产生单元2向时钟控制单元2发送关闭时钟的请求,时钟控制单元2响应请求,关闭从设备的时钟,使其进入低功耗状态;当仲裁模块的arb_out_val信号变为1时,即主设备有指令或数据发送至从设备,此时立即(不再通过一段时间判断)则向监控信号处理单元2发出对应的状态信号S_P=0,之后通过控制信号产生单元2向时钟控制单元2发送打开时钟的请求,时钟控制单元2响应请求,打开从设备的时钟,使其退出低功耗状态。
本发明实施例还提供了一种芯片,包括上述的总线系统。
请参阅图9,图9是本发明可选实施例提供的一种芯片的结构示意图,如图9所示,该总线包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在总线内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个总线,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,所述存储器20存储有可由至少一个处理器10执行的指令,以使所述至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据一种小程序落地页的展现的总线的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该总线。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该总线还包括通信接口30,用于该总线与其他设备或通信网络通信。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (21)
1.一种总线系统,其特征在于,包括仲裁模块,所述仲裁模块设置在芯片上的主设备和从设备之间,用于:
获取访问同一目标从设备的指令信息;
根据所述指令信息确定访问主设备的数量,其中所述访问主设备为访问所述目标从设备的主设备;
根据所述访问主设备的数量,确定所述访问主设备的仲裁规则;
所述根据所述访问主设备的数量,确定所述访问主设备的仲裁规则包括:
当所述访问主设备为多个时,确定多个所述访问主设备的优先级,按照确定的优先级,将多个所述访问主设备的指令信息发送至所述目标从设备;
所述确定多个所述访问主设备的优先级包括:
获取每个所述访问主设备处于低功耗状态的时长;
根据多个所述访问主设备处于低功耗状态的时长确定多个所述访问主设备的优先级。
2.根据权利要求1所述的总线系统,其特征在于,所述根据所述访问主设备的数量,确定所述访问主设备的仲裁规则包括:
当所述访问主设备为一个时,将所述访问主设备的指令信息发送至所述目标从设备。
3.根据权利要求1所述的总线系统,其特征在于,所述根据多个所述访问主设备处于低功耗状态的时长确定多个所述访问主设备的优先级包括:
根据多个所述访问主设备处于低功耗状态的时长确定多个所述访问主设备的优先级,其中处于低功耗状态的时长越长,优先级越高。
4.根据权利要求1所述的总线系统,其特征在于,所述按照确定的优先级,将多个所述访问主设备的指令信息发送至所述目标从设备包括:
按照确定的优先级依次将每个所述访问主设备的指令信息发送至所述目标从设备。
5.根据权利要求1所述的总线系统,其特征在于,所述按照确定的优先级,将多个所述访问主设备的指令信息发送至所述目标从设备包括:
按照确定的优先级依次选取当前轮询访问主设备,其中所述当前轮询访问主设备为当前需要轮询访问所述目标从设备的访问主设备;
采用轮询访问的方式将所述当前轮询访问主设备的指令信息发送至所述目标从设备;
当所述当前轮询访问主设备中的至少一个访问主设备完成指令信息的发送时,按照确定的优先级依次选取下一轮询访问主设备,并将所述下一轮询访问主设备作为所述当前轮询访问主设备,返回采用轮询访问的方式将所述当前轮询访问主设备的指令信息发送至所述目标从设备的步骤。
6.根据权利要求5所述的总线系统,其特征在于, 所述当前轮询访问主设备为两个。
7.根据权利要求5所述的总线系统,其特征在于,所述轮询访问为均衡轮询访问。
8.根据权利要求2所述的总线系统,其特征在于,所述当所述访问主设备为一个时,将所述访问主设备的指令信息发送至所述目标从设备包括:
当所述访问主设备为一个时,获取预设的缓存队列的状态信息;
根据所述状态信息判断所述缓存队列是否为空;
当所述缓存队列为空时,将所述访问主设备的指令信息发送至所述目标从设备;
当所述缓存队列不为空时,将所述访问主设备的指令信息写入所述缓存队列,将所述缓存队列中的指令信息依次发送至所述目标从设备。
9.根据权利要求1所述的总线系统,其特征在于,所述指令信息包括指令标识,所述根据所述指令信息确定访问主设备的数量包括:根据所述指令标识确定所述访问主设备的数量。
10.根据权利要求1至9任一项所述的总线系统,其特征在于,还包括译码模块:
所述译码模块设置在所述仲裁模块和所述主设备之间,用于:
获取所述主设备发送的指令信息;
对所述主设备发送的指令信息进行处理,确定所述主设备需要访问的目标从设备。
11.根据权利要求10所述的总线系统,其特征在于,还包括门控时钟控制模块,所述门控时钟控制模块设置在所述译码模块和所述主设备之间和/或者设置在所述仲裁模块和所述从设备之间,用于:
当第一设备自身能够进入低功耗状态时,根据第一设备的状态信号,关闭或打开第二设备的时钟;
或者,当所述第一设备自身无法进入所述低功耗状态时,根据所述第二设备的工作状态信息,关闭所述第二设备的时钟;
其中,所述第一设备为所述主设备,所述第二设备为所述译码模块;或者,所述第一设备为所述从设备,所述第二设备为所述仲裁模块。
12.根据权利要求11所述的总线系统,其特征在于,所述门控时钟控制模块还用于:
当所述第一设备自身无法进入所述低功耗状态时,根据所述第二设备的工作状态信息,控制所述第一设备进入所述低功耗状态。
13.根据权利要求12所述的总线系统,其特征在于,在根据所述第二设备的工作状态信息,控制所述第一设备进入所述低功耗状态之后,所述门控时钟控制模块还用于:
当所述第一设备能够反馈所述状态信号时,获取所述第一设备的状态信号;
根据所述第一设备的状态信号判断所述第一设备是否退出所述低功耗状态;
当所述第一设备退出所述低功耗状态时,产生打开所述第二设备的时钟的请求消息,并将打开所述第二设备的时钟。
14.根据权利要求11所述的总线系统,其特征在于,所述根据第一设备的状态信号,关闭第二设备的时钟包括:
获取所述第一设备的状态信号;
根据所述第一设备的状态信号判断所述第一设备处于所述低功耗状态的时长是否大于预设的第一时长;
当所述第一设备处于所述低功耗状态的时长大于所述第一时长时,产生关闭第二设备的时钟的请求消息,并将关闭所述第二设备的时钟。
15.根据权利要求11所述的总线系统,其特征在于,所述根据第一设备的状态信号,打开第二设备的时钟包括:
获取所述第一设备的状态信号;
根据所述第一设备的状态信号判断所述第一设备是否退出所述低功耗状态;
当所述第一设备退出所述低功耗状态时,产生打开所述第二设备的时钟的请求消息,并打开所述第二设备的时钟。
16.根据权利要求11所述的总线系统,其特征在于,所述根据所述第二设备的工作状态信息,关闭所述第二设备的时钟包括:
获取所述第二设备的工作状态信号;
根据所述第二设备的工作状态信号确定所述第二设备处于空闲状态的时长是否大于预设的第二时长;
当所述第二设备处于空闲状态的时长大于所述第二时长时,产生关闭所述第二设备的时钟的请求消息,并将关闭所述第二设备的时钟。
17.根据权利要求12所述的总线系统,其特征在于,所述根据所述第二设备的工作状态信息,控制所述第一设备进入所述低功耗状态包括:
获取所述第二设备的工作状态信号;
根据所述第二设备的工作状态信号确定所述第二设备处于空闲状态的时长是否大于预设的第二时长;
当所述第二设备处于空闲状态的时长大于所述第二时长时,产生所述第一设备进入所述低功耗状态的控制信号,并将所述控制信号发送至所述第一设备。
18.根据权利要求11所述的总线系统,其特征在于,所述门控时钟控制模块还用于:
获取第三设备的工作状态信息;
根据所述第三设备的工作状态信息,关闭第四设备的时钟;
当所述第一设备为所述主设备,所述第二设备为所述译码模块时,所述第三设备为所述仲裁模块,所述第四设备为所述从设备;
或者,当所述第一设备为所述从设备,所述第二设备为所述仲裁模块时,所述第三设备为所述译码模块,所述第四设备为所述主设备。
19.根据权利要求18所述的总线系统,其特征在于,所述根据所述第三设备的工作状态信息,关闭第四设备的时钟包括:
根据所述第三设备的工作状态信号确定所述第三设备处于空闲状态的时长是否大于预设的第三时长;
当所述第三设备处于空闲状态的时长大于所述第三时长时,产生关闭所述第四设备的时钟的请求消息,并将关闭所述第四设备的时钟。
20.根据权利要求18所述的总线系统,其特征在于,所述门控时钟控制模块还用于:
根据所述第三设备的工作状态信号判断所述第三设备是否进入工作状态;当所述第三设备进入工作状态时,产生打开所述第四设备的时钟的请求消息,并将打开所述第四设备的时钟。
21.一种芯片,其特征在于,包括权利要求1至20任一项所述的总线系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310507424.6A CN116225995B (zh) | 2023-05-08 | 2023-05-08 | 一种总线系统及芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310507424.6A CN116225995B (zh) | 2023-05-08 | 2023-05-08 | 一种总线系统及芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116225995A CN116225995A (zh) | 2023-06-06 |
CN116225995B true CN116225995B (zh) | 2023-08-04 |
Family
ID=86575383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310507424.6A Active CN116225995B (zh) | 2023-05-08 | 2023-05-08 | 一种总线系统及芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116225995B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118012798B (zh) * | 2024-04-07 | 2024-07-05 | 摩尔线程智能科技(北京)有限责任公司 | 芯片间互联控制方法、装置和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765577A (zh) * | 2015-04-28 | 2015-07-08 | 杭州中天微系统有限公司 | 一种频率自适应的高速存储系统 |
CN110109847A (zh) * | 2019-04-25 | 2019-08-09 | 深圳吉迪思电子科技有限公司 | Apb总线多个主设备的仲裁方法、系统及存储介质 |
CN110875867A (zh) * | 2020-01-20 | 2020-03-10 | 南京凌鸥创芯电子有限公司 | 一种总线访问仲裁装置及方法 |
CN111666239A (zh) * | 2020-07-10 | 2020-09-15 | 深圳开立生物医疗科技股份有限公司 | 一种主从设备互联系统和主从设备访问请求处理方法 |
CN112231254A (zh) * | 2020-09-22 | 2021-01-15 | 深圳云天励飞技术股份有限公司 | 存储器仲裁方法及存储器控制器 |
CN114756488A (zh) * | 2022-06-15 | 2022-07-15 | 珠海妙存科技有限公司 | 一种eMMC总线调度方法、系统、装置及存储介质 |
CN114911727A (zh) * | 2022-05-26 | 2022-08-16 | 上海美仁半导体有限公司 | 总线仲裁方法和装置、计算机可读存储介质及主控芯片 |
-
2023
- 2023-05-08 CN CN202310507424.6A patent/CN116225995B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765577A (zh) * | 2015-04-28 | 2015-07-08 | 杭州中天微系统有限公司 | 一种频率自适应的高速存储系统 |
CN110109847A (zh) * | 2019-04-25 | 2019-08-09 | 深圳吉迪思电子科技有限公司 | Apb总线多个主设备的仲裁方法、系统及存储介质 |
CN110875867A (zh) * | 2020-01-20 | 2020-03-10 | 南京凌鸥创芯电子有限公司 | 一种总线访问仲裁装置及方法 |
CN111666239A (zh) * | 2020-07-10 | 2020-09-15 | 深圳开立生物医疗科技股份有限公司 | 一种主从设备互联系统和主从设备访问请求处理方法 |
CN112231254A (zh) * | 2020-09-22 | 2021-01-15 | 深圳云天励飞技术股份有限公司 | 存储器仲裁方法及存储器控制器 |
CN114911727A (zh) * | 2022-05-26 | 2022-08-16 | 上海美仁半导体有限公司 | 总线仲裁方法和装置、计算机可读存储介质及主控芯片 |
CN114756488A (zh) * | 2022-06-15 | 2022-07-15 | 珠海妙存科技有限公司 | 一种eMMC总线调度方法、系统、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116225995A (zh) | 2023-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI338835B (en) | Method and apparatus for controlling a data processing system during debug | |
US7200692B2 (en) | PVDM (packet voice data module) generic bus | |
US10437758B1 (en) | Memory request management system | |
US8930602B2 (en) | Providing adaptive bandwidth allocation for a fixed priority arbiter | |
US9122815B2 (en) | Common idle state, active state and credit management for an interface | |
US20070005825A1 (en) | System and method for communicating with memory devices | |
US7783817B2 (en) | Method and apparatus for conditional broadcast of barrier operations | |
WO2007005815A1 (en) | Dynamic bus parking | |
JP2009043256A (ja) | 記憶装置のアクセス方法及び装置 | |
CN102646446A (zh) | 硬件动态高速缓存电源管理 | |
CN116225995B (zh) | 一种总线系统及芯片 | |
JP2014503103A (ja) | 階層的キャッシュ設計におけるキャッシュ間の効率的通信のための方法および装置 | |
CN116028413A (zh) | 一种总线仲裁器、总线仲裁的方法、装置及介质 | |
CN110737618A (zh) | 内嵌处理器进行快速数据通信的方法、装置及存储介质 | |
US7774513B2 (en) | DMA circuit and computer system | |
US20150177816A1 (en) | Semiconductor integrated circuit apparatus | |
US6519670B1 (en) | Method and system for optimizing a host bus that directly interfaces to a 16-bit PCMCIA host bus adapter | |
CN117472815A (zh) | 一种axi协议下的存储模块转换接口及其转换方法 | |
CN109271333B (zh) | 一种sram控制方法及控制器、控制系统 | |
US20070234098A1 (en) | Self-timed clock-controlled wait states | |
CN117312210B (zh) | 一种通用扩展risc-v处理器性能的方法 | |
US11340786B2 (en) | Apparatus and methods for synchronizing a plurality of double data rate memory ranks | |
US20230305973A1 (en) | Mmi interface device and computing system based thereon | |
CN101667448A (zh) | 存储器存取控制装置及其相关控制方法 | |
US7707450B1 (en) | Time shared memory access |
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 |