CN100447768C - 用于处理器之间的通信的改进的处理器间通信系统 - Google Patents

用于处理器之间的通信的改进的处理器间通信系统 Download PDF

Info

Publication number
CN100447768C
CN100447768C CNB038176289A CN03817628A CN100447768C CN 100447768 C CN100447768 C CN 100447768C CN B038176289 A CNB038176289 A CN B038176289A CN 03817628 A CN03817628 A CN 03817628A CN 100447768 C CN100447768 C CN 100447768C
Authority
CN
China
Prior art keywords
processor
unit
memory access
bus
connect
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.)
Expired - Fee Related
Application number
CNB038176289A
Other languages
English (en)
Other versions
CN1688986A (zh
Inventor
S·科赫
H·-J·格尔克
H·鲍尔
A·特里特哈特
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1688986A publication Critical patent/CN1688986A/zh
Application granted granted Critical
Publication of CN100447768C publication Critical patent/CN100447768C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Multi Processors (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Microcomputers (AREA)
  • Bus Control (AREA)

Abstract

一种系统,包括至少两个集成的处理器(P1和P2)。所述两个处理器(P1和P2)经由两个双向通信通道可操作地连接,以交换信息。为了建立双向通信通道,系统包括与第一处理器(P1)连接的第一处理器总线(10)、第一直接存储访问单元(45)、第一可编程单元(34)和第一可共享的单元(13)。可编程单元(34)可由第一处理器(P1)编程。还包括第二处理器总线(20),可与第二处理器总线(20)连接的第二处理器(P2)、第二直接存储访问单元(35)、和第二可编程单元(44)。所述第二可编程单元(44)可由第二处理器(P2)编程。

Description

用于处理器之间的通信的改进的处理器间通信系统
技术领域
本发明一般地涉及两个或更多的处理器间的通信。具体地,本发明涉及被布置在相同半导体芯片上的处理器之间的处理器间通信。
背景技术
随着对更强大的计算设备的要求的增长,提供越来越多的包括不止一个处理器的系统。
为了本发明的目的,需区别包括两个或更多个分立的处理器的计算机系统和在相同的芯片上集成两个或更多处理器的系统。具有在母板上的主中央处理器单元(CPU)和在图形卡上的算法处理器的计算机是具有两个分立处理器的计算机系统的一个例子。具有多个分立处理器的计算机系统的另一个例子是并行计算机,其中安排了处理器阵列以获得提高的性能。为了简便的目的,在板上具有两个或更多的分立处理器的系统也被认为是属于相同的种类。
存在在相同的芯片或半导体芯片上集成两个或更多处理器的系统。一个典型的例子是智能卡(也被称为集成电路卡),其在同一半导体芯片上具有一个主处理器和一个隐式处理器。
随着小型手持设备变得越来越普及,对强大而灵活的芯片的要求日益增加。一个典型的例子是蜂窝电话,在其传播的初期,蜂窝电话只是一个用于语音传输的电话(模拟通信)。经过这些年,已增加了附加的特征,并且当今大部分的蜂窝电话被设计用于语音和数据业务。附加的微分器可以是无线应用协议(WAP)支持、短消息系统(SMS)和多媒体消息服务(MMS)功能,这只列举了许多当前发展中的一些。所有这些特征要求更强大的处理器并甚至经常要求是双处理器或多处理器芯片。
今后,处理数字视频流的系统将例如变得可利用。这些系统也要求强大而灵活的芯片组。
其他的例子是集成电路卡、比如多用途JavaCard,小型手持设备、比如掌上电脑或个人数字助理(PDA),视频和音频设备,用于在汽车中使用的设备等。
对于这种双处理器或多处理器芯片而言,存在用于高效的处理器间通信的通信通道是必要的。表述“处理器间通信”在这里用作第一处理器和/或与第一处理器关联的系统资源同第二处理器和/或与第二处理器关联的系统资源之间的任何通信的同义词。共享的存储器(例如随机访问存储器)是通常需要被芯片的所有处理器访问的系统资源的一个例子。
系统资源必须以一种有效的方式在双处理器或多处理器芯片中被共享,其中处理器对任务的同一方面或相同任务的不同方面进行并行操作。资源的共享在请求处理器处理相关的数据的应用程序中可能也是必要的。
多处理器系统的一个例子在1993年4月16日提交的欧洲专利申请EP 0580961-A1中给出。该专利申请涉及具有多个分立处理器和由所有这些处理器共享的全局总线的系统。提供增强的处理器接口,用于将处理器链接到公共总线。由于影响系统性能的高的总线负载,该具有全局总线的多处理器系统不能利用RISC处理器实现。在EP 0580961-A1中给出的多处理器系统是强大的,但是实现起来复杂而昂贵。所示的结构不能用于在一个公共芯片上的多处理器系统中。
在1985年4月26日提交的美国专利US 4,866,597中提出了另一个系统。该美国专利涉及一种多处理器系统,其中每个处理器具有其自己的处理器总线。数据在这些处理器之间通过直接使相应的处理器总线相互连接的先进先出(FIFO)数据缓存进行交换。该方法的缺点是缓存的大小随待传输的数据量而急剧增加。
美国专利US 5,093,780涉及一种处理器间传输系统,该系统具有自动读写传输数据的数据链路。直接存储器访问(DMA)单元和发送器被分配给第一处理器,并且接收器以及DMA单元在第二处理器上被分配。处理器必须通过对相应的DMA进行编程来设置传输。即是,处理器事先必须知道数据是否要被传输。这是所描述的处理器间传输系统的一个缺点,因为需要涉及相应的处理器。所述系统的另一个缺点是以下事实,即整个传输是单向的、也即实现是不对称的。只可能从在图4的左手边的存储器16传输数据到右手边的存储器26。
一种用于多处理器系统的DMA控制器在美国专利5,222,227中公开。该DMA控制器具有控制由微型计算机系统执行的数据传输操作的功能。提供分离的地址和数据管道。为总线使用三态技术。总线CDB和SDB至少是暂时以电子方式相互连接的。因此,两种总线必须以相同时钟速度操作,并且两种总线必须具有相同的总线带宽。根据美国专利5,222,227,只有同构总线才能互相连接。在所示的系统中没有使用外部DMA通道。
在1991年9月17日提交的美国专利US 5,283,903中描述和要求保护一种具有共享的存储器的多处理器系统。根据该美国专利的系统包括多个处理器、一个共享的存储器(主存储器)和一个优先级选择单元。优先级选择单元在这些处理器之间仲裁对共享的处理器进行访问的请求。这是需要的,因为共享的存储器是单端口存储器(例如随机访问存储器),其不能处理来自若干处理器的同时的竞争请求。该方法的缺点在于共享的存储器作为唯一的中间存储器是昂贵的。该共享的存储器可能随数据传输的增加而增大。
在1990年4月24日提交的美国专利US 5,289,588中描述了另一种多处理器系统。处理器和公共总线耦合。处理器可以通过该公共总线访问共享的存储器。一个缓存与每个处理器相关联并且一种仲裁方案被用于控制对共享的存储器的访问。该方法的缺点是缓存存储器非常昂贵,因为只有大的缓存才能有真正的性能提升。另外,总线冲突导致每个处理器的性能下降。
在1992年7月7日提交的PCT专利申请PCT/JP92/00869中描述了一种多处理器体系结构,并以PCP公开号WO 93/01553公开。该体系结构支持多个异构处理器,这些异构处理器通过数据、地址和控制信号总线耦合。对存储器的访问由仲裁电路控制。
在一些已知的多处理器系统使用的体系结构中,处理器间通信占用处理器的部分处理周期。为了能够更好地利用处理器的能力和性能,期望避免这种系统开销并且释放处理器的处理能力。
其他已知方案不能用于集成的多处理器系统,其中两个或多个处理器位于相同的芯片内。
一些已知系统的另一个缺点是其实现中的不对称,这意味着每个处理器要求不同的实现方式。另外,非对称实现的正式验证的努力比对称实现要大。
发明内容
本发明的一个目的是提供用于两个或更多处理器和/或其关联的部件之间的有效数据传输的方案。
本发明的一个目的是提供适用于集成到一个半导体芯片内的的处理器间数据传输方案。
这些和其他目的是通过提供包括至少两个集成的处理器的系统的本发明达到的。根据本发明,所述两个处理器在操作上经由用于交换信息的通信通道连接。一个处理器(P1)具有一个处理器总线、一个可共享的单元和一个具有两个外部DMA通道的DMA单元。该DMA单元和可共享的单元连接到处理器总线上。另一个处理器也具有一个可共享的单元和一个具有两个外部DMA通道的DMA单元。使用可编程单元,使得该处理器能够建立期望的通信链接。由于这种布置,可在两个总线方式之间建立两个双向通信通道。
两个或更多的处理器可安置在一个公共半导体芯片上。这允许实现计算设备,比如PDA、手持计算机、掌上计算机、蜂窝电话和无绳电话。
通信通道可有利地用于两个或更多的处理器和/或其关联的部件之间的通信。本发明的布置适合通用多核通信的需求。这种安排高度对称并且允许最小化每个处理器另外所需的总线主控器的数量。
参考下面描述的实施例来解释本发明,本发明的这些和其他方面会变得清楚明白。
附图说明
为了更完整地描述本发明及其进一步的目的和优点,对下面结合附图的描述进行参考,其中:
图1是根据本发明的第一个实施例的双处理器计算机系统的示意性框图;
图2是根据本发明的处理器间通信系统的示意性说明;
图3是图2的处理器间通信系统的详细框图;
图4是根据本发明的另一个实施例的双处理器计算机系统的示意性框图;
图5是根据本发明的另一个实施例的双处理器计算机系统的示意性框图;
图6是图5的DTU单元的详细框图。
具体实施方式
本发明结合若干实施例进行描述。
如图1所示,应用本发明的双处理器系统包括第一处理器P1,其经由第一处理器总线10与第一可共享的单元13连接。处理器总线(也称之为微处理器总线)是连接到计算机系统的处理器的主要路径。可共享的单元13或23的一个例子是共享的存储器(例如随机访问存储器RAM)。第一处理器总线10是64位、20MHz总线。该系统包括还具有处理器总线20的第二处理器P 2。该第二处理器总线20是64位、66MHz总线。两个处理器环境18和28之间的互相连接(在图1中用椭圆形示意性表示)经由两个双向通信通道11和21而建立。第一双向通信通道11可由处理器P1进行编程,如箭头12所示,并且第二通道21可由处理器P2进行编程,如箭头22所示。这两个双向通道11和21在之后被称为核间(intercore)通信系统9。
在图2中描述了第一实施例的更多细节。核间通信系统29包括具有第一和第二外部DMA通道46、47的第一DMA单元45(DMA1)。第一DMA单元45可经由内部DMA通道49与第一处理器总线10连接。核间通信系统29进一步包括第一双串联式单元(DTU)34(DTU1),其可经由第一外部DMA通道47与第一DMA单元45连接。DTU单元34可由第一处理器P1进行编程,如箭头32所示,并且第一DMA单元45可由第一处理器P1进行编程,如箭头132所示。另外,核间通信系统29包括第二DMA单元35(DMA2)和第二DTU单元44(DTU2)。DMA单元35具有第一和第二外部DMA通道36、37以及内部DMA通道39。第二DMA单元35经由内部DMA通道39与第二处理器总线20连接。第二DMA单元35和第二DTU单元44可经由第一外部DMA通道37连接。DTU单元44可由第二处理器P2进行编程,如箭头42所示,并且第二DMA单元35可由第二处理器P2进行编程,如箭头142所示。第一双向通信通道由第一DTU单元34实现而第二双向通道由第二DTU单元44实现。每个DTU34、44可直接连接到用于编程/配置目的的处理器,如图2所示。在两个处理器环境38和48之间的互相连接(在图2中用椭圆形示意性表示)可由双向数据传输建立。
在图1和2中给出的实施例的新颖的特征是一个DTU单元(比如DTU1)的编程允许从处理器环境48到处理器环境38的(双向)数据传输及相反的(双向)数据传输,而无需对其它的任何资源进行编程。数据可移动到DMA1并且从与第二处理器总线20连接的可共享的单元23获取。DTU2能够将数据移动到DMA2并从与第一处理器总线10连接的可共享的单元13获取数据。
图1或2说明的双处理器布置允许第二处理器P2访问可共享的单元13。可共享的单元23可由处理器P1访问。
更通常地说,根据本发明的多处理器系统的一个处理器(本实施例中的处理器P2)能够访问与另一个处理器(本实施例中的处理器P1)关联的资源(本实施例中的可共享的单元13)。可访问在远程总线上的另一个处理器的资源,用于例如从便宜的远程存储器上载和下载数据。一个处理器例如可访问协处理器的存储器以获取由协处理器计算出的数据。这仅仅是第一处理器访问远程总线上的资源的情况的两个典型例子。
不同类型的处理器可利用本方案相互连接。其允许实现具有多个同构处理器或甚至具有多个异构处理器的芯片。单词“处理器”在这里用作任何可集成到半导体芯片中并且实际上利用数据执行指令和工作的处理单元的同义词。
复杂指令集计算(CISC)是当今使用的处理器设计的两种主要类型的其中之一。其逐渐让位于精简指令集计算(RISC)设计。当前最流行的CISC处理器是x86,但还有68xx、64xx和Z80也在应用。
当前,最快的处理器是基于RISC的。存在几种流行的RISC处理器,包括Alpha(由Digital开发并且当前由Digital/康柏和三星生产)、ARM(由Advanced RISC Machines开发,当前属于Intel,并由其和Digital/康柏一起生产)、PA-RISC(由惠普开发)、PowerPC(由IBM、苹果和摩托罗拉联合开发)和SPARC(由SUN开发;SPARC设计当前由许多不同的公司生产)。
ARM不同于多数其他处理器,因为它们不是被设计用来最大化性能而是最大化所消耗的每单位功率的性能。因此,ARM多数应用于手持机器和PDA中。
在上述部分中,给出了一些可根据本发明互相连接的处理器的实例。数字信号处理器(DSP)、任何已知处理器的处理器核心,用户指定的处理器设计也是合适的。换句话说,这个概念可应用于大多数微处理器体系结构。甚至可以将一个处理器与一个慢速处理器总线连接,以及可以将一个处理器与一个快速处理器总线连接。
为了本申请的目的,下面还考虑了一个处理器:中央处理单元(CPU)、微处理器、数字信号处理器(DSP)、系统控制器(SC)、协处理器、辅助处理器、控制单元等等。
直接存储器访问(DMA)单元是为将数据从一个存储器传递到另一个设备而不用将其通过处理器传输而设计的单元。DMA通常具有一个或多个专用的内部DMA通道和用于外部的外围设备的一个或多个专用的外部DMA通道。这样的外部DMA通道由外部代理设置,与由与其关联的处理器控制的内部DMA通道相反,以便远程处理器访问另一个处理器的可共享的单元。例如,DMA允许处理器总线上的设备访问存储器而不用由处理器请求中断。
可共享的单元的例子有:易失性存储器、非易失性存储器、外围设备、接口、输入设备、输出设备等等。
根据本发明的核间通信系统去耦合第一处理器P1的时钟范围和第二处理器P2的时钟范围之间的数据流。这意味着在具有发明性的数据传输系统的限制内,一个处理器上的活动不要求在另一个处理器上的同时和等效的活动。
结合图3来描述根据本发明的核间通信系统29的细节。核间通信系统29包括第一DTU34(DTU1)、第二DTU44(DTU2)、第一DMA45(DMA1)和第二DMA35(DMA2)。在本实施例中,DMA单元35包括两个外部DMA通道单元56、57。这两个外部DMA通道单元56、57的内部通道39与处理器总线20连接。
第一外部DMA通道单元56经由链路36与第二DTU44连接。第二外部DMA通道单元57经由链路37与第一DTU34连接。第一DMA单元45包括两个外部DMA通道单元54、55。这两个外部DMA通道单元54、55的内部通道49与处理器总线10连接。第一外部DMA通道单元55经由链路47与第一DTU34连接。第二外部DMA通道单元54经由链路46与第二DTU44连接。这两个外部DMA通道单元54、55的内部通道49与处理器总线10连接。
DTU34包括第一处理器接口60,允许经由处理器总线10建立到处理器P1的编程链路52(在图3中未示出)。DTU34进一步包括直接访问单元核(DAU核)62,和两个外部DMA通道接口61和63。外部DMA通道接口61用作通向外部DMA通道单元55的接口,并且外部DMA通道接口63用作通向外部DMA通道单元57的接口。
DTU44包括第一处理器接口50,允许建立经由处理器总线20到处理器P2的编程链路51(在图3中未示出)。DTU44进一步包括直接访问单元核(DAU核)52,和两个外部DMA通道接口51和53。外部DMA通道接口51用作通向外部DMA通道单元56的接口,并且外部DMA通道接口53用作通向外部DMA通道单元54的接口。
第一处理器P1的时钟信号(时钟1)经由时钟线路58馈送给下列单元:外部DMA通道单元54、外部DMA通道单元55、外部DMA通道接口53、外部DMA通道接口61和DAU核62。第二处理器P2的时钟信号(时钟2)经由时钟线路59馈送给下列单元:外部DMA通道单元56、外部DMA通道单元57、外部DMA通道接口51、外部DMA通道接口63和DAU核52。
处理器P1通过第一处理器接口60配置第一DTU 34。DTU 34的DAU核心62是用于两个外部通道接口61和63的控制逻辑。DAU核心62进一步执行理想地由先进先出(FIFO)增强的数据传输。以相同的方式,处理器P2通过第二处理器接口50配置第二DTU 44。在两种情况下,第一DMA单元45的外部通道使用处理器总线10上的内部DMA通道49的资源,并且第二DMA单元35的外部通道使用处理器总线20上的内部DMA通道39的资源。
如图3所示,核间通信系统29提供时钟去耦。所有的模块要么由处理器P1的时钟1计时,要么由处理器P2的时钟2计时,使得一个处理器上的活动不要求在另一个处理器上的同时和等效的活动。
在时钟信号时钟1和时钟2之间不存在相位和/或频率关系的情况下,可以这样实现DAU核52,62,使得它们能够通过适合的握手信号提供安全的数据传输。这些握手信号在DAU核52和外部DMA通道接口53之间以及在DAU核62和外部DMA通道接口63之间是有效的。
外部DMA通道接口和/或DAU核可被标准化。换句话说,根据本发明的每个DTU或DMA可包含相同的功能核。仅处理器接口需要依据实际应用的处理器和/或处理器总线来而调整。这导致由于重用的最大化而减少了开发时间,并且还减少了验证的努力。
根据本发明,DMA单元通过其内部接口与处理器总线连接并且通过其外部接口与DTU连接。外部接口的宽度可以是8比特。
处理器接口具有编程输入端(例如在图3中的输入端52),因为该接口用于对包含它的DTU进行编程。该处理器接口不要求到处理器总线的任何数据链路,因为交换的任何数据是由DTU的外部DMA通道接口处理的。双向通道的设置和配置是由处理器通过经由处理器接口对相应的DTU的DAU核进行编程而完成的。
DTU34例如利用外部DMA通道47,以便将信息(数据和/或控制信息)传输给可共享的单元13并且从可共享的单元13传输数据。
图4中示出另一个实施例。示例的系统包括第一处理器P1、第一处理器总线70和与第一处理器总线70连接的第一可共享的单元76。还有第二处理器P2、第二处理器总线80和与其连接的第二可共享的单元86。第一双向通信通道可经由具有外部DMA通道85的第一DMA单元83建立。第一DMA单元83可与第一处理器总线70连接。提供第一DTU单元82。第一DTU单元82可通过外部DMA通道85与第一DMA单元83连接。该DTU单元82可由第一处理器P1进行编程。编程经由处理器总线70和编程链路84而发生。另外提供主设备(主控器2)81。该主设备81用作第一DTU单元82和第二处理器总线80之间的接口。第二双向通信通道可经由具有外部DMA通道75的第二DMA单元73建立。第二DMA单元73可与第二处理器总线80连接。提供第二DTU单元72。第二DTU单元72可通过外部DMA通道75与第二DMA单元73连接。该DTU单元72可由第二处理器P 2进行编程。编程经由处理器总线80和编程链路74而发生。另外提供主设备(主控器1)71。该主设备71用作第二DTU单元72和第一处理器总线70之间的接口。在上下文中主控器是一个能够启动(并继续)处理器总线上的数据传输的单元。该主控器因此需要有权访问总线上一些类型的仲裁(优先化)(该优先化不是本专利申请的一部分)。主控器具有一个寻址电路,用于选择处理器总线上的激活的设备。
图5中示出另一个实施例。提供一个核间通信系统99,其允许建立两个处理器总线90和100之间的两个双向通道。例如,处理器P1可以是数字信号处理器(DSP)核,并且处理器P2可以是系统控制器(SC)核。在本实施例中,存在一个公共的DTU单元92,其例如包括图2、3或4的DTU1和DTU2的功能元件。该公共的DTU单元92的一部分可由处理器P1进行编程,如箭头104所指示,并且其他部分可由处理器P2进行编程,如箭头94所指示。该DTU 92的细节在图6中描述。
该公共的DTU 92包括第一处理器接口120,允许建立经由处理器总线90到处理器P1的编程链路104(未在图6示出)。该DTU 92还包括直接访问单元核(DAU核)122,和两个外部DMA通道接口121和123。外部DMA通道接口121用作通向DMA1单元101的接口,并且外部DMA通道接口123用作通向DMA2单元93的接口。该DTU 92还包括第二处理器接口110,允许编程链路94经由处理器总线100被建立到处理器P2(未在图6示出)。该DTU92还包括另一个直接访问单元核(DAU核)112,和两个外部DMA通道接口111和113。外部DMA通道接口111用作通向DMA2单元93的接口,并且外部DMA通道接口113用作通向DMA1单元101的接口。如何应用两个时钟信号时钟1和时钟2也在图6中示出。
DTU92的编程优选地利用两个分离的寄存器组完成,每个寄存器组由一个处理器P1或P2分派。这允许避免由两个DAU核112和122执行同时访问时的冲突。但是,需要允许区分来自处理器P1的请求或来自处理器P2的请求的优先次序的优先化方案。建议以下两种方案:
-不指定优先级,并且操作基于先来先服务的原则,即是先来的处理器具有比其他服务器更高的优先级。正在进行的传输总是被完成并且新的传输被放到等待队列中。
-处理器P1具有高于处理器P2的优先级,或相反。低优先级数据的传输可被具有高优先级的处理器提交的请求中断。传输的中断的发生对于低优先级核是透明的。在完成高优先级请求后,恢复低优先级请求。高优先级传输从不被中断。
根据本发明,DTU单元利用外部DMA通道来与可共享的单元来回传输数据,该可共享的单元与其他处理器的处理器总线连接。相对于可由对应的处理器编程的内部DMA通道,这样的外部DMA通道可由外部代理设置,以便访问其他处理器的资源。在本专利申请中的该外部代理是由远程处理器编程的命令,以访问本地处理器上的资源--内部DMA通道由本地处理器自身编程。
本发明还用在具有多于两个处理器的系统中。例如,第三处理器可经由其自身的处理器总线、第三DMA3单元和第三DTU3连接到第二处理器的DMA2单元。这可允许第三处理器建立到与第二处理器关联的资源的双向通道。
在本发明的又一个实施例中,根据本发明的两个或更多的用作处理器间通信的通信通道被集成到客户的专用集成电路(ASIC)中。
在这里给出并要求保护的体系结构的优点是其支持多个异构处理器。该发明方案能被扩展以适合通用多核通信的需要。根据本发明,可减少每个处理器的总线主控器的数量,同时为此目的使用潜在可得的DMA单元。概念和设计上的重用是另一个优点。不同的其他优点已经参照本发明的各种实施例而进行了描述。
提出的体系结构也适用于计算设备,比如PDA、手持计算机和掌上计算机等。还适用于蜂窝电话(比如GSM电话)、无绳电话(例如DECT电话)等。这里提出的体系结构被用在用于上述设备的芯片或芯片集上或用于蓝牙应用的芯片上。
可以理解,为了清楚,在各个实施例中的上下文中描述的本发明的各种特征还可组合在单个实施例中提供。相反,为了简明,在单个实施例中描述的本发明的不同特征还可分离地或以任何适合的子集合被提供。
在附图和说明书中,叙述了本发明的优选实施例,尽管使用了指定的术语,这样给出的说明使用通用的术语,这仅仅是描述性的而不是限制的目的。

Claims (11)

1.一种系统,包括:
第一处理器总线(10;70;90),
第一处理器(P1),可与第一处理器总线(10;70;90)连接,
具有第一外部直接存储访问通道(47;85;106)的第一直接存储访问单元(45;83;101),该第一直接存储访问单元(45;83;101)与第一处理器总线(10;70;90)连接,
第一可编程单元(34;82;92),经由第一外部直接存储访问通道(47;85;106)与第一直接存储访问单元(45;83;101)连接,所述第一可编程单元(34;82;92)可由第一处理器(P1)编程,
第一可共享的单元(13;76;93),可与第一处理器总线(10;70;90)连接,
第二处理器总线(20;80;100),
第二处理器(P2),可与第二处理器总线(20;80;100)连接,
具有第二外部直接存储访问通道(36;75;96)的第二直接存储访问单元(35;73;93),该第二直接存储访问单元(35;73;93)可与第二处理器总线(20;80;100)连接,
第二可编程单元(44;72;92),经由第二外部直接存储访问通道(36;75;95)与第二直接存储访问单元(35;73;93)连接,所述第二可编程单元(44;72;92)可由第二处理器(P2)编程,以及
第二可共享的单元(23;86;103),可与第二处理器总线(20;80;100)连接,
其中第一双向通信通道在第一可共享的单元(13;76;93)和第二处理器(P2)之间建立,并且第二双向通信通道在第二可共享的单元(23;86;103)和第一处理器(P1)之间建立,
其中第一可编程单元(34;82;92)和第二可编程单元(44;72;92)分别包括处理器接口(50;60:110:120)、直接访问单元核(52,62;112,122)和两个外部直接存储访问通道接口(51;53;61;63;111;113;121;123)。
2.权利要求1的系统,其中第一双向通信通道和/或第二双向通信通道是半双工通道或全双工通道。
3.权利要求1的系统,其中从体系结构的角度看,第一处理器(P1)和第二处理器(P2)是相同的。
4.权利要求1的系统,其中第一处理器(P1)和第二处理器(P2)是相同类型处理器设计的实现。
5.权利要求1的系统,其中第一处理器(P1)和第二处理器(P2)是不同类型处理器设计的实现。
6.权利要求1-5的系统,其中可共享的单元(13;76;93;23;86;103)可以是下面的设备中的任何一个:存储器、外围设备、接口、输入设备、输出设备。
7.权利要求1-5的系统,其中两个集成的处理器(P1,P2)之一是:中央处理单元(CPU)、微处理器,数字信号处理器(DSP)、系统控制器(SC)、协处理器或辅助处理器。
8.权利要求1的系统,其中处理器接口(50;60;110;120)具有编程链路(12,22;32,42;51,52;74,84;94,104),或用于连接到处理器总线(10,20;70,80;90,100)或用于连接处理器(P1,P2)。
9.权利要求1-5、8之一的系统,其中建立通信通道,用于将数据和/或控制信息传输来回于可共享的单元(13;76;93;23;86;103)。
10.一种计算设备,包括第一处理器(P1)和第二处理器(P2),所述第一处理器(P1)和第二处理器(P2)被放置在公共的半导体芯片上并可操作地经由双向通信通道连接以便交换信息,该计算设备进一步包括:
第一处理器总线(10;70;90),第一处理器(P1)可与第一处理器总线(10;70;90)连接,
具有第一外部直接存储访问通道(47;85;106)的第一直接存储访问单元(45;83;101),该第一直接存储访问单元(45;83;101)可与第一处理器总线(10;70;90)连接,
第一可编程单元(34;82;92),经由第一外部直接存储访问通道(47;85;106)与第一直接存储访问单元(45;83;101)连接,所述第一可编程单元(34;82;92)可由第一处理器(P1)编程,
第一可共享的单元(13;76;93),可与第一处理器总线(10;70;90)连接,
第二处理器总线(20;80;100),第二处理器(P2)与第二处理器总线(20;80;100)连接,
具有第二外部直接存储访问通道(36;75;96)的第二直接存储访问单元(35;73;93),该第二直接存储访问单元(35;73;93)可与第二处理器总线(20;80;100)连接,
第二可编程单元(44;72;92),经由第二外部直接存储访问通道(36;75;95)与第二直接存储访问单元(35;73;93)连接,所述第二可编程单元(44;72;92)可由第二处理器(P2)编程,
第二可共享的单元(23;86;103),可与第二处理器总线(20;80;100)连接,
其中第一可编程单元(34;82;92)和第二可编程单元(44;72;92)分别包括处理器接口(50;60:110:120)、直接访问单元核(52,62;112,122)和两个外部直接存储访问通道接口(51;53;61;63;111;113;121;123)。
11.权利要求10的计算设备,可以是PDA、手持计算机、掌上计算机、蜂窝电话或无绳电话的一部分。
CNB038176289A 2002-07-23 2003-07-16 用于处理器之间的通信的改进的处理器间通信系统 Expired - Fee Related CN100447768C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP02016492 2002-07-23
EP02016492.7 2002-07-23

Publications (2)

Publication Number Publication Date
CN1688986A CN1688986A (zh) 2005-10-26
CN100447768C true CN100447768C (zh) 2008-12-31

Family

ID=30470237

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038176289A Expired - Fee Related CN100447768C (zh) 2002-07-23 2003-07-16 用于处理器之间的通信的改进的处理器间通信系统

Country Status (7)

Country Link
US (1) US20060123152A1 (zh)
EP (1) EP1535169B1 (zh)
JP (1) JP4368795B2 (zh)
CN (1) CN100447768C (zh)
AT (1) ATE543138T1 (zh)
AU (1) AU2003246991A1 (zh)
WO (1) WO2004010308A2 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100334581C (zh) * 2004-04-02 2007-08-29 明基电通股份有限公司 在多个微处理器间传输数据的嵌入式计算机系统及方法
JP2006059303A (ja) * 2004-08-24 2006-03-02 Oki Electric Ind Co Ltd コンピュータシステム
JP2006133968A (ja) * 2004-11-04 2006-05-25 Fujitsu Ltd 情報処理装置
US8732368B1 (en) * 2005-02-17 2014-05-20 Hewlett-Packard Development Company, L.P. Control system for resource selection between or among conjoined-cores
CN101098527B (zh) * 2006-06-27 2012-06-13 雅斯拓(北京)智能卡科技有限公司 同时处理个人令牌中的数据传输会话的线程控制器
US7984301B2 (en) 2006-08-17 2011-07-19 Inside Contactless S.A. Bi-processor architecture for secure systems
JP4476267B2 (ja) * 2006-10-06 2010-06-09 株式会社日立製作所 プロセッサ及びデータ転送ユニット
US20100077472A1 (en) * 2008-09-23 2010-03-25 Atmel Corporation Secure Communication Interface for Secure Multi-Processor System
US8195858B1 (en) * 2009-07-28 2012-06-05 Nvidia Corporation Managing conflicts on shared L2 bus
US8321618B1 (en) 2009-07-28 2012-11-27 Nvidia Corporation Managing conflicts on shared L2 bus
CN102063337B (zh) * 2009-11-17 2014-01-08 中兴通讯股份有限公司 多处理器核的信息交互和资源分配的方法及系统
US8458377B2 (en) * 2010-03-05 2013-06-04 Lsi Corporation DMA engine capable of concurrent data manipulation
KR101685407B1 (ko) * 2010-07-29 2016-12-13 삼성전자주식회사 멀티코어 시스템을 위한 다이렉트 메모리 억세스 장치 및 다이렉트 메모리 억세스 장치의 동작 방법
US9762434B2 (en) 2011-08-12 2017-09-12 Rambus Inc. Temporal redundancy
FR3026869B1 (fr) * 2014-10-07 2016-10-28 Sagem Defense Securite Systeme embarque sur puce a haute surete de fonctionnement
US10303630B2 (en) * 2017-10-08 2019-05-28 Huawei Technologies Co., Ltd. Configurable hardware accelerators
CN111427816A (zh) * 2020-03-04 2020-07-17 深圳震有科技股份有限公司 一种amp系统核间通讯方法、计算机设备及存储介质
CN112181878B (zh) * 2020-08-28 2022-04-08 珠海欧比特宇航科技股份有限公司 RapidIO接口架构和数据处理方法
CN112838888A (zh) * 2021-01-11 2021-05-25 深圳震有科技股份有限公司 一种基于5g的卫星编解码并发计算方法和系统
CN114228725A (zh) * 2021-11-23 2022-03-25 深圳元戎启行科技有限公司 车载控制系统以及无人驾驶车辆

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5335326A (en) * 1992-10-01 1994-08-02 Xerox Corporation Multichannel FIFO device channel sequencer
CN1288201A (zh) * 1999-09-09 2001-03-21 上海贝尔有限公司 主从式多处理器系统中的通信接口
US20020055979A1 (en) * 2000-09-06 2002-05-09 Stefan Koch Inter-processor communication system for communication between processors

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60229160A (ja) * 1984-04-26 1985-11-14 Toshiba Corp マルチプロセツサシステム
US5283903A (en) * 1986-12-25 1994-02-01 Nec Corporation Priority selector
US5222227A (en) * 1987-01-16 1993-06-22 Hitachi, Ltd. Direct memory access controller for a multi-microcomputer system
JPH02109153A (ja) * 1988-10-18 1990-04-20 Fujitsu Ltd プロセッサ間データ伝送方式
US5289588A (en) * 1990-04-24 1994-02-22 Advanced Micro Devices, Inc. Interlock acquisition for critical code section execution in a shared memory common-bus individually cached multiprocessor system
CA2080210C (en) * 1992-01-02 1998-10-27 Nader Amini Bidirectional data storage facility for bus interface unit
JP3196637B2 (ja) * 1996-04-26 2001-08-06 三菱電機株式会社 ソートプロセッサおよびソート処理装置
US5890013A (en) * 1996-09-30 1999-03-30 Intel Corporation Paged memory architecture for a single chip multi-processor with physical memory pages that are swapped without latency
US6775717B1 (en) * 2001-08-31 2004-08-10 Integrated Device Technology, Inc. Method and apparatus for reducing latency due to set up time between DMA transfers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5335326A (en) * 1992-10-01 1994-08-02 Xerox Corporation Multichannel FIFO device channel sequencer
CN1288201A (zh) * 1999-09-09 2001-03-21 上海贝尔有限公司 主从式多处理器系统中的通信接口
US20020055979A1 (en) * 2000-09-06 2002-05-09 Stefan Koch Inter-processor communication system for communication between processors

Also Published As

Publication number Publication date
EP1535169B1 (en) 2012-01-25
AU2003246991A8 (en) 2004-02-09
WO2004010308A2 (en) 2004-01-29
EP1535169A2 (en) 2005-06-01
ATE543138T1 (de) 2012-02-15
WO2004010308A3 (en) 2005-04-07
AU2003246991A1 (en) 2004-02-09
JP2005534094A (ja) 2005-11-10
CN1688986A (zh) 2005-10-26
US20060123152A1 (en) 2006-06-08
JP4368795B2 (ja) 2009-11-18

Similar Documents

Publication Publication Date Title
CN100447768C (zh) 用于处理器之间的通信的改进的处理器间通信系统
CN100440183C (zh) 处理器间通信系统
US20190050366A1 (en) Device, event and message parameter association in a multi-drop bus
US20030154336A1 (en) Dual access serial peripheral interface
CN102065568B (zh) 基于数据描述符的mac软硬件交互方法及其硬件实现装置
CN101452430B (zh) 多处理器之间的通信方法与包括多处理器的通信装置
EP2815555B1 (en) Communication bridging between devices via multiple bridge elements
CN101394349B (zh) 不同接口设备通信中的数据传输方法及系统
CN104021097A (zh) 数据传输方法、装置及直接存储器存取
CN103246623A (zh) Soc计算设备扩展系统
CN112506676B (zh) 进程间的数据传输方法、计算机设备和存储介质
GB2377138A (en) Ring Bus Structure For System On Chip Integrated Circuits
US7340553B2 (en) Data processing device and method for transferring data
US20190286606A1 (en) Network-on-chip and computer system including the same
EP1069511B1 (en) Data Transfer Controller with Plural Ports
CN1322443C (zh) 高速数据传输的装置及方法
KR101276837B1 (ko) 서로 다른 동작 주파수로 동작하는 프로세서 시스템 간의 통신을 지원하기 위한 장치
US6651083B1 (en) Distributed service request system for providing fair arbitration using token passing scheme to resolve collisions
CN100514971C (zh) 一种ip核接口标准化方法
CN1234550B (zh) 一种输入/输出总线系统
WO2008027092A1 (en) Computer communication
CN112740192B (zh) 大数据运算加速系统及数据传输方法
KR102270261B1 (ko) Mmi 인터페이스 장치 및 그에 기반한 컴퓨팅 시스템
CN109408453B (zh) 一种高性能多节点互联并行传输控制方法
CN117135234A (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
ASS Succession or assignment of patent right

Owner name: NXP CO., LTD.

Free format text: FORMER OWNER: KONINKLIJKE PHILIPS ELECTRONICS N.V.

Effective date: 20071109

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20071109

Address after: Holland Ian Deho Finn

Applicant after: Koninkl Philips Electronics NV

Address before: Holland Ian Deho Finn

Applicant before: Koninklijke Philips Electronics N.V.

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081231

Termination date: 20180716