用于多芯片传感器系统的集线器的制作方法
未命名
08-15
阅读:95
评论:0
1.本公开涉及电路的技术领域,且更特定来说涉及用于多芯片传感器系统的集线器。
背景技术:
2.随着传感器质量提高,并入这些传感器所需的处理量也增加。通过利用增加传感器数据及改进处理,可实现许多技术成就。此类进步的一个实例是在自动驾驶汽车中。例如,在自动驾驶汽车中,利用许多传感器。此可包含各种传感器以及特定类型传感器的多个副本。鉴于与自动驾驶汽车相关的安全问题,所涉及的传感器及处理器不能出故障是至关重要的。此需要增加更多处理,因为冗余要添加到传感器及处理器两者。在冗余传感器的情况中,大量数据现必须从多个传感器馈送到处理器,每一传感器可输出大量实时数据。在冗余处理的情况中,大量实时数据需要被复制且传送到多个处理器。
技术实现要素:
3.本文中提出一种集成电路。所述集成电路具有一组传感器输入接口及输出接口。所述集成电路进一步具有含第一及第二存储器位置的存储器。所述集成电路进一步具有多芯片集线器模块,其具有含实时及非实时缓冲器两者的事务缓冲器。所述多芯片集线器模块具有上下文映射器、重新格式化模块及错误处置模块。所述上下文映射器经配置以将数据映射到所述第一或第二存储器位置。所述多芯片集线器模块经配置以通过所述模块处理数据且将经处理数据提供到所述输出接口。
4.此外,提出一种操作集成电路的方法。所述方法包含通过所述集成电路上的第一输入传感器端口来接收消息及将所述消息路由到事务缓冲器,所述事务缓冲器包含实时及非实时事务缓冲器两者。所述方法进一步包含在上下文映射器中映射所述消息,所述映射包含识别用于存储所述消息的存储器位置及从对所述消息执行的一组确定数据处理动作的选择。所述方法进一步包含对所述消息执行数据处理动作的所述选择及将所述经处理消息提供到所述集成电路上的输出端口。
5.此外,公开一种集成电路,其含有处理器及存储器。所述存储器包含指令,其在由所述处理器执行时配置所述集成电路上的集线器模块执行上述方法。
附图说明
6.将通过使用附图来描述及解释本技术的实施例,其中:
7.图1是实施方案的框图;
8.图2是实施方案的框图;
9.图3是实施方案的功能图;
10.图4是实施方案的操作序列;
11.图5是实施方案的框图;
12.图6是实施方案中的操作序列;
13.图7是适于实施一实施方案的系统的功能图。
14.图式不一定按比例绘制。类似地,可为了讨论本技术的一些实施例而将一些组件及/或操作分离成不同框或组合成单个框。此外,尽管本技术可接受各种修改及替代形式,但已通过实例在图式中展示且在下文详细描述具体实施例。然而,不意图将本技术限制于所描述的特定实施例。相反地,本技术意图覆盖落入由所附权利要求书定义的本技术的范围内的所有修改、等效物及替代物。
具体实施方式
15.本文中公开改进感测网络通信功能的技术。特定来说,描述允许以高效、灵活及透明方式连接多个感测装置及多个处理装置的集线器系统。因此,包含实时及非实时装置两者的多个感测装置可以允许高处理能力及/或故障安全处理的方式高效路由到处理系统。
16.在各种实施方案中,本发明描述允许来自传感器中的每一者的数据高效传送到多个处理系统以便实时有效驾驶汽车的集线器。
17.实施方案能够与现有传感器及处理系统透明互动。例如,提供实时传感器输出的摄像机传感器可提供传感器输出,不知道多芯片集线器在接收数据,在将数据提供到多个处理器用于冗余处理之前重新格式化及复制数据。摄像机及处理器中的每一者似乎相同地将传感器输出直接提供到单个处理器。多芯片集线器能够根据规则处理数据,且可不同地处置不同类型的数据或来自不同类型的传感器的数据。多芯片集线器可提高多芯片传感器系统的效率以允许改进处理。
18.现参考图式,图1展示操作方案中的多芯片集线器120。传感器110到112是连接到多芯片集线器120的各种传感器。尽管图1描绘3个传感器110到112,但可使用任何数目个传感器。此一般适用于本技术案中图式中的每一者。本技术案不限于包含于图式或说明书中的特定数目个元件。可在不改变本公开的意图的情况下移除冗余元件且添加额外冗余元件。此外,传感器110到112可为相同类型的传感器或各不相同传感器。例如,传感器110可描绘记录视频的摄像机。在各种实施方案中,此视频可以低分辨率或高分辨率以及低或高帧速率记录。例如,传感器110可为以2兆像素及每秒120帧记录视频的摄像机。传感器111可为不同传感器,例如雷达传感器。传感器112可为又一传感器,例如激光雷达传感器。充当雷达传感器及激光雷达传感器的传感器111及112可在长距离或短距离以高保真度或低保真度记录数据。在各种替代实施方案中,传感器110到112可包含压力传感器、光传感器、音频传感器、超声波传感器、流量传感器、接触传感器、温度传感器、电容传感器、电压传感器、光电传感器、旋转传感器、放射性传感器、加速度传感器、电流传感器、湿度传感器、水分传感器、烟雾传感器、能见度传感器、gps传感器或磁性传感器等。这些传感器110到112中的每一者可提供原始数据或可包含对数据输出的某种程度的处理或预处理。
19.传感器110到112中的每一者向多芯片集线器120提供数据。数据可以任何已知格式提供。在实施方案中,充当记录视频的摄像机的传感器110可根据摄像机串行接口(csi)提供数据。举例来说,其它传感器可提供数据作为以太网封装数据或控制器局域网(can)数据。任何公知格式可用于将数据从传感器110到112传送到多芯片集线器120。
20.在实施方案中,多芯片集线器120体现于单芯片系统(soc)上。soc可为通用soc,包
括处理器、存储器及输入/输出端口。替代地,soc可为并入促进多芯片集线器120的活动的额外专用硬件元件的专用系统,如将在下文更详细讨论。
21.多芯片集线器120将来自传感器110到112的数据提供到处理器130到132。在实施方案中,处理器130到132可为soc。替代地,处理器130到132可为专用信号处理装置或通用处理器。尽管图1展示3个处理器130到132,但在实施方案中,多芯片集线器120可向任何数目个处理器130到132提供传感器数据。处理器130到132可经配置以冗余行动以例如在出故障时重复处理。处理器130到132可经配置以协作操作。举例来说,处理器130可经配置以处置源自例如传感器110的摄像机传感器的信号处理,处理器131可经配置以处置源自例如传感器111的激光雷达传感器的信号处理,且处理器132可经配置以处置源自例如传感器112的雷达传感器的信号处理。在实施方案中,处理器130到132可经配置以与分布于处理器130到132之间的数据协作操作,使得处理器130到132的任何者不变得过载。替代地,处理器130到132可与由处理器130处理的实时数据及由处理器131处理的非实时数据协作操作。多芯片集线器120的操作可经调整使得数据传送到处理器130到132,使得处理器130到132可根据需要冗余或协作操作。例如,多个处理器130到132可接收相同数据,其中处理器130到132中的每一者独立地对数据进行操作,包含冗余执行不同功能或相同功能,例如为了故障处置。此不意味着处理器130到132可如何一起操作的详尽列表,而是仅为几个实例。
22.来自传感器110到112的数据可以原始形式或某种类型的经处理形式提供到处理器130到132。在实施方案中,来自传感器110的数据可在多芯片集线器120内聚集,直到已收集给定量的数据,此时数据可传送到处理器130到132中的一或多者。替代地,如果所接收的数据块大于期望,那么数据可被分段。此可用于使数据传送与任何数目个各种处理或传送需求(例如处理器130到132的延时需求、pcie封包大小或突发大小)匹配以提高处理效率或促进即时数据压缩。多芯片集线器120可以任何格式向处理器130到132提供数据。在实施方案中,例如,数据通过例如pcie或超链接的存储器映射通信链路来提供。
23.图2描绘多芯片集线器220的实施方案的内部框图。摄像机210、激光雷达传感器211及加速度传感器212描绘用于多芯片传感器系统中的传感器。如关于图1讨论,传感器210到212中的每一者可描绘各种传感器。为了讨论,将针对图2描述实施方案,其中摄像机210是摄像机,激光雷达传感器211是激光雷达传感器,且加速度传感器212是加速度传感器。摄像机210、激光雷达传感器211及加速度传感器212中的每一者向多芯片集线器220提供传感器数据。
24.csi接口230、以太网接口231及can接口232位于多芯片集线器220中。多芯片集线器220可另外或替代地包含任何数目个其它不同传感器接口。此外,为了讨论,在实施方案中,csi接口230是摄像机串行接口(csi)。因此,摄像机210通过csi接口230向多芯片集线器220提供连续实时视频数据。连续实时不意味着预示在由摄像机210提供的数据中决不存在中断或滞后。确切来说,连续及实时两者意味着预示对多芯片处理系统的重要性及时间关键性。因此,由于在实施方案中,来自摄像机210的数据对多芯片传感器系统非常重要且非常快速处理数据很重要,所以此数据被称为连续实时数据。类似地,激光雷达传感器211向以太网接口231提供数据。取决于激光雷达传感器211的功能,其提供的数据可被视为实时或非实时数据。此外,加速度传感器212向can接口232提供数据。在实施方案中,由加速度传感器提供的数据被视为非实时数据。在实施方案中,csi接口230、以太网接口231及can接口
232中的每一者可经配置以操作为直接存储器存取(dma)从端口。以此方式,多芯片集线器220可与为dma系统设计的传感器无缝操作。csi接口230、以太网接口231及can接口232中的每一者连接到多芯片集线器220中的互连件234。
25.互连件234进一步连接到芯片上存储器233、外部存储器238及处理器235。在实施方案中,芯片上存储器233、外部存储器238及集线器处理器235中的每一者可为soc通用。芯片上存储器233及/或外部存储器238可经配置以在多芯片集线器220的功能中为来自摄像机210、激光雷达传感器211及/或加速度传感器212的数据提供临时存储。集线器处理器235提供用于配置集线器模块240通过控制路径配置来执行多芯片集线器220的一些或所有功能的处理。在实施方案中,集线器处理器235提供执行多芯片集线器220的一些或所有功能的处理。
26.另外,多芯片集线器模块240连接到互连件234。多芯片集线器模块240可为多芯片集线器功能的控制模块。在实施方案中,多芯片集线器模块240可另外包含专用于执行以及控制多芯片集线器功能的硬件、固件或软件。
27.此外,互连件234连接到pcie接口236及超链接接口237。pcie接口236连接到处理器250到251,且超链接接口237连接到处理器252。如上文讨论,多芯片集线器可含有未展示的额外或替代输出接口。pcie接口236及超链接接口237中的每一者可经配置以操作为dma主端口。接着,多芯片集线器可对处理器250-252透明,处理器250到252可像直接连接到dma从传感器一样操作。
28.图3描绘根据多芯片集线器模块340的实施方案的功能图。配置输入315展示于多芯片集线器模块340内。在实施方案中,配置输入315可具有允许用户填写上下文定义数据316中的信息的用户接口。此可通过用户进行个别选择来直接完成或通过用户创建规则来填写上下文定义数据316中的信息来间接完成,如将关于图6更详细讨论。在实施方案中,配置输入315可实际上不是输入,因为其可由多芯片集线器模块340内的固件或软件控制,使得多芯片集线器模块自动填写上下文定义数据316。例如,上下文定义数据316可基于连接到多芯片集线器的元件来填写。
29.当数据由多芯片集线器模块340处置时,上下文定义数据316用于控制多芯片集线器模块340的功能。特定来说,上下文定义数据316由智能数据移动引擎320用于确定哪些处理块应用于从传感器接收的个别数据。
30.实时输入301及非实时输入302展示于多芯片集线器模块340内。在实施方案中,实时输入301对应于图2中csi接口230、以太网接口231及can接口232中的一或多者。例如,如果来自图2的摄像机210及激光雷达传感器211被解译为提供实时数据,那么实时输入301可对应于csi接口230及以太网接口231两者。非实时输入302接着可与can接口232相关。图3基本上描绘接口分成实时及非实时输入。例如,在实施方案中,一个以太网接口可提供实时数据,而另一以太网接口可提供非实时数据。替代地,输入接口可分成更多类别,例如高优先级、中优先级及低优先级。
31.实时输入301及非实时输入302各自将数据馈送到事务缓冲器310中。实时事务缓冲器311及非实时事务缓冲器312位于事务缓冲器310内。来自实时输入301的数据进入实时事务缓冲器311,且来自非实时输入302的数据进入非实时事务缓冲器312。实时事务缓冲器311及非实时事务缓冲器312中的每一者可实施为先进先出(fifo)缓冲器。
32.来自事务缓冲器310的数据传送到智能数据移动引擎320。由于实时数据在单独缓冲器中与非实时数据分离,所以实时数据可由智能数据移动引擎320在处理中被给予优先级。当来自事务缓冲器310的数据移入到智能数据移动引擎320中时,其首先由上下文映射器330处理。上下文映射器330从事务缓冲器接收数据且确定数据的上下文。在实施方案中,数据的上下文描述哪个传感器产生数据。上下文定义数据316描述应如何处置每一上下文的数据。每一上下文的数据应存储于存储器350中何处的指示包含于上下文定义数据316中。上下文存储器块351到353可与不同上下文相关。例如,对应于上下文1的数据可(通过上下文定义数据316)分配给上下文存储器块351。上下文2及上下文3可分别对应于上下文存储器块352及353。在实施方案中,存储器350是多芯片集线器模块340中的嵌入式存储器,其在集成电路上实施。上下文存储器块351到353在通过配置输入315建立上下文时分配。上下文存储器块351到353提供用于管理经分配上下文的飞行中操作的工作区域。
33.上下文定义数据316还包含智能数据移动引擎的哪些处理块应应用于给定数据上下文的描述。例如,上下文1数据可分配为通过重新格式化模块331、压缩模块332、多播块333及错误处置器334中的每一者来处理。上下文2数据可仅分配为通过重新格式化模块331及错误处置器334。
34.在通过智能数据移动引擎320进行处理之后,上下文数据通过实时输出360或非实时输出361发送到处理器。智能数据移动引擎320基于上下文及上下文定义数据316将数据发送到适当输出。如上文关于实时输入301及非实时输入302描述,实时输出360及非实时输出361可各自对应于多个输出及/或多个格式。类似地,实时输出360及非实时输出361两者可向单个处理器提供输出,(或例如两者可向相同三个处理器提供输出),或实时输出360及非实时输出361可经划分且提供到单独处理器。
35.多芯片集线器模块340整体为来自附接到实时输入301及非实时输入302的传感器的直接存储器寻址(dma)提供目标存储器地址空间。在实施方案中,此目标存储器地址空间是虚拟的,没有物理存储器分配。此目标存储器地址空间提供代理地址作为来自传感器的事务的目标。此目标存储器地址空间可在配置定义数据316中定义,以及将空间进一步分割成按上下文的虚拟存储器区域。当事务进入多芯片集线器340时,其将被寻址到目的地地址。上下文映射器330使用目的地地址在配置定义数据316中找到匹配目标存储器地址。此目标存储器地址对应于按上下文的虚拟存储器区域中的一者且因此对应于所定义的上下文中的一者。在实施方案中,存储器350是物理存储器,其用作工作区以在飞行中事务通过智能数据移动引擎320中的功能块处理时保存飞行中事务的数据。存储器350可分割成多个上下文特定存储器块(例如上下文存储器块351到353)且由上下文映射器330管理。输出也可在上下文定义数据316中定义。例如,输出地址可定义为从输入地址空间及可用输出地址空间的线性地址转译。输出地址空间可为pcie或超链接地址空间中的存储器映射区域。
36.如将返回参考图3描述。在步骤401,软件建立上下文描述符。配置输入315可从例如用户接口的外部源或从自动化软件获取输入以建立上下文定义数据316。此数据可包含将通过智能数据移动引擎320处理的每一上下文的条目。例如,上下文定义数据316可包含上下文的存储器位置351到353。上下文定义数据316可进一步包含关于某个上下文的数据是否将通过重新格式化模块331、压缩模块332、多播块333及/或错误处置器334来处理的指示。上下文定义数据316可进一步通知可执行什么类型的重新格式化或压缩或应多播多少
流、在哪里保存多播数据、上下文存储器块351到353的数据阈值等。
37.在步骤402,dma主控器启动寻址到多芯片集线器存储器区的事务。在实施方案中,dma主控器可与连接到实时输出360或非实时输出361的处理器中的一者相关。由于多芯片集线器模块340对处理器透明,所以处理器可在请求来自传感器中的一者的数据时直接充当dma主控器。替代地,多芯片集线器模块可充当dma主控器以请求来自传感器的数据。多个dma主控器可同时通过实时输入301及非实时输入302来读取/写入。在任一情境中,数据从附接到实时输入301或非实时输入302的传感器中的一或多者传送。
38.当响应于dma主控器启动事务而接收到数据时,数据接收到事务缓冲器310中。如果数据来自实时源,那么其将接收到实时事务缓冲器311中。如果数据来自非实时源,那么其将接收到非实时事务缓冲器312中。在实施方案中,事务缓冲器310少量存储于随机存取存储器(ram)中,其允许快速、即时处理。例如,此可实现为快速本地存取fifo存储器。
39.在步骤404,在数据接收到事务缓冲器310中之后,将触发从事务缓冲器310发送到上下文映射器330。接着,在步骤405,上下文映射器330从事务缓冲器读取数据。如果上下文映射器接收指示需要读取实时数据及非实时数据两者的多个触发,那么上下文映射器可通过首先从实时事务缓冲器311读取来优先处理实时数据。以此方式,非实时数据不会阻碍实时数据移动通过多芯片集线器340。实时事务缓冲器及非实时事务缓冲器中的每一者是fifo缓冲器,使得上下文映射器330可在从非实时事务缓冲器读取可用数据之前从实时事务缓冲器读取所有可用数据。
40.接着,在步骤406,上下文映射器330将数据写入到适当上下文存储器块351到353。上下文存储器块351到353在上下文定义数据中定义。在实施方案中,上下文存储器块是ram以允许快速、即时处理。例如,这些可为集成电路上的多芯片集线器模块340内的嵌入式本地存储器,此可完全避免需要将数据存储于长期存储器中,从而为即时数据移动及处理节省大量时间。上下文映射器330实施上下文存储器块351到353的逻辑,例如占用及环绕规则。此外,上下文映射器330可管理上下文存储器块351到353且识别何时已满足上下文定义数据316中定义的阈值。
41.在步骤407,当满足阈值时,上下文映射器330向重新格式化模块331发送触发。重新格式化模块331从上下文存储器块351到353读取数据(步骤408)。在实施方案中,重新格式化器通过将数据累积成高效数据块来重新格式化数据。举例来说,阈值大小可基于用于压缩的高效大小帧(256个字节、512个字节、1024个字节)来选择。此可使压缩更高效。阈值还可用于减少延时,因为多芯片集线器可转发小数据块而无需等待例如全视频帧完成(约2兆字节数据)。例如,阈值可经选择使得下游pcie或超链接传送基于封包大小及/或数据突发大小而更高效。
42.在步骤409,重新格式化模块331将数据转发到压缩模块332。数据可移动到压缩模块332的上下文特定fifo缓冲器,或其可直接前进到压缩模块332。在上下文定义数据316中,没有指示一些上下文需要压缩。在这种情况中,数据可继续通过压缩模块332而不执行任何压缩,或数据可绕过压缩模块332。
43.在压缩模块332之后,在步骤411,根据需要对数据进行多播。数据可进入上下文特定fifo缓冲器或直接前进到多播块333。上下文定义数据316可定义特定上下文是否需要多播、需要多少副本及副本应存储于哪里。如果无需多播,那么可绕过多播块333。来自多播块
333的数据流中的每一者可进入用于错误处置器的上下文特定fifo缓冲器。
44.在步骤412,错误处置器334验证数据且确认数据已被及时提供。例如,当事务通过pcie及/或超链接接口输出时,错误处置器334处置来自连接到实时输出360或非实时输出361的处理器的传输完成及确认。接着,数据进入主端口的实时或非实时fifo缓冲器。主端口可与上述图2的pcie接口236或超链接接口237中的一者相关。
45.图5更详细展示上下文映射器530。来自传感器中的一或多者的数据进入事务缓冲器510。事务缓冲器510向上下文映射器530发送触发以指示数据已到达事务缓冲器510。事务缓冲器510中的数据可包含传感器数据以及与传感器数据相关的信息,例如命令数据、地址数据、属性数据等。上下文映射器530从事务缓冲器510读取数据。上下文映射器530还存取上下文定义数据516,其可呈查找表的形式。在图5中,上下文映射器530将来自上下文定义数据516的信息展示为查找表,上下文映射器530将查找表与来自事务缓冲器510的数据一起使用。通过比较事务地址与查找表中编码的信息,上下文映射器530为数据分配上下文。如上下文映射器530中所见,上下文定义数据516可包含例如上下文id、输入地址范围、上下文存储器块位置、阈值、压缩旗标、多播旗标及输出地址范围的信息。例如,上下文id可通过比较传入请求目的地地址与上下文定义数据516中编码的按上下文的输入地址范围来导出。地址范围用于识别对应上下文1d。输入地址可为多芯片集线器地址空间内的区。在输出侧上,输出可为匹配输出接口(例如实时输出360或非实时输出361)的pcie或超链接地址空间。上下文定义数据516可保存事务的输入地址与输出地址之间的相关联性。上下文定义数据516还可含有与上下文相关的另外信息。
46.上下文映射器530协调智能数据移动引擎320的各种子块之间的移动,例如重新格式化器331、压缩模块332、多播块333及错误处置器334。上下文定义数据516可包含关于子块中的每一者的上下文特定信息。在上下文映射器530从事务缓冲器510读取数据之后,上下文映射器530将数据填到上下文存储器块550且向重新格式化模块531发送触发。
47.图6说明在实施方案中操作多芯片集线器的方法。集线器初始化序列650中的步骤可在具有用户输入(例如通过用户接口)或没有用户输入的情况下执行。在步骤601,分配上下文描述符。此上下文描述符可分配给给定传感器,例如附接到多芯片集线器的摄像机。例如,分配可在传感器附接到多芯片集线器时自动发生或在系统加电时自动发生。替代地,用户可指示传感器附接到多芯片集线器且手动分配上下文描述符或触发分配上下文描述符。
48.在步骤602,多芯片集线器分配按上下文的输入地址空间。输入地址空间的部分留给特定上下文使用。输入地址空间可为完全虚拟的,没有物理存储器。接着,按上下文的输入地址空间可用于识别哪个上下文与每一传入事务相关联。按上下文的输入地址空间可连同与适当上下文描述符的相关性保存于上下文配置数据316中。
49.在步骤603分配上下文存储器块。上下文存储器块可用作基于按上下文的飞行中事务的工作区缓冲器。此上下文存储器块可为分配给与特定上下文相关联的数据的ram的区段。在实施方案中,此上下文存储器块可为内置至soc集成电路中的分配给特定上下文(例如由特定摄像机传感器提供的数据)的ram存储器的部分。在步骤604,将上下文描述符绑定到事务缓冲器空间及上下文存储器块。在实施方案中,例如,上下文描述符可写入到上下文存储器块中的存储器。上下文描述符可进一步写入到查找表或其类似者。
50.接下来在步骤605为上下文配置特定传送属性。这些属性可包含重新格式化选项,
例如缓冲器阈值、压缩设置、多播设置等。如上文描述,这些属性可自动或通过用户干预来配置。还为上下文配置上下文特定错误处置设置,例如超时设置。
51.当定义上下文的所有属性时,在步骤607将上下文存储器块及上下文描述符设置为有效。此时,初始化序列650完成,且多芯片集线器准备对所述上下文进行操作。初始化序列650还需要再次对其它上下文执行。
52.在步骤608,安排dma主控器将数据从传感器(例如上文讨论的摄像机)移动到事务缓冲器。由此,数据将如上文讨论般移动通过多芯片集线器。此在步骤609中展示。此步骤一直重复到在步骤610开始拆卸序列。此拆卸序列可由用户通过用户接口触发或可自动触发,例如当满足某些阈值时或当开始断电序列时。
53.在步骤611,指示dma主控器停止数据传送。接着,上下文终止序列660继续。上下文存储器块标记为无效且上下文描述符标记为无效。启动上下文拆除且通过硬件确认来确认。在步骤615及616,回收所有事务缓冲器、上下文存储器块及上下文描述符。在实施方案中,如果其它上下文继续利用事务缓冲器,那么事务缓冲器可继续。
54.图7说明其中可实施本文中公开的各种过程、程序、服务及方案的表示任何系统或系统集合的计算系统701。计算系统701的实例包含(但不限于)集成电路、soc、服务器计算机、路由器、网络服务器、云计算平台及数据中心设备以及任何其它类型的物理或虚拟服务器机器、物理或虚拟路由器、容器及其任何变体或组合。
55.计算系统701可实施为单个设备、系统或装置或可以分布式方式实施为多个设备、系统或装置。计算系统701包含(但不限于)处理系统702、存储系统703、软件705、通信接口系统707及用户接口系统709(任选)。处理系统702可操作地与存储系统703、通信接口系统707及用户接口系统709耦合。
56.处理系统702从存储系统703加载及执行软件705。软件705包含及实施多芯片集线器过程706,其表示关于前图讨论的多芯片集线器过程。当由处理系统702执行时,软件705指导处理系统702如本文中描述般操作至少前述实施方案中讨论的各种过程、操作方案及序列。计算系统701可任选地包含为了简洁而未讨论的额外装置、特征或功能。
57.仍参考图7,处理系统702可包括微处理器及从存储系统703检索及执行软件705的其它电路系统。处理系统702可在单个处理装置中实施,但也可跨协作执行程序指令的多个处理装置或子系统分布。处理系统702的实例包含通用中央处理单元、图形处理单元、专用处理器及逻辑装置以及任何其它类型的处理装置、其组合或变体。
58.存储系统703可包括可由处理系统702读取且能够存储软件705的任何计算机可读存储媒体。存储系统703可包含以任何方法或技术实施以用于存储信息(例如计算机可读指令、数据结构、程序模块或其它数据)的易失性及非易失性、可移除及不可移除媒体。存储媒体的实例包含随机存取存储器、只读存储器、磁盘、光盘、光学媒体、闪存、虚拟存储器及非虚拟存储器、盒式磁带、磁带、磁盘存储装置或其它磁性存储装置或任何其它合适存储媒体。无论何种情况,计算机可读存储媒体不是传播信号。
59.除计算机可读存储媒体之外,在一些实施方案中,存储系统703还可包含至少一些软件705可通过其来内部或外部通信的计算机可读通信媒体。存储系统703可实施为单个存储装置,但也可跨相对于彼此共置或分布的多个存储装置或子系统实施。存储系统703可包括能够与处理系统702或其它可行系统通信的额外元件,例如控制器。
60.软件705(包含多芯片集线器过程706)可在程序指令中实施且在其它功能中可在由处理系统702执行时指导处理系统702如关于本文中说明的各种操作方案、序列及过程所描述般操作。例如,软件705可包含用于实施本文中描述的连接过程的程序指令。
61.特定来说,程序指令可包含协作或以其它方式互动以执行本文中描述的各种过程及操作方案的各种组件或模块。各种组件或模块可体现于编译或解译指令中或体现于指令的一些其它变体或组合中。各种组件或模块可以同步或异步方式、串行或并行、在单线程或多线程环境中或根据任何其它合适执行范例、变体或其组合来执行。软件705可包含额外过程、程序或组件,例如操作系统软件、虚拟化软件或其它应用软件。软件705还可包括固件或可由处理系统702执行的某种其它形式的机器可读处理指令。
62.一般来说,软件705可在加载到处理系统702中且执行时将合适设备、系统或装置(计算系统701是其代表)从通用计算系统整体变换成经定制以建立连接且处置内容的专用计算系统,如本文中描述。其实,在存储系统703上编码软件705可变换存储系统703的物理结构。物理结构的具体变换可取决于本描述的不同实施方案中的各种因素。此类因素的实例可包含(但不限于)用于实施存储系统703的存储媒体的技术及计算机存储媒体是特性化为主存储装置还是辅存储装置以及其它因素。
63.例如,如果计算机可读存储媒体实施为基于半导体的存储器,那么当程序指令在其中编码时,软件705可变换半导体存储器的物理状态,例如通过变换构成半导体存储器的晶体管、电容器或其它离散电路元件的状态。可发生关于磁性或光学媒体的类似变换。可在不脱离本描述的范围的情况下进行物理媒体的其它变换,其中前述实例仅供于促进本讨论。
64.通信接口系统707可包含允许通过通信网络(未展示)与其它计算系统(未展示)通信的通信连接及装置。一起允许系统间通信的连接及装置的实例可包含网络接口卡、天线、功率放大器、rf电路系统、收发器及其它通信电路系统。连接及装置可通过通信媒体通信以与其它计算系统或系统网络交换通信,例如金属、玻璃、空气或任何其它合适通信媒体。前述媒体、连接及装置已众所周知且无需在此处详尽讨论。
65.计算系统701与其它计算系统(未展示)之间的通信可通过一或若干通信网络且根据各种通信协议、协议组合或其变体来发生。实例包含内联网、互联网、因特网、局域网、广域网、无线网络、有线网络、虚拟网络、软件定义网络、数据中心总线及背板或任何其它类型的网络、网络组合或其变体。前述通信网络及协议已众所周知且无需在此处详尽讨论。
66.所属领域的技术人员将了解,本发明的方面可体现为系统、方法或计算机程序产品。因此,本发明的方面可采用完全硬件实施例、完全软件实施例(包含固件、常驻软件、微代码等)或组合软件与硬件方面的实施例的形式,其全部在本文中可通称为“电路”、“模块”或“系统”。此外,本发明的方面可采用体现于其上体现有计算机可读程序代码的一或多个计算机可读媒体中的计算机程序产品的形式。
67.所包含的描述及图描绘特定实施例以教示所属领域的技术人员如何制作及使用最佳模式。为了教示发明原理,已简化或省略一些常规方面。所属领域的技术人员将了解,相对于这些实施例的变化落入本公开的范围内。所属领域的技术人员还将了解,上述特征可以各种方式组合以形成多个实施例。因此,本发明不限于上述具体实施例,而是仅受限于权利要求书及其等效物。
技术特征:
1.一种集成电路,其包括:一组传感器输入接口,其包括第一传感器输入接口及第二传感器输入接口;输出接口;存储器,其包括第一存储器位置及第二存储器位置;多芯片集线器模块,其连接到所述一组传感器输入接口、所述输出接口及所述存储器,所述多芯片集线器模块包括:事务缓冲器,其包括第一缓冲器及第二缓冲器,所述第一缓冲器经配置以从所述第一传感器输入接口接收第一数据,且所述第二缓冲器经配置以从所述第二传感器输入接口接收第二数据;上下文映射器,其连接到所述事务缓冲器且经配置以将所述第一数据映射到所述第一存储器位置且将所述第二数据映射到所述第二存储器位置;及数据处置模块;所述多芯片集线器模块经配置以通过所述数据处置模块处理所述第一数据及所述第二数据且将所述经处理数据提供到所述输出接口。2.根据权利要求1所述的集成电路,其中所述数据处置模块包括经配置以将所述第一数据累积到固定数据块大小以产生所述经处理数据的重新格式化模块。3.根据权利要求1所述的集成电路,其中所述数据处置模块包括压缩模块。4.根据权利要求1所述的集成电路,其中所述数据处置模块包括经配置以即时产生多个输出事务的多播块。5.根据权利要求1所述的集成电路,其中所述多芯片集线器模块包括分段目标地址空间,所述分段目标地址空间包括经配置用于来自与所述第一传感器输入接口通信的第一传感器的dma的第一分段及经配置用于来自与所述第二传感器输入接口通信的第二传感器的dma的第二分段。6.根据权利要求5所述的集成电路,其中所述第一数据的第一上下文由所述上下文映射器至少部分基于目的地地址即时推断。7.根据权利要求1所述的集成电路,其中所述上下文映射器进一步经配置以产生输出地址。8.根据权利要求1所述的集成电路,其中所述第一缓冲器包括实时缓冲器,且所述第二缓冲器包括非实时缓冲器。9.一种操作集成电路的方法,其包括:通过所述集成电路上的第一输入传感器端口来接收第一消息;在所述集成电路内,将所述第一消息路由到事务缓冲器,所述事务缓冲器包括第一缓冲器及第二缓冲器;在上下文映射器中映射所述第一消息,所述映射包括:识别用于存储所述第一消息的第一存储器位置及从对所述第一消息执行的一组数据处理动作确定数据处理动作的第一选择;对所述第一消息执行数据处理动作的所述选择以创建经处理第一消息;及将所述经处理第一消息提供到所述集成电路上的输出端口。10.根据权利要求9所述的方法,其中所述一组数据处理动作包括:
重新格式化;压缩;多播;及错误处置。11.根据权利要求10所述的方法,其中重新格式化包括在转发数据之前将所述数据累积到设置数据大小。12.根据权利要求9所述的方法,其进一步包括:通过所述集成电路上的第二输入传感器端口来接收第二消息;在所述集成电路上,将所述第二消息路由到所述事务缓冲器;在所述上下文映射器中映射所述第二消息,所述映射包括:识别用于存储所述第二消息的第二存储器位置及从对所述第二消息执行的一组数据处理动作确定数据处理动作的第二选择;对所述第二消息执行数据处理动作的所述选择以创建经处理第二消息;及将所述经处理第二消息提供到所述集成电路上的输出端口。13.根据权利要求12所述的方法,其中所述第一缓冲器包括实时事务缓冲器,且所述第二缓冲器包括非实时事务缓冲器,且其中所述第一消息路由到所述实时事务缓冲器且所述第二消息路由到所述非实时事务缓冲器。14.根据权利要求13所述的方法,其中在所述上下文映射器中映射所述第二消息的步骤一直延迟到在所述上下文映射器中映射所述第一消息的步骤完成。15.一种集成电路,其包括:处理器及存储器,所述存储器上存储指令,所述指令在由所述处理器执行时引起所述集成电路:通过所述集成电路上的第一输入传感器端口来接收第一消息;将所述第一消息路由到事务缓冲器,所述事务缓冲器包括第一缓冲器及第二缓冲器;在上下文映射器中映射所述第一消息,所述映射包括:识别用于存储所述第一消息的第一存储器位置及从对所述第一消息执行的一组数据处理动作确定数据处理动作的第一选择;对所述第一消息执行数据处理动作的所述选择以创建经处理第一消息;及将所述经处理第一消息提供到所述集成电路上的输出端口。16.根据权利要求15所述的集成电路,其中所述一组数据处理动作包括:重新格式化;压缩;多播;及错误处置。17.根据权利要求15所述的集成电路,其中重新格式化包括在转发数据之前将所述数据累积到设置数据大小。18.根据权利要求15所述的集成电路,其中所述指令在由所述处理器执行时进一步引起所述集成电路:
通过所述集成电路上的第二输入传感器端口来接收第二消息;将所述第二消息路由到所述事务缓冲器;在所述上下文映射器中映射所述第二消息,所述映射包括:识别用于存储所述第二消息的第二存储器位置及从对所述第二消息执行的一组数据处理动作确定数据处理动作的第二选择;对所述第二消息执行数据处理动作的所述选择以创建经处理第二消息;及将所述经处理第二消息提供到所述集成电路上的输出端口。19.根据权利要求18所述的集成电路,其中所述第一缓冲器包括实时事务缓冲器,且所述第二缓冲器包括非实时事务缓冲器,且其中所述第一消息路由到所述实时事务缓冲器且所述第二消息路由到所述非实时事务缓冲器。20.根据权利要求19所述的集成电路,其中在所述上下文映射器中映射所述第二消息一直延迟到在所述上下文映射器中映射所述第一消息完成。
技术总结
本公开涉及用于多芯片传感器系统的集线器。提出一种集成电路[340]。所述集成电路[340]具有一组传感器输入接口[301、302]及输出接口[360、361]。所述集成电路[340]进一步具有含第一[351]及第二[352]存储器位置的存储器[350]。所述集成电路[340]进一步具有多芯片集线器模块,其具有含实时[311]及非实时[312]缓冲器两者的事务缓冲器[310]。所述多芯片集线器模块具有上下文映射器[330]、重新格式化模块[331]及错误处置模块[334]。所述上下文映射器[330]经配置以将数据映射到所述第一[351]或第二[352]存储器位置。所述多芯片集线器模块经配置以通过所述模块处理数据且将经处理数据提供到所述输出接口[360、361]。361]。361]。
技术研发人员:S
受保护的技术使用者:德州仪器公司
技术研发日:2023.02.06
技术公布日:2023/8/14
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
