CN101625671B - Ahb互连矩阵接口及其数据处理方法 - Google Patents

Ahb互连矩阵接口及其数据处理方法 Download PDF

Info

Publication number
CN101625671B
CN101625671B CN200810068436.9A CN200810068436A CN101625671B CN 101625671 B CN101625671 B CN 101625671B CN 200810068436 A CN200810068436 A CN 200810068436A CN 101625671 B CN101625671 B CN 101625671B
Authority
CN
China
Prior art keywords
control module
ahb
cache
network
main device
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
CN200810068436.9A
Other languages
English (en)
Other versions
CN101625671A (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.)
Sanechips Technology Co Ltd
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN200810068436.9A priority Critical patent/CN101625671B/zh
Publication of CN101625671A publication Critical patent/CN101625671A/zh
Application granted granted Critical
Publication of CN101625671B publication Critical patent/CN101625671B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

本发明提供一种AHB互连矩阵接口及其数据处理方法,所述AHB互连矩阵接口包括AHB主器件控制模块、网络型高速缓存器控制模块、请求仲裁模块以及AHB从器件控制模块,四者共同构成一个系统级的流水线;所述方法为:AHB主器件控制模块向网络型高速缓存器控制模块发出申请,若为写命令,则网络型高速缓存器控制模块将数据写入标记随机存储器中,或者写入AHB从器件中;若为读命令,则网络型高速缓存器控制模块从高速缓存器中,或者通过请求仲裁模块申请从AHB从器件中读取有效数据,提供给主器件控制模块。本发明不仅使得矩阵运作效率大为增加,同时还提升了多内核体系的整体运作效率。

Description

