一种车载智能网关及其轮询调度方法技术

技术编号:29219897 阅读:12 留言:0更新日期:2021-07-10 00:59
本发明专利技术公开了一种车载智能网关及其轮询调度方法,所述车载智能网关包括:输入端口模块、输入仲裁模块、交换调度模块、协议转换模块、输出仲裁模块和输出端口模块;所述输入端口模块包括多个输入端口,所述输出端口模块包括多个输出端口,在交换调度模块进行轮询调度,确保数据传输的公平性,在输出仲裁模块设置有预测机制,以避免反复进行轮询调度产生的时延,提高输出传输的实时性,本发明专利技术提供了一种具备实时性及公平性的适用于车载智能网关的调度策略。的调度策略。的调度策略。

【技术实现步骤摘要】
一种车载智能网关及其轮询调度方法


[0001]本专利技术涉及智能网关
,特别是涉及一种车载智能网关及其轮询调度方法。

技术介绍

[0002]随着现代汽车的功能越来越复杂,整车上的电子控制单元(Electronic Control Units,ECUs)也随之增多。当前一辆普通汽车的ECU多达七八十个,代码约一亿行,其复杂度极高。在传统的汽车供应链中,不同的ECU来自不同的供应商,有着不同的嵌入式软件和底层代码,这种分布式的架构在整车层面造成了相当大的冗余,传统汽车的软件更新几乎与汽车生命周期同步,极大地影响了用户体验。为加快软件的创新与迭代,从传统的分布式架构,逐渐进化为集中式架构,“域”的概念由此而生。面对“域”的设计,作为信息传输的重要节点,车载智能网关不仅需要满足主干网与底层网络协议的转换,还需要满足消息传输的实时性和公平性,因此车载智能网关及其调度策略是域架构必须攻克的难关。
[0003]常见输入排队算法有很多种,如并行迭代PIM(Parallel Iterative Method)算法、循环匹配调度RRM(Round

Robin Matching)算法以及滑动迭代轮循匹配iSLIP(iterative round

robin matching with slip)算法等。
[0004]PIM算法有以下三个步骤;首先请求阶段由输出端口向输出端口发出请求信号;然后响应阶段中当接收信号的输出端口处于空闲状态的话,就随机选择一个发生请求的输出端口进行转发;最后确认阶段是输入端口接收到响应后予以确认。RRM算法在PIM算法的基础上将随机选择调度变为优先级轮询,满足了公平性的要求。iSLIP算法的基本步骤为开始时所有的输入端口与输出端口没有互相匹配,在之后的迭代匹配中,只有在上一次完成迭代但是并未匹配的输入端口与输出端口才能有机会参与下一次迭代匹配,和PIM算法一样,iSLIP算法每次迭代也分为请求、许可及接收三个步骤。
[0005]PIM算法虽然可以进行多次迭代,但是由于通过随机方法快速匹配输入端口及输出端口,不支持消息的优先级区分,实现较为复杂;RRM算法通过引入循环调度算法解决了PIM算法随机选择过程的复杂性和不公平性的问题,但是没有解决业务优先级区分的问题;iSLIP算法的特性也不适用于车载智能网关的消息调度。

技术实现思路

