技术领域
[0001] 本实用新型涉及通信技术领域,尤其涉及一种接口电路和SOC芯片。
相关背景技术
[0002] 由于车载片上系统(System‑on‑chip,SOC)要支持多操作系统,总线接口(Peripheral Component Interconnect Express,PCIE)的多功能(function)以及虚拟化已成为车载SOC系统中不可或缺的属性。此外,由于汽车存在功能安全等级,对车载SOC系统的组成提出了更高的安全要求。
[0003] 当前的车载SOC存在支持虚拟化的地址转换模块资源有限的问题。实用新型内容
[0004] 本实用新型提供了一种接口电路和SOC芯片,可以使用一个地址转换模块即可实现对多路AXI数据的转换,减小对地址转换模块的需求。
[0005] 第一方面,本实用新型提供了一种接口电路,包括:多个桥接模块、第一AXI数据流交换模块、地址转换模块和第二AXI数据流交换模块;桥接模块的输出端与第一AXI数据流交换模块的输入端一一对应连接,桥接模块被配置为根据AXI协议对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出;第一AXI数据流交换模块的输出端与地址转换模块的输入端连接,第一AXI数据流交换模块被配置为根据第一控制信号将多路AXI数据传输到地址转换模块;地址转换模块的输出端与第二AXI数据流交换模块的输入端连接,地址转换模块被配置为将AXI数据的虚拟地址转换为物理地址;第二AXI数据流交换模块被配置为根据第二控制信号将每一路AXI数据分离出来,传送至第二控制信号对应的数据端口。
[0006] 可选地,接口电路还包括多个中断消息产生模块,中断消息产生模块与桥接模块一一对应设置;中断消息产生模块的输入端与第二AXI数据流交换模块的输出端一一对应连接,中断消息产生模块被配置为进行中断消息的捕获。
[0007] 可选地,第一AXI数据流交换模块包括多路选择器。
[0008] 可选地,第二AXI数据流交换模块包括地址译码器。
[0009] 可选地,接口电路还包括处理器,处理器的第一输出端与第一AXI数据流交换模块的控制端连接,处理器的第二输出端与第二AXI数据流交换模块的控制端连接,处理器被配置为向第一AXI数据流交换模块的控制端输出第一控制信号以及向第二AXI数据流交换模块的控制端输出第二控制信号。
[0010] 可选地,接口电路还包括奇偶校验模块,奇偶校验模块分别与处理器的第一输出端和第二输出端连接,奇偶校验模块被配置为对第一控制信号和第二控制信号做奇校验或偶校验。
[0011] 可选地,接口电路还包括ECC校验模块,ECC校验模块分别与第一AXI数据流交换模块的输出端、地址转换模块的输出端和第二AXI数据流交换模块的输出端连接,ECC校验模块被配置为对第一AXI数据流交换模块、地址转换模块和第二AXI数据流交换模块输出的数据做ECC校验。
[0012] 可选地,接口电路还包括存储器,存储器的输入输出端与处理器的存储输入输出端连接。
[0013] 可选地,存储器采用CF卡、ROM存储器或FLASH存储器。
[0014] 第二方面,本实用新型提供了一种SOC芯片,包括第一方面提供的接口电路。
[0015] 本实用新型的接口电路,包括多个桥接模块、第一AXI数据流交换模块、地址转换模块和第二AXI数据流交换模块;通过桥接模块对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出;通过第一AXI数据流交换模块将多路AXI数据传输到地址转换模块;通过地址转换模块将AXI数据的虚拟地址转换为物理地址;通过第二AXI数据流交换模块将每一路AXI数据分离出来,传送至第二控制信号对应的数据端口,本实用新型通过设置第一AXI数据流交换模块和第二AXI数据流交换模块,并将地址转换模块设置在第一AXI数据流交换模块和第二AXI数据流交换模块之间,可以只使用一个地址转换模块即可实现对多路AXI数据的转换,减小对地址转换模块的需求。
[0016] 应当理解,本部分所描述的内容并非旨在标识本实用新型的实施例的关键或重要特征,也不用于限制本实用新型的范围。本实用新型的其它特征将通过以下的说明书而变得容易理解。
具体实施方式
[0021] 为了使本技术领域的人员更好地理解本实用新型方案,下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分的实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本实用新型保护的范围。
[0022] 需要说明的是,本实用新型的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本实用新型的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
[0023] 图1是本实用新型实施例提供的一种接口电路的结构示意图,本实施例提供的接口电路可用于实现多PCIE的多function虚拟化。
[0024] 如图1所示,该接口电路包括:多个桥接模块11、第一AXI数据流交换模块12、地址转换模块13和第二AXI数据流交换模块14。
[0025] 桥接模块11的输出端与第一AXI数据流交换模块12的输入端一一对应连接,桥接模块11被配置为根据AXI协议对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出。
[0026] 第一AXI数据流交换模块12的输出端与地址转换模块13的输入端连接,第一AXI数据流交换模块12被配置为根据第一控制信号ctrl1将多路AXI数据传输到地址转换模块13。
[0027] 地址转换模块13的输出端与第二AXI数据流交换模块14的输入端连接,地址转换模块13被配置为将AXI数据的虚拟地址转换为物理地址。
[0028] 第二AXI数据流交换模块14被配置为根据第二控制信号ctrl2将每一路AXI数据分离出来,传送至第二控制信号ctrl2对应的数据端口。
[0029] 具体的,PCIE是一种高速串行计算机扩展接口标准,是PCI规格的延伸。
[0030] AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA3.0中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。
[0031] 桥接模块11可以为具有根据AXI协议对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出功能的各种模块。
[0032] 可选地,多个桥接模块11包括第一桥接模块,第二桥接模块,……,第N桥接模块。第一桥接模块对来自第一PCIE总线pcie1的输出数据流进行协议转换,第二桥接模块对来自第二PCIE总线pcie2的输出数据流进行协议转换,……,第N桥接模块对来自第N PCIE总线pcieN的输出数据流进行协议转换。其中,N为大于或者等于2的正整数。
[0033] 其中,第一控制信号ctrl1可以是处理器下发的控制信号。第一AXI数据流交换模块12包括第一控制端、输出端和多个输入端,第一控制端接入第一控制信号ctrl1,多个输入端包括第一输入端,第二输入端,……,第N输入端。第一AXI数据流交换模块12可以为具有从多个输入中选择一个输出功能的各种模块。第一AXI数据流交换模块12根据第一控制信号ctrl1选择某个AXI总线的输入信号,将其传递到输出端。
[0034] 在一些实施例中,第一AXI数据流交换模块12包括多路选择器。
[0035] 在一些实施例中,第二AXI数据流交换模块14包括地址译码器。
[0036] 地址转换模块13可以是具有地址转换功能的各种模块。第一控制信号ctrl2可以是处理器下发的控制信号。第二AXI数据流交换模块14包括第二控制端、输入端和多个输出端,第二控制端接入第二控制信号ctrl2,多个输出端包括第一输出端,第二输出端,……,第N输出端。
[0037] 以图1所示电路结构为例,本实施例提供的接口电路的具体工作过程为:
[0038] 桥接模块11根据AXI协议对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出,第一AXI数据流交换模块12根据第一控制信号ctrl1选择某个AXI总线的输入信号,将其传输至地址转换模块13做地址转换,减少对地址转换模块13的需求;地址转换模块13出来的数据流再通过第二AXI数据流交换模块14反映射出function粒度的多路数据流。
[0039] 本实用新型的接口电路,包括多个桥接模块、第一AXI数据流交换模块、地址转换模块和第二AXI数据流交换模块;通过桥接模块对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出;通过第一AXI数据流交换模块将多路AXI数据传输到地址转换模块;通过地址转换模块将AXI数据的虚拟地址转换为物理地址;通过第二AXI数据流交换模块将每一路AXI数据分离出来,传送至第二控制信号对应的数据端口,本实用新型通过设置第一AXI数据流交换模块和第二AXI数据流交换模块,并将地址转换模块设置在第一AXI数据流交换模块和第二AXI数据流交换模块之间,可以只使用一个地址转换模块即可实现对多路AXI数据的转换,减小对地址转换模块的需求。
[0040] 图2是本实用新型实施例提供的又一种接口电路的结构示意图。如图2所示,可选地,接口电路还包括多个中断消息产生模块15,中断消息产生模块15与桥接模块11一一对应设置;中断消息产生模块15的输入端与第二AXI数据流交换模块14的输出端一一对应连接,中断消息产生模块15被配置为进行中断消息的捕获,进而支持多PCIE的多function消息中断。
[0041] 具体的,中断消息产生模块15包括第一中断消息产生模块,第二中断消息产生模块,……,第N中断消息产生模块。
[0042] 以图2所示电路结构为例,本实施例提供的接口电路的具体工作过程为:
[0043] 桥接模块11根据AXI协议对来自PCIE总线的输出数据流进行协议转换,并将协议转换后的输出数据流通过AXI总线输出,第一AXI数据流交换模块12根据第一控制信号ctrl1选择某个AXI总线的输入信号,将其传输至地址转换模块13做地址转换,减少对地址转换模块13的需求。
[0044] 地址转换模块13出来的数据流通过第二AXI数据流交换14模块反映射出function粒度的多路数据流,送到各function对应的中断消息产生模块15进行中断消息的捕获;各function对应的中断消息产生模块15可以被分配给不同的操作系统,进行物理上的隔离。
[0045] 图3是本实用新型实施例提供的又一种接口电路的结构示意图。如图3所示,可选地,接口电路还包括处理器16,处理器16的第一输出端与第一AXI数据流交换模块12的控制端连接,处理器16的第二输出端与第二AXI数据流交换模块14的控制端连接,处理器16被配置为向第一AXI数据流交换模块12的控制端输出第一控制信号以及向第二AXI数据流交换模块14的控制端输出第二控制信号。
[0046] 处理器16(Central Processing Unit,CPU),是计算机的运算核心和控制核心,是信息处理、程序运行的最终执行单元。处理器16包含运算逻辑部件、寄存器部件和控制部件等,并具有处理指令、执行操作、控制时间、处理数据等功能。
[0047] 接口电路还包括奇偶校验模块17,奇偶校验模块17分别与处理器16的第一输出端和第二输出端连接,奇偶校验模块17被配置为对第一控制信号ctrl1和第二控制信号ctrl2做奇校验或偶校验。
[0048] 数据传输以前通常会确定是奇校验还是偶校验,以保证发送端和接收端采用相同的校验方法进行数据校验。假如校验位不符,则认为传输出错。
[0049] 奇校验是在每个字节后增加一个附加位,使得“1”的总数为奇数。奇校验时,校验位按如下规则设定:假如每字节的数据位中“1”的个数为奇数,则校验位为“0”;若为偶数,则校验位为“1”。奇校验通常用于同步传输。
[0050] 偶校验是在每个字节后增加一个附加位,使得“1”的总数为偶数。偶校验时,校验位按如下规则设定:假如每字节的数据位中“1”的个数为奇数,则校验位为“1”;若为偶数,则校验位为“0”。偶校验常用于异步传输或低速传输。
[0051] 接口电路还包括ECC校验模块18,ECC校验模块18分别与第一AXI数据流交换模块12的输出端、地址转换模块13的输出端和第二AXI数据流交换模块14的输出端连接,ECC校验模块18被配置为对第一AXI数据流交换模块12、地址转换模块13和第二AXI数据流交换模块14输出的数据做ECC校验。本实用新型通过在整个数据通路上,对第一控制信号ctrl1和第二控制信号ctrl2做奇/偶校验,对数据做ECC校验,可以满足汽车功能安全等级要求。
[0052] 错误检查和纠正(Error Correcting Code,ECC)校验是在奇偶校验的基础上发展而来的,它将数据块看作一个短阵,利用短阵的行、列奇偶信息生成ECC校验码。它能够检测并纠正单比特错误和检测双比特错误。
[0053] 接口电路还包括存储器19,存储器19的输入输出端与处理器16的存储输入输出端连接。示例性的,存储器采用CF卡、ROM存储器或FLASH存储器。
[0054] 本实用新型实施例还提供了一种SOC芯片,包括上述任意实施例提供的接口电路,具备本实用新型上述任意实施例的接口电路的有益效果。
[0055] 上述具体实施方式,并不构成对本实用新型保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本实用新型的精神和原则之内所作的修改、等同替换和改进等,均应包含在本实用新型保护范围之内。