AHB互连矩阵接口及其数据处理方法
技术领域
本发明涉及AMBA协议的先进高速总线AHB,具体涉及AHB互连矩阵接口及其数据处理方法。
背景技术
AHB互连矩阵是由ARM公司提出的一种系统总线,其连接结构如图1所示,ARM提出的AHB互连矩阵包含以下部分:输入锁存部分(INPUT STAGE)、译码部分(DECODER)、通道选择部分(MUX)。此结构的提出,实现了AHB总线的并行运作,提高了总线的效率,但是在实际应用中发现,此方案并不可行,原因在于hready信号是一个全局信号,而当这个AHB总线在连接多个AHB主器件和从器件之后,所有这些器件的hready实际上都是连在一起的,而hready甚至接近连到每一个寄存器上,导致此方案最大的问题,这个总线系统的频率很难得到提高。
对于高速的内存空间来说,尤其是内存空间:SDRAM(Synchronous DynamicRandom Access Memory,同步动态随机存取存储器)、DDR(Double Data Rate,双倍速内存)、DDR2、DDR3等,这些空间的速度通常是系统内除CPU内核之外的最高速度的部分,这一部分的运行速度与效率直接影响系统的效率。并且在多CPU或DSP(Digital Signal Processing,数字信号处理)内核的系统中,CPU或DSP之间需要进行数据高速有效的交换,这就需要一个适合的高速缓存器(Cache)方式来实现数据高速高效的交换,以提高系统的效率。
发明内容
本发明所要解决的技术问题是,提供一种AHB互连矩阵接口,并在所述接口的基础上提供一种AHB互连矩阵接口的数据处理方法,本发明可有效的提高系统的运作效率。
一种AHB互连矩阵接口,包括:
AHB主器件控制模块,用于接收并锁存来自AHB主器件的信息,以及向网络型Cache控制模块发出申请及数据交互;
网络型Cache控制模块,用于对AHB主器件控制模块发出的申请进行数据操作,或者向仲裁模块发出申请;
请求仲裁模块,用于对网络型Cache控制模块所发出的申请进行仲裁,并生成仲裁信息;
以及AHB从器件控制模块,用于与AHB从器件及网络型Cache控制模块进行数据交互;
其中,所述AHB主器件控制模块、网络型Cache控制模块、请求仲裁模块以及从器件控制模块四者共同构成一个系统级的流水线。
所述接口的AHB主器件控制模块的个数至少与接入的AHB主器件个数相同。
所述接口的网络型Cache控制模块由多组Cache控制模块构成,其个数至少与所述AHB主器件控制模块个数相同。
一种AHB互连矩阵接口的数据处理方法,该方法为:AHB主器件控制模块根据来自AHB主器件的信息,以流水线方式向网络型高速缓存器控制模块发出申请,网络型高速缓存器控制模块判断所述信息包含的命令类型,若为写命令,则将数据写入与其对应的高速缓存器的标记随机存储器中,或者写入AHB从器件中;若为读命令,则从高速缓存器中,或者通过请求仲裁模块申请从AHB从器件中读取有效数据,提供给主器件控制模块。
若与所述高速缓存器控制模块对应的高速缓存器为数据型高速缓存器,则在AHB主器件控制模块锁存的信息中包含写命令且高速缓存器控制模块判断与其对应的高速缓存器内有空闲的标记随机存储器可用时,网络型高速缓存器控制模块将要写入的数据写入到所述空闲标记随机存储器中。
若与所述高速缓存器控制模块对应的高速缓存器为类指令型高速缓存器,则在AHB主器件控制模块锁存的信息中包含写命令时,网络型高速缓存器控制模块直接将要写入的数据写入到其后面的AHB从器件中,并检查高速缓存器控制模块对应的高速缓存器内是否有相应地址的有效标记随机存储器,若有,则将其标为无效。
在AHB主器件控制模块锁存的信息中包含读命令且高速缓存器控制模块判断与其对应的高速缓存器内具有有效数据时,网络型高速缓存器控制模块从相应的高速缓存器中读取有效数据,并将其提供给主器件控制模块。
在AHB主器件控制模块锁存的信息中包含读命令且网络型高速缓存器控制模块判断所有高速缓存器内均无有效数据时,AHB从器件控制模块从AHB从器件上读取有效数据,并将其提供给主器件控制模块及网络型高速缓存器控制模块。
所述请求仲裁模块对来自网络型高速缓存器控制模块的申请的仲裁是根据申请的时间以先进先出的方式进行的,并生成仲裁信息。
所述仲裁信息的内容为申请的顺序。
本发明使得矩阵运作效率大为增加,同时因为网络型Cache控制模块可视作为一个共享型的Cache,故可提升多内核体系的整体运作效率。
附图说明
图1是ARM公司提出的AHB互连矩阵的原理框图;
图2是本发明所述接口的原理框图;
图3是本发明所述接口的优选实施例的AHB互联矩阵结构示意图;
图4是本发明所述接口的AHB主器件控制模块为两级流水线时的波形示意图;
图5是本发明所述接口的AHB主器件控制模块为三级流水线时的波形示意图;
图6是本发明所述接口写操作时的波形示意图;
图7是本发明所述接口读操作时的波形示意图。
具体实施方式
下面结合图2、图3、图4、图5、图6及图7对本发明所述的接口及其数据处理方法的优选实施例进行说明,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
AHB总线是很多嵌入式处理器(尤其是ARM CPU)系统进行数据传送时采用的高速总线,本接口设计以多个AHB主器件通过一个流水线式的带Cache的AHB矩阵到达AHB从器件方,实现总线间的高速高效、并行运作。
如图2所示,是本发明所述接口的原理框图;包括:
AHB主器件控制模块202,用于接收并锁存来自AHB主器件的信息,以及以流水线的方式向网络型Cache控制模块发出申请及数据交互;其作用相当于ARM公司提出的AHB互联矩阵的输入阶段部分(INPUT STAGE);
网络型Cache控制模块204,用于对AHB主器件控制模块发出的申请进行数据操作,或者向仲裁模块发出申请;
请求仲裁模块206,用于对网络型Cache控制模块所发出的申请进行仲裁,并生成仲裁信息;该对来自网络型Cache控制模块204的申请的仲裁是根据申请的时间以先进先出的方式进行的,且最终生成的仲裁信息的内容为申请的顺序。
网络型Cache控制模块204和请求仲裁模块206作用相当于ARM提出的公司提出的AHB互联矩阵的通道选择器部分;
以及AHB从器件控制模块208,用于与AHB从器件及网络型Cache控制模块进行数据交互;
同时所述AHB主器件控制模块202、网络型Cache控制模块204、请求仲裁模块206以及从器件控制模块208四者共同构成一个系统级的流水线。
本发明针对内存系统,在保证数据在每个接口保证一致性的提前下,在这一类AHB矩阵上增加了一个网络型Cache控制模块,这样,可以使得AHB接口效率得到极大的提高。对于无Cache的CPU(如ARM CPU)或者DSP(作为AHB主器件)内核来说,AHB矩阵上的Cache就是系统级的Cache,而对于有Cache的CPU/DSP来说,AHB矩阵上的Cache就是一个二级Cache,即AHB矩阵上的Cache可以提高系统的运行效率。
同时,AHB矩阵上的Cache是为AHB矩阵之后的空间服务的,相当于AHB主器件的共享型Cache,这对于多核系统(多个CPU,多个DSP)进行数据交互有很大的作用,可以使得这样的多内核系统整体运行效率得到进一步的提高。
网络型Cache控制模块是由多组Cache控制模块组成的,每个AHB主器件控制模块对应一个Cache控制模块,在一定条件下,每个AHB主器件控制模块可以同时进行各自的数据操作,这样可以消除因Cache控制模块只有一个而成为运行瓶颈。组成网络型Cache控制模块的多组Cache控制模块并不是独立没有联系的,每个AHB主器件控制模块对Cache控制模块操作时,同时也会更新别的其它Cache控制模块的状态信息,网络型Cache控制模块的有效标识位与单一Cache控制模块的有效标识位是不一样的,单一Cache控制模块的有效标识位只有一位(标识该标签的数据有效或者无效),而网络型Cache控制模块的有效标识位有两位,如分别为:00表示本地无效,01表示本地有效,10表示本地无效但网络(其它组Cache控制模块)有有效数据,11表示本地数据已过时但网络(其它组Cache控制模块)已有更新数据)。
正是因为网络型Cache控制模块可以知道其它组的Cache控制模块的信息,所以在读操作过程中,如果在本地Cache控制模块没有找到有效数据时,但网络上其它Cache控制模块有有效数据时,则网络型Cache控制模块并不是向仲裁器模块发出数据操作申请,而是从网络上其它组的Cache控制模块获得数据,再返回给主控制器控制模块。
本发明的特征在于使用流水线和网络型Cache控制模块,减少AHB接口对AHB从器件的操作,以提高系统的运作效率,同时因为其多组Cache控制模块可并行操作,且Cache控制模块组间可以进行信息的交换,可以极大的提高多内核系统的整体运作效率。
图3是本发明所述接口的优选实施例的AHB互联矩阵结构示意图;包括N个AHB主器件控制模块、N个Cache控制模块,它们共同组成网络型Cache控制模块,请求仲裁模块、AHB从器件控制模块;为一个二级流水线;本发明所述接口还可以是一个三级流水线,三级流水线的分工更为细小,总线的频率可以更高。
图4是本发明所述接口的AHB主器件控制模块为两级流水线时的波形示意图,即为图3所示实施例的波形示意图;流水线作业切断了hready与之后的逻辑的直接连接关系,使得总线频率得到提升,并且因为这是一个流水线式的操作方式,使得效率的损失减到最小。图5是本发明所述接口的AHB主器件控制模块为三级流水线时的波形示意图;图6是本发明所述接口写操作时的波形示意图;图7是本发明所述接口读操作时的波形示意图。下面参照图3、图4、图5、图6及图7对本发明所述实施例进行详细描述,为了保证数据操作的一致性,请求仲裁模块中采用的是按时间顺序记录各操作的先后,并以先进先出的方式进行仲裁,以此保证数据操作的一致性。
本发明中,与所述Cache控制模块对应的Cache可以有两种实现方式,一种为数据型Cache,一种为类指令型Cache。
若与所述Cache控制模块对应的Cache为数据型Cache,则在AHB主器件控制模块锁存的信息中包含写命令且Cache控制模块判断与其对应的Cache内有空闲的Tag RAM可用时,网络型Cache控制模块将要写入的数据写入到所述空闲Tag RAM中,并不在其后面的AHB从器件上发生任何的数据操作。其波形如图6所示。
若与所述Cache控制模块对应的Cache为类指令型Cache,则在AHB主器件控制模块锁存的信息中包含写命令时,网络型Cache控制模块直接将要写入的数据写入到其后面的AHB从器件中,并检查Cache控制模块对应的Cache内是否有相应地址的有效Tag RAM,若有,则将其标为无效。
但无论与所述Cache控制模块对应的Cache实现方式数据型Cache还是类指令型Cache,如图7所示,在AHB主器件控制模块锁存的信息中包含读命令且:
Cache控制模块判断与其对应的Cache内具有有效数据时,网络型Cache控制模块从相应的Cache中读取有效数据,并将其提供给主器件控制模块。
或者网络型Cache制模块判断所有Cache内均无有效数据时,AHB从器件控制模块从AHB从器件上读取有效数据,并将其提供给主器件控制模块及网络型Cache控制模块。
综上所述,本发明通过带Cache的AHB互联矩阵,并在互联矩阵上增加流水线和网络型Cache控制模块,使得矩阵运作效率大为增加,且提升了多内核体系的整体运作效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种AHB互连矩阵接口,其特征在于,包括:
AHB主器件控制模块,用于接收并锁存来自AHB主器件的信息,以及向网络型高速缓存器控制模块发出申请及数据交互;
网络型高速缓存器控制模块,用于对AHB主器件控制模块发出的申请进行数据操作,或者向仲裁模块发出申请;
请求仲裁模块,用于对网络型高速缓存器控制模块所发出的申请进行仲裁,并生成仲裁信息;
以及AHB从器件控制模块,用于与AHB从器件及网络型高速缓存器控制模块进行数据交互;
其中,所述AHB主器件控制模块、网络型高速缓存器控制模块、请求仲裁模块以及从器件控制模块四者共同构成一个系统级的流水线,所述网络型高速缓存器控制模块由多组高速缓存器控制模块构成,其个数至少与所述AHB主器件控制模块个数相同;每个AHB主器件控制模块对高速缓存器控制模块操作时,同时也更新别的其它高速缓冲器控制模块的状态信息。
2.如权利要求1所述的AHB互连矩阵接口,其特征在于,所述接口的AHB主器件控制模块的个数至少与接入的AHB主器件个数相同。
3.一种AHB互连矩阵接口的数据处理方法,其特征在于,该方法为:AHB主器件控制模块根据来自AHB主器件的信息,以流水线方式向网络型高速缓存器控制模块发出申请,网络型高速缓存器控制模块判断所述信息包含的命令类型,若为写命令,则将数据写入与其对应的高速缓存器的标记随机存储器中,或者写入AHB从器件中;若为读命令,则从高速缓存器中,或者通过请求仲裁模块申请从AHB从器件中读取有效数据,提供给主器件控制模块;每个AHB主器件控制模块对高速缓存器控制模块操作时,同时也更新别的其它高速缓存器控制模块的状态信息。
4.如权利要求3所述的AHB互连矩阵接口的数据处理方法,其特征在于,若与所述高速缓存器控制模块对应的高速缓存器为数据型高速缓存器,则在AHB主器件控制模块锁存的信息中包含写命令且高速缓存器控制模块判断与其对应的高速缓存器内有空闲的标记随机存储器可用时,网络型高速缓存器控制模块将要写入的数据写入到所述空闲标记随机存储器中。
5.如权利要求3所述的AHB互连矩阵接口的数据处理方法,其特征在于,若与所述高速缓存器控制模块对应的高速缓存器为类指令型高速缓存器,则在AHB主器件控制模块锁存的信息中包含写命令时,网络型高速缓存器控制模块直接将要写入的数据写入到其后面的AHB从器件中,并检查高速缓存器控制模块对应的高速缓存器内是否有相应地址的有效标记随机存储器,若有,则将其标为无效。
6.如权利要求3所述的AHB互连矩阵接口的数据处理方法,其特征在于,在AHB主器件控制模块锁存的信息中包含读命令且高速缓存器控制模块判断与其对应的高速缓存器内具有有效数据时,网络型高速缓存器控制模块从相应的高速缓存器中读取有效数据,并将其提供给主器件控制模块。
7.如权利要求3所述的AHB互连矩阵接口的数据处理方法,其特征在于,在AHB主器件控制模块锁存的信息中包含读命令且网络型高速缓存器控制模块判断所有高速缓存器内均无有效数据时,AHB从器件控制模块从AHB从器件上读取有效数据,并将其提供给主器件控制模块及网络型高速缓存器控制模块。
8.如权利要求3所述的AHB互连矩阵接口的数据处理方法,其特征在于,所述请求仲裁模块对来自网络型高速缓存器控制模块的申请的仲裁是根据申请的时间以先进先出的方式进行的,并生成仲裁信息。
9.如权利要求8所述的AHB互连矩阵接口的数据处理方法,其特征在于,所述仲裁信息的内容为申请的顺序。
CN200810068436.9A 2008-07-08 2008-07-08 Ahb互连矩阵接口及其数据处理方法 Active CN101625671B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810068436.9A CN101625671B (zh) 2008-07-08 2008-07-08 Ahb互连矩阵接口及其数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810068436.9A CN101625671B (zh) 2008-07-08 2008-07-08 Ahb互连矩阵接口及其数据处理方法

Publications (2)

Publication Number Publication Date
CN101625671A CN101625671A (zh) 2010-01-13
CN101625671B true CN101625671B (zh) 2014-01-01

Family

ID=41521522

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810068436.9A Active CN101625671B (zh) 2008-07-08 2008-07-08 Ahb互连矩阵接口及其数据处理方法

Country Status (1)

Country Link
CN (1) CN101625671B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105376218B (zh) * 2015-10-21 2020-11-13 上海思华科技股份有限公司 一种快速响应用户请求的流媒体系统和方法
CN112558861B (zh) * 2020-09-29 2023-03-10 北京清微智能科技有限公司 一种面向多核处理器阵列的数据加载和存储系统及方法
CN114265872B (zh) * 2022-02-24 2022-05-24 苏州浪潮智能科技有限公司 一种用于总线的互联装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553496A (zh) * 2003-06-05 2004-12-08 中兴通讯股份有限公司 一种用于访问系统芯片外sdram的控制器及其实现方法
CN101141486A (zh) * 2007-09-25 2008-03-12 中兴通讯股份有限公司 Ahb互连矩阵接口

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553496A (zh) * 2003-06-05 2004-12-08 中兴通讯股份有限公司 一种用于访问系统芯片外sdram的控制器及其实现方法
CN101141486A (zh) * 2007-09-25 2008-03-12 中兴通讯股份有限公司 Ahb互连矩阵接口

Also Published As

Publication number Publication date
CN101625671A (zh) 2010-01-13

Similar Documents

Publication Publication Date Title
CN101359315B (zh) 将输入/输出(i/o)虚拟化操作卸载至处理器的方法及装置
CN102012791B (zh) 基于Flash的数据存储PCIE板卡
CN100549992C (zh) 可减少延迟的数据传送与接收方法与系统
CN102279817B (zh) 用于持久存储器的高速缓冲存储器相干性协议
CN100499556C (zh) 异构多核处理器高速异步互连通信网络
US7797467B2 (en) Systems for implementing SDRAM controllers, and buses adapted to include advanced high performance bus features
US20020087614A1 (en) Programmable tuning for flow control and support for CPU hot plug
US20030140197A1 (en) Multi-processor computer system using partition group directories to maintain cache coherence
CN101446931B (zh) 一种实现输入输出数据一致性的系统及方法
CN101135993A (zh) 一种嵌入式系统芯片及数据读写处理方法
US9424193B2 (en) Flexible arbitration scheme for multi endpoint atomic accesses in multicore systems
TW200534110A (en) A method for supporting improved burst transfers on a coherent bus
CN103890688A (zh) 一种flash-dram混合存储器模块
WO2006072064A2 (en) System and method for cache coherency in a cache with different cache location lengths
CN100585578C (zh) 系统总线的防死锁方法、装置
CN102541779A (zh) 一种提高多数据缓冲区dma效率的系统和方法
CN107704413A (zh) 一种基于vpx架构的加固型并行信息处理平台
CN106844263B (zh) 一种基于可配置的多处理器计算机系统及实现方法
JP2006506736A (ja) システム管理信号を分配する方法および装置
CN106776458B (zh) 基于fpga和hpi的dsp间的通信装置及通信方法
CN114416632A (zh) 一种基于多总线协议灵活转换的两级缓存互联结构
CN103885908A (zh) 一种基于外部设备可访问寄存器的数据传输系统及其方法
CN101625671B (zh) Ahb互连矩阵接口及其数据处理方法
CN104408014A (zh) 一种计算系统之间处理单元互连的系统及方法
CN104094241B (zh) 一种传达与高速缓存相干性相关的信息的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151111

Address after: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee after: ZTE Corp.

Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee before: ZTE Corp.

TR01 Transfer of patent right

Effective date of registration: 20221201

Address after: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: SANECHIPS TECHNOLOGY Co.,Ltd.

Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong

Patentee before: ZTE Corp.

Patentee before: SANECHIPS TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right