CN101305356A - 用于使内核之间的通信同步的具有标志寄存器的控制装置 - Google Patents

用于使内核之间的通信同步的具有标志寄存器的控制装置 Download PDF

Info

Publication number
CN101305356A
CN101305356A CNA2006800415183A CN200680041518A CN101305356A CN 101305356 A CN101305356 A CN 101305356A CN A2006800415183 A CNA2006800415183 A CN A2006800415183A CN 200680041518 A CN200680041518 A CN 200680041518A CN 101305356 A CN101305356 A CN 101305356A
Authority
CN
China
Prior art keywords
kernel
value
address
statistical indicant
control 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.)
Granted
Application number
CNA2006800415183A
Other languages
English (en)
Other versions
CN101305356B (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.)
Italian French Ericsson Ltd i L
ST Ericsson SA
Telefonaktiebolaget LM Ericsson AB
Ericsson Inc
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 CN101305356A publication Critical patent/CN101305356A/zh
Application granted granted Critical
Publication of CN101305356B publication Critical patent/CN101305356B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/167Interprocessor communication using a common memory, e.g. mailbox
    • 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
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation

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)
  • Microcomputers (AREA)
  • Information Transfer Systems (AREA)
  • Static Random-Access Memory (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

控制装置(D)是包括至少两个内核(C1,C2)的集成电路(IC)的一部分,所述内核通过总线(BC1,BC2)与存储器(M)耦接,该存储器(M)被布置用于存储将在这些内核(C1,C2)之间传送的数据。该控制装置(D)包括至少一个标志寄存器(FR1,FR2),所述标志寄存器通过总线(BC1,BC2)与内核(C1,C2)耦接并被布置用于在Ni个地址处存储Ni个标志值,所述Ni个标志值与通过所述内核之一存储到存储器(M)中并准备朝向另一个内核传送的数据相关,由所述内核之一(C1,C2)借助于表示第一地址的命令而能够对存储在第一地址处的每个标志值进行设置或重置,由此将允许由另一个内核(C2,C1)借助于表示第二地址的命令对存储在第二地址处的另一个标志值同时进行设置或重置。

Description

用于使内核之间的通信同步的具有标志寄存器的控制装置
技术领域
本发明涉及集成电路,更精确地说涉及这种集成电路的内核(或处理器)之间的通信同步。
背景技术
在大多数复杂集成电路内部,固件被分布在若干个内核(或处理器)上。在用于通讯设备(例如移动电话)中的基带装置的集成电路中特别是这样的情况。
时常,一个主内核或处理器,称作CPU(控制处理单元),专用于系统控制,并且一个或者多个专门的内核或处理器,称作DSP(数字信号处理器),专用于特定的数字数据处理,例如音频处理、视频解码或通信信道编码。
如图1中所示的,为了在两个内核C1和C2之间实现实时双通信(即数据传输),已经建议将一个DPRAM存储器(双端口随机存取存储器)M连接至这些内核中每一个的数据和地址总线。回想起来这类存储器是易失性存储器,其通常具有16或32位宽度,并且可同时由两个内核(或处理器)访问。利用这种方案(图1中所示的),所述两个内核C1和C2把DPRAM存储器M视作一个标准存储器,并且可在其地址的任何一个地址上读取或写入字。唯一限制是当一个内核正在一个DPRAM存储器存储区域中写入数据时,另一个内核不能访问该DPRAM存储器存储区域。
如本专业技术人员所周知的,通过标准DPRAM存储器M使两个内核C1和C2同步的一般方式是使用标志。回想标志是在所述DPRAM存储器M内部的一个地址处存储的二进制值。标志用来向第一内核(C1或C2)发信号来表明第二内核(C2或C1)已经完成一项操作或一项任务(例如语音数据的编码)并且由所述操作或任务得到的数据已经通过该第二内核被存储在所述DPRAM存储器M的一部分DS中并可被传送到第一内核中。每个标志只在内核之间的一个方向上被使用:例如内核C1轮询一个标志,等待其值改变(从0至1),而当内核C2已经完成与该标志对应的操作时就改变该标志的值(从0至1)。
如图2中所示,由于上述的DPRAM存取限制,不能以相同的DPRAM字在所选地址处存储不同的标志。实际上,如果我们假定以相同的DPRAM字在所选地址处存储两个标志X和Y,其中二者的值都被设置为零(0),则当内核C1将标志X设置为一(1)并且内核C2检查标志X的值时,内核C2必须重置标志X(从1至0),并且如果所述内核C1设置标志Y而内核C2正在重置标志X,则内核C2会丢掉标志Y。此外,当两个内核C1和C2同时写入时,所述字中的每个标志的值将变成是不确定的。所以,必须是每个字进而是每个地址只存储一个标志,这在存储器容量方面代价较高,特别是当DPRAM存储器具有32位宽度时(例如对于128个一位的标志,一个标志会损失496位(128x31))。
发明内容
所以,本发明的目的是改进所述情形,更精确地说提出一种用于通过一个例如DPRAM型的存储器使两个内核之间的通信同步的容易方式,而不会破坏大量的存储器容量。
为此目的,本发明提供一种用于集成电路的控制装置,该集成电路包括至少两个内核,所述至少两个内核通过总线与一个存储器耦接,所述存储器被布置用于存储将要在这些内核之间传送的数据。该控制装置的特征在于包括至少一个标志寄存器,其通过它们的总线与所述内核耦接并被布置用于(在Ni个地址处)存储Ni个标志值,所述标志值与通过所述内核之一存储到所述存储器中并准备朝向另一个内核传送的数据相关。由所述内核之一借助于表示该第一地址的命令(或指令)而能够对存储在第一地址处的每个标志值进行设置或重置,由此将允许由另一个内核借助于表示该第二地址的命令(或指令)对存储在第二地址处的另一个标志值同时进行设置或重置。
根据本发明的控制装置可以包括被分开地或组合考虑的附加特征,并且显著的是:
-它可以包括i)至少一个第一标志寄存器,其与所述总线耦接并且被布置用于在N1个地址处存储N1个标志值,所述N1个标志值与通过所述内核中的第一内核存储到所述存储器中并准备朝向这些内核中的第二内核传送的数据相关,对于存储在第一寄存器的第一地址处的每个标志值,能够借助于表示第一地址的命令来由第一内核对其进行设置,并由所述第二内核对其进行重置;和ii)至少一个第二标志寄存器,其与所述总线耦接并被布置用于在N2个地址处存储N2个标志值,所述N2个标志值与通过第二内核存储到所述存储器中并准备朝向第一内核传送的数据相关,对于存储在第二寄存器的第一地址处的每个标志值,能够借助于表示第一地址的命令由第二内核对其进行设置,并由第一内核对其进行重置;
-每个标志寄存器可以包括:i)第一控制装置,其包括与连接到第一内核的总线相连接的第一输入端、Ni个第一输出端和第一标志值读取和写入装置;ii)第二控制装置,其包括与连接到第二内核的总线相连接的第二输入端、Ni个第二输出端和第二标志值读取和写入装置;和ii i)存储装置,其包括具有Ni个各自地址的Ni个存储区域,它们被布置用于分别存储Ni个标志值并分别与第一输出中的一个和第二输出中的一个连接;
-控制装置每次接收到表示这些若干存储区域的各自地址的单个命令时,所述第一和第二控制装置中的每一个可以被布置用于对存储到所述存储装置的若干存储区域中的若干标志值进行设置和/或重置;
-控制装置可以包括所述存储器,所述存储器例如可以是DRPAM存储器或RAM存储器。
本发明还提供一种用于电子设备的集成电路,其包括一个如上所述的控制装置。
本发明还提供一种电子设备,其包括一个如上所述的集成电路。该电子设备可以是计算机(个人计算机或膝上计算机)、电话机(移动电话、无绳电话或固定电话)、个人数字助理(或PDA)、或音乐播放器(例如MP3播放器)。
附图说明
本发明的其它特征和优点通过此后的详图说明和附图将变得显而易见,其中:
图1示意地表示其中两个内核与一个公用DPRAM存储器耦接的现有集成电路的一部分;
图2示意地表示DPRAM存储器和在该DPRAM存储器内部存储标志的方法;
图3示意地表示其中两个内核与一个存储器和根据本发明的控制装置的第一示例耦接的集成电路的一部分;
图4示意地表示其中两个内核与根据本发明的控制装置的第二示例耦接的集成电路的一部分;
图5功能上表示图3中所示的控制装置的标志寄存器的实施例的一个示例;和
图6示意地表示专用于处理单个位标志值的标志寄存器的一部分的实施例的一个示例。
具体实施方式
附图不仅可以用于完成本发明,如果有必要时还有助于对其进行定义。
首先参考图3说明根据本发明的控制装置D的实施例的一个非限制(第一)示例。该控制装置D组成集成电路IC的一部分,可以将其安装到一个电子设备EE中。
在下面的说明中将电子设备EE看作是一个移动电话。但是可以将根据本发明的集成电路IC安装在其中需要将固件分布在若干内核(或处理器)上的任何电子设备中。所以,它例如可以是计算机(个人计算机或膝上计算机)、无绳电话、固定电话、个人数字助理(或PDA)或音乐播放器(例如MP3播放器)。
如之前提及的,根据本发明的控制装置D有助于通过公用存储器M使集成电路IC的两个内核C1和C2之间的双向通信同步。
在下面的说明中,将考虑公用存储器M是DPRAM存储器(双端口随机存取存储器),其与第一(地址和数据)总线BC1和第二(地址和数据)总线BC2连接,所述第一总线BC1和第二总线BC2分别与第一内核C1和第二内核C2连接。但本发明并不限于这种类型的存储器。本发明适用于可以由两个内核借助于公用多层总线访问的任何存储器。所以,公用存储器M还可以是一个随机存取存储器(或RAM)。
此外,在下面的说明中,将认为第一内核C1是主处理器,也称作CPU(控制处理单元),并专用于控制移动电话EE,而第二内核C2是一个专门的处理器,也称作DSP(数字信号处理器),并专用于特定的数字信号处理,例如音频信号处理或视频解码,或者进行通信信道编码。因此,此后第一内核C1和第二内核C2有时将分别被称作CPU和DSP。
但是本发明并不限于这些类型的内核。实际上,本发明适用于需要通过一个公用存储器以同步的方式从另一内核(最终是同样类型的)接收数据和向其发送数据的任何类型的内核。
如之前提及的,固件被至少部分地分配到CPU C1和DSP C2中。它们中的每一个必须执行在完成时产生数据的操作或任务,所述数据至少对于它们中的一些必须被传送给另一个。其数据必须被传送的每个操作或任务与一个标志(二进制值)相关。另外,将从一个内核Ci(i=1或2)传送给另一个内核Ci’(i’=2或1)的每组数据通过与传送内核Ci连接的总线CBi传输给存储器M,以便将其随时存储在从两个内核Ci和Ci’得知的一个所选位置上并与一个所选标志相关。
根据本发明,所述(公用)存储器M只存储必须从一个内核Ci传送给另一个内核Ci’的数据。
所述控制装置D包括至少一个标志寄存器FRi,其通过它们各自的总线BC1和BC2而被耦合到CPU C1和DSP C2。每个标志寄存器FRi被布置用于在所选地址处存储上述标志各自的值。对于这一目的,它包括对应于Ni个地址的Ni个存储区域,所述地址是从CPU C1和DSPC2获知的。
当第一内核Ci(例如CPU C1)已经完成与标志寄存器FRi中具有所选地址的标志相关的任务或操作时,它发送相应数据组以传送到存储器M,以便可以将它们存储在其所选地址处,并且它向标志寄存器FRi发送一条消息,所述标志寄存器FRi需要它将与所传送的数据组相关的标志设置为1。
一个消息包括至少一个八位字节(或字),其中每个位指代一个标志,标志的值被存储到所述的标志寄存器FRi中。更确切地说,如果一个字位值等于0,则这意味着相应的标志值必须保持不变,并且如果一个字位值等于1,则这意味着必须改变相应的标志值(从0到1)。例如,当8位的一个字等于(00000001)时,必须将与第一个字位(等于1)相关的第一标志值设置为1,而与其它七个字位(等于0)相关的其它七个标志值必须保持不变。现在,当8位的一个字等于(00010001)时,必须将与第一和第五个字位(等于1)相关的第一和第五标志值设置为1,而与其它六个字位(等于0)相关的其它六个标志值必须保持不变。
所以,当与包含在该消息中的字相对应的标志寄存器FRi接收这一消息时,它只改变与等于1的字位相关的每个标志值。换句话说,它对与等于1的字位相关的每个标志值进行设置(设置为1)。回想只要还没有完成一项操作或任务,则相应的标志值保持等于0。
第二内核Ci’(例如DSP C2)轮询存储到所述标志寄存器FRi中的标志值,当它发觉到一个标志的值的变化时,它知道所述相应的数据组被存储到存储器M中的相关地址处。所以能够访问存储器M并进行数据传输。当已经完成数据传输时,第二内核Ci’向标志寄存器FRi发送一条消息来请求所述标志寄存器FRi重置与所传送的数据组相关的标志。这一消息也包括至少一个八位字节(或字),其中每个位指代一个标志,该标志的值被存储到所述相应的标志寄存器FRi中。
所以,当对应于包含在该消息中的字的标志寄存器FRi接收这一消息时,它只改变与等于1的字位相关的每个标志值。换句话说,它将与等于1的字位相关的每个标志值重置(为0)。
第一内核Ci轮询存储到标志寄存器FRi中的标志值,当它注意到标志的值发生变化时,它知道先前已经被传输给存储器M的相应数据组已经被有效地传送了给第二内核Ci’。
每个标志寄存器FRi可同时被两个内核C1和C2访问,能够由内核之一(例如C1)借助于包含指示该第一地址的至少一个字的消息(或命令)对每个标志值(存储在标志寄存器FRi中的第一地址处)进行设置或重置,而与此同时能够由另一个内核(例如C2)借助于包含指示第二地址的至少一个字的消息(或命令)对至少一个其它标志值(存储在该标志寄存器FRi中的第二地址处)进行设置或重置。
在图3所示的非限制示例中,所述控制装置D包括第一单向标志寄存器FR1和第二单向标志寄存器FR2,它们都与第一总线BC1和第二总线BC2耦接。单向标志寄存器FRi是这样的寄存器,其中第一内核Ci只能设置标志值(相对于必须执行的操作或任务),而第二内核Ci’只能重置标志值(相对于正在等待的数据组)。
在所图示的示例中,第一标志寄存器FR1专用于由CPU C1执行的操作或任务,而第二标志寄存器FR2专用于由DSP C2执行的操作或任务。因此CPU C1能够在第一寄存器FR1中将标志值设置为1并在第二寄存器FR2中将标志值重置为0,而DSP C2能够在第二寄存器FR2中将标志值设置为1并在第一寄存器FR1中将标志值重置为0。
关于从存储器M到第二内核C2进行的数据传送,第一标志寄存器FR1包括用于存储N1个标志各自的值的N1个存储区域。关于从存储器M到第一内核C1进行的数据传送,第二标志寄存器FR2包括用于存储N2个标志各自的值的N2个存储区域。例如N1=N2=8。
在图3所示的非限制示例中,所述控制装置D包括第一单向标志寄存器FR1和第二单向标志寄存器FR2,而在一个变化示例中,所述控制装置D可包括若干第一单向标志寄存器FR1和/或若干第二单向标志寄存器FR2或至少一个双向标志寄存器。在最后的情况(双向标志寄存器)中,每个内核Ci能够对存储在标志寄存器FRi的Ni个存储区域中的任何标志值进行设置或重置。这要求一个相同的二进制值0或1对于第一内核C1和第二内核C2具有两种相反的意义(即0被第一内核C1认为是0,但被第二内核C2看作是1)。
值得注意的是(单向的或双向的)标志寄存器FRi的数量取决于必须存储的标志值(与每个内核Ci相关)的数量。例如,如果有小于8个的标志值需要存储,则一个标志寄存器就是足够的。现在,如果有8个以上的标志值需要存储,则必须提供两个或更多标志寄存器。通常,标志的数量取决于一个总线BCi能够传送的位的数量。
此外,在图3所示的非限制示例中,所述控制装置D与存储器M无关。但是,在一个变化例中,存储器M可以是控制装置D的一部分,如图4中所示。在此情况中,标志寄存器FRi可以构成寄存器R的一个或者多个部分。
现在将参照图5和6更详细地说明控制装置D的实施例的一个示例。
图5表示其中每个标志寄存器FRi包括第一控制模块CM1、第二控制模块CM2和存储模块SM的实施例的功能示例。在图5中,只示出了第一标志寄存器FR1的机能结构。但第二标志寄存器FR2的功能结构与第一标志寄存器FR1的功能结构相同。
所述存储模块SM包括Ni个一位存储区域(1到Ni),它们具有Ni个各自的地址,用于分别存储Ni个标志的当前值(0或1)。
第一控制模块CM1包括:
-第一读取和写入模块RWM1,用于访问所述存储模块SM的Ni个不同的存储区域(1到Ni)来用于读取和写入目的。它用作针对CPU C1的接口并包括执行控制逻辑的部件,
-与第一总线BC1(与CPU C1连接)连接并与第一读取和写入模块RWM1连接的第一输入端,和
-与所述第一读取和写入模块RWM1连接并与存储模块SM的Ni个不同存储区域(1到Ni)连接的Ni个第一输出端。
所述第一CM1和第二CM2控制模块具有相同的功能结构。所以,第二控制模块CM2包括:
-第二读取和写入模块RWM2,用于访问所述存储模块SM的Ni个不同的存储区域(1到Ni)来用于读取和写入目的。它用作DSP C2的接口并包括执行控制逻辑的部件,
-与第二总线BC2(与DSP C2连接)连接并与第二读取和写入模块RWM2连接的第二输入端,和
-与第二读取和写入模块RWM2连接并与存储模块SM的Ni个不同存储区域(1到Ni)连接的Ni个第二输出端。
由于该对称结构,更具体地说由于第一控制模块CM1和第二控制模块CM2,所以每个标志寄存器FRi能够同时被CPU C1和DSP C2访问来用于读取(轮询)和/或写入目的。
优选的是,在第一控制模块CM1和第二控制模块CM2中的每一个每次从与它耦接的内核Ci接收指示若干存储区域各自地址的单个命令(消息)时,能够对存储在存储模块SM的这些若干存储区域中的若干(至少两个且优选的为Ni个)标志值近似同时地进行设置和/或重置。这是由每个标志寄存器FRi接收若干位的命令字这样的事实产生的。
为此目的,每个标志寄存器FRi的第一控制模块CM1和第二控制模块CM2以及存储模块SM可以被分割成Ni个相同的且平行的部分,每个部分都可对一个标志值(即一位)的处理(读取和写入)做出响应。在图6中示出了这些Ni个标志寄存器部分之一的实施例的一个非限制示例。
该图示的标志寄存器部分包括构成第一控制模块CM1的Ni个部分(CM11到CM1Ni)之一第一控制子模块CM1j(j=1到Ni)、构成第二控制模块CM2的Ni个部分(CM21到CM2Ni)之一的第二控制子模块CM2j(j=1到Ni)和构成存储模块SM的Ni个部分之一的存储子模块SMj(j=1到Ni)。
例如,如图所示,每个第一控制子模块CM1j包括第一读取和写入子模块RWM1j,其包括:
-第一与门AG11,其具有与第一总线BC1连接并与将要写入所述标志寄存器中的第j个标志值对应的第一输入端(“BitN write”)、也与第一总线BC1连接并允许写入操作(等于0的值意味着没有进行操作,而等于1的值意味着必须对第j个标志值执行写操作)的第二输入端(“write”)、和构成了第一控制模块CM1的Ni个输出端之一的第一子部分的输出端,
-第二与门AG12,其具有与第一总线BC1连接用于从第一时钟(专用于内核C1)接收时钟周期的第一输入端(“clock”)、与所述第一与门AG11的输出端连接的第二输入端、和构成了第一控制模块CM1的Ni个输出端之一的第二子部分的输出端,和
-触发器F1(或“FF2”),其具有用于从第一时钟接收时钟周期的第一输入端、用于接收第j个标志值的第二输入端(“D”)、用于将所述第j个标志值(“BitN read”)递送到第一总线BC 1中的输出端(“Q”)。
每个第二控制子模块CM2j包括第二读取和写入子模块RWM2j,其包括:
-第一与门AG21,其具有与第二总线BC2连接并与将要写入到所述标志寄存器中的第j个标志值对应的第一反相输入端(“BitNwrite”)、也与第二总线BC2连接并允许所述写入操作的第二输入端(“write”)、和构成了第二控制模块CM2的Ni个输出之一的第一子部分的输出,
-第二与门AG22,其具有与第二总线BC2连接用于从第二时钟(专用于内核C2)接收时钟周期的第一输入端(“clock”)、与所述第一与门AG21的输出端连接的第二输入端、和构成了第二控制模块CM2的Ni个输出之一的第二子部分的输出端,和
-触发器F2(或“FF3”),其具有用于从第二时钟接收时钟周期的第一输入端、用于接收第j个标志值的第二输入端(“D”)、和用于将所述第j个标志值(“BitN read”)递送到第二总线BC2中的输出端(“Q”)。
每个存储子模块SMj包括:
-第一或门OG1,其具有与第一读取和写入子模块RWM1j的第一与门AG11的输出连接的第一输入端、与第二读取和写入子模块RWM2j的第一与门AG21的输出端连接的第二反相输入端、和输出端,
-第二或门OG2,其具有与第一读取和写入子模块RWM1j的第二与门AG12的输出端连接的第一输入端、与第二读取和写入子模块RWM2j的第二与门AG22的输出端连接的第二输入端、和输出端,和
-触发器F3(或“FF1”),其具有与第一或门OG1的输出端连接的第一输入端(“D”)、与第二或门OG2的输出端连接的第二输入端(“CK”-时钟)、和用于递送第j个标志值(“BitN read”)的输出端(“Q”)。该触发器F3在第二或门OG2输出的信号的控制下存储了由第一或门OG1输出的信号定义的标志值。
利用这种方案,能够对第一标志寄存器FR1应用下面的规则(非限制)示例(包含关于从存储器M向第二内核C2传送数据的标志值):
如果第一内核C1在第一标志寄存器FR1的存储模块SM的第j个存储区域中写入值“core_C1_write_value”,则后者执行操作“register_value=register_value|core_C1_write_value”,其中|是逐个位应用的二元算符“OR”,从而来计算新寄存器值。所以,第一标志寄存器FR1只对第j个部分的触发器F1或F2给出一个时钟周期,其中“core_C1_write_value”位被设置为1,从而使得在另一侧上具有另一触发器F2或F1的同时和异步的时钟。这意味着用O写入并与等于1的字位相关的标志寄存器FR1的所有标志值都被设置(为1),而用0或1写入并与等于0的字位相关的标志寄存器FR1的所有标志值保持不变,
-如果第二内核C2在第一寄存器FR1的存储模块SM的第j个存储区域中写入值“core_C2_write_value”,则后者执行操作“register_value=register_value & core_C2_write_value”,其中&是逐位应用的二元算符“AND”,从而来计算新寄存器值。所以,第一标志寄存器FR1只对触发器F1或F2给出一个时钟周期,其中“core_C2_write_value”位被设置为0,从而使得能够在另一侧上具有另一触发器F2或F1的同时且异步的时钟。这意味着用1写入并等于0的字位相关的标志寄存器FR1的所有标志值都被清除(重置为0),而用0或1写入并与等于1的字位相关的标志寄存器FR1的所有标志值保持不变。所述对字位值的这种使用反转是由第一与门AG21的第一输入端(“BitN write”)被反转这样的事实产生的。
所述交互规则对第二标志寄存器FR2进行请求,所述第二标志寄存器FR2包含关于从存储器M到第一内核C1进行数据传输的标志值。
因为在标志寄存器FRi内部的标志是独立的,所以允许从一个时钟域向另一个时钟域传播的硬件可被降低至最小。实际上,如果一个内核(C1或C2)同时将若干个标志设置为1(在单个写入指令(或命令)内),则不需要保证所有标志在另一个内核(C2或C1)的相同时钟周期内也被设置。
此后给出可以应用于图6中所示的实施例的示例的真值表的示例。
Figure A20068004151800151
该真值表显示第一内核C1只能写入等于1的位值。例如与通过第一内核C1写入0(通过已经传送的字(命令)中的等于0的位)对应的该表的第二行显示相应的标志值保持不变(Qn+1=Qn),并且第二内核C2只能写入等于0的标志值。
控制装置D典型地是利用硬件模块实现的。
根据本发明,专用于存储定义标志值的位的每个存储区域的大小等于一个(1)位。所以,专用于存储标志值的存储器容量被大大减小。此外,标志值被存储到标志寄存器中,所以公用存储器的所有存储区域都能用于存储要在内核之间进行传送的数据。所以,能够增加在传送之前能被存储到公用存储器中的数据的数量,或者减小公用存储器的容量,从而能够为安装到集成电路中的另外的电子元件释放一些空间。
本发明并不限于只作为示例的上述控制装置、集成电路和电子设备的实施例,本发明包括了在权利要求范围内的可以被本专业技术人员考虑的所有可选实施例。