[0006]本专利技术的目的是提供一种车载智能网关及其轮询调度方法,以提供一种具备实时性及公平性的适用于车载智能网关的调度策略。
[0007]为实现上述目的,本专利技术提供了如下方案:
[0008]本专利技术提供一种车载智能网关,所述车载智能网关包括:输入端口模块、输入仲裁模块、交换调度模块、协议转换模块、输出仲裁模块和输出端口模块;所述输入端口模块包括多个输入端口,所述输出端口模块包括多个输出端口;
[0009]所述输入端口模块与所述输入仲裁模块连接,所述输入端口模块用于将原数据包
拆分成包头和数据,对数据进行缓存,并将数据缓存的物理地址加入所述包头,形成新包头,并将所述新包头输出给所述输入仲裁模块;
[0010]所述输入仲裁模块与所述交换调度模块连接,所述输入仲裁模块用于将所述新包头加入原数据包的输入端口对应的虚拟优先级子队列;
[0011]所述交换调度模块与所述输出仲裁模块连接,所述交换调度模块用于根据虚拟优先级子队列采用优先级轮询调度的方法进行调度,生成调度指令,并将所述调度指令发送给输出仲裁模块;
[0012]所述输出仲裁模块用于根据所述调度指令更新预测机制,根据更新后的预测机制产生输出端口指令,并将所述输出端口指令发送给交换调度模块;
[0013]所述交换调度模块还分别与所述输入端口模块和所述协议转换模块连接,所述交换调度模块还用于从输入端口模块的缓冲区调取所述输出端口指令对应的数据,并将输出端口指令对应的数据发送给所述协议转换模块;
[0014]所述协议转换模块与所述输出端口模块连接,所述协议转换模块用于将输出端口指令对应的数据解析转换为用于数据输出的输出端口所需协议的数据,获得协议转换后的数据包,并将协议转换后的数据包发送给所述输出端口模块;
[0015]所述输出端口模块用于输出协议转换后的数据包。
[0016]可选的,所述输入端口模块还包括:数据包拆分子模块、多个端口缓存区和包头更新子模块;
[0017]多个所述输入端口分别与所述数据包拆分子模块连接;
[0018]数据包拆分子模块分别与多个所述端口缓存区连接和所述包头更新子模块连接;
[0019]所述数据包拆分子模块用于将原数据包拆分成包头和数据,将数据缓存入输入原数据包的输入端口对应的端口缓存区,并生成数据缓存的物理地址,并将包头和数据缓存的物理地址发送给所述包头更新子模块;
[0020]所述包头更新子模块与所述输入仲裁模块连接,所述包头更新子模块用于将数据缓存的物理地址加入所述包头,形成新包头,并将所述新包头输出给所述输入仲裁模块。
[0021]可选的,输入仲裁模块内存储有多个虚拟优先级子队列,所述输入仲裁模块包括输入逻辑子模块;
[0022]所述输入逻辑子模块用于将所述新包头推进原数据包的输入端口对应的虚拟优先级子队列。
[0023]可选的,所述交换调度模块包括:交换器和调度子模块;
[0024]所述交换器的输入端与所述输入端口模块连接,所述交换器的输出端与所述协议转换模块连接;所述交换器的控制端与所述输出仲裁模块连接;
[0025]所述调度子模块分别与所述输入仲裁模块和所述输出仲裁模块连接;
[0026]所述调度子模块用于根据虚拟优先级子队列采用优先级轮询调度的方法进行调度,生成调度指令,并将所述调度指令发送给输出仲裁模块;
[0027]所述交换器用于从输入端口模块的缓冲区调取输出端口指令对应的数据,并将输出端口指令对应的数据发送给所述协议转换模块。
[0028]可选的,所述输出仲裁模块内存储有预测机制,所述输出仲裁模块包括输出逻辑子模块,所述输出逻辑子模块用于根据调度指令更新预测机制,并根据更新后的预测机制
产生输出端口指令,并将所述输出端口指令发送给交换调度模块。
[0029]一种车载智能网关的轮询调度方法,所述轮询调度方法为包含预测机制的轮询调度方法,所述轮询调度方法包括如下步骤:
[0030]获取I个输入端口同时向第j个输出端口提出的发送请求;
[0031]通过输入仲裁模块确定每个输入端口相对于第j个所述输出端口的优先级,和每个输入端口发送的发送请求的优先级,并根据每个输入端口发送的发送请求的优先级,分别将每个输入端口输入的存储有数据缓存的物理地址的新包头加入至每个输入端口对应的虚拟优先级子队列;
[0032]通过交换调度模块确定相对于第j个所述输出端口的优先级最高的输入端口i
m
,并对输入端口i
m
对应的虚拟优本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种车载智能网关,其特征在于,所述车载智能网关包括:输入端口模块、输入仲裁模块、交换调度模块、协议转换模块、输出仲裁模块和输出端口模块;所述输入端口模块包括多个输入端口,所述输出端口模块包括多个输出端口;所述输入端口模块与所述输入仲裁模块连接,所述输入端口模块用于将原数据包拆分成包头和数据,对数据进行缓存,并将数据缓存的物理地址加入所述包头,形成新包头,并将所述新包头输出给所述输入仲裁模块;所述输入仲裁模块与所述交换调度模块连接,所述输入仲裁模块用于将所述新包头加入原数据包的输入端口对应的虚拟优先级子队列;所述交换调度模块与所述输出仲裁模块连接,所述交换调度模块用于根据虚拟优先级子队列采用优先级轮询调度的方法进行调度,生成调度指令,并将所述调度指令发送给输出仲裁模块;所述输出仲裁模块用于根据所述调度指令更新预测机制,根据更新后的预测机制产生输出端口指令,并将所述输出端口指令发送给交换调度模块;所述交换调度模块还分别与所述输入端口模块和所述协议转换模块连接,所述交换调度模块还用于从输入端口模块的缓冲区调取所述输出端口指令对应的数据,并将输出端口指令对应的数据发送给所述协议转换模块;所述协议转换模块与所述输出端口模块连接,所述协议转换模块用于将输出端口指令对应的数据解析转换为用于数据输出的输出端口所需协议的数据,获得协议转换后的数据包,并将协议转换后的数据包发送给所述输出端口模块;所述输出端口模块用于输出协议转换后的数据包。2.根据权利要求1所述的车载智能网关,其特征在于,所述输入端口模块还包括:数据包拆分子模块、多个端口缓存区和包头更新子模块;多个所述输入端口分别与所述数据包拆分子模块连接;数据包拆分子模块分别与多个所述端口缓存区和所述包头更新子模块连接;所述数据包拆分子模块用于将原数据包拆分成包头和数据,将数据缓存入输入原数据包的输入端口对应的端口缓存区,并生成数据缓存的物理地址,并将包头和数据缓存的物理地址发送给所述包头更新子模块;所述包头更新子模块与所述输入仲裁模块连接,所述包头更新子模块用于将数据缓存的物理地址加入所述包头,形成新包头,并将所述新包头输出给所述输入仲裁模块。3.根据权利要求1所述的车载智能网关,其特征在于,输入仲裁模块内存储有多个虚拟优先级子队列,所述输入仲裁模块包括输入逻辑子模块;所述输入逻辑子模块用于将所述新包头推进原数据包的输入端口对应的虚拟优先级子队列。4.根据权利要求1所述的车载智能网关,其特征在于,所述交换调度模块包括:交换器和调度子模块;所述交换器的输入端与所述输入端口模块连接,所述交换器的输出端与所述协议转换模块连接;所述交换器的控制端与所述输出仲裁模块连接;所述调度子模块分别与所述输入仲裁模块和所述输出仲裁模块连接;所述调度子模块用于根据虚拟优先级子队列采用优先级轮询调度的方法进行调度,生
成调度指令,并将所述调度指令发送给输出仲裁模块;所述交换器用于从输入端口...

【专利技术属性】
技术研发人员:王文伟俞诗瑶曹万科
申请(专利权)人:北京理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1