用于芯片间通信的通信系统的制作方法

文档序号:9829911阅读:682来源:国知局
用于芯片间通信的通信系统的制作方法
【技术领域】
[0001]本发明涉及一种用于芯片间通信的通信系统,在所述芯片间通信中,处理器通过通信总线的数据通道相互通信,其中,称为主处理器的处理器承担对称为从处理器的另一处理器的传输控制。
【背景技术】
[0002]在此意义下已经公知了用于根据主机-从机原理同步串行传输数据的总线系统,该总线系统也称为串行外设接口(简称SPI)。该总线系统具有三个公用的导线,每个参与者连接到所述导线上。这些导线是用于串行数据的输出端、用于串行数据的输入端以及时间控制(时钟),所述时间控制由控制通信的主机定义。此外,在控制通信的主机与从机之间设置有传送使能导线。在主机与从机之间的通信双向地进行并且视协议的实施而定完全能够双工。这需要在主机与从机之间进行多个调节。相应地,可实现在通信伙伴的两侧上进行数据流和数据分析的数据协议由于双向数据传输而非常复杂。双向数据传输也可以导致高的系统负载,特别是因为主机和从机能够并且必须并行地发送、接收和处理数据。
[0003]该SPI总线的巨大问题在于,在数据流中通知的开始是未知的并且原则上可以以任意数据位开始。
[0004]由于通信的复杂的协议结构和与硬件密切的实施,对于多个处理器经常使用专有的通信解决方案,所述通信解决方案使得由不同硬件组成的不同通信伙伴的互操作性几乎不可能。SPI总线的实施因此总是与参与的处理器相关。
[0005]在SPI芯片间通信中问题因此在于,不仅控制通信流程的SPI主机而且SPI从机必须能够并行地发送、接收和处理数据。这主要对于SPI从机是一个问题,因为该SPI从机必须总是准备好接收,因为通过SPI主机进行的数据传输原则上可随时亦即以任意位开始。即使在通过SPI从机进行的数据传输中,也通过SPI主机控制传输流程。这导致:只要进行由SPI从机到SPI主机的数据传输,SPI从机就必须确保在其(通过SPI主机控制的)数据发送寄存器中的连续的数据流。为此所需的协议是复杂的,并且导致用于芯片间通信的总线的高系统负载。
[0006]此外,公知的用于芯片间通信的SPI总线的实施与系统极其相关,因为对于SPI总线存在多个调节可能性。这是由于没有准确确定用于SPI总线的技术规范并且因此存在多个不同的相互也不兼容的装置。因此可以是,对于每个连接的转换电路而言需要自己配置SPI主机。这例如也由于对于不同参与者的通信方向或通信不存在统一控制。如果多个参与者在一个数据通道上同时通信,那么经常导致冲突。

【发明内容】

