CN116414558A - 应用于智能化汽车的同构多核cpu系统、芯片及运行方法 - Google Patents
应用于智能化汽车的同构多核cpu系统、芯片及运行方法 Download PDFInfo
- Publication number
- CN116414558A CN116414558A CN202211714997.8A CN202211714997A CN116414558A CN 116414558 A CN116414558 A CN 116414558A CN 202211714997 A CN202211714997 A CN 202211714997A CN 116414558 A CN116414558 A CN 116414558A
- Authority
- CN
- China
- Prior art keywords
- physical
- domain
- control
- cores
- isomorphic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000012545 processing Methods 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 abstract description 6
- 238000009826 distribution Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000010354 integration Effects 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 4
- 238000013439 planning Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 239000000306 component Substances 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 108010015780 Viral Core Proteins Proteins 0.000 description 1
- 238000004378 air conditioning Methods 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本说明书实施例公开了一种应用于智能化汽车的同构多核CPU系统、芯片及运行方法。方案包括:所述系统至少包括一个具有多个同构物理内核的CPU;所述多个同构物理内核中的一部分物理内核属于第一物理内核集合,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合;所述第一物理内核集合用于运行处理特定任务的特定控制系统;所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统;所述特定任务的优先级高于所述非特定任务。可以对同构多核CPU实现混合的算力分配,灵活配置CPU资源,实现多样化管理,可更符合实际需求,在保证业务需求的同时还可提高CPU资源的利用。
Description
技术领域
本申请涉及智能化汽车技术领域,尤其涉及一种应用于智能化汽车的同构多核CPU系统、芯片及运行方法。
背景技术
目前的智能汽车的多个控制域系统,如自动驾驶域控ADS系统、车载智能座舱控制系统、以及动力控制域系统,最多是集成到域控器(盒子)的程度,域控器内部由多个芯片实现控制功能。
随着芯片的集成化越来越高,更多的业务可以集成到单芯片之中,为了确保灵活性,虚拟化技术被引入到嵌入式领域,以解决不同业务对不同的底层控制系统的需求、软件复用的需求、对CPU/Memory等资源更高抽象的资源分配与管理等问题。
如在车内智能座舱领域,不同的应用,使用的软件资源不同,任务的特点决定了重要性也不同。对于特别重要的任务,如仪表的内容显示,视为关键任务,必须保证资源,且不受娱乐系统的影响,传统的娱乐单系统无法满足其稳定性的需求,仪表的开机速度要更快,传统的娱乐单系统也无法满足其需求。同时,随着汽车整车控制系统中央化的发展,域控系统的数量也会增多,未来多个域控系统使用多个芯片也不能满足高度集成化的需求。因此,需要提供一种更合理的利用CPU资源的方式。
发明内容
本说明书实施例提供一种应用于智能化汽车的同构多核CPU系统,可以更好的满足实际需求。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供的一种应用于智能化汽车的同构多核CPU系统,所述系统至少包括一个具有多个同构物理内核的CPU;所述多个同构物理内核中的一部分物理内核属于第一物理内核集合,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合;
所述第一物理内核集合用于运行处理特定任务的特定控制系统;
所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统;所述特定任务的优先级高于所述非特定任务。
本说明书实施例提供的一种应用于智能化汽车的芯片,所述芯片至少包括一个具有多个同构物理内核的CPU;所述多个同构物理内核中的一部分物理内核属于第一物理内核集合,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合;
所述第一物理内核集合用于运行处理特定任务的特定控制系统;
所述第二物理内核集合用于运行处理非特定任务的虚拟机;所述特定任务的优先级高于所述非特定任务。
本说明书实施例提供的一种应用于智能化汽车的车机运行方法,所述智能化汽车的智能驾驶域、智能座舱域、动力控制域以及网关域运行在至少一个上述芯片上,在车机启动后,所述智能驾驶域、智能座舱域、动力控制域以及网关域至少运行在一个上述的同构多核CPU系统中,各个控制域在同构多核CPU下实现通讯。
本说明书实施例提供的一种智能化汽车,所述智能化汽车至少包括一个上述的芯片;至少一个所述芯片用于运行所述智能化汽车智能驾驶域、智能座舱域、动力控制域、网关域中至少一个控制域。
本说明书一个实施例实现了能够达到以下有益效果:
本说明书实施例中可以将应用于智能化汽车的同构多核CPU分为两个部分,一部分物理核用于运行独立的用来处理特定任务的特定控制系统,承载优先级较高的业务,另一部分物理核作为虚拟机,优先级较低的非特定任务可以共享这部分物理核。通过以上技术,对同构CPU实现混合的算力分配,根据业务需求,灵活配置CPU资源,实现多样化管理,可更符合实际需求,在保证业务需求的同时还可提高CPU资源的利用。
并且,应用于智能化汽车时,本说明书实施例中CPU中的多个物理内核可以同时运行多个系统,可以很好地将每个域控制系统分别集成到1个单芯片上,或者将整个自动驾驶汽车的多个域控制功能集成到1个单芯片上,可以实现真正的自动驾驶芯片,对于智能化汽车领域的高度集成而言具有重要意义。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书实施例中一种应用于智能化汽车的同构多核CPU系统的CPU分配示意图;
图2为本说明书实施例提供的一种应用于智能化汽车的同构多核CPU系统的结构示意图;
图3为本说明书实施例中提供的一种多核系统的架构图;
图4为本说明书实施例中提供的一种多核系统的启动的流程示意图。
具体实施方式
为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
现有技术中,传统的单芯片多系统方案中,对CPU资源的管理一般有如下几种方式:
一、构建异构多核系统,每个物理CPU上面运行不同的控制系统,以完成各系统内特定的任务。这种框架中,物理CPU之间的通信只能依靠片内的通信接口,通信模块往往跨电源域、时钟域等,效率低下,无法高效同步,同时任务管理的颗粒度大,以一颗CPU为资源单位,缺乏弹性。
并且,现有技术中还未公开有关同构CPU下虚拟内核和物理内核分离的技术方案。如专利CN112433826B中公开的是异构多核CPU上,实现部分核执行物理域控制系统,部分核执行虚拟域控制系统,从多核结构上,该案的重点不在于物理核与虚拟核物理隔开,而在于划分不同域后具体通讯方式,解决技术问题侧重与异构多核之间的通讯方法。这与本申请的方案不同。
二、构建同构多核系统,对多个核心进行管理,主要有以下两种方式:
a)同构核心的物理核区分,各个OS(OperatingSystem,控制系统)分别跑在多个物理核之上,多核之间由于同构的多核架构,可以快速传递消息,通信效率得到显著提升,但也存在资源管理颗粒度问题,缺乏弹性;
b)同构核心的软件虚拟化方案,各个OS被部署在底层的虚拟机之上,底层的核心资源由虚拟机负责管理,这种方案将CPU资源交给虚拟机管理,资源颗粒度可以随意分配,业务弹性非常灵活。但这种方案的主要问题是整体系统的安全可靠性依赖于虚拟机软件的稳定性,由于虚拟化技术复杂,软件可靠性存在不足,进而影响关键应用任务的可靠性。
为了解决现有技术中的缺陷,本方案给出了以下实施例:
图1为本说明书实施例中一种应用于智能化汽车的同构多核CPU系统的CPU分配示意图。如图1所示,假设1个同构多核的CPU中包含5个物理核,其中可以将2个物理核a分配至特定控制系统处理优先级较高的特定任务,将其他3个物理核b部署可以作为虚拟机,采用时间片的管理方式,在虚拟机的基础上处理优先级较低的非特定任务,其中,虚拟机的管理颗粒度是时间片,可以在不同系统间将每个物理核core按照时间片(单位算力)进行灵活的拆分组合,已满足不同虚拟系统的要求。从而可以达成整体系统对稳定性、灵活性的要求。
接下来,将针对说明书实施例提供的一种基于应用于智能化汽车的同构多核CPU系统结合附图进行具体说明:
图2为本说明书实施例提供的一种应用于智能化汽车的同构多核CPU系统的结构示意图。
如图2所示,该系统200可以至少包括一个具有多个同构物理内核的CPU;其中,多个同构物理内核中的一部分物理内核属于第一物理内核集合201,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合202;
所述第一物理内核集合201用于运行处理特定任务的特定控制系统;
所述第二物理内核集合202作为虚拟机用于运行处理非特定任务的非特定控制系统;所述特定任务的优先级高于所述非特定任务。
本说明书实施例中多核CPU为同构多核CPU,可以包括多个具有相同结构的物理内核core。可以将单个芯片中的每个CPU中的多个物理内核core分成特定控制系统使用的第一物理内核集合以及虚拟机使用的第二物理内核集合。其中,第一物理内核集合以及第二物理内核集合中可以包括一个或多个物理内核。实际应用中,可以根据实际需求设定第一物理内核集合以及第二物理内核集合中包含的物理内核的数量,两个集合中包含的物理内核的数量可以相同也可以不同,这里不作具体限定。
特定控制系统可以是直接部署在第一物理内核集合的物理内核上,该特定控制系统可以用于处理优先级较高的特定任务。例如,在车辆驾驶领域,车辆的车速等信息需要实时的显示在仪表盘中,对于控制仪表盘的系统可以作为特定控制系统,直接部署在物理核中可以保证有充足的CPU资源处理仪表盘相关的信息,保证行车安全。又如,自动驾驶领域的ADS域控系统、动力域控制系统中的优先级较高的特定任务也可以部署在物理内核上。
其中,优先级可以体现在实时性要求、安全性要求、稳定性要求等方面,实时性、安全性、稳定性要求越高,任务的优先级就越高。实际应用中,可以将非特定任务对应的非特定控制系统部署在虚拟机上,部署在虚拟机上的各个任务系统可以共享虚拟机占用的物理核。其中,虚拟机可以按照时间片的方式对各个非特定任务分配资源。例如,对于任务A分配10ms,对任务B分配20ms等等。例如,可以将车辆的车载智能座舱控制域部署在虚拟机上,各类任务,如语音、视频、广播、车内环境控制等可以在虚拟机上运行,不同任务还可以根据用于虚拟机的物理内核的时间片的空闲程度,共享物理内核的空闲算力,更灵活的同时执行多任务而不产生卡顿。
本说明书实施例中可以将应用于智能化汽车的同构多核CPU分为两个部分,一部分物理核用于运行独立的用来处理特定任务的特定控制系统,承载优先级较高的的业务,另一部分物理核作为虚拟机,优先级较低的非特定任务可以共享这部分物理核。通过以上技术,对同构CPU实现混合的算力分配,根据业务需求,灵活配置CPU资源,实现多样化管理,可更符合实际需求,在保证业务需求的同时还可提高CPU资源的利用。
实际应用中,可以将智能化汽车涉及到的控制系统划分成几个集成式的控制域,可以包括智能驾驶域、智能座舱域、动力控制域、网关域等。
其中,智能驾驶域可以表示集成了与智能驾驶相关的各控制系统的控制域,可以实现感知、融合定位、规划、控制等功能。实际应用中,应用于自动驾驶领域的域控制器能够使车辆具备多传感器融合、定位、路径规划、决策控制的能力,通常需要外接多个摄像头、毫米波雷达、激光雷达等设备,完成的功能包含图像识别、数据处理等。不再需要搭载外设工控机、控制板等多种硬件,并需要匹配核心运算力强的处理器,从而提供自动驾驶不同等级的计算能力的支持,核心主要在于芯片的处理能力,最终目标是能够满足自动驾驶的算力需求,简化设备,大大提高系统的集成度。
智能座舱域可以表示集成了用于控制智能座舱的相关事件的各控制系统的控制域。智能座舱包括了带给驾驶员和乘客更加安全、舒适、智能的驾乘体验所有模块,实际应用中,智能座舱域可以包括座舱系统中的各个系统,具体的可以包括仪表盘、车机屏幕、HMI(HumanMachineInterface,人机界面)、HUD(HeadUpDisplay,平视显示器)抬头显示、车载电话、流媒体/影音系统、通讯模组、T-BOX(TelematicsBOX,车载终端)、驾驶员监控系统、状态监测系统等等。通讯模组可以包括蓝牙、WIFI、NFC等,状态监测系统可以监测各系统的运行状态,也可以监测车内环境信息,例如温度、湿度、空气质量等。实际应用中,也可以根据实际需求划分不同的控制系统,例如智能座舱域也可包括操控系统、娱乐系统、空调系统、通信系统、座椅系统、交互系统、感知系统等。其中,操控系统可以包括方向盘等;娱乐系统可以包括中控台屏幕、后排多媒体等;通信系统可以包括蓝牙、WIFI、NFC等;交互系统可以包括中控屏、仪表盘、HUD等;感知系统可以包括:雷达、摄像头、驾驶员健康监控系统、空气质量传感器等。
动力控制域可以表示集成了用于控制车辆动力的相关事件的各控制系统的控制域。动力控制域可以包括发动机管理系统、电机控制系统、电池管理系统、电力辅助系统、OBC(OnBoardCharger,车载充电)系统、DCDC(DC-DCconverter,直流-直流变换器)系统、PDU(PowerDistributionUnit,高压配电盒)系统等等。动力控制域包含汽车的三大核心部件:电池、电控和电机。其余还包括了减速机、高压控制盒PDU、DC/DC变压器等构成部分。实际应用中,动力控制域还可以包括与汽车行驶相关的控制系统,例如传动系统、行驶系统、转向系统、制动系统等等。
网关域可以表示集成了与网络相关的各控制系统的控制域。实际应用中,网关是整车电子电气构架中不可或缺的重要部件,车辆中存在多种网关,如中央网关、局域网等。中央网关可以在发动机控制单元、转向系统和驾驶辅助系统等多个居于之间进行可靠的数据传输。局域网关负责的是域内的控制单元(ECU)的数据传输。与局域网关相比,中央网关具有更强的处理性能、更多的接口和更高带宽的网络协议。
本说明书实施例中一个控制域内的控制子系统可以运行在上述的第一物理内核集合的物理核或者第二物理内核集合的虚拟机中。优先级较高的任务可以作为特定任务,处理优先级较高的任务的控制系统可以作为特定控制系统;优先级较低的任务可以作为非特定任务,处理优先级较低的任务的控制系统可以作为非特定控制系统。作为一种实施方式,本说明书实施例中的所述特定控制系可以为智能化汽车中的第一控制域中的一个或多个第一控制子系统;
所述第一物理内核集合用于运行处理特定任务的特定控制系统,具体可以包括:
所述第一物理内核集合用于运行所述一个或多个第一控制子系统。
针对智能化汽车的各个控制域中的控制子系统,用于处理优先级较高的任务的控制子系统可以作为特定控制系统,用于处理优先级较低的任务的控制子系统可以作为非特定控制系统。其中,第一控制域可以包括智能座舱域、智能驾驶域、动力控制域、网关域中的至少一种。实际应用中,一个控制域中可以包括若干个子系统,例如,智能驾驶域中可以包括用于处理传感器的采集信息的感知信息子系统、用于对车辆路径进行规划的路径规划子系统等等,本说明实施例中一个控制域中的控制子系统可以运行在物理内核上。
作为一种实施方式,本说明书实施例中上述第一物理内核集合用于运行所述一个或多个第一控制子系统,具体可以包括:
所述一个或多个第一控制子系统运行于所述第一物理内核集合的一个或多个第一物理内核中;所述第一物理内核为同构物理内核。
其中,一个控制子系统可以运行在一个或多个物理内核中,一个或多个物理内核中也可以运行多个控制子系统。例如可以将发动机管理系统运行在物理内核1上,将电机控制系统运行在物理内核2上;也可以将发动机管理系统运行在物理内核1和2上。
本说明书实施例中一个控制域中的部分子系统可以运行在物理内核上,部分子系统可以运行虚拟机上。可选的,本说明书实施例中上述非特定控制系统可以为所述第一控制域中一个或多个第二控制子系统;其中,所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统,具体可以包括:所述第二物理内核集合用于运行所述一个或多个第二控制子系统。
实际应用中,一个控制域中各个子系统处理的任务的优先级可能不同,可能包含用于运行处理优先级较高的特定任务的子系统,还包括用于运行处理优先级交低的非特定任务的子系统,即非特定控制系统。这样可以将处理优先级较高的任务的控制子系统,即特定任务系统,运行在物理内核上,将处理优先级较低的任务的控制子系统,即非特定控制系统,运行在虚拟机上。例如,智能座舱域中包括控制仪表信息的控制子系统,还包括提供音乐视频等娱乐功能的控制子系统,可以将控制仪表信息的控制子系统运行在物理内核中,将提供音乐视频等娱乐功能的控制子系统运行在虚拟机上。
其中,上述第二物理内核集合用于运行所述一个或多个第二控制子系统,具体可以包括:
所述一个或多个第二控制子系统运行于所述第二物理内核集合的一个或多个第二物理内核中;所述第二物理内核为同构物理内核,并作为虚拟机运行。
实际应用中,第二物理内核集合中一个或多个同构物理内核上可以部署虚拟机,用于运行一个或多个用于处理优先级较低的任务的控制子系统。
作为一种实施方式,本说明书实施例中也可以将控制域整体运行在物理内核或虚拟机上,所述第一物理内核集合用于运行处理特定任务的特定控制系统,可以包括:至少一个第二控制域运行在第一物理内核集合上;所述第二控制域用于运行处理特定任务;
所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统,可以包括:至少一个第三控制域运行在第一物理内核集合上;所述第三控制域用于运行处理非特定任务。
例如,可以将智能驾驶域的各个控制子系统运行在物理内核中,将智能座舱域的各个子系统运行在虚拟机中。可以理解的是,实际应用中可以根据实际需求设定控制域以及控制子系统对于各物理内核的运行关系,这里不作具体限定。
实施应用中,若一个控制域中处理的任务包括优先级较高的任务,即特定任务,或者优先级较高的任务,即特定任务,在该控制域中的占比较大,可以将该控制域运行在第一物理内核集合的物理内核中。若一个控制域中处理的任务包括优先级较低的任务,即非特定任务,或者优先级较低的任务,即非特定任务,在该控制域中的占比较大甚至都该控制域中的任务可以归属于优先级较低的任务,即非特定任务,可以将该控制域运行在第二物理内核集合的虚拟机中。
在智能化汽车领域,汽车的安全驾驶是最基本且最重要的任务,有关汽车驾驶的控控制域可以运行在物理内核中;而车载音乐等娱乐功能是为了提高驾驶的舒适性,该类任务的优先级可以较低,属于非特定任务,实现该类功能的控制域可以运行在虚拟机中。
实际应用中,一个控制域可以使用一个或多个物理内核,可以根据控制域需要处理的任务数量确定。本说明书实施例中上述至少一个第二控制域运行在所述第一物理内核集合上,可以包括:至少一个第二控制域系统运行在第一物理内核集合的至少一个或多个第一物理内核中;所述第一物理内核为同构物理内核。
实际应用中,第一物理内核集合或第二物理内核集合的虚拟机中也可以运行两个或多个控制域,上述所述第二控制域或所述第三控制域可以包括智能驾驶域、动力控制域、网关域、智能座舱域中的至少两种。
例如,可以智能驾驶域和动力控制域可以运行于第一物理内核集合的物理内核中,网关域和智能座舱域可以运行于第二物理内核集合的物理内核虚拟机中。可以理解的是,控制域的具体运行位置以及占用的物理内核的数量可以根据实际需求设定,这里不作具体限定。
虚拟机也可以运行在一个或多个物理内核中,一个或多个控制域可以运行在虚拟机上。本说明书实施例中上述至少一个第三控制域运行在所述第二物理内核集合上,可以包括:至少一个第三控制域系统运行在第二物理内核集合的至少一个或多个第二物理内核中;所述第二物理内核为同构物理内核,并作为虚拟机运行。
实际应用中,第二物理内核集合中可以部署一个或多个虚拟机,一个虚拟机中可以运行一个或多个控制域。其中虚拟机所占用的物理内核的数量也可以根据实际需求设定,这里不作具体限定。
本说明书实施例中基于同构多核CPU,通过混合的CPU管理策略,从而灵活的配置系统,可以达到关键的任务不依赖于底层常驻虚拟机;非关键任务通过纯虚拟化技术,提供灵活的配置,满足不同应用的算力要求。
图3为本说明书实施例中提供的一种多系统的架构图。如图3所示,将同构多核CPU进行分类配置,假设该CPU包含n个物理核,其中,x个物理核,分配给某一个特定的控制系统OS0,用于处理特定任务;y个物理核分配给虚拟机v,用于处理非特定任务,其中n=x+y;在虚拟机v上面,去运行其他控制系统OS1、OS2,…OSn。
图4为本说明书实施例中提供的一种多系统的启动的流程示意图。如图4所示,在系统启动后,可以获取物理核的配置信息,在物理CPU的基础上,可以启动特定控制系统,处理特定任务;在软件虚拟机的基础上,可以启动其他控制系统,如OS1、OS2……OSn,这些控制系统的任务可以在软件虚拟机的基础上完成。本说明书实施例中可以将高可靠性的,重要性较高的不依赖底层常驻虚拟机程序的任务,放在OS0上面,独立运行在x个物理CPU核上面;其他任务可以按照需求运行在虚拟机的控制系统之上。当底层虚拟机出现软件缺陷时,OS0的任务不受影响;当GuestOS出现问题时,其他OS不受影响;OS1/OS2等根据实际情况,分配应用,达成高度的软件复用;并且参数x,y可配置,OS1/OS2等GuestOS也可配置。
基于同样的思路,本说明书实施例还提供了一种应用于智能化汽车的芯片,该芯片至少包括一个具有多个同构物理内核的CPU;所述多个同构物理内核中的一部分物理内核属于第一物理内核集合,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合;
所述第一物理内核集合用于运行处理特定任务的特定控制系统;
所述第二物理内核集合用于运行处理非特定任务的虚拟机;所述特定任务的优先级高于所述非特定任务。
本说明书实施例中提供的芯片可以通过混合的CPU管理策略,灵活的配置系统,可以达到关键的任务不依赖于底层常驻虚拟机;非关键任务通过纯虚拟化技术,提供灵活的配置,满足不同应用的算力要求。并且应用于智能化汽车时,本说明书实施例中CPU中的多个物理内核可以同时运行多个系统,可以很好地将每个域控制系统分别集成到1个单芯片上,或者将整个自动驾驶汽车的多个域控制功能集成到1个单芯片上,可以实现真正的自动驾驶芯片,对于智能化汽车领域而言具有重要意义。
基于同样的思路,本说明书实施例还提供了一种应用于智能化汽车的车机运行方法,所述智能化汽车的智能驾驶域、智能座舱域、动力控制域以及网关域运行在至少一个上述芯片上,在车机启动后,所述智能驾驶域、智能座舱域、动力控制域以及网关域至少运行在一个上述同构多核CPU系统中,各个控制域在同构多核CPU下实现通讯。
其中,各个控制域在同构多核CPU下可以利用Cache实现通讯。Cache叫做高速缓冲存储器,是介于中央处理器和主存储器之间的高速小容量存储器。CPU的速度远高于内存,当CPU直接从内存中存取数据时要等待一定时间周期,而Cache则可以保存CPU刚用过或循环使用的一部分数据,如果CPU需要再次使用该部分数据时可从Cache中直接调用,这样就避免了重复存取数据,减少了CPU的等待时间,因而提高了系统的效率。本说明书实施例中各个控制域之间以及各个控制域内的各个控制子系统之间可以利用Cache通讯。
基于同样的思路,本说明书实施例还提供了一种智能化汽车,所述智能化汽车至少应用一个上述芯片,至少一个所述芯片用于运行所述智能化汽车智能驾驶域、智能座舱域、动力控制域、网关域中至少一个控制域。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于芯片、车机运行方法以及智能化汽车而言,由于其基本相似于上述系统的实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,在本说明书实施例中,诸如第一、第二之类的关系术语仅仅用来将一个实体或操作与另一实体或操作区分开来,而不一定要求或暗示这些实体或操作之间存在任何实际的关系或顺序。并且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种应用于智能化汽车的同构多核CPU系统,其特征在于,所述系统至少包括一个具有多个同构物理内核的CPU;所述多个同构物理内核中的一部分物理内核属于第一物理内核集合,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合;
所述第一物理内核集合用于运行处理特定任务的特定控制系统;
所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统;所述特定任务的优先级高于所述非特定任务。
2.根据权利要求1所述的系统,其特征在于,所述特定控制系统为智能化汽车中的第一控制域中的一个或多个第一控制子系统;
所述第一物理内核集合用于运行处理特定任务的特定控制系统,具体包括:
所述第一物理内核集合用于运行所述一个或多个第一控制子系统。
3.根据权利要求2所述的系统,其特征在于,所述第一物理内核集合用于运行所述一个或多个第一控制子系统,具体包括:
所述一个或多个第一控制子系统运行于所述第一物理内核集合的一个或多个第一物理内核中;所述第一物理内核为同构物理内核。
4.根据权利要求1所述的系统,其特征在于,所述非特定控制系统为所述第一控制域中一个或多个第二控制子系统;
所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统,具体包括,
所述第二物理内核集合用于运行所述一个或多个第二控制子系统。
5.根据权利要求4所述的系统,其特征在于,所述第二物理内核集合用于运行所述一个或多个第二控制子系统,具体包括:
所述一个或多个第二控制子系统运行于所述第二物理内核集合的一个或多个第二物理内核中;所述第二物理内核为同构物理内核,并作为虚拟机运行。
6.根据权利要求2或4所述的系统,其特征在于,所述第一控制域具体包括智能座舱域、智能驾驶域、动力控制域、网关域中的至少一种。
7.根据权利要求1所述的系统,其特征在于,所述第一物理内核集合用于运行处理特定任务的特定控制系统,包括:
至少一个第二控制域运行在所述第一物理内核集合上;所述第二控制域用于运行处理特定任务;
所述第二物理内核集合作为虚拟机用于运行处理非特定任务的非特定控制系统,包括:
至少一个第三控制域运行在所述第二物理内核集合上;所述第三控制域用于运行处理非特定任务。
8.根据权利要求7所述的系统,其特征在于,至少一个第二控制域系统运行在第一物理内核集合的至少一个或多个第一物理内核中;所述第一物理内核为同构物理内核;
至少一个第三控制域系统运行在第二物理内核集合的至少一个或多个第二物理内核中;所述第二物理内核为同构物理内核,并作为虚拟机运行。
9.根据权利要求7所述的系统,其特征在于,所述第二控制域或所述第三控制域包括智能驾驶域、动力控制域、网关域、智能座舱域中的至少两种。
10.一种应用于智能化汽车的芯片,其特征在于,所述芯片至少包括一个具有多个同构物理内核的CPU;所述多个同构物理内核中的一部分物理内核属于第一物理内核集合,所述多个同构物理内核中的另一部分物理内核属于第二物理内核集合;
所述第一物理内核集合用于运行处理特定任务的特定控制系统;
所述第二物理内核集合用于运行处理非特定任务的虚拟机;所述特定任务的优先级高于所述非特定任务。
11.一种应用于智能化汽车的车机运行方法,所述智能化汽车的智能驾驶域、智能座舱域、动力控制域以及网关域运行在至少一个权利要求10所述的芯片上,在车机启动后,所述智能驾驶域、智能座舱域、动力控制域以及网关域至少运行在一个权利要求1所述的同构多核CPU系统中,各个控制域在同构多核CPU下实现通讯。
12.一种智能化汽车,其特征在于,所述智能化汽车至少应用一个权利要求10所述的芯片;至少一个所述芯片用于运行所述智能化汽车智能驾驶域、智能座舱域、动力控制域、网关域中至少一个控制域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211714997.8A CN116414558A (zh) | 2022-12-29 | 2022-12-29 | 应用于智能化汽车的同构多核cpu系统、芯片及运行方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211714997.8A CN116414558A (zh) | 2022-12-29 | 2022-12-29 | 应用于智能化汽车的同构多核cpu系统、芯片及运行方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116414558A true CN116414558A (zh) | 2023-07-11 |
Family
ID=87058693
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211714997.8A Pending CN116414558A (zh) | 2022-12-29 | 2022-12-29 | 应用于智能化汽车的同构多核cpu系统、芯片及运行方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116414558A (zh) |
-
2022
- 2022-12-29 CN CN202211714997.8A patent/CN116414558A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106814666A (zh) | 一机多屏的智能座舱系统 | |
CN109981434A (zh) | 一种车载智能系统 | |
US20220161744A1 (en) | Elastic computing for in-vehicle computing systems | |
CN111371875A (zh) | 基于双操作系统的电子控制单元及其处理方法 | |
KR102388836B1 (ko) | 운영 체제 스타트업 가속 | |
CN112000458A (zh) | 汽车计算任务配置给有异构能力的联网设备的方法和装置 | |
CN115334110A (zh) | 用于车辆控制的系统架构、通信方法、车辆、介质及芯片 | |
CN115344031B (zh) | 一种汽车区架构系统和汽车 | |
CN114435279A (zh) | 一种车辆区域控制器、车辆控制系统及车辆 | |
WO2024114425A1 (zh) | 智能座舱算力共享架构、算力共享方法、设备及介质 | |
CN115098142A (zh) | 车载终端的固件升级方法、装置及系统 | |
EP3796159A1 (en) | Operating system startup acceleration | |
EP3167360B1 (en) | Operating system startup acceleration | |
CN116414558A (zh) | 应用于智能化汽车的同构多核cpu系统、芯片及运行方法 | |
CN116643842A (zh) | 虚拟机安全监控处理方法、装置、设备及介质 | |
CN103162973B (zh) | 单芯片多线程的汽车诊断系统及方法 | |
CN114851981A (zh) | 车辆控制系统及车辆 | |
US20200278897A1 (en) | Method and apparatus to provide an improved fail-safe system | |
WO2020129911A1 (ja) | 統括ecu、制御方法、制御システム及びプログラム | |
JP7054844B2 (ja) | 車両、情報提示システム | |
CN116279208B (zh) | 数据处理子系统、域控制器和车辆 | |
CN117041304B (zh) | 一种车载原子服务系统及其控制方法 | |
CN114244878B (zh) | 一种异构多核环境下的设备分布式访问系统及方法 | |
CN216526831U (zh) | 一种座舱域控制器及车辆 | |
WO2024045313A1 (zh) | 一种智能座舱域控系统和车辆 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |