片上系统论文和设计-D·W·贝利

全文摘要

本公开的实施例涉及片上系统。片上系统包括多个处理系统和为处理系统服务的通道电路系统。通道电路系统包括时钟洒水器电路、时钟源、第一和第二方向数据路径电路系统。时钟洒水器是仅在第一方向上从源传播到所有目的地的时钟信号。第一方向数据路径电路系统包括为第一方向上的数据流服务的多个第一方向数据触发器和第一方向组合逻辑。第二方向数据路径电路系统包括为第二方向上的数据流服务的多个第二方向数据触发器和第二方向组合逻辑。第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,第一方向数据触发器基于第一方向上的时钟\/数据偏移被定位,并且第二方向数据触发器基于第二方向上的时钟\/数据偏移被定位。

主设计要求

1.一种片上系统,其特征在于,包括:多个处理系统;以及通道电路系统,被耦合至所述多个处理系统、并且驻留在所述多个处理系统中,所述通道电路系统包括:时钟洒水器电路,包括主时钟支路;时钟源,被耦合至所述主时钟支路的第一端,所述时钟源将时钟信号耦合至所述主时钟支路的所述第一端,并且所述时钟信号在第一方向上、沿着所述主时钟支路从所述主时钟支路的所述第一端朝向所述主时钟支路的第二端传播;第一方向数据路径电路系统,包括:多个第一方向数据触发器,由所述时钟洒水器电路计时、并且为所述第一方向数据中的数据流服务;以及第一方向组合逻辑,被互相耦合至所述多个第一方向数据触发器、并且为所述第一方向上的数据流服务;以及第二方向数据路径电路系统,包括:多个第二方向数据触发器,由所述时钟洒水器电路计时、并且为与所述第一方向相对的第二方向上的数据流服务;以及第二方向组合逻辑,被互相耦合至所述多个第二方向数据触发器、并且为所述第二方向上的数据流服务。

设计方案

1.一种片上系统,其特征在于,包括:

多个处理系统;以及

通道电路系统,被耦合至所述多个处理系统、并且驻留在所述多个处理系统中,所述通道电路系统包括:

时钟洒水器电路,包括主时钟支路;

时钟源,被耦合至所述主时钟支路的第一端,所述时钟源将时钟信号耦合至所述主时钟支路的所述第一端,并且所述时钟信号在第一方向上、沿着所述主时钟支路从所述主时钟支路的所述第一端朝向所述主时钟支路的第二端传播;

第一方向数据路径电路系统,包括:

多个第一方向数据触发器,由所述时钟洒水器电路计时、并且为所述第一方向数据中的数据流服务;以及

第一方向组合逻辑,被互相耦合至所述多个第一方向数据触发器、并且为所述第一方向上的数据流服务;以及

第二方向数据路径电路系统,包括:

多个第二方向数据触发器,由所述时钟洒水器电路计时、并且为与所述第一方向相对的第二方向上的数据流服务;以及

第二方向组合逻辑,被互相耦合至所述多个第二方向数据触发器、并且为所述第二方向上的数据流服务。

2.根据权利要求1所述的片上系统,其中:

所述时钟信号在所述第一方向上的传播引入沿着所述主时钟支路的时钟偏移;

第一数据在所述第一方向数据路径电路系统上的传播引入沿着所述第一方向数据路径电路系统的第一数据延迟;

所述多个第一方向数据触发器的放置基于所述时钟偏移、以及沿着所述第一方向数据路径电路系统的所述第一数据延迟而被确定;

第二数据在所述第二方向数据路径电路系统上的传播引入沿着所述第二方向数据路径电路系统的第二数据延迟;以及

所述多个第二方向数据触发器的放置基于所述时钟偏移、以及沿着所述第二方向数据路径电路系统的所述第二数据延迟而被确定。

3.根据权利要求1所述的片上系统,其中:

所述第二方向上的时钟\/数据偏移大于所述第一方向上的时钟\/数据偏移;

所述第一方向数据触发器基于所述第一方向上的所述时钟\/数据偏移而被定位;以及

所述第二方向数据触发器基于所述第二方向上的所述时钟\/数据偏移而被定位。

4.根据权利要求1所述的片上系统,其中:

所述多个处理系统在半导体裸片上具有相应的多个处理系统区域;

所述通道电路系统驻留在所述半导体裸片上的通道电路系统区域中;以及

所述通道电路系统区域和所述相应的多个处理系统区域是不重叠的。

5.根据权利要求1所述的片上系统,其中所述时钟洒水器电路还包括多个时钟驱动器,并且在降低功率模式操作期间,所述多个时钟驱动器中的一些时钟驱动器被禁用。

6.根据权利要求1所述的片上系统,其中所述多个处理系统中的处理系统包括基于所述时钟信号的本地时钟域。

7.根据权利要求1所述的片上系统,其中:

所述时钟洒水器电路还包括:

时钟洒水器连接,被耦合至所述主时钟支路的所述第二端;以及

多个辅时钟支路;并且

针对所述多个辅时钟支路中的每个辅时钟支路,所述第一方向数据路径电路系统还包括第一方向辅数据路径电路系统,所述第一方向辅数据路径电路系统具有:

多个第一方向辅数据触发器,由对应的辅时钟支路计时、并且为所述第一方向数据中的数据流服务;以及

第一方向辅组合逻辑,被耦合至所述多个第一方向辅数据触发器、并且为所述第一方向上的数据流服务;并且

针对所述多个辅时钟支路中的每个辅时钟支路,所述第二方向数据路径电路系统还包括第二方向辅数据路径电路系统,所述第二方向辅数据路径电路系统具有:

多个第二方向辅数据触发器,由所述对应的辅时钟支路计时、并且为所述第二方向数据中的数据流服务;以及

第二方向辅组合逻辑,被耦合至所述多个第二方向辅数据触发器、并且为所述第二方向上的数据流服务。

8.根据权利要求7所述的片上系统,其中:

所述时钟信号通过所述时钟洒水器连接、并且沿着所述多个辅时钟支路中的每个辅时钟支路在所述第一方向上传播,从而引入沿着所述多个辅时钟支路中的每个辅时钟支路的时钟偏移;

第一数据在所述第一方向辅数据路径电路系统上的传播引入第一辅数据延迟;

所述多个第一方向辅数据触发器的放置基于沿着所述多个辅时钟支路的所述时钟偏移、以及所述第一辅数据延迟而被确定;

第二数据在所述第二方向辅数据路径电路系统上的传播引入第二辅数据延迟;以及

所述多个第二方向辅数据触发器的放置基于沿着所述多个辅时钟支路的所述时钟偏移、以及所述第二辅数据延迟而被确定。

9.根据权利要求8所述的片上系统,其中:

所述时钟洒水器电路还包括:

时钟洒水器子连接,被耦合至辅时钟支路的所述第二端;以及

多个子辅时钟支路;并且

针对所述多个子辅时钟支路中的每个子辅时钟支路,所述第一方向数据路径电路系统还包括:

多个第一方向子辅数据触发器,由对应的子辅时钟支路计时、并且为所述第一方向数据中的数据流服务;以及

第一方向子辅组合逻辑,被耦合至所述多个第一方向子辅数据触发器、并且为所述第一方向上的数据流服务;并且

针对所述多个辅时钟支路中的每个辅时钟支路,所述第二方向数据路径电路系统还包括:

多个第二方向子辅数据触发器,由所述对应的子辅时钟支路计时、并且为所述第二方向数据中的数据流服务;以及

第二方向子辅组合逻辑,被耦合至所述多个第二方向子辅数据触发器、并且为所述第二方向上的数据流服务。

10.一种片上系统,其特征在于,包括:

多个处理系统;以及

通道电路系统,被耦合至所述多个处理系统、并且驻留在所述多个处理系统中,所述通道电路系统包括:

时钟洒水器电路,包括主时钟支路;

时钟源,被耦合至所述主时钟支路的第一端,所述时钟源将时钟信号耦合至所述主时钟支路的所述第一端,并且所述时钟信号在第一方向上沿着所述主时钟支路、从所述主时钟支路的所述第一端朝向所述主时钟支路的第二端传播;

第一方向数据路径电路系统,包括多个第一方向通道电路块,所述多个第一方向通道电路块为所述第一方向上的数据流服务,所述多个第一方向通道电路块包括第一方向逻辑门、并且包括由所述时钟洒水器电路计时的多个第一方向数据触发器;以及

第二方向数据路径电路系统,包括多个第二方向通道电路块,所述多个第二方向通道电路块为所述第一方向上的数据流服务,所述多个第二方向通道电路块包括第二方向逻辑门、并且包括由所述时钟洒水器电路计时的多个第二方向数据触发器。

11.根据权利要求10所述的片上系统,其中:

所述时钟信号在所述第一方向上的传播引入沿着所述主时钟支路的时钟偏移;

第一数据在所述第一方向数据路径电路系统上的传播引入沿着所述第一方向数据路径电路系统的第一数据延迟;

所述多个第一方向数据触发器的放置基于所述时钟偏移、以及沿着所述第一方向数据路径电路系统的所述第一数据延迟而被确定;

第二数据在所述第二方向数据路径电路系统上的传播引入沿着所述第二方向数据路径电路系统的第二数据延迟;以及

所述多个第二方向数据触发器的放置基于所述时钟偏移、以及沿着所述第二方向数据路径电路系统的所述第二数据延迟而被确定。

12.根据权利要求10所述的片上系统,其中:

所述第二方向上的时钟\/数据偏移大于所述第一方向上的时钟\/数据偏移;

所述第一方向数据触发器基于所述第一方向上的所述时钟\/数据偏移而被定位;以及

所述第二方向数据触发器基于所述第二方向上的所述时钟\/数据偏移而被定位。

13.根据权利要求10所述的片上系统,其中:

所述多个处理系统在半导体裸片上具有相应的多个处理系统区域;

所述通道电路系统驻留在所述半导体裸片上的通道电路系统区域中;以及

所述通道电路系统区域和所述相应的多个处理系统区域是不重叠的。

14.根据权利要求10所述的片上系统,其中所述时钟洒水器电路还包括多个时钟驱动器,并且在降低功率模式操作期间,所述多个时钟驱动器中的一些时钟驱动器被禁用。

15.根据权利要求10所述的片上系统,其中:

所述时钟洒水器电路还包括:

时钟洒水器连接,被耦合至所述主时钟支路的所述第二端;

以及

多个辅时钟支路;并且

针对所述多个辅时钟支路中的每个辅时钟支路,所述第一方向数据路径电路系统还包括第一方向辅数据路径电路系统,所述第一方向辅数据路径电路系统具有为所述第一方向上的数据流服务的多个第一方向辅通道电路块;并且

针对所述多个辅时钟支路中的每个辅时钟支路,所述第二方向数据路径电路系统还包括第二方向辅数据路径电路系统,所述第二方向辅数据路径电路系统具有为所述第二方向上的数据流服务的多个第二方向辅通道电路块。

16.根据权利要求15所述的片上系统,其中:

所述时钟信号通过所述时钟洒水器连接、并且沿着所述多个辅时钟支路中的每个辅时钟支路在所述第一方向上传播,从而引入沿着所述多个辅时钟支路中的每个辅时钟支路的时钟偏移;

第一数据在所述第一方向辅数据路径电路系统上的传播引入沿着所述第一方向辅数据路径电路系统的第一辅数据延迟;

多个第一方向辅数据块的放置基于沿着所述多个辅时钟支路的所述时钟偏移、以及沿着所述第一辅方向数据路径电路系统的所述第一辅数据延迟而被确定;

第二数据在所述第二方向辅数据路径电路系统上的传播引入沿着所述第二方向辅数据路径电路系统的第二辅数据延迟;以及

多个第二方向辅数据块的放置基于沿着所述多个辅时钟支路的所述时钟偏移、以及沿着所述第二辅方向数据路径电路系统的所述第二辅数据延迟而被确定。

17.根据权利要求15所述的片上系统,其中:

所述时钟洒水器电路还包括:

时钟洒水器子连接,被耦合至辅时钟支路的所述第二端;以及

多个子辅时钟支路;并且

针对所述多个子辅时钟支路中的每个子辅时钟支路,所述第一方向数据路径电路系统还包括为所述第一方向上的数据流服务的多个第一方向子辅通道电路块;并且

针对所述多个辅时钟支路中的每个辅时钟支路,所述第二方向数据路径电路系统还包括为所述第二方向上的数据流服务的多个第二方向子辅通道电路块。

设计说明书

有关申请的交叉引用<\/u>

本美国专利申请要求根据35U.S.C.§119(e)的于2018年1月3 日提交的标题为“BUS\/CLOCK STRUCTURE FOR SYSTEM ON A CHIP”的美国临时申请第62\/613,089号的优先权,该临时申请通过引用全部并入本文,并且出于所有目的构成本美国专利申请的一部分。

技术领域

本公开涉及一种包括多个单独的处理系统的片上系统(SoC);更具体地,涉及一种在SoC的多个单独的处理系统之间和在SoC的多个单独的处理系统之中形成的通道电路系统。

背景技术

图1A是图示了包括被设置在单个集成电路上的多个处理系统 102A至102L的现有技术的SoC 100的框图。处理系统102A至102L 中的每一个都执行对应的处理功能。通道位于多个处理系统102A至 102L之中和多个处理系统102A至102L之间。被包含在通道中的通道电路系统104为多个处理系统102A至102L之间的数据传输服务,并且可以执行附加的处理功能。

多个处理系统102A至102L和通道电路系统104中的所有系统都需要一个或多个时钟。利用一些现有技术的SoC,公共时钟分布在SoC 100的所有区域或大致所有区域上。公共时钟不仅用于对多个处理系统102A至102L计时(clock),还用于对通道电路系统计时。用于将公共时钟分布在SoC 100上的一种特定结构被称为H树时钟网络。用于将公共时钟分布在SoC 100上的另一特定的现有结构被称为二叉树网络。这些时钟分布结构中的每一种都将公共时钟分布在SoC 100上,使得时钟在多个处理系统102A至102L和通道电路系统104的所有时钟端点处近似同相。然而,这些时钟分布结构要求在SoC 100的所有区域上路由时钟。

然而,处理系统102A至102L中的许多可能是专有设计,具有其自己的时钟分布结构,并且不允许修改SoC 100的相应区域中的电路系统。因此,利用一些现有的SoC,专用的时钟分布结构仅为通道电路系统服务。一些使用SoC的H树时钟分布结构用来在通道电路系统的所有部件上生成公共时钟,并且可能需要块位移和相称的面积增加。其他SoC使用二叉树时钟分布结构来在通道电路系统的所有部件上生成公共时钟。由于通道电路系统的部件分布在SoC 100上,所以通过使用这些时钟树结构中的任一种时钟树结构来进行构造和分析都非常复杂。

用于其他现有的SoC的通道电路系统的另一时钟方案被称为源同步时钟方案,这包括在通道电路系统104上发送时钟以及数据。这种技术要求每个处理系统102A至102L生成时钟,从而增加时间复杂度和分析,这是因为数据沿着通道电路系统104在不同方向上在不同服务时钟中传播,不同服务时钟在不同方向上传播。

实用新型内容

本公开的实施例涉及一种片上系统(SoC)。根据本公开的第一实施例,SoC包括多个处理系统和通道电路系统,该通道电路系统被耦合至多个处理系统并且驻留在多个处理系统中。通道电路系统包括时钟洒水器(clock sprinkler)电路、时钟源、第一方向数据路径电路系统和第二方向数据路径电路系统,时钟洒水器电路包括主时钟支路。时钟源耦合至主时钟支路的第一端,并且将时钟信号耦合至主时钟支路的第一端,时钟信号在第一方向上沿着主时钟支路从主时钟支路的第一端朝向主时钟支路的第二端传播。

第一方向数据路径电路系统包括由时钟洒水器电路计时、并且为第一方向数据中的数据流服务的多个第一方向数据触发器以及被互相耦合至多个第一方向数据触发器、并且为第一方向上的数据流服务的第一方向组合逻辑。第二方向数据路径电路系统包括由时钟洒水器电路计时、并且为与第一方向相对的第二方向上的数据流服务的多个第二方向数据触发器以及被互相耦合至多个第二方向数据触发器、并且为第二方向上的数据流服务的第二方向组合逻辑。

与现有SoC相比,第一实施例的SoC提供了重要优点。具体地,单个时钟源为通道电路系统的所有部分提供时钟信号。时钟信号在第一方向上传播,简化了通道电路系统的设计。进一步地,由于时钟电路系统与通道电路系统驻留在一起,所以通道电路系统时钟路由不需要访问多个处理系统的占用空间。因此,与现有SoC相比,通道电路系统的设计更高效,并因此更划算。