Claims (9)

1.一种用于集成电路(IC)的控制装置(D),所述集成电路(IC)包括至少两个内核(C1,C2),它们通过总线(BC1,BC2)与存储器(M)耦接,所述存储器(M)被布置用于存储将在所述内核(C1,C2)之间传送的数据,所述控制装置(D)的特征在于包括至少一个标志寄存器(FRi),所述标志寄存器通过所述总线(BC1,BC2)与所述内核(C1,C2)耦接并且其被布置用于在Ni个地址处存储Ni个标志值,所述Ni个标志值与通过所述内核之一存储到所述存储器(M)中并准备朝向所述内核中的另一个传送的数据相关,由所述内核之一(C1,C2)借助于表示所述第一地址的命令而能够对存储在第一地址处的每个标志值进行设置或重置,由此将允许由另一个内核(C2,C1)借助于表示所述第二地址的命令对存储在第二地址处的另一个标志值同时进行设置或重置。
2.根据权利要求1所述的控制装置,其特征在于它包括:i)至少一个第一标志寄存器(FR1),其与所述总线(BC1,BC2)耦接并且其被布置用于在N1个地址处存储N1个标志值,所述N1个标志值与通过所述内核中的第一个(C1)存储到所述存储器(M)中并准备朝向所述内核中的第二个(C2)传送的数据相关,对于存储在所述第一寄存器的第一地址处的每个标志值,能够借助于表示所述第一地址的命令来由所述第一内核对其进行设置,并由所述第二内核(C2)对其进行重置;和ii)至少一个第二标志寄存器(FR2),其与所述总线(BC1,BC2)耦接并且其被布置用于在N2个地址处存储N2个标志值,所述N2个标志值与通过所述第二内核(C2)存储到所述存储器(M)中并准备朝向所述第一内核(C1)传送的数据相关,对于存储在所述第二寄存器(FR2)的第一地址处的每个标志值,能够借助于表示所述第一地址的命令由所述第二内核(C2)对其进行设置,并由所述第一内核(C1)对其进行重置。
3.根据权利要求1和2中的一个所述的控制装置,其特征在于每个标志寄存器(FRi)包括:i)第一控制装置(CM1),其包括与连接到所述第一内核(C1)的总线(BC1)相连接的第一输入、Ni个第一输出和第一标志值读取和写入装置(RWM1);ii)第二控制装置(CM2),其包括与连接到所述第二内核(C2)的总线(BC2)相连接的第二输入、Ni个第二输出和第二标志值读取和写入装置(RWM2);和iii)存储装置(SM),其包括具有Ni个具有各自地址的Ni个存储区域,所述Ni个存储区域被布置用于分别存储Ni个标志值并分别与所述第一输出之一和所述第二输出之一连接。
4.根据权利要求3所述的控制装置,其特征在于:当它接收表示所述若干存储区域的各自地址的单个命令时,所述第一控制装置(CM1)和第二控制装置(CM2)中的每一个被布置用于对存储在所述存储装置(SM)的若干存储区域中的若干标志值进行设置和/或重置。
5.根据权利要求1至4中的一个所述的控制装置,其特征在于它包括所述存储器(M)。
6.根据权利要求5所述的控制装置,其特征在于所述存储器(M)是在至少包括一个DRPAM存储器和一个RAM存储器的组中选择的。
7.一种用于电子设备(EE)的集成电路(IC),其特征在于它包括根据前述权利要求之一所述的控制装置(D)。
8.电子设备(EE),其特征在于它包括根据权利要求7所述的集成电路(IC)。
9.根据权利要求8所述的电子设备,其特征在于它是在至少包括计算机、电话机、个人数字助理和音乐播放器的组中选择的。
CN2006800415183A 2005-11-08 2006-11-03 用于使内核之间的通信同步的具有标志寄存器的控制装置 Active CN101305356B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP05300900.7 2005-11-08
EP05300900 2005-11-08
PCT/IB2006/054104 WO2007054871A2 (en) 2005-11-08 2006-11-03 Control device with flag registers for synchronization of communications between cores

Publications (2)

Publication Number Publication Date
CN101305356A true CN101305356A (zh) 2008-11-12
CN101305356B CN101305356B (zh) 2010-09-01

Family

ID=37938484

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800415183A Active CN101305356B (zh) 2005-11-08 2006-11-03 用于使内核之间的通信同步的具有标志寄存器的控制装置

Country Status (7)

Country Link
US (1) US7890736B2 (zh)
EP (1) EP1949249A2 (zh)
JP (1) JP4940436B2 (zh)
KR (1) KR101029392B1 (zh)
CN (1) CN101305356B (zh)
TW (1) TWI416340B (zh)
WO (1) WO2007054871A2 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9037838B1 (en) 2011-09-30 2015-05-19 Emc Corporation Multiprocessor messaging system
US9760526B1 (en) * 2011-09-30 2017-09-12 EMC IP Holdings Company LLC Multiprocessor messaging system
EP2862058B1 (en) * 2012-06-15 2021-05-19 Intel Corporation A semaphore method and system with out of order loads in a memory consistency model that constitutes loads reading from memory in order
KR101660022B1 (ko) * 2015-09-10 2016-09-27 아둘람테크 주식회사 버스 인터페이스 효율을 향상시키기 위한 장치 및 방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US690750A (en) * 1901-02-09 1902-01-07 Nat Carbon Co Sparking-coil.
US4594657A (en) * 1983-04-22 1986-06-10 Motorola, Inc. Semaphore for memory shared by two asynchronous microcomputers
JPH0656603B2 (ja) * 1986-02-10 1994-07-27 株式会社日立マイコンシステム デ−タ処理システム
JPS63654A (ja) * 1986-06-19 1988-01-05 Fujitsu Ltd プロセッサ間の通信制御方法
US5611053A (en) * 1994-01-21 1997-03-11 Advanced Micro Devices, Inc. Apparatus and method for integrating bus master ownership of local bus load by plural data transceivers
JP2859178B2 (ja) * 1995-09-12 1999-02-17 日本電気通信システム株式会社 プロセッサ間データ転送方式及びプロセッサ間データ転送用リングバッファメモリ
US5649125A (en) * 1995-10-30 1997-07-15 Motorola, Inc. Method and apparatus for address extension across a multiplexed communication bus
US6711667B1 (en) * 1996-06-28 2004-03-23 Legerity, Inc. Microprocessor configured to translate instructions from one instruction set to another, and to store the translated instructions
US5951659A (en) * 1997-04-07 1999-09-14 Ncr Corporation Communications-oriented computer system backplane including a PCI input/output bus for transmission of address, data, and control information, and a time-domain multiplexed signal bus (TDMSB) for transmission of high-speed digitized signal information
EP0960372A2 (en) * 1997-10-29 1999-12-01 Koninklijke Philips Electronics N.V. Method and system for synchronizing block-organized data transfer
JP4123315B2 (ja) * 1999-02-19 2008-07-23 株式会社安川電機 デュアルポートramのデータ受け渡し装置および方法
CN1282925A (zh) * 1999-07-12 2001-02-07 松下电器产业株式会社 数据处理装置
DE19951541C1 (de) * 1999-10-26 2000-10-26 Siemens Ag Integrierter elektronischer Baustein mit duplizierter Kernlogik und Hardware-Fehlereinspeisung für Prüfzwecke
CN1251105C (zh) * 2001-01-31 2006-04-12 株式会社日立制作所 数据处理系统和数据处理器
US6823441B1 (en) * 2001-04-20 2004-11-23 Daimlerchrysler Corporation Method of multiplexed address and data bus
US6907503B2 (en) * 2001-09-27 2005-06-14 Daimlerchrysler Corporation Dual port RAM communication protocol

Also Published As

Publication number Publication date
KR20080077150A (ko) 2008-08-21
WO2007054871A2 (en) 2007-05-18
JP2009514118A (ja) 2009-04-02
US20080294876A1 (en) 2008-11-27
EP1949249A2 (en) 2008-07-30
WO2007054871A3 (en) 2008-04-17
KR101029392B1 (ko) 2011-04-14
TWI416340B (zh) 2013-11-21
JP4940436B2 (ja) 2012-05-30
CN101305356B (zh) 2010-09-01
TW200811666A (en) 2008-03-01
US7890736B2 (en) 2011-02-15

Similar Documents

Publication Publication Date Title
US7127563B2 (en) Shared memory architecture
US4443846A (en) Dual port exchange memory between multiple microprocessors
US8364873B2 (en) Data transmission system and a programmable SPI controller
CN101305356B (zh) 用于使内核之间的通信同步的具有标志寄存器的控制装置
US8145852B2 (en) Device having shared memory and method for providing access status information by shared memory
CN110720126B (zh) 传输数据掩码的方法、内存控制器、内存芯片和计算机系统
US11880686B2 (en) Devices transferring cache lines, including metadata on external links
JPS602709B2 (ja) ビルデイング・ブロツク構造をもつデータ処理システム
US20240134650A1 (en) Devices transferring cache lines, including metadata on external links
JPS6312303B2 (zh)
JPS6235950A (ja) メモリ間のデ−タ転送方式
KR100800704B1 (ko) 이동 통신 단말기의 메시지 전처리기 및 그 제어 방법
JPS608970A (ja) マルチコントロ−ラシステム
JP2007018403A (ja) 異種インタフェース対応レジスタ
KR20080010022A (ko) n 비트의 CPU 및 이를 이용한 n 비트보다 큰 대역폭을갖는 주변장치와의 연결 방법
JPS60123956A (ja) メモリ書込装置
JPS63234749A (ja) メツセ−ジ伝送装置
JPS60100242A (ja) メモリ制御装置
US20040210730A1 (en) Dram control circuit
JPS62187956A (ja) Dma制御方式
JPH08202615A (ja) 記憶装置
JPS63259746A (ja) バンクメモリ間のデ−タ転送方式
JPH02254557A (ja) 通信制御処理装置
JPH10173618A (ja) バススイッチ装置およびその転送順序変換方法
JPS6180436A (ja) デ−タ処理装置

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
TR01 Transfer of patent right

Effective date of registration: 20170426

Address after: Stockholm

Patentee after: Telefonaktiebolaget LM Ericsson (publ)

Address before: Stockholm

Patentee before: Ericsson, Inc.

Effective date of registration: 20170426

Address after: Stockholm

Patentee after: Ericsson, Inc.

Address before: Swiss Grand saconnex

Patentee before: ST-ERICSSON S.A.

Effective date of registration: 20170426

Address after: Swiss Grand saconnex

Patentee after: ST-ERICSSON S.A.

Address before: Swiss Prang Eli Ute Jean Deferre at No. 39

Patentee before: Italian-French Ericsson Limited (in liquidation)

Effective date of registration: 20170426

Address after: Swiss Prang Eli Ute Jean Deferre at No. 39

Patentee after: Italian-French Ericsson Limited (in liquidation)

Address before: Holland Ian Deho Finn

Patentee before: NXP B.V.

TR01 Transfer of patent right