[0007]本发明的目的在于,减小在芯片间通信中的高的系统负载并且避免复杂的不同的SPI总线协议。
[0008]该目的按照本发明通过权利要求1的特征来实现。
[0009]为此在开头所述类型的通信系统中特别是提出,对于每个数据通信方向、亦即由第一到第二处理器的数据传输和由第二到第一处理器的数据传输而言数据通道分别在一个单独的物理的通信总线中运行。这使得用于不同通信方向的两个数据通道在逻辑上分开,所述数据通道因此可以在逻辑上彼此无关地工作。这在技术上以最简单的方式这样实现,使得两个数据通道在两个不同的通信总线上运行,所述通信总线优选分别相同地构成,由此,两个不同的数据总线(对于每个数据通信方向至少一个)的实施在每个处理器上原则上是相同的。
[0010]按照本发明提出的解决方案例如能实现在一个通信方向上的通信一一如果同时在另一通信方向上传输数据,而不会产生数据的混合以及由此禁止通信的冲突,而且不必设置麻烦的控制双向通信的数据协议。在通信总线的一个数据通道中的通信可以简单地构成为单向串行数据传输,因为每个通信总线具有确定的发送器和确定的接收器。
[0011]因此,与公知的设有双向通信的SPI总线不同,在按照本发明的通信总线中的通信是单向的。为了能实现在两个处理器之间双向通信,对于每个数据通信方向分别设有一个单向运行的通信总线,其中,不同通信方向的分别单向传输的通信总线分别在物理上彼此单独地运行。由此一开始就禁止了不同的通信方向重叠。由于数据通信的简单串行特征,通信总线也可容易地替换并且仅仅需要稍微匹配于所使用的平台(硬件或者说处理器)。
[0012]按照一个特别优选的实施形式提出,对于每个单独的通信总线而言接收器分别构成为控制通信的主处理器。为了控制通信,主处理器可以按照本发明特别是施加信号在从处理器的传送使能输入端上。从处理器然后(亦即在检测到传送使能信号的情况下)配置成将存储在其发送寄存器中的数据串行发出,直至信号在从处理器的传送使能输入端上不再存在。所施加的信号可以是例如O位或I位。由此,接收器可以控制发送处理器以及由此数据流,并且如果接收器不论出于何原因没有准备好接收,则例如停止传输。由此,接收器处理器可以更简单地构成,因为不必例如通过缓存确保:在可以进行数据的再处理之前,数据以发送器的传输速率首先一次接收并且存储。因此,如果数据的再处理按照本发明是不可能的,那么接收器作为主处理器可以简单地停止传输。
[0013]发送器在单向运行的通信总线中是发送任意待传输数据的唯一通信参与者。因此,如果数据完全准备好传输,那么所述发送器可以将数据作为消息、例如数据包准备好并且然后置于其发送寄存器中。消息例如可以是这样的数据包,在所述数据包中,数据附有文件头和/或用于消息范围的其它相关数据。这些数据包于是例如可以通过置于发送寄存器中而准备好传输。
[0014]按照所提出的方法的一个特别优选的扩展构型,从处理器作为通信总线的发送器优选配置成当通过从处理器存在数据待传输时输送触发信号给主处理器。这优选可以当数据通过发送器完全准备好传输时进行。
[0015]所述触发信号按照本发明可施加在主处理器的通用输入和输出端口上。也称为GP1端口(General Purpose Input Output)的这种通用输入和输出端口通常设置用于在每个处理器上简单的通信控制,由此,所提出的可简单执行的并且特别是串行的通信可以几乎与硬件无关地在多个不同的硬件处理器之间实现。一旦主处理器接收到触发信号,主处理器就可以将传送使能信号施加在从处理器的输入端上。
[0016]在简单的可在多个不同硬件处理器中几乎通用实施的通信流程的范围内可以提出,主处理器和从处理器配置成借助于中断处理来控制按照本发明仅仅在一个数据通信方向上进行传输的通信总线的通信流程,在所述中断处理中,相应处理器、亦即主处理器或者说从处理器特别是配置成当处理器接收到中断要求时中断正常的程序流程并且执行特别是通过软件实施的处理。这样的中断要求也称为中止。中断处理作为中断服务程序(ISR)是已知的。
[0017]相应的中断处理在绝大多数处理器中按照标准来设置并且例如可借助于软件来配置。因此,通过仅仅最小地在硬件方面匹配于处理器和/或运行系统层面,按照本发明提出的通信系统的通用实施可通过简单方式进行。
[0018]中断处理对于通信系统也占用高的工作负荷,因为处理可以分别按照所需的工作来控制,而各个硬件部件无须构成用于正好也在时间上和/或从数据量方面来满足通过其它硬件部件所强制的通信流程。由此,参与通信系统的处理器也可以更有利地构成。
[0019]因此,基于在通用层面上的通信流程,可通过简单的方式利用不同的硬件总线系统来通信,而无须分别实施独立的协议。这使得对于相应硬件待实施的代码在很大程度上与硬件无关并且可在多个平台上以相同方式或以最小匹配来使用。仅仅软件的相应的运算或功能专用的以及与硬件相关的部分必须对于每个处理器在实施时进行匹配,其中,基于通信流程的通用性因此使得用于其它处理器或运行系统的现有软件已经可以作为构思来使用。
[0020]简单的结构也使得软件的最大部分可以以相同方式在不同平台上使用,由此,验证级别明显提高并且用于安装在不同平台上的通信
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1