第一实施例包括至少一个可选方面。这些方面可以单独地或者以各种组合应用于第一实施例。根据第一实施例的第一方面,时钟信号在第一方向上的传播引入沿着主时钟支路的时钟偏移。第一数据在第一方向数据路径电路系统上的传播引入沿着第一方向数据路径电路系统的第一数据延迟,并且基于时钟偏移和沿着第一方向数据路径电路系统的第一数据延迟来确定多个第一方向数据触发器的放置。进一步地,根据该第一方面,第二数据在第二方向数据路径电路系统上的传播引入沿着第二方向数据路径电路系统的第二数据延迟,并且基于时钟偏移和沿着第二方向数据路径电路系统的第二数据延迟来确定多个第二方向数据触发器的放置。

根据第一实施例的第二方面,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,基于第一方向上的时钟\/数据偏移定位第一方向数据触发器,并且基于第二方向上的时钟\/数据偏移定位第二方向数据触发器。

根据第一实施例的第三方面,多个处理系统在半导体裸片上具有相应的多个处理系统区域,通道电路系统驻留在半导体裸片上的通道电路系统区域中,并且通道电路系统区域和相应的多个处理系统区域是不重叠的。

根据第一实施例的第四方面,时钟洒水器电路还包括多个时钟驱动器,并且在降低功率模式操作期间,多个时钟驱动器中的一些时钟驱动器被禁用。

根据第一实施例的第五方面,多个处理系统中的处理系统包括基于时钟信号的本地时钟域。

根据第一实施例的第六方面,时钟洒水器电路还包括被耦合至主时钟支路的第二端的时钟洒水器连接和多个辅时钟支路。针对多个辅时钟支路中的每个辅时钟支路,第一方向数据路径电路系统还包括第一方向辅数据路径电路系统,该第一方向辅数据路径电路系统具有由对应的辅时钟支路计时、并且为第一方向数据中的数据流服务的多个第一方向辅数据触发器,并包括被耦合至多个第一方向辅数据触发器、并且为第一方向上的数据流服务的第一方向辅组合逻辑。针对多个辅时钟支路中的每个辅时钟支路,第二方向数据路径电路系统还包括第二方向辅数据路径电路系统,该第二方向辅数据路径电路系统具有由对应的辅时钟支路计时、并且为第二方向数据中的数据流服务的多个第二方向辅数据触发器以及被耦合至多个第二方向辅数据触发器、并且为第二方向上的数据流服务的第二方向辅组合逻辑。

利用第六方面的附加结构,时钟信号通过时钟洒水器连接并且沿着多个辅时钟支路中的每个辅时钟支路在第一方向上传播,从而引入沿着多个辅时钟支路中的每个辅时钟支路的时钟偏移的,第一数据在第一方向辅数据路径电路系统上的传播引入第一辅数据延迟,基于沿着多个辅时钟支路的时钟偏移、和第一辅数据延迟确定多个第一方向辅数据触发器的放置,第二数据在第二方向辅数据路径电路系统上的传播引入第二辅数据延迟,并且基于沿着多个辅时钟支路的时钟偏移、和第二辅数据延迟确定多个第二方向辅数据触发器的放置。

根据第一实施例的第七方面,时钟洒水器电路还包括被耦合至辅时钟支路的第二端的时钟洒水器子连接和多个子辅时钟支路。进一步地,利用该第七方面,针对多个子辅时钟支路中的每个子辅时钟支路,第一方向数据路径电路系统还包括由对应的子辅时钟支路计时、并且为第一方向数据中的数据流服务的多个第一方向子辅数据触发器,并且包括被耦合至多个第一方向子辅数据触发器、并且为第一方向上的数据流服务的第一方向子辅组合逻辑。而且,利用该第七方面,针对多个辅时钟支路中的每个辅时钟支路,第二方向数据路径电路系统还包括由对应的子辅时钟支路计时、并且为第二方向数据中的数据流服务的多个第二方向子辅数据触发器以及被耦合至多个第二方向子辅数据触发器、并且为第二方向上的数据流服务的第二方向子辅组合逻辑。

本公开的第二实施例涉及一种具有多个处理系统和通道电路系统的SoC,该通道电路系统被耦合至多个处理系统并且驻留在多个处理系统中。通道电路系统包括时钟洒水器电路、时钟源、第一方向数据路径电路系统和第二方向数据路径电路系统,时钟洒水器电路包括主时钟支路。时钟源耦合至主时钟支路的第一端,并且将时钟信号耦合至主时钟支路的第一端,时钟信号在第一方向上沿着主时钟支路从主时钟支路的第一端朝向主时钟支路的第二端传播。第一方向数据路径电路系统包括多个第一方向通道电路块,该多个第一方向通道电路块为第一方向上的数据流服务并且包括第一方向逻辑门以及由时钟洒水器电路计时的多个第一方向数据触发器。第二方向数据路径电路系统包括多个第二方向通道电路块,该多个第二方向通道电路块为第一方向上的数据流服务,多个第二方向通道电路块包括第二方向逻辑门,并且包括由时钟洒水器电路计时的多个第二方向数据触发器。

第二实施例包括至少一个可选方面。这些方面可以单独地或者以各种组合应用于第一实施例。根据第二实施例的第一方面,时钟信号在第一方向上的传播引入沿着主时钟支路的时钟偏移,第一数据在第一方向数据路径电路系统上的传播引入沿着第一方向数据路径电路系统的第一数据延迟,基于时钟偏移和沿着第一方向数据路径电路系统的第一数据延迟确定多个第一方向数据触发器的放置,第二数据在第二方向数据路径电路系统上的传播引入沿着第二方向数据路径电路系统的第二数据延迟,并且基于时钟偏移和沿着第二方向数据路径电路系统的第二数据延迟确定多个第二方向数据触发器的放置。

根据第二实施例的第二方面,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,基于第一方向上的时钟\/数据偏移定位第一方向数据触发器,并且基于第二方向上的时钟\/数据偏移定位第二方向数据触发器。

根据第二实施例的第三方面,多个处理系统在半导体裸片上具有相应的多个处理系统区域,通道电路系统驻留在半导体裸片上的通道电路系统区域中,并且通道电路系统区域和相应的多个处理系统区域是不重叠的。

第二实施例的其他方面包括关于第一实施例的上述方面。

本公开的第三实施例提出了一种用于操作包括多个处理系统和通道电路系统的SoC的方法。第三实施例的方法包括:生成时钟信号;在SoC的沿着主时钟支路的一个或多个通道内在时钟洒水器电路上沿着第一方向发送时钟信号,该时钟信号具有沿着时钟洒水器电路的时钟偏移;在SoC的一个或多个通道内沿着第一方向数据路径电路系统在第一方向上传输数据,该第一方向数据路径电路系统包括多个第一方向通道电路块,该多个第一方向通道电路块为第一方向上的数据流服务,由时钟洒水器电路计时、并且互相耦合多个第一方向通道电路块;以及在SoC的一个或多个通道内沿着第二方向数据路径电路系统在第二方向上传输数据,该第二方向数据路径电路系统包括多个第二方向通道电路块,该多个第二方向通道电路块为第二方向上的数据流服务,由时钟洒水器电路计时、并且互相耦合多个第二方向通道电路块。

根据第三实施例的第一方面,第一数据在第一方向数据路径电路系统上的传播引入沿着第一方向数据路径电路系统的第一数据延迟,基于时钟偏移和沿着第一方向数据路径电路系统的第一数据延迟确定多个第一方向数据触发器的放置,第二数据在第二方向数据路径电路系统上的传播引入沿着第二方向数据路径电路系统的第二数据延迟,并且基于时钟偏移和沿着第二方向数据路径电路系统的第二数据延迟确定多个第二方向数据触发器的放置。

根据第三实施例的第二方面,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,基于第一方向上的时钟\/数据偏移定位多个第一方向数据触发器,并且基于第二方向上的时钟\/数据偏移定位多个第二方向数据触发器。

第三实施例还可以涵盖参照第一和第二实施例描述的方面的操作方面。进一步地,第二和第三实施例提供了与参照第一实施例所描述的类似的优点。所公开的实施例的这些和其他优点将通过读取下面参照附图的详细说明而变得清楚。

附图说明

图1A是图示了现有技术的片上系统(SoC)的框图。

图1B是图示了根据本公开的实施例构造并操作的SoC的框图。

图1C是图示了图1B的SoC的通道电路系统的框图。

图2是图示了根据本公开的图1B的SoC的通道电路系统的实施例的框图。

图3A是图示了根据本公开的图1B的SoC的通道电路系统的另一实施例的框图。

图3B、3C和3D是图示了根据本公开的图1B的SoC的通道电路系统的各种通道电路块的框图。

图4A是图示了根据本公开的实施例的为第一方向数据的多路复用服务的图1B的SoC的通道电路系统的通道电路块的框图。

图4B是图示了根据本公开的实施例的为第二方向数据的多路复用服务的图1B的SoC的通道电路系统的通道电路块的框图。

图5是图示了根据本公开的图1B的SoC的通道电路系统的另一实施例的框图。

图6是图示了根据本公开的方面的用于通过通道电路系统的数据路径电路系统为数据传输服务的方法的流程图。

图7是图示了根据本公开的方面的用于选择性地启动数据触发器和时钟驱动器的方法的流程图。

图8A是图示了根据本公开的方面的数据路径结的框图。

图8B是图示了根据本公开的另一方面的数据路径结的框图。

图8C是图示了根据本公开的方面的时钟洒水器连接的框图。

图8D是图示了根据本公开的另一方面的时钟洒水器连接的框图。

图9是图示了根据本公开的实施例的用于设计SoC的方法的流程图。

图10是图示了根据所描述的第一实施例构造并操作的自动驾驶控制器的框图。

图11A是图示了根据所描述的实施例构造的自动驾驶传感器的框图。

图11B是图示了根据所描述的实施例构造的自动驾驶控制器的框图。

具体实施方式

图1B是图示了根据本公开的实施例而构造并操作的SoC 150的框图。SoC 150包括多个处理系统152A、152B、152C、152D、152E、 152F、152G、152H、152I、152J、152K和152L。这些处理系统152A 至152L执行相应功能并且具有相应结构,例如通用处理器、通信处理器(蜂窝、WiFi、蓝牙等)、网络接口处理器、图像处理器、音频处理器、图形处理器、运算单元处理器、安全性处理器、安全处理器和人机交互处理器、存储器控制器和计算机总线接口处理器等其他处理结构。与包括单独处理系统的装置相比,SoC通常更小、更便宜并且耗电量更少。在本文中还将参照图10、11A和11B描述有关自动驾驶的SoC 150的特定示例。

多个处理系统152A至152L可以由一个或多个第三方设计,并且被许可用在SoC150中。在这种情况下,这些处理系统152A至152L 的功能及其结构在构造或制造SoC 150时可能无法改变。进一步地,在一些实施例中,处理系统152A至152L中的至少一些包括必须在没有任何类型的修改的情况下形成在SoC 150中的相应的专有设计,诸如电路部件放置和金属层导体路由。在这种情况下,处理系统152A 至152L中的至少一些的占用空间无法用于为SoC 150通信接口要求服务。

图1C是图示了图1B的SoC 150的通道电路系统151的框图。参照图1B和图1C,根据本公开,SoC 150包括被耦合至多个处理系统 152A至152L并且驻留在多个处理系统152A至152L中的通道电路系统151。通道电路系统151包括主部分154、在结155处耦合至主部分154的两个或多个辅部分156和158、以及在结159处耦合至辅部分156的两个或多个子辅部分160和162。通道电路系统的主部分 154耦合至处理系统152A并为处理系统152A服务,并且包括主时钟支路、第一方向数据路径电路系统164和第二方向数据路径电路系统 166。通道电路系统的辅部分156耦合至处理系统152G、并为处理系统152G服务,并且包括辅时钟支路168A、第一方向辅数据路径电路系统170A和第二方向辅数据路径电路系统172A。通道电路系统的辅部分158耦合至处理系统152B、152C、152D和152F并为处理系统 152B、152C、152D和152F服务,并且包括辅时钟支路168B、第一方向辅数据路径电路系统170B和第二方向辅数据路径电路系统 172B。通道电路系统的子辅部分160耦合至处理系统152J、152K和 152L并为处理系统152J、152K和152L服务,并且包括子辅时钟支路174A、第一方向子辅数据路径电路系统176A和第二方向子辅数据路径电路系统178A。最后,通道电路系统的子辅部分162耦合至处理系统152E、152H和152I并为处理系统152E、152H和152I服务,并且包括子辅时钟支路174B、第一方向子辅数据路径电路系统176B 和第二方向子辅数据路径电路系统178B。

时钟电路系统将由时钟源153产生的时钟信号仅沿着通道在第一方向上从源传播到所有目的地。这导致构造和分析通道时钟与现有技术相比简单得多,因为数据路径中的任何两个触发器的公共时钟点都是闭合的。利用图1B和1C的实施例,时钟信号在第一方向上的传播引入沿着主时钟支路的时钟偏移(clock skew)。进一步地,第一数据在第一方向数据路径电路系统上的传播引入第一方向上的第一数据延迟。基于时钟偏移和沿着第一方向数据路径电路系统的第一数据延迟,确定第一方向数据路径电路系统的多个第一方向数据触发器 (或锁存器)的放置。而且,第二数据在第二方向数据路径电路系统上的传播引入沿着第二方向数据路径电路系统的第二数据延迟,并且基于时钟偏移和沿着第二方向数据路径电路系统的第二数据延迟,确定多个第二方向数据触发器的放置。

进一步地,时钟信号通过时钟洒水器连接并且沿着多个辅时钟支路中的每一个在第一方向上传播,从而引入沿着多个辅时钟支路中的每一个的时钟偏移。第一数据在第一方向辅数据路径电路系统上的传播引入沿着第一方向辅数据路径电路系统的第一辅数据延迟。因此,基于沿着多个辅时钟支路的时钟偏移和沿着第一辅方向数据路径电路系统的第一辅数据延迟来确定多个第一方向辅数据触发器的放置。另外,第二数据在第二方向辅数据路径电路系统上的传播引入沿着第二方向辅数据路径电路系统的第二辅数据延迟。因此,基于沿着多个辅时钟支路的时钟偏移和沿着第二辅方向数据路径电路系统的第二辅数据延迟,确定多个第二方向辅数据触发器的放置。这些相同概念适用于子辅的情况。

第一数据在第一方向上沿着第一方向数据路径电路系统传播,产生第一时钟\/数据偏移。第二数据在与第一方向相对的第二方向上沿着第二方向数据路径电路系统传播,产生第二方向上的时钟\/数据偏移。通常,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,因为第一数据顺着时钟传播,而第二数据逆着时钟传播。基于第一方向上的时钟\/数据偏移定位第一方向数据触发器,基于第二方向上的时钟\/数据偏移定位第二方向数据触发器。通常,第二方向数据触发器必须比第一方向数据触发器间隔得更近,以避免数据丢失。这个概念适用于通道电路系统的所有部分。将参照图2至5对这个概念进行更全面的描述。

根据图1B和图1C的SoC的附加方面,多个处理系统152A至 152L在半导体裸片上具有相应的多个处理系统区域。通道电路系统驻留在半导体裸片上的通道电路系统区域中,并且通道电路系统区域和相应的多个处理系统区域是不重叠的。这个方面有助于将通道的时钟和数据路径电路系统与多个处理系统152A至152L隔离,由于无法访问处理系统设计和\/或阻止访问半导体裸片上的多个处理系统的区域,可能需要这种隔离。

根据图1B和图1C的SoC的另一附加方面,时钟洒水器电路还包括多个时钟驱动器,这多个时钟驱动器中的一些在降低功率模式操作期间被禁用。禁用时钟驱动器可能对应于时钟频率的降低。进一步地,在降低功率操作模式期间,一些数据触发器可能被禁用。在本文中还将参照图7描述这个方面。

图2是图示了根据本公开的图1B和1C的SoC的通道电路系统的实施例的框图。图2所图示的通道电路系统200是图1B的通道电路系统的主部分154、辅部分156和\/或158和\/或子辅部分160和\/或 162的一部分的示例。图2的通道电路系统200包括时钟洒水器电路 202的一部分、第一方向数据路径电路系统204的一部分和第二方向数据路径电路系统206的一部分。图2所图示的时钟洒水器电路系统 202的这部分为时钟信号在第一方向上的传播(如所指示的)服务。示出了各种时钟偏移及其沿着时钟洒水器电路202的相对位置。

图2的第一方向数据路径电路系统204包括由时钟洒水器电路 202计时的多个第一方向数据触发器208A、208B、208C和208D、以及互相耦合至一起为第一方向上的数据流服务的多个第一方向数据触发器208A、208B、208C和208D的第一方向组合逻辑210A、210B 和210C。第二方向数据路径电路系统206包括由时钟洒水器电路计时的多个第二方向数据触发器212A、212B、212C和212D,并且包括与一起为第二方向上的数据流服务的多个第二方向数据触发器212A、212B、212C和212D互相耦合的第二方向组合逻辑214A、214C 和214D。

当数据通过第一方向组合逻辑210A至210C在第一方向上传递时,数据触发器208A至208D用于锁存数据。在每个阶段,基于在第一方向数据路径电路系统的该特定阶段锁存的若干位数据,第一方向数据触发器208A、208B和208C中的每组的若干数据触发器可以发生变化。第一方向组合逻辑210A、210B和210C中的每一个都包括执行特定逻辑功能的多个逻辑门并且还可以包括存储器。当第一方向数据在第一方向上传播时,第一方向组合逻辑210A、210B和210C 中的每一个都对其执行相应的逻辑功能。基于通道电路系统的整体设计确定所执行的逻辑功能,包括通道电路系统互相耦合以为多个处理系统服务的方式以及它执行的各种其他数据处理功能。

图2的第二方向数据路径电路系统206包括由时钟洒水器电路 202计时的多个第二方向数据触发器212A、212B、212C和212D,并且包括与一起为第二方向上的数据流服务的多个第二方向数据触发器212A、212B、212C和212D互相耦合的第二方向组合逻辑214A、214B和214C。第二方向数据路径电路系统206包括由时钟洒水器电路计时的多个第二方向数据触发器212A、212B、212C和212D,并且包括与一起为第二方向上的数据流服务的多个第二方向数据触发器212A、212B、212C和212D互相耦合的第二方向组合逻辑214A、 214C和214D。

当数据通过第二方向组合逻辑214A至214C在第二方向上传递时,数据触发器212A至212D用于锁存数据。第二方向数据触发器 212A、212B和212C中的每组的若干数据触发器可以在每个阶段基于在第二方向数据路径电路系统的该特定阶段锁存的若干位数据而变化。第二方向组合逻辑214A、214B和214C中的每一个都包括执行特定逻辑功能的多个逻辑门并且还可以包括存储器。当第二方向数据在第二方向上传播时,第二方向组合逻辑214A、214B和214C中的每一个都对其执行相应的逻辑功能。基于通道电路系统的整体设计确定所执行的逻辑功能,该整体设计包括通道电路系统互相耦合以为多个处理系统服务的方式以及它执行的各种其他数据处理功能。

利用图2的实施例,时钟信号在第一方向上的传播引入沿着主时钟支路的时钟偏移,被示出为100ps、180ps、250ps和400ps。这些数字仅用于说明。进一步地,第一数据在第一方向数据路径电路系统204上的传播引入沿着第一方向数据路径电路系统204的第一数据延迟。如还将在图5中图示的以及随其描述的,第一方向数据路径电路系统204具有与其逻辑门和多级逻辑而导致的与第一方向组合逻辑 210A、210B和210C相关联的延迟。因此,显而易见的是,沿着第一方向数据电路系统204的第一数据延迟通常会与产生时钟偏移的时钟延迟不同,并且第一方向数据将与时钟信号不同步。因此,基于时钟偏移和沿着第一方向数据路径电路系统的第一数据延迟确定多个第一方向数据触发器208A、208B、208C和208D的放置。换言之,由第一方向组合逻辑210A、210B和210C导致的延迟产生第一方向上的时钟\/数据偏移,并且第一方向数据触发器208A、208B、208C和 208D必须放置得足够近,以阻止由于第一方向组合逻辑210A、210B 和210C中的延迟而导致的数据丢失。进一步地,必须将第一方向组合逻辑210A、210B和210C设计为使得其操作的延迟不会产生导致数据丢失的时钟\/数据偏移。

进一步地,第二数据在第二方向数据路径电路系统206上的传播引入沿着第二方向数据路径电路系统206的第二数据延迟。如还将在图5中图示的以及随其描述的,第二方向数据路径电路系统206具有由于其逻辑门和多级逻辑而导致的与第二方向组合逻辑214A、214B 和214C相关联的延迟。因此,显而易见的是,沿着时钟洒水器电路 202的第二数据延迟与时钟偏移相反,使得与第一方向数据路径电路系统204相比,它与时钟信号更不同步。因此,基于时钟偏移和沿着第二方向数据路径电路系统的第二数据延迟确定多个第二方向数据触发器212A、212B、212C和212D的放置。换言之,由第二方向组合逻辑214A、214B和214C导致的延迟产生第二方向上的时钟\/数据偏移,并且第二方向数据触发器212A、212B、212C和212D必须放置得足够近以阻止由于第二方向组合逻辑214A、214B和214C中的延迟而导致的数据丢失。进一步地,必须将第二方向组合逻辑214A、 214B和214C设计为使得其操作的延迟不会产生导致数据丢失的时钟 \/数据偏移。

通常,第二方向数据路径电路系统206的数据触发器212A至 212D之间的数据延迟必须小于第一方向数据路径电路系统204的数据触发器208A至208D之间的数据延迟,因为第二方向上的第二数据流与时钟的传播相反。换言之,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,基于第一方向上的时钟\/数据偏移定位第一方向数据触发器208A至208D,并且基于第二方向上的时钟\/数据偏移定位第二方向数据触发器212A至212D。

图3A是图示了根据本公开的图1B和图1C的SoC的通道电路系统的另一实施例的框图。图3A所图示的通道电路系统300是图1B 的通道电路系统的主部分154、辅部分156和\/或158和\/或子辅部分 160和\/或162的一部分的示例。图3的通道电路系统300包括时钟洒水器电路302、第一方向数据路径电路系统304的一部分和第二方向数据路径电路系统306的第一部分。图3所图示的时钟洒水器电路系统302的这部分为时钟信号在第一方向上的传播(如所指示的)服务。示出了各种时钟偏移及其沿着时钟洒水器电路302的相对位置。

图3A的第一方向数据路径电路系统304包括由时钟洒水器电路 302计时的多个第一方向通道电路块301A、301B和301C。第一方向通道电路块301A、301B和301C分别包括第一方向逻辑门310、314 和320、以及一起为第一方向上的数据流服务的第一方向数据触发器308A、308B、310A、310B、318A和318B。驱动器312将第一方向通道电路块301A互相耦合至第一方向通道电路块301B。驱动器316 将第一方向通道电路块301B互相耦合至第一方向通道电路块301C。可以基于时钟频率和\/或即时数据要求,选择性地启动数据触发器 308A至318B和驱动器312和316。

图3A的第二方向数据路径电路系统306包括由时钟洒水器电路 302计时的多个第二方向通道电路块303A、303B和303C。第二方向通道电路块303A、303B和303C分别包括第二方向逻辑门322、328 和336以及一起为第二方向上的数据流服务的第二方向数据触发器324A、324B、330A、330B、338A和338B。驱动器326互相耦合第二方向通道电路块303A和第二方向通道电路块303B。驱动器332和 334互相耦合第二方向通道电路块303B和第二方向通道电路块 303C。可以基于时钟频率和\/或即时数据要求,选择性地启动第二方向数据触发器324A至338B和驱动器326、332和324。

利用图3A的实施例,时钟信号在第一方向上的传播引入沿着主时钟支路的时钟偏移,被示出为100ps、180ps、200ps、300ps、320 ps、360ps和420ps。这些数字仅用于说明。进一步地,第一数据在第一方向数据路径电路系统304上的传播引入沿着第一方向数据路径电路系统的第一数据延迟。如还将在图5中图示的以及随其描述的,第一方向数据路径电路系统304具有由于其逻辑门、其数据触发器以及其间的驱动器而导致的与第一方向通道电路块301A、301B和301C 相关联的延迟。因此,显而易见的是,沿着第一方向数据路径电路系统304的第一数据延迟然后通常会与产生时钟偏移的延迟不同,并且第一方向数据将与时钟信号不同步。因此,基于时钟偏移和沿着第一方向数据路径电路系统304的第一数据延迟确定多个第一方向数据触发器308A至318B的放置。换言之,由第一方向数据路径电路系统导致的延迟产生第一方向上的时钟\/数据偏移,并且第一方向数据触发器308A至318B必须放置得足够近,以阻止由于第一方向数据的延迟而导致的数据丢失。进一步地,必须将第一方向逻辑门310、314 和320设计为使得其操作的延迟不会产生导致数据丢失的时钟\/数据偏移。

进一步地,第二数据在第二方向数据路径电路系统306上的传播引入沿着第二方向数据路径电路系统306的第二数据延迟。如还将在图5中图示的以及随其描述的,第二方向数据路径电路系统306具有与第二方向逻辑门322、328和336相关联的延迟。因此,显而易见的是,沿着第二方向数据路径电路系统306的第二数据延迟与时钟信号相反,导致第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移。因此,基于时钟偏移和沿着第二方向数据路径电路系统的第二数据延迟确定多个第二方向数据触发器312A、312B、312C和312D 的放置。换言之,由第二方向上的部件导致的延迟产生第二方向数据的时钟\/数据偏移,并且第二方向数据触发器324A至338B必须放置得足够近以阻止由于第二方向上的延迟而导致的数据丢失。进一步地,必须将第二方向逻辑门322、328和336设计为使得其操作的延迟不会产生导致数据丢失的时钟\/数据偏移。

通常,第二方向数据路径电路系统306的第二方向数据触发器 324A至338B之间的数据延迟必须小于第一方向数据路径电路系统 304的数据触发器308A至318B之间的数据延迟,这是因为第二方向上的第二数据流与时钟的传播相反。换言之,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,基于第一方向上的时钟\/数据偏移定位第一方向数据触发器308A至318D,并且基于第二方向上的时钟\/数据偏移定位第二方向数据触发器324A至338B。

图3B、3C和3D是图示了根据本公开的图1B的SoC的通道电路系统的各种通道电路块的框图。尽管通道电路块中的一些包括数据触发器,但是本公开的其他通道电路块可以不包括数据触发器,并且可以仅包括存储装置、逻辑门、处理电路系统或者其他结构。图3B的通道电路块340包括输入数据触发器344、输出数据触发器346、逻辑门342、可选存储器345和可选执行单元347。图3C的通道电路块350包括输入、逻辑门352、可选存储器355、可选执行单元357 和输出数据触发器354。图3D的通道电路块360包括输入数据触发器364、逻辑门362、可选存储器365和可选执行单元367。执行单元可以在多个时钟周期或单个时钟周期内执行操作。

图4A是图示了根据本公开的实施例的为第一方向数据的多路复用服务的图1B的SoC的通道电路系统的通道电路块400的框图。通道电路块400包括输入数据触发器404和逻辑门402,该逻辑门402 作为多路复用器操作,以接收第一方向数据并且向三个输出中的一个输出提供第一方向数据。在一个示例中,通道电路块400将第一方向数据从通道电路系统的主部分桥接到通道电路系统的三个辅部分,经由驱动器406桥接到第一部分,经由驱动器408桥接到第二辅部分,并且经由驱动器410桥接到第三辅部分。在另一示例中,通道电路块400将第一方向数据从通道电路系统的辅部分桥接到通道电路系统的三个子辅部分,经由驱动器406桥接到第一子辅部分,经由驱动器408 桥接到第二子辅部分,并且经由驱动器410桥接到第三子辅部分。

图4B是图示了根据本公开的实施例的为第二方向数据的多路复用服务的图1B的SoC的通道电路系统的通道电路块的框图。通道电路块450包括输出数据触发器454和逻辑门452,该逻辑门452作为多路复用器操作以选择性地从三个输入中的一个输入接收第二方向数据并且将其提供给输出中的一个输出。在第一示例中,通道电路块 450选择性地经由驱动器456从通道电路系统的第一辅部分、经由驱动器458从通道电路系统的第二辅部分以及经由驱动器460从通道电路系统的第三辅部分接收第二方向数据,并且经由逻辑门452和输出数据触发器454选择性地将第二数据路由到通道电路系统的主部分。在第二示例中,通道电路块450选择性地经由驱动器456从通道电路系统的第一子辅部分、经由驱动器458从通道电路系统的第二子辅部分以及经由驱动器460从通道电路系统的第三子辅部分接收第二方向数据,并且经由逻辑门452和输出数据触发器454选择性地将第二数据路由到通道电路系统的辅部分。

图5是图示了根据本公开的图1B的SoC的通道电路系统的另一实施例的框图。图5所图示的通道电路系统500是图1B的通道电路系统的主部分154、辅部分156和\/或158和\/或子辅部分160和\/或162 的一部分的示例。图5的通道电路系统500包括时钟洒水器电路502的一部分、第一方向数据路径电路系统504的一部分和第二方向数据路径电路系统505的一部分。图5所图示的时钟洒水器电路系统502 的这部分为时钟信号在第一方向上的传播(如所指示的)服务。示出了各种时钟偏移及其沿着时钟洒水器电路502的相对位置。

图5的第一方向数据路径电路系统504包括多个第一方向通道电路块504A至504I,该多个第一方向通道电路块504A至504I可以或者可以不由时钟洒水器电路502计时,并且通过多个第一方向数据触发器506A至506D互相耦合,该多个第一方向数据触发器506A至506D由时钟洒水器电路502计时并且一起为第一方向上的数据流服务。图5的第二方向数据路径电路系统505包括多个第二方向通道电路块510A至510H,该多个第二方向通道电路块510A至510H可以由时钟洒水器电路502(未示出)计时,并且通过多个第二方向数据触发器508A至508F互相耦合,该多个第二方向数据触发器508A至 508F互相耦合由时钟洒水器电路502计时并且一起为第二方向上的数据流服务。

利用图5的实施例,时钟信号在第一方向上的传播引入沿着主时钟支路的时钟偏移,被示出为50ps、100ps、220ps、260ps、340ps、 380ps、460ps、550ps和600ps。这些数字仅用于说明。进一步地,第一数据在第一方向数据路径电路系统504上的传播引入沿着第一方向数据路径电路系统的第一数据延迟。第一方向数据路径电路系统 504具有由于其逻辑门、其数据触发器以及其间的数据路径而导致的与第一方向通道电路块(CCB)504A至504I相关联的延迟。因此,显而易见的是,沿着第一方向数据路径电路系统504的第一数据延迟然后通常会与产生时钟偏移的延迟不同,并且第一方向数据将与时钟信号不同步。因此,基于时钟偏移和沿着第一方向数据路径电路系统 504的第一数据延迟确定多个第一方向数据触发器506A至506D的放置。换言之,由第一方向数据路径电路系统导致的延迟产生第一方向上的时钟\/数据偏移,并且第一方向数据触发器506A至506D必须放置得足够近以阻止由于第一方向数据的延迟而导致的数据丢失。进一步地,必须将第一方向通道电路块504A至504I设计为使得其操作的延迟不会产生导致数据丢失的时钟\/数据偏移。

例如,CCB_1延迟是通道电路块504A至504C的在第一方向数据触发器506A与506B之间的延迟、触发器506A的时钟到Q的延迟以及触发器506B的准备时间。第一方向数据触发器506A与506B 之间的时钟偏移是220ps-50ps=170ps。例如,如果时钟周期是1000 ps,触发器506A的时钟到Q的延迟是90ps,并且触发器506B的准备时间是10ps,那么第一方向数据触发器506A与506B之间的数据传播延迟CCB_1延迟必须小于1000ps+170ps–90ps–10ps=1070 ps。第一方向数据触发器506A和506B的放置以及第一方向CCB 504A、504B和504C的设计确保满足该要求。进一步地,如果所有触发器都具有相同的时钟到Q的延迟和准备时间,则CCB 504D、504E 和504F的第一方向数据触发器506B与506C之间的数据传播延迟必须小于1000ps+(380ps-220ps)–(90ps+10ps)=1060ps。而且, CCB 504G、504H和504I的第一方向数据触发器506C与506D之间的数据传播延迟必须小于1000ps+(550ps-380ps)–(90ps+10ps) =1070ps。因此,必须实施第一方向CCB 504A至504I的设计和第一方向数据触发器506A至506D的放置,以避免数据丢失。

第二数据在第二方向数据路径电路系统505上的传播引入沿着第二方向数据路径电路系统505的第二数据延迟。第二方向数据路径电路系统505具有与第二方向通道电路块510A至510H相关联的延迟。沿着第二方向数据路径电路系统505的第二数据延迟与时钟信号相反,导致第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移。因此,基于时钟偏移和沿着第二方向数据路径电路系统505的第二数据延迟确定多个第二方向触发器508A至508F的放置。换言之,第二方向数据触发器508A至508F必须放置得足够近以防止由于第二方向上的延迟而丢失数据。

通常,第二方向数据路径电路系统505的第二方向数据触发器 508A至508F之间的数据延迟必须小于第一方向数据路径电路系统 504的第一方向数据触发器506A至506D之间的数据延迟,这是因为第二方向上的第二数据流与时钟的传播相反。换言之,第二方向上的时钟\/数据偏移大于第一方向上的时钟\/数据偏移,并且第二方向数据触发器508A至508F必须放置得足够近以防止第二方向数据丢失。

CCB_10延迟是通道电路块510A至510C的在第二方向数据触发器508A与508B之间的延迟、触发器508A的时钟到Q的延迟以及触发器508B的准备时间。第二方向数据触发器508A与508B之间的时钟偏移是460ps–600ps=-140ps。因为第二数据在与时钟信号的第一方向相对的第二方向上流动,所以数据传播延迟CCB_10必须小于1000ps+(-140ps)–(90ps+10ps)=760ps,以确保数据不会丢失。CCB_11延迟是通道电路块510D的在第二方向数据触发器508B 与508C之间的延迟以及通道电路块510E的在触发器508B与508D 之间的延迟。为了确保数据不会在数据触发器508B与508C之间以及在数据触发器508B与508D之间丢失,数据传播延迟CCB_11必须小于1000ps+(340ps-460ps)–(90ps+10ps)=780ps。同样地,为了确保数据不会在数据触发器508C与508E之间以及在数据触发器 508D与508E之间丢失,数据传播延迟CCB_12必须小于1000ps+ (260ps-340ps)–(90ps+10ps)=820ps。而且,为了确保数据不会在数据触发器508E与508F之间丢失,数据传播延迟CCB_13必须小于1000ps+(100ps-260ps)–(90ps+10ps)=740ps。

因此,必须实施第二方向CCB 510A至510I的设计和第二方向数据触发器508A至508F的放置,以避免数据丢失。如读者所理解的,时钟频率越高会导致定时更加关键,因为时钟周期更小。因此,基于通道电路系统的结构及其时间限制来选择时钟的频率。当检测到通道电路系统的特定时钟频率时,通道电路系统中的在触发器之间的延迟必须小于将会导致数据丢失的延迟。因此,与通道电路系统的逻辑组合,来设计数据触发器沿着通道电路系统的放置,使得数据丢失不会发生。

图6是图示了根据本公开的方面的用于通过通道电路系统的数据路径电路系统为数据传输服务的方法的流程图。图6的方法600开始于生成时钟信号(步骤602)。然后在SoC的一个或多个通道内在时钟洒水器电路上、沿着第一方向发送时钟信号(步骤604)。然后沿着由时钟洒水器电路计时的第一方向数据路径电路系统、在第一方向上传输数据(步骤606)。然后,沿着由时钟洒水器电路计时的第二方向数据路径电路系统、在第二方向上传输数据(步骤608)。

图7是图示了根据本公开的方面的用于选择性地启动数据触发器和时钟驱动器的方法的流程图。将结合图3A的结构描述图7的方法 650。图7的方法650开始于选择\/确定通道电路系统数据速率(步骤 652)。数据速率可能特定于第一方向数据传输和\/或第二方向数据传输。当确定在步骤654中选择\/确定了完整数据速率时,操作继续启动第一方向数据路径电路系统和\/或第二方向数据路径电路系统上的数据触发器的完整集合,以为所图示的完整数据速率服务(步骤656)。进一步地,当确定在步骤654中选择\/确定了完整数据速率时,操作继续启动时钟洒水器电路上的时钟驱动器339的完整集合,以为完整数据速率服务(步骤658)。然后在第一方向数据路径电路系统和\/或第二方向数据路径电路系统上,以完整数据速率传输数据(步骤660),并且当这一步骤被完成时,操作返回到步骤652。

当确定在步骤654中选择\/确定了部分数据速率时,操作继续启动第一方向数据路径电路系统和第二方向数据路径电路系统中的一个或两个上的数据触发器的部分集合以为所图示的部分数据速率服务 (步骤662)。进一步地,当确定在步骤654中选择\/确定了部分数据速率时,操作继续启动时钟洒水器电路上的时钟驱动器的部分集合以为部分数据速率服务(步骤664)。然后在第一方向数据路径电路系统和\/或第二方向数据路径电路系统上,以部分数据速率传输数据(步骤 666),其后,操作返回到步骤652。

根据图7的操作的方面,数据路径电路系统上的数据触发器的部分集合和时钟洒水器电路上的时钟驱动器的部分集合可以根据相对降低的数据速率而在数量上变化。通常,时钟信号速率与数据速率成比例地变化。因此,当数据速率变得相对较低时,在没有由于时钟偏移和沿着数据路径电路系统的传播延迟与沿着时钟洒水器电路的时钟偏移相比的差异而导致的数据丢失的情况下,为沿着数据路径电路系统的数据传输服务需要更少的时钟驱动器和更少的数据触发器。进一步地,在部分数据速率的数据传输期间确定数据触发器的部分集合时,也可以考虑数据路径电路系统上的数据传播的方向。例如,与第二方向上的传输相比,第一方向上的部分数据速率传输可能需要更少的数据触发器。

图8A是图示了根据本公开的方面的数据路径电路系统结的框图。图8A的结800包括由时钟洒水器电路计时的数据锁存器802以及多路复用器804,该多路复用器804由选择信号控制,以在数据锁存器802与数据路径电路系统808A、808B和\/或808C之间选择性地耦合数据。图8A的数据路径电路系统结800可以为第一和第二方向上的数据路径电路系统的主部分与多个辅部分之间的数据的耦合、或者数据路径电路系统的辅部分与多个子辅部分之间的数据的耦合服务。

图8B是图示了根据本公开的方面的数据路径结的框图。图8B的数据路径结820包括由时钟洒水器电路计时的数据锁存器822以及由选择信号控制以在数据锁存器802与数据路径电路系统808A、808B 和\/或808C之间选择性地耦合数据的三个可选控制开关824A、824B 和824C。图8B的数据路径结820可以为第一和第二方向上的数据路径电路系统的主部分与多个辅部分之间的数据的耦合、或者数据路径电路系统的辅部分与多个子辅部分之间的数据的耦合服务。

图8C是图示了根据本公开的方面的时钟洒水器连接的框图。图 8B的时钟洒水器连接840包括驱动器842,该驱动器842使其输入耦合以在主时钟支路806上接收时钟信号并且产生输出到辅时钟支路 810A、810B和810C中的每一个的驱动时钟信号。图8A的时钟洒水器连接840还可以充当时钟洒水器子连接,以将辅时钟支路耦合至多个子辅时钟支路。

图8D是图示了根据本公开的另一方面的时钟洒水器结构连接的框图。图8B的时钟洒水器连接860包括输入,耦合该输入以在主时钟支路806上接收时钟信号,并且经由相应的驱动器862A、862B和 862C产生输出到辅时钟支路810A、810B和810C中的每一个的驱动时钟信号。驱动器862A、862B和862C可以单独启动、一致启动或者始终打开。时钟洒水器连接860可以是主时钟支路与辅时钟支路之间的时钟洒水器连接。图8D的时钟洒水器连接860可以交替地充当时钟洒水器子连接,以将辅时钟支路耦合至多个子辅时钟支路。

图9是图示了根据本公开的方面的用于设计SoC的方法的流程图。用于设计SoC的方法1000开始于将多个处理系统定位在SoC上 (步骤1002)。这种定位导致结构类似于图1B所图示的结构。方法 1000继续在多个处理系统之间的通道中路由第一方向数据路径电路系统(步骤1004)。方法1000继续在多个处理系统之间的通道中路由第二方向数据路径电路系统(步骤1006)。然后方法1000包括在多个处理系统之间的通道中路由时钟洒水器电路(步骤1008)。

方法1000继续沿着时钟洒水器电路确定第一方向上的时钟偏移 (步骤1010)。在本文中参照图2、3A和5描述时钟偏移的示例。然后,方法1000包括沿着第一方向数据路径电路系统确定第一方向上的时钟\/数据偏移(步骤1012)。然后该方法包括基于沿着第一方向数据路径电路系统的第一方向上的时钟\/数据偏移来沿着第一方向数据路径电路系统定位多个数据触发器(步骤1014)。

方法1000继续沿着第二方向数据路径电路系统确定第二方向上的时钟\/数据偏移(步骤1016)。该方法结束于基于沿着第二方向数据路径电路系统的第二方向上的时钟\/数据偏移来沿着第二方向数据路径电路系统定位多个数据触发器(步骤1018)。

根据本公开的另一方面,方法1000还包括沿着时钟洒水器电路定位多个时钟驱动器。根据本公开的另一方面,方法1000还包括通过沿着SoC的金属层内的第一路线而路由数据路径电路系统,来路由多个处理系统中的第一方向数据路径电路系统和第二方向数据路径电路系统。这个方面还可以包括沿着SoC的金属层内的第二路线路由时钟洒水器电路,第二路线不同于第一路线。根据这些方面,沿着SoC的金属层内的第一路线的传播延迟不同于沿着SoC的金属层内的第二路线的传播延迟,并且该方法还包括基于第一路线与第二路线之间的传播延迟的差异来定位多个数据触发器。

图10是图示了根据所描述的实施例构造并操作的自动驾驶系统 1100的框图。自动驾驶系统1100可以为汽车、卡车、公共汽车或另一车辆服务。该车辆可以是柴油动力、燃气动力、电动、天然气动力、氢动力、混合动力或者任何其他类型的车辆。自动驾驶系统1100包括总线、被耦合至总线的自动驾驶控制器1128以及被耦合至总线的多个自动驾驶传感器1112A至1112F。被耦合至总线的附加装置包括信息娱乐装置1114、存储器1116、气候控制装置1118、电池控制器 1120(当车辆是电动车或者混合动力车时)、引擎\/电机控制器1122、转向控制器1124和刹车控制器1126。要注意的是,经由总线的通信连接性在不同实施例中可能不同。

多个自动驾驶传感器1112A至1112F可以包括一个或多个雷达单元、一个或多个激光雷达单元、一个或多个相机和\/或一个或多个接近度传感器。多个自动驾驶传感器1112A至1112F收集自动驾驶数据并且在总线上将收集到的自动驾驶数据发送到自动驾驶控制器1128。

在图11的实施例中,总线包括两个互连区段。总线1102的第一区段包括一个或多个导体,总线1104的第二区段包括一个或多个导体,并且互连部分1105将总线的第一区段1102和第二区段1104互连。总线可以是扭曲的一对导体、一对带状导体、同轴导体、携带 DC电力的双导体电力总线或者包括支持通信的一个或两个导体的另一结构。

经由总线在自动驾驶系统1100内进行服务的通信可以与根据本公开修改的宽带电力线通信(PLC)操作标准操作一致。宽带PLC操作标准通常会指定1.8至250MHz的载波频率,并且支持高达几百 Mbps的相对较高的数据速率。用于PLC的规范包括UniversalPowerline Association、SiConnect、HD-PLC联盟、Xsilon和ITU-T的 G.hn规范。包括HomePlug AV和IEEE 1901标准的其他规范指定如何支持数据。PLC被设计为在噪声环境中具有鲁棒性。车辆(具体地,电动车)包括产生噪声的部件。考虑到它们对(多个)服务导体的噪声的适应性,PLC非常适合于汽车内的宽带通信。

图11A是图示了根据所描述的实施例构造的自动驾驶传感器的框图。自动驾驶传感器1200可以至少部分地被构造为根据本文先前描述的实施例的SoC。自动驾驶传感器1200包括被配置为收集自动驾驶数据的数据收集部件1206。数据收集部件1206可以是雷达传感器、激光雷达传感器、声波接近度传感器或另一类型的传感器。自动驾驶传感器1200还包括处理电路系统1202、存储器1204和收发器 1211,该收发器1211经由总线被耦合至处理电路系统1202、存储器 1204和数据收集部件1206。处理电路系统1202执行存储在存储器1204中的程序,例如用于支持自动驾驶操作、用于与数据收集部件 1206交互以控制自动驾驶数据的收集、用于处理自动驾驶数据以及用于与收发器1211交互以经由总线通信等其他操作的数据和指令。

通过示例而非限制,处理电路系统1202可以是中央处理单元、微控制器、数字信号处理器、专用集成电路、判断单元、确定单元、执行单元、前述的任何的组合或者适合于执行计算机程序的任何其他装置。通过示例,存储器1204可以是动态存储器、静态存储器、(多个)磁盘驱动器、(多个)闪存驱动器、前述的任何的组合或者任何其他形式的计算机存储器。存储器1204存储用于本公开的操作的计算机程序,还可以存储其他计算机程序、配置信息和实施本公开的实施例所必需的其他短期和长期数据。

收发器1211包括发射器1208、接收器1210和介质I\/F 1212。介质I\/F 1212可以是发射\/接收(T\/R)开关、双工器或者支持所图示的耦合的其他装置。在其他实施例中,发射器1208和接收器1210直接耦合至总线或者经由介质I\/F 1212耦合至总线。收发器1211支持经由总线的通信。处理电路系统1202和收发器1211被配置为在总线上将自动驾驶数据发送到自动驾驶控制器1128。

图11B是图示了根据所描述的实施例构造的自动驾驶控制器的框图。自动驾驶控制器1128可以至少部分地被构造为根据本文先前描述的实施例的SoC。自动驾驶控制器1128包括通用处理电路系统 1252、存储器1254和收发器1261,该收发器1261被耦合至通用处理电路系统1252、并且被配置为经由总线与多个自动驾驶传感器通信。自动驾驶控制器1128还包括自动驾驶并行处理系统1264,该自动驾驶并行处理系统1264对从自动驾驶传感器接收到的自动驾驶数据进行操作并且支持自动驾驶操作。收发器1261包括发射器1258、接收器1260和组合支持经由总线的通信的介质I\/F 1262。

通用处理电路系统1252的构造可能类似于自动驾驶传感器1200 的处理电路系统1202的构造。在本文中还将参照图4A至图11B描述自动驾驶并行处理系统1264。存储器1254可能具有与自动驾驶传感器1200的存储器1204类似的结构,但是具有支持自动驾驶控制器1128的功能所需的容量。

在前述说明书中,已经参照特定实施例描述了本公开。然而,如本领域技术人员将理解的,在不脱离本公开的精神和范围的情况下,可以以各种其他方式修改或以其他方式实施本文公开的各种实施例。因此,该描述被认为是说明性的,并且是为了教导本领域技术人员制造和使用所公开的系统、方法和计算机程序产品的各种实施例的方式。要理解,本文所示和所述的公开内容的形式将被视为代表性实施例。等效元件、材料、工艺或步骤可以代替在本文中代表性地图示和描述的那些元件、材料、工艺或步骤。而且,本公开的某些特征可以独立于其他特征的使用而被利用,所有这些对于本领域技术人员来说在受益于本公开的描述之后是显而易见的。

本文描述的例程、方法、步骤、操作或其部分可以使用软件和固件指令通过电子设备(例如一个或多个处理器)来实施。“处理器”或“处理电路系统”包括处理数据、信号或其他信息的任何硬件系统、硬件机制或硬件部件。处理器可以包括具有用于实现功能的中央处理单元、多个处理单元、专用电路系统的系统或者其他系统。一些实施例可以通过使用一个或多个数字计算机或处理器中的软件编程或代码,通过使用专用集成电路(ASIC)、可编程逻辑装置、现场可编程门阵列(FPGA)、光学、化学、生物、量子或纳米工程系统、部件和机制来实施。基于本文代表性地提供的公开内容和教导,本领域技术人员将理解实施本文的教导的其他方式或方法。

如本文所使用的,术语“包括”、“包括了”、“包括有”、“包含”、“具有(has)”、“具有(having)”或其任何上下文变型旨在涵盖非排他性的包含。例如,包括元素列表的过程、产品、物品或设备不一定仅限于那些元素,而是可以包括未明确列出的或者这种过程、产品、物品或设备固有的其他元素。进一步地,除非有相反的明确说明,否则“或”是指兼或而不是异或。例如,条件“A或B”由以下中的任何一个满足:A为真(或存在)且B为假(或不存在),A为假(或不存在)且B为真(或存在),A和B都为真(或存在)。

尽管可以按照特定顺序来呈现步骤、操作或者计算,但是可以在不同实施例中改变这种顺序。在一些实施例中,到了在本说明书中按顺序示出多个步骤的程度,可以同时执行替代实施例中的这种步骤的一些组合。本文描述的操作顺序可以由另一过程中断、暂停、反转或以其他方式控制。

还将理解,附图\/图中描绘的元件中的一个或多个也可以以更分离或集成的方式实施,甚或在某些情况下被移除或呈现为无法操作,如根据特定应用有用的。另外,除非另有具体指出,否则附图\/图中的任何信号箭头应仅被视为示例性而非限制性的。

设计图

片上系统论文和设计

相关信息详情

申请码:申请号:CN201920002973.7

申请日:2019-01-02

公开号:公开日:国家:US

国家/省市:US(美国)

授权编号:CN209765370U

授权时间:20191210

主分类号:G06F1/06

专利分类号:G06F1/06

范畴分类:40B;

申请人:特斯拉公司

第一申请人:特斯拉公司

申请人地址:美国加利福尼亚州

发明人:D·W·贝利

第一发明人:D·W·贝利

当前权利人:特斯拉公司

代理人:王茂华

代理机构:11256

代理机构编号:北京市金杜律师事务所 11256

优先权:关键词:当前状态:审核中

类型名称:外观设计

标签:;  ;  ;  ;  ;  ;  

片上系统论文和设计-D·W·贝利
下载Doc文档

猜你喜欢