WO2020213401A1 - 車両用装置、車両用装置の制御方法 - Google Patents

車両用装置、車両用装置の制御方法 Download PDF

Info

Publication number
WO2020213401A1
WO2020213401A1 PCT/JP2020/015033 JP2020015033W WO2020213401A1 WO 2020213401 A1 WO2020213401 A1 WO 2020213401A1 JP 2020015033 W JP2020015033 W JP 2020015033W WO 2020213401 A1 WO2020213401 A1 WO 2020213401A1
Authority
WO
WIPO (PCT)
Prior art keywords
priority
queue
input
vehicle device
drawing request
Prior art date
Application number
PCT/JP2020/015033
Other languages
English (en)
French (fr)
Inventor
伸彦 谷端
Original Assignee
株式会社デンソー
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社デンソー filed Critical 株式会社デンソー
Priority to CN202080028326.9A priority Critical patent/CN113727878B/zh
Priority to DE112020001974.8T priority patent/DE112020001974B4/de
Publication of WO2020213401A1 publication Critical patent/WO2020213401A1/ja
Priority to US17/498,888 priority patent/US12008676B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • B60K35/20Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
    • B60K35/21Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays
    • B60K35/23Head-up displays [HUD]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • B60K35/20Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
    • B60K35/28Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor characterised by the type of the output information, e.g. video entertainment or vehicle dynamics information; characterised by the purpose of the output information, e.g. for attracting the attention of the driver
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • B60K35/20Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
    • B60K35/29Instruments characterised by the way in which information is handled, e.g. showing information on plural displays or prioritising information according to driving conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/001Arbitration of resources in a display system, e.g. control of access to frame buffer by video controller and/or main processor
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2360/00Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
    • B60K2360/16Type of output information
    • B60K2360/164Infotainment
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2360/00Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
    • B60K2360/16Type of output information
    • B60K2360/166Navigation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2360/00Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
    • B60K2360/16Type of output information
    • B60K2360/172Driving mode indication
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2360/00Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
    • B60K2360/16Type of output information
    • B60K2360/178Warnings
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2360/00Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
    • B60K2360/18Information management
    • B60K2360/182Distributing information between displays
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K2360/00Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
    • B60K2360/18Information management
    • B60K2360/186Displaying information according to relevancy
    • B60K2360/1876Displaying information according to relevancy according to vehicle situations
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • B60K35/20Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
    • B60K35/21Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays
    • B60K35/22Display screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2358/00Arrangements for display data security
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/08Power processing, i.e. workload management for processors involved in display operations, such as CPUs or GPUs
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2380/00Specific applications
    • G09G2380/10Automotive applications

Definitions

  • This disclosure relates to a vehicle device and a control method for the vehicle device.
  • a meter display capable of displaying a speedometer or the like in full graphic may be adopted. Then, for example, in Patent Document 1, the image displayed on the meter display is divided into a portion requiring a short update cycle and another portion, and the portion having a short update cycle is processed by the CPU to update the image. It has been proposed to reduce the load on the screen.
  • An object of the present disclosure is a vehicle device or vehicle capable of preferentially processing a drawing that requires responsiveness and reducing the possibility of running out of resources of a graphic processing unit for other drawing.
  • the purpose is to provide a control method for a device.
  • the vehicle device is a graphic processing unit in which drawing is performed from a plurality of application programs and drawing is performed based on drawing requests from the plurality of application programs.
  • the graphic processing unit includes a normal queue in which drawing requests for the graphic processing unit are input and a priority queue in which drawing requests to be processed preferentially over the normal queue are input, and the graphic processing unit receives drawing requests input in the priority queue. While giving priority, the drawing request entered in the normal queue is processed in the round robin format.
  • the graphic processing unit gives priority to the drawing request input to the priority queue, it is possible to quickly process the drawing that should be processed with priority. Further, since the drawing request input to the normal queue is processed in the round robin format, the resources can be evenly and appropriately distributed.
  • FIG. 1 is a diagram showing a configuration example of a cockpit system according to the first embodiment.
  • FIG. 2 is a diagram showing an example of an electrical configuration of a vehicle device.
  • FIG. 3 is a diagram showing a software configuration example of the vehicle device.
  • FIG. 4 is a diagram showing an example of the display mode of the meter display.
  • FIG. 5 is a diagram showing an example of a display mode of the center display.
  • FIG. 6 is a diagram showing an example of a display mode of the head-up display.
  • FIG. 7 is a diagram showing an example of the physical surface assigned to each application.
  • FIG. 1 is a diagram showing a configuration example of a cockpit system according to the first embodiment.
  • FIG. 2 is a diagram showing an example of an electrical configuration of a vehicle device.
  • FIG. 3 is a diagram showing a software configuration example of the vehicle device.
  • FIG. 4 is a diagram showing an example of the display mode of the meter display.
  • FIG. 5 is a diagram showing an
  • FIG. 8 is a diagram showing a flow of processing for requesting drawing.
  • FIG. 9 is a diagram showing an example of the operation mode of the GPU.
  • FIG. 10 is FIG. 1 showing another configuration example of the vehicle device.
  • FIG. 11 is FIG. 2 showing another configuration example of the vehicle device.
  • FIG. 12 is a diagram showing a problem at the time of preemption to the GPU according to the second embodiment.
  • FIG. 13 is a diagram showing a flow of processing for identifying a priority portion.
  • FIG. 14 is a diagram showing an aspect of preemption to the GPU.
  • FIG. 15 is a diagram showing an example of a display update mode.
  • FIG. 16 is a diagram showing an example of another update mode of the display.
  • FIG. 17 is a diagram showing an example of priorities for each application according to the third embodiment.
  • FIG. 18 is a diagram showing an example of priority order for each OS.
  • FIG. 19 is a diagram showing an example of priorities for each CPU module and each core.
  • FIG. 20 is
  • the vehicle device 1 constitutes, for example, a cockpit system 5 including three indicators, a meter display 2, a center display 3, and a head-up display 4.
  • the meter display 2 is composed of, for example, a liquid crystal display or an organic EL display, and is assumed to be provided near the front of the driver on the dashboard.
  • the center display 3 is composed of, for example, a liquid crystal display or an organic EL display, and is assumed to be provided near the center console. As will be described later, this meter display has a so-called full graphic display capable of displaying speed, warnings, and the like.
  • the head-up display 4 is composed of, for example, a liquid crystal display, an organic EL display, or a projector that projects an image on a front window, and is assumed to be provided near the front of the driver on the dashboard.
  • the number, arrangement, or configuration of the indicators is an example, and the present invention is not limited to these.
  • FIG. 1 shows an example in which the vehicle device 1 is connected to a plurality of indicators
  • the vehicle device 1 of the present embodiment is derived from a plurality of application programs (hereinafter, applications) as described later. It solves the problem when drawing is performed. Therefore, the number of indicators connected to the vehicle device 1 may be one or more.
  • This vehicle device 1 is communicably connected to some electronic control devices 6 (hereinafter, ECU 6) provided in the vehicle.
  • ECU 6 electronice control devices 6
  • the vehicle device 1 can be considered as one of the ECUs 6, the vehicle device 1 and the ECU 6 are separated in the present specification for easy understanding.
  • the vehicle device 1 includes a CPU 10, a bus master 11, a main memory 12, a graphic processing unit 13 (hereinafter, GPU 13), an image processing unit 14 (hereinafter, IPU 14), a communication unit 15, and the like. ..
  • GPU 13 is a functional unit that actually draws the surface instructed by the application. That is, a drawing request described later is input to the GPU 13 from the application, and the GPU 13 draws the actual surface based on the drawing request.
  • the surface is simply the image data that is the source of the content image displayed at a certain moment.
  • the GPU 13 is provided with a normal queue 13a for inputting a drawing request and a priority queue 13b for inputting a drawing request to be processed preferentially.
  • the IPU 14 is a functional unit that reads out the frame buffer and outputs it to the display as, for example, a video signal. That is, the content drawn on the frame buffer by the IPU 14 is transferred to the display, so that the content is displayed on the display.
  • the IPU 14 does not necessarily have to output the content in the form of a video signal, and may be configured to output the content in the data format and reproduce the content on the display side.
  • the CPU 10 includes a plurality of cores 10a.
  • the number of cores 10a is eight. These eight cores 10a are grouped into four cores and assigned to the two CPU modules 16A and the CPU module 16B. That is, a plurality of CPU modules 16 that can operate independently functionally are provided in the vehicle device 1.
  • the CPU module 16A is assigned to the application group 22A that requires relatively real-time performance
  • the CPU module 16B is assigned to the application group 22B that does not require relatively real-time performance.
  • a or B is not added and is simply referred to as the CPU module 16.
  • the vehicle device 1 has an operating system 20 (hereinafter, OS20) executed on the CPU 10, and a plurality of applications 21 are executed on the OS 20.
  • OS20 operating system 20
  • applications 21 are executed on the OS 20.
  • a meter application 21a, a navigation application 21b, a safety application 21c, a video application 21d, a HUD application 21e, and the like are provided.
  • HUD is an abbreviation for Head Up Display.
  • each application 21 is an example, and the application 21 executed on the OS 20 is not limited to these.
  • the meter application 21a notifies the user of the speed, rotation speed, warning, etc. of the vehicle, and mainly draws the surface displayed on the meter display 2.
  • the meter application 21a displays contents such as a speedometer M1 as a meter, a rotation speedometer M2, or a warning light M3 also called a telltale, as in the user interface 23 shown as a normal display mode in FIG. Draw a surface for.
  • the GPU 13 is actually in charge of drawing, and the meter application 21a or the like outputs a drawing request to the GPU 13.
  • the expression such that the meter application 21a draws is used here. This also applies to the other application 21.
  • the speedometer M1 has a needle image M1a whose display needs to be updated periodically and in real time in order to show a change in the speed of the vehicle, and a scale image which is assumed to have less change in display than the needle image M1a. It is composed of M1b.
  • the rotation speed meter M2 also has a needle image M2a whose display needs to be updated periodically and in real time in order to indicate a change in the rotation speed, and a scale on which the display is expected to change less than the needle image M2a. It is composed of the image M1b.
  • the background image MB is drawn on a layer different from the needle image M1a and the scale image M1b. Note that these images are examples.
  • the surface drawn by the meter application 21a can also be displayed on the center display 3 and the head-up display 4. Further, the surface drawn by the meter application 21a is required to have a relatively real-time property as compared with the surface drawn by the other illustrated applications 21.
  • the navigation application 21b realizes the navigation function and mainly draws the surface displayed on the center display 3. For example, as shown in FIG. 5, the navigation application 21b draws a surface for displaying contents such as a navigation screen M4 including a map, a current position of a vehicle, and the like. However, the surface drawn by the navigation application 21b can be displayed on the meter display 2 as shown in FIG. 4, for example, as the navigation display mode, or can be displayed on the head-up display 4.
  • the safety application 21c realizes various functions for displaying menus and driving support, and mainly draws a surface displayed on the center display 3. For example, as shown in FIG. 5, the safety application 21c draws a surface for displaying contents such as a home screen M5 in which a plurality of icons are arranged to select a target function or content.
  • the surface drawn by the safety application 21c can be displayed on the meter display 2 as shown in FIG. 4 as the menu display mode, or can be displayed on the head-up display 4.
  • the HUD application 21e notifies the user of, for example, the speed and future course, and mainly draws the surface displayed on the head-up display 4. For example, as shown in FIG. 6, the HUD application 21e draws a surface for displaying the current speed information M6 and time information M7, or the course information M8 indicating the distance to the corner and the direction of the turn. However, the surface drawn by the HUD application 21e can also be displayed on the meter display 2 and the center display 3.
  • each of these applications 21 is individually assigned a physical surface 30 for drawing a surface. That is, each application 21 functions as a drawing unit that draws a surface, which is a content holding unit, on the physical surface 30 assigned to itself. In addition, each application 21 corresponds to a synchronization unit that captures and synchronizes a surface, which is a content holding unit, on a physical surface 30 assigned to itself.
  • These physical surfaces 30 are secured on the cache memory 17 and the main memory 12 in a size capable of drawing, that is, arranging the necessary surfaces.
  • the size of the physical surface 30 does not necessarily have to match the number of pixels of the display. This is because the required surface is selected from the surfaces drawn on the physical surface 30 and displayed on the display.
  • surfaces SA1 to SA3 are drawn on the physical surface 30A by the meter application 21a.
  • the surface SB1 is drawn on the physical surface 30B by the navigation application 21b.
  • Surfaces SC1 and SC2 are drawn on the physical surface 30C by the safety application 21c.
  • a plurality of surfaces drawn by the safety application 21c are collectively referred to as a surface SC1.
  • the surface SD1 is drawn on the physical surface 30D by the video application 21d.
  • Surfaces SE1 to SE3 are drawn on the physical surface 30E by the HUD application 21e. Note that these surfaces are examples.
  • the animation operation means that the position and size of the image indicating the content gradually changes, the image rotates, the user interface 23 moves as a whole with the swipe operation, and the image gradually moves. It is a display mode in which the image fades in or out, or the color of the image changes.
  • the speedometer M1, the rotation speedometer M2, or the warning light M3 described above are indispensable when using a vehicle, and their display is required to be responsive.
  • the speedometer M1 and the rotation speedometer M2 are images that need to be updated periodically, for example, 60 times per second, and need to be updated in real time according to changes in vehicle speed or the like. .. This is because if the display is not updated within 1/60 second, the needle image M1a may appear stuck or may not be displayed smoothly.
  • the vehicle device 1 displays different contents on one display such as the meter display 2, and controls a plurality of displays in the present embodiment. That is, the vehicle device 1 is configured to be able to display the contents drawn by different applications 21.
  • the plurality of applications 21 share the resources of the CPU 10 and the GPU 13, and the plurality of CPU modules share the resources of the GPU 13.
  • a simple configuration such as giving priority to a drawing request from the meter application 21a may cause a problem in the other application 21.
  • drawing that requires responsiveness can be preferentially processed and GPU 13 for other drawing can be preferentially processed as follows.
  • the risk of running out of resources is reduced.
  • the following processing is performed by each application 21 and GPU 13, but for the sake of simplification of the description, the vehicle device 1 will be mainly described here.
  • the vehicle device 1 executes the process shown in FIG. 8 and prepares for drawing in step S1. To put it simply, this drawing preparation is a process of preparing the size and color for drawing the surface. Subsequently, the vehicle device 1 determines in step S2 whether or not the drawing should be prioritized.
  • the GPU 13 is provided with a normal queue 13a and a priority queue 13b. That is, the vehicle device 1 is configured to preempt the GPU 13. As a result, it is possible to suppress an increase in the load on the CPU 10 side, and for example, it is possible to avoid a situation in which the execution of another application 21 is hindered as a result of giving priority to the processing of one application 21.
  • the GPU 13 preferentially processes the drawing request input to the priority queue 13b, and then processes the drawing request in the round robin format if there is a drawing request in the normal queue 13a. That is, the GPU 13 sequentially processes the drawing requests input to the normal queue 13a while allocating resources in chronological order. As a result, the drawing request input to the normal queue 13a is evenly allocated resources and the surface is drawn.
  • the vehicle device 1 draws from a plurality of applications 21, a GPU 13 that draws based on drawing requests from the plurality of applications 21, a normal queue 13a into which a drawing request to the GPU 13 is input, and a normal queue 13a.
  • the GPU 13 includes a priority queue 13b for inputting a drawing request to be processed preferentially to the normal queue 13a, and the GPU 13 gives priority to the drawing request input to the priority queue 13b while giving priority to the drawing request input to the normal queue 13a. Is processed in the round robin format.
  • At least one of the plurality of applications 21 inputs an image drawing request that requires periodic update to the priority queue 13b.
  • drawing requests such as the speedometer M1 and the rotation speedometer M2 from the meter application 21a can be preferentially processed, and smooth display can be performed.
  • At least one of the plurality of applications 21 inputs a request for drawing an image for warning display to the priority queue 13b.
  • a drawing request such as a warning light M3 from the meter application 21a can be preferentially processed, and a highly responsive display can be performed.
  • a plurality of applications 21 are prioritized, drawing requests from a meter application 21a or the like having a relatively high priority are input to the priority queue 13b, and the priority is relatively low, for example.
  • a drawing request from the navigation application 21b or the like is input to the normal queue 13a.
  • OS20A is assigned to the CPU module 16A
  • OS20B is assigned to the CPU module 16B.
  • the OS 20A is in charge of processing having a relatively high real-time property
  • the OS 20B is in charge of a process having a relatively low real-time property.
  • OS20A executes a meter application 21a that requires real-time performance
  • OS20B executes a navigation application 21b, a safety application 21c, a video application 21d, a HUD application 21e, etc. that do not require real-time performance as much as OS20A. ..
  • the type and number of OS 20s or the arrangement of application 21 applications is an example, and is not limited thereto.
  • the hypervisor 40 may be configured to be executed as a function of the OS 20A. That is, the OS 20A may be executed on the CPU 10, the hypervisor 40 may be operated as a function of the OS 20, and the OS 20B may be executed on the hypervisor 40.
  • the vehicle device 1 may be configured to include a plurality of CPUs 10 and execute OS20A and OS20B on each CPU10, respectively.
  • the CPU 10A executes, for example, the meter application 21a, which requires real-time performance, and the CPU 10B does not require real-time performance as much as the CPU 10A side, such as a navigation application 21b, a safety application 21c, a video application 21d, or a HUD application 21e. Can be executed.
  • the number of CPUs 10 or the arrangement of applications 21 is an example, and is not limited thereto.
  • the meter needle images M1a and M2a or the warning light M3 have been described as examples of images that need to be updated periodically, but the navigation screen M4, the home screen M5, the speed information M6, and the time information M7 have been described.
  • the course information M8 and the like are also included in the image that needs to be updated periodically.
  • a drawing request from the meter application 21a is input to the priority queue 13b, and a drawing request from the navigation application 21b and a drawing request from the safety application 21c are performed at about the same time. Is normally entered in the queue 13a.
  • the GPU 13 first processes the drawing request input to the priority queue 13b, and then processes the drawing request input to the normal queue 13a in a round robin format.
  • the drawing request is input to the priority queue 13b at a cycle of, for example, 1/60 second as described above. Therefore, when the GPU 13 processes the drawing request from the meter application 21a and subsequently processes the drawing request from the navigation application 21b, the drawing request from the meter application 21a is input to the priority queue 13b again. Can be.
  • the drawing request from the safety application 21c is postponed, so to speak. At this time, even if a new drawing request is output from the safety application 21c while the GPU 13 is processing the drawing request from the meter application 21a, the previous drawing request from the safety application 21c remains in the normal queue 13a. There is.
  • the drawing request from each application 21 can be processed as follows.
  • the vehicle device 1 executes a process of identifying the priority portion shown in FIG. Although this process is performed on the application 21 side, the vehicle device 1 is mainly used here for the sake of simplification of the explanation. Subsequently, in step S2, the vehicle device 1 determines whether or not the drawing is for the priority portion.
  • the needle image M1a of the speedometer M1 may be the priority part, and the scale image M1b may not be the priority part.
  • the needle image M2a of the rotation speed meter M2 is set as the priority part and the scale image M2b is not set as the priority part.
  • the warning light M3 all of them can be set as priority parts.
  • the needle image M1a and the scale image M1b are parts that can be considered as parts when displaying the speedometer M1. Then, as shown in FIG. 15, the position of the needle image M1a is considered to change before and after the update, while the scale image M1b substantially changes before and after the update. It is thought that it will not.
  • the scale image M1b may also change before and after the update.
  • the needle image M1a of the speedometer M1, the needle image M2a of the rotation speedometer M2, and the warning light M3, which are considered to change before and after the update, are viewed from the entire screen. It turns out that it is a small part. Therefore, it can be expected that the period required for updating the priority part can be significantly shortened as compared with the period required for updating the entire screen.
  • the vehicle device 1 inputs a drawing request of an image to be displayed on the meter display 2 capable of full graphic display, and as priority parts, the needle image M1a, the needle image M2a, and the warning light M3 of the meter.
  • a drawing request of an image to be displayed on the meter display 2 capable of full graphic display, and as priority parts, the needle image M1a, the needle image M2a, and the warning light M3 of the meter.
  • at least one of the drawing requests of the above is input to the priority queue 13b.
  • step S12 determines that it is a drawing request for the priority part. In this case, since step S12 is YES, the vehicle device 1 outputs the drawing request to the priority queue 13b. On the other hand, when the vehicle device 1 determines that the drawing request is not for the priority portion, the drawing request is output to the normal queue 13a because step S12 is NO.
  • the vehicle device 1 specifies the priority portion to be preferentially drawn in the entire screen drawn from one application 21, and requests the drawing of the entire screen described as ReqA in the first embodiment. Is divided into a drawing request for the priority part shown as ReqA1 in FIG. 14 and a drawing request for other parts shown as ReqA2. Although it is shown as a "needle" in FIG. 14 for convenience, the drawing request for the priority portion includes the drawing request of the warning light M3.
  • the vehicle device 1 preempts the GPU 13, it is necessary to be responsive to drawing requests when drawing is performed from a plurality of applications 21 as in the first embodiment described above. It becomes possible to preferentially process the drawing to be performed, and it is possible to reduce the possibility that the resources of the GPU 13 for other drawing will be insufficient. This also applies to the control method according to the present embodiment.
  • At least one of the plurality of applications 21 specifies a priority portion to be preferentially processed among the images requested to be drawn, and inputs the drawing request for the priority portion to the priority queue 13b.
  • a drawing request for a portion other than the priority portion is input to the normal queue 13a.
  • priority drawing can be performed in a short period of time, and a margin for processing the drawing request input to the normal queue 13a in the round robin format can be secured, and the drawing request input to the normal queue 13a can be processed. It is possible to reduce the risk of being unable to process. That is, it is possible to process a drawing having a high priority and a drawing having a relatively low priority in consideration of the influence on the other application 21 when giving priority to one application 21.
  • At least one of the plurality of applications 21 inputs a drawing request of an image to be displayed on the meter display 2 capable of full graphic display, and a needle image of the meter is used as a priority part.
  • a drawing request for a portion corresponding to M1a and the needle image M2a is input to the priority queue 13b.
  • at least one of the plurality of applications 21 inputs an image for warning display, that is, a drawing request of the warning light M3 into the priority queue 13b.
  • the priority part can be updated appropriately, but there are some concerns.
  • the drawing request of the needle image M1a of the speedometer M1 is input to the priority queue 13b and the drawing of other parts is input to the normal queue 13a, as shown in FIG. 16 as a comparative example depending on the timing.
  • the needle image M1a may be displayed as an afterimage at the position before the update on the screen after the update. This is because the updated needle image M1a is drawn with priority, and the other images are updated later.
  • the vehicle device 1 erases the priority portion drawn last time.
  • the drawing request of is input to the priority queue 13b.
  • the needle image M1a at the position before the update may be erased as schematically shown by a broken line and may be displayed as an afterimage. Can be prevented.
  • the priority part drawn last time is a small part of the screen as described above, and it is considered that there is little concern that resources for other applications 21 will be insufficient for erasing. Further, since the priority portion drawn last time is already drawn and does not need to be prepared again, it is possible to prevent the load on the CPU 10 from increasing unnecessarily. In addition, the current state of the part where the image for which the drawing request is placed is temporarily stored, and when the drawing request is made next time, the stored part is drawn to erase the previously drawn area. It can also be.
  • the needle image M1a, the needle image M2a, and the warning light M3 have been mainly described as priority parts, but for example, the course information M8 is information referred to during traveling and depends on the movement of the vehicle. It is necessary to update it from time to time, and real-time performance is also required. Therefore, the HUD application 21e can output the drawing request to the priority queue 13b with the course information M8 as the priority part, and output the other parts to the normal queue 13a. This also applies to the other application 21.
  • the vehicle device 1 prioritizes a plurality of applications 21 in such a manner that the lower the numerical value, the higher the priority, and the relatively high priority, for example, the meter application.
  • a drawing request from 21a or the like may be input to the priority queue 13b, and a drawing request from a relatively low priority such as the navigation application 21b may be input to the normal queue 13a.
  • the plurality of OS 20s are prioritized and relatively as shown in FIG. 18 for each OS.
  • a drawing request from the OS 20 having a higher priority can be input to the priority queue 13b, and a drawing request from the OS 20 having a relatively lower priority can be input to the normal queue 13a.
  • the vehicle device 1 includes a plurality of CPU modules 16 as shown in FIGS. 2, 10 or 11, the plurality of CPU modules 16 have priority as shown in FIG. 19 for each module.
  • the drawing request from the CPU module 16 having a relatively high priority is input to the priority queue 13b, and the drawing request from the CPU module 16 having a relatively low priority is input to the normal queue 13a. Can be done.
  • the vehicle device 1 includes a plurality of cores 10a as shown in FIGS. 2, 10 or 11, the plurality of cores 10a are prioritized as shown in FIG. 19 for each core.
  • the drawing request from the core 10a having a relatively high priority can be input to the priority queue 13b, and the drawing request from the core 10a having a relatively low priority can be input to the normal queue 13a.
  • the vehicle device 1 includes a plurality of CPUs 10 as shown in FIG. 11 described above, the plurality of CPUs 10 may be prioritized as shown in FIG. 19 for each CPU. ..
  • the vehicle device 1 when the vehicle device 1 is connected to a plurality of indicators as shown in FIGS. 1, 2, 10 or 11 described above, the vehicle device 1 is connected to the plurality of indicators as shown in FIG. 20 for each indicator. It is possible to give a priority, input a drawing request for a display having a relatively high priority to the priority queue 13b, and input a drawing request for a display having a relatively low priority to the normal queue 13a. ..
  • the controls and methods thereof described in the present disclosure are realized by a dedicated computer provided by configuring a processor and memory programmed to perform one or more functions embodied by a computer program. May be done.
  • the controls and methods thereof described in the present disclosure may be implemented by a dedicated computer provided by configuring the processor with one or more dedicated hardware logic circuits.
  • the control unit and method thereof described in the present disclosure may be a combination of a processor and memory programmed to perform one or more functions and a processor composed of one or more hardware logic circuits. It may be realized by one or more dedicated computers configured.
  • the computer program may be stored in a computer-readable non-transitional tangible recording medium as an instruction executed by the computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Transportation (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Instrument Panels (AREA)

Abstract

実施形態による車両用装置1は、複数のアプリ21から描画が行われるものであって、複数のアプリ21からの描画依頼に基づいて描画を行うGPU13と、GPU13に対する描画依頼が入力される通常キュー13aと、通常キュー13aよりも優先的に処理する描画依頼が入力される優先キュー13bとを備えている。そして、GPU13は、優先キュー13bに入力された描画依頼を優先しつつ、通常キュー13aに入力された描画依頼をラウンドロビン形式で処理する。

Description

車両用装置、車両用装置の制御方法 関連出願の相互参照
 本出願は、2019年4月16日に出願された日本出願番号2019-077778号に基づくもので、ここにその記載内容を援用する。
 本開示は、車両用装置、車両用装置の制御方法に関する。
 車両用装置では、速度計などをフルグラフィック表示が可能なメータディスプレイが採用されることがある。そして、例えば特許文献1では、メータディスプレイに表示される画像を短い更新周期が必要となる部位とその他の部位とに分け、更新周期が短い部位をCPUにて処理させることにより、画像を更新する際の負荷を低減することが提案されている。
特開2016-61837号公報
 ところで、近年では、1つの表示器に異なるコンテンツを表示したり、複数の表示器を1つの車両用装置で制御したりすることがある。つまり、車両用装置では、複数のアプリケーションプログラムから描画が行われることがある。この場合、複数のアプリでCPUやグラフィック処理ユニットのリソースを共有することになるものの、速度の表示や警告の表示などは、即応性が必要とされることから、いわゆるマルチメディア系の描画よりも優先して処理つまり描画する必要がある。
 しかしながら、速度や警告の描画を全てにおいて優先してしまうと、他のアプリケーションプログラムへのGPUのリソースが不足してしまい、結果として、マルチメディア系のアプリケーションプログラムによる描画、例えばナビゲーション画面の表示やホーム画面の表示などに不具合が生じるおそれがある。
 本開示の目的は、即応性が必要とされる描画を優先的に処理することができるとともに、他の描画へのグラフィック処理ユニットのリソースが不足するおそれを低減することができる車両用装置、車両用装置の制御方法を提供することにある。
 上記目的を達成するために、本開示では、車両用装置は、複数のアプリケーションプログラムから描画が行われるものであって、複数のアプリケーションプログラムからの描画依頼に基づいて描画を行うグラフィック処理ユニットと、グラフィック処理ユニットに対する描画依頼が入力される通常キューと、通常キューよりも優先的に処理する描画依頼が入力される優先キューと、を備え、グラフィック処理ユニットは、優先キューに入力された描画依頼を優先しつつ、通常キューに入力された描画依頼をラウンドロビン形式で処理する。
 このように、グラフィック処理ユニットに通常キューと優先キューとを設け、グラフィック処理ユニットに対してプリエンプションを行うことにより、CPU側の負荷が増加することを抑制できる。これにより、CPU側であるアプリケーションプログラムの処理を優先した結果、他のアプリケーションプログラムの実行が妨げられるような状況を回避することができる。
 そして、グラフィック処理ユニットは、優先キューに入力された描画依頼を優先するため、優先して処理すべき描画については迅速に処理することができる。また、通常キューに入力された描画依頼については、ラウンドロビン形式で処理されることから、リソースを均等且つ適切に分配することができる。
 したがって、複数のアプリケーションプログラムから描画が行われる場合であっても、即応性が必要とされる描画を優先的に処理することができるとともに、他の描画へのグラフィック処理ユニットのリソースが不足するおそれを低減することができる。そして、1つの表示器あるいは各表示器において、滑らかな表示を実現することができる。
 本開示についての上記目的およびその他の目的、特徴や利点は、添付の図面を参照しながら下記の詳細な記述により、より明確になる。その図面は、
図1は、第1実施形態におけるコックピットシステムの構成例を示す図であり、 図2は、車両用装置の電気的構成例を示す図であり、 図3は、車両用装置のソフトウェア構成例を示す図であり、 図4は、メータディスプレイの表示態様の一例を示す図であり、 図5は、センターディスプレイの表示態様の一例を示す図であり、 図6は、ヘッドアップディスプレイの表示態様の一例を示す図であり、 図7は、各アプリに割り当てられている物理面の一例を示す図であり、 図8は、描画依頼を行う処理の流れを示す図であり、 図9は、GPUの動作態様の一例を示す図であり、 図10は、車両用装置の他の構成例を示す図その1であり、 図11は、車両用装置の他の構成例を示す図その2であり、 図12は、第2実施形態による、GPUへのプリエンプション時の課題を示す図であり、 図13は、優先部位を特定する処理の流れを示す図であり、 図14は、GPUへのプリエンプションの態様を示す図であり、 図15は、表示の更新態様の一例を示す図であり、 図16は、表示の他の更新態様の一例を示す図であり、 図17は、第3実施形態によるアプリ別の優先順位の一例を示す図であり、 図18は、OS別の優先順位の一例を示す図であり、 図19は、CPUモジュール別、および、コア別の優先順位の一例を示す図であり、 図20は、表示器別の優先順位の一例を示す図である。
 以下、複数の実施形態について図面を参照しながら説明する。なお、各実施形態において実質的に共通する部位には同一の符号を付して説明する。
   (第1実施形態)
 以下、第1実施形態について説明する。図1に示すように、車両用装置1は、例えば、メータディスプレイ2、センターディスプレイ3およびヘッドアップディスプレイ4の3つの表示器を備えるコックピットシステム5を構成している。
 メータディスプレイ2は、例えば液晶ディスプレイや有機ELディスプレイで構成されており、ダッシュボードの運転者の正面付近に設けられるものを想定している。センターディスプレイ3は、例えば液晶ディスプレイや有機ELディスプレイで構成され、センターコンソール付近に設けられるものを想定している。このメータディスプレイは、後述するように、いわゆるフルグラフィック表示で速度や警告などを表示可能な構成となっている。
 ヘッドアップディスプレイ4は、例えば液晶ディスプレイや有機ELディスプレイあるいはフロントウィンドに画像を投影する投影器で構成されており、ダッシュボード上の運転者の正面付近に設けられるものを想定している。ただし、表示器の数や配置あるいは構成は一例であり、これらに限定されない。
 なお、図1では車両用装置1が複数の表示器に接続されている例を示しているが、本実施形態の車両用装置1は、後述するように複数のアプリケーションプログラム(以下、アプリ)から描画が行われる際の課題を解決するものである。そのため、車両用装置1に接続される表示器は1つ以上であればよい。
 この車両用装置1は、車両に設けられている幾つかの電子制御装置6(以下、ECU6)と通信可能に接続されている。なお、車両用装置1もECU6の1つとして考えることはできるものの、理解し易くするために、本明細書では車両用装置1とECU6とを分けている。
 車両用装置1は、図2に示すように、CPU10、バスマスタ11、メインメモリ12、グラフィック処理ユニット13(以下、GPU13)、画像処理ユニット14(以下、IPU14)、通信部15などを備えている。
 GPU13は、アプリから指示されたサーフェスを実際に描画する機能部である。つまり、アプリからGPU13に対して後述する描画依頼が入力され、その描画依頼に基づいて、GPU13が実際のサーフェスを描画する。ここで、サーフェスとは、平易に言えば、ある瞬間に表示されているコンテンツ画像の元となる画像データである。また、GPU13には、後述する図9に示すように、描画依頼を入力する通常キュー13aと、優先的に処理すべき描画依頼が入力される優先キュー13bとが設けられている。
 IPU14は、フレームバッファを読み出して表示器に例えば映像信号として出力する機能部である。つまり、IPU14によりフレームバッファ上に描画されたコンテンツを表示器に転送することにより、表示器にコンテンツが表示される。なお、IPU14は、必ずしもコンテンツを映像信号の形式で出力する必要はなく、データ形式で出力して表示器側でコンテンツに再生する構成とすることもできる。
 CPU10は、複数のコア10aを備えている。なお、ここでは、一例としてコア10aの数は8個としている。これら8個のコア10aは、4個ずつにとりまとめられ、2つのCPUモジュール16AとCPUモジュール16Bに割り振られている。つまり、車両用装置1内には、機能的に独立して動作可能な複数のCPUモジュール16が設けられている。
 また、CPUモジュール16Aは相対的にリアルタイム性が要求されるアプリケーション群22Aに割り当てられ、CPUモジュール16Bは相対的にリアルタイム性が要求されないアプリケーション群22Bに割り当てられている。以下、CPUモジュール16に共通する説明をする際にはAまたはBを付さず、単にCPUモジュール16と称する。
 各CPUモジュール16およびGPU13にはそれぞれ専用のキャッシュメモリ17が設けられている。以下、CPUモジュール16Aに設けられているものを便宜的にキャッシュ17Aと称し、CPUモジュール16Bに設けられているものを便宜的にキャッシュ17Bと称し、GPU13に設けられているものを便宜的にキャッシュ17Gと称する。そして、各キャッシュメモリ17は、バス11aおよびバスマスタ11を介してメインメモリ12とIPU14に接続されており、相互にデータの送受信が可能に構成されている。
 通信部15は、他のECU6との間の通信を行う。この通信部15は、例えばController Area Networkインターフェースで構成されている。なお、ECU6の種類によっては、例えばWifiのような無線通信方式、あるいは、USBのような有線通信方式を採用することもできる。
 車両用装置1は、図3に示すように、CPU10上でオペレーティングシステム20(以下、OS20)が実行され、そのOS20上で複数のアプリ21が実行されている。OS20上で実行されるアプリ21としては、メータアプリ21a、ナビアプリ21b、安全アプリ21c、映像アプリ21d、HUDアプリ21eなどが設けられている。なお、HUDは、Head Up Displayの略である。また、各アプリ21は一例であり、OS20上で実行されるアプリ21はこれらに限定されない。
 メータアプリ21aは、車両の速度や回転数あるいは警告などをユーザに報知するものであるとともに、主にメータディスプレイ2に表示されるサーフェスを描画する。例えば、メータアプリ21aは、図4に通常表示モードとして示すユーザインターフェース23のように、メータとしての速度計M1や回転数計M2、あるいは、テルテールとも称される警告灯M3などのコンテンツを表示するためのサーフェスを描画する。
 なお、上記したように、実際に描画を担当するのはGPU13であり、メータアプリ21aなどは、GPU13に対して描画依頼を出力するものである。ただし、説明の簡略化のため、ここではメータアプリ21aが描画するといった表現をしている。これは、他のアプリ21についても同様である。
 この、速度計M1は、車両の速度の変化を示すために周期的且つリアルタイムで表示を更新する必要がある針画像M1aと、針画像M1aに比べると表示の変化が少ないと想定される目盛り画像M1bとで構成されている。同様に、回転数計M2も、回転数の変化を示すために周期的且つリアルタイムで表示を更新する必要がある針画像M2aと、針画像M2aに比べると表示の変化が少ないと想定される目盛り画像M1bとで構成されている。また、メータディスプレイ2の場合、針画像M1aや目盛り画像M1bなどとは異なるレイヤーに、背景画像MBが描画されている。なお、これらの画像は一例である。
 ただし、メータアプリ21aが描画するサーフェスは、センターディスプレイ3やヘッドアップディスプレイ4にも表示可能である。また、メータアプリ21aによって描画されるサーフェスは、例示した他のアプリ21によって描画されるサーフェスよりも、相対的にリアルタイム性が要求されるものとなっている。
 ナビアプリ21bは、ナビゲーション機能を実現するものであるとともに、主にセンターディスプレイ3に表示されるサーフェスを描画する。例えば、ナビアプリ21bは、図5に示すように、地図や車両の現在位置などを含むナビゲーション画面M4などのコンテンツを表示するためのサーフェスを描画する。ただし、ナビアプリ21bが描画したサーフェスは、例えば図4にナビ表示モードとして示すようにメータディスプレイ2に表示することもできるし、ヘッドアップディスプレイ4にも表示することもできる。
 安全アプリ21cは、メニューの表示や運転支援用の各種の機能を実現するものであるとともに、主にセンターディスプレイ3に表示されるサーフェスを描画する。例えば、安全アプリ21cは、図5に示すように、対象となる機能やコンテンツを選択するために複数のアイコンを配置したホーム画面M5などのコンテンツを表示するためのサーフェスを描画する。ただし、安全アプリ21cが描画したサーフェスは、例えば図4にメニュー表示モードとして示すようにメータディスプレイ2に表示することもできるし、ヘッドアップディスプレイ4にも表示することもできる。
 HUDアプリ21eは、例えば速度や今後の進路などをユーザに報知するものであるとともに、主にヘッドアップディスプレイ4に表示されるサーフェスを描画する。例えば、HUDアプリ21eは、図6に示すように、現在の速度情報M6や時刻情報M7あるいは曲がり角までの距離や曲がる方向などを示す進路情報M8を表示するためのサーフェスを描画する。ただし、HUDアプリ21eが描画したサーフェスは、メータディスプレイ2やセンターディスプレイ3にも表示可能である。
 これらの各アプリ21には、図7に示すように、サーフェスを描画するための物理面30が個別に割り当てられている。つまり、各アプリ21は、コンテンツの保持単位であるサーフェスを自身に割り当てられている物理面30に描画する描画部として機能する。また、各アプリ21は、コンテンツの保持単位であるサーフェスを自身に割り当てられている物理面30に取り込んで同期させる同期部に相当する。
 これらの物理面30は、キャッシュメモリ17やメインメモリ12上に、必要となるサーフェスを描画つまりは配置できる大きさで確保されている。なお、物理面30の大きさは必ずしも表示器の画素数と一致させる必要はない。これは、物理面30に描画されたサーフェスのうち必要なサーフェスが選択されて表示器に表示されるためである。
 本実施形態では、メータアプリ21aには物理面30Aが割り当てられており、ナビアプリ21bには物理面30Bが割り当てられており、安全アプリ21cには物理面30Cが割り当てられており、映像アプリ21dには物理面30Dが割り当てられており、HUDアプリ21eには物理面30Eが割り当てられている。そして、各物理面30には、各アプリ21によって1つ以上のサーフェスが描画される。
 例えば、物理面30Aには、メータアプリ21aによってサーフェスSA1~SA3が描画される。同様に、物理面30Bには、ナビアプリ21bによってサーフェスSB1が描画される。物理面30Cには、安全アプリ21cによってサーフェスSC1、SC2が描画される。なお、図7では、説明の簡略化のために、安全アプリ21cによって描画される複数のサーフェスをまとめてサーフェスSC1としている。物理面30Dには、映像アプリ21dによってサーフェスSD1が描画される。物理面30Eには、HUDアプリ21eによってサーフェスSE1~SE3が描画される。なお、これらのサーフェスは一例である。
 また、各表示器に表示されるコンテンツは、少なくとも1つがアニメーション動作するものとなっている。ここで、アニメーション動作とは、コンテンツを示す画像の位置や大きさが徐々に変化したり、画像が回転したり、スワイプ操作にともなってユーザインターフェース23が全体的に移動したり、画像が徐々にフェードインあるいはフェードアウトしたり、画像の色が変化したりするような表示態様である。
 例えば、図4に示したように、速度計M1や回転数計M2あるいは地図やメニューなどは、表示モードや表示先の表示器によってその大きさや位置が変化するコンテンツである。ただし、アニメーション動作はこれらに限定されず、ある時点から連続的あるは断続的に表示態様が変化するものであればアニメーション動作に含まれる。
 次に、上記した構成の作用について説明する。
 上記した速度計M1や回転数計M2あるいは警告灯M3は、車両を利用する際に必須なものであるとともに、その表示に即応性が要求されるものである。例えば、速度計M1や回転数計M2は、例えば1秒間に60回と言った周期的な表示の更新が必要であるとともに、車速の変化等に応じてリアルタイムな更新が必要になる画像である。これは、1/60秒以内に表示が更新されなければ、針画像M1aが固着して見えたり、滑らかに表示されなかったりするおそれがあるためである。
 また、警告灯M3は、例えばシートベルトが装着されていない状態や、ドアが閉まっていない状態を知らせるものであるため、それらが検知された場合には速やかに表示が更新される必要がある。つまり、警告灯M3は、車両の走行に必要とされるものであり、例えばナビゲーション画面M4のようないわゆるマルチメディア系の描画よりも優先して処理つまり描画する必要がある。なお、個々で示すものは一例であり、周期的な更新やリアルタイム性などの即応性が必要とされる描画はこれらに限定されない。
 その一方で、車両用装置1は、例えばメータディスプレイ2のような1つの表示器に異なるコンテンツを表示したり、本実施形態では複数の表示器を制御したりしている。つまり、車両用装置1は、異なるアプリ21によって描画されたコンテンツを表示可能な構成となっている。そして、車両用装置1では、複数のアプリ21がCPU10やGPU13のリソースを共有しているとともに、複数のCPUモジュールがGPU13のリソースを共有している。
 そのため、GPU13において例えばメータアプリ21aからの描画依頼を優先的に処理すると、他のアプリ21がGPU13を利用したいと思ってもリソースが不足して描画依頼を行えなくなるおそれがある。そして、速度計M1や警告灯M3などの表示と更新がスムーズに行われたとしても、ナビゲーション画面M4の表示や更新がスムーズに行われなければ、ユーザからみれば滑らかな表示が行われていないことになる。
 すなわち、複数のアプリ21から描画が行われる車両用装置1の場合には、例えばメータアプリ21aからの描画依頼を優先するといった単純な構成では、他のアプリ21で不具合が生じるおそれがある。
 そこで、本実施形態では、以下のようにして、複数のアプリ21による描画が行われる場合において、即応性が必要とされる描画を優先的に処理することができるとともに、他の描画へのGPU13のリソースが不足するおそれを低減している。なお、以下の処理は各アプリ21やGPU13で行われる処理であるが、説明の簡略化のため、ここでは車両用装置1を主体として説明する。
 車両用装置1は、描画を依頼する際、図8に示す処理を実行し、ステップS1において描画準備を行う。この描画準備は、平易に言えば、サーフェスを描画するための大きさや色などを用意する工程である。続いて、車両用装置1は、ステップS2において、優先すべき描画であるか否かを判定する。
 例えば、車両用装置1は、メータアプリ21aからの描画であれば、優先すべき描画であると判定する。なお、メータアプリ21aが自身で優先度を判定する構成とすることもできる。この場合、車両用装置1は、ステップS2においてYESとなるため、描画依頼を優先キュー13bに対して出力する。つまり、優先すべき描画依頼は、優先キュー13bに入力される。
 このとき、GPU13には、図9に示すように、通常キュー13aと優先キュー13bとが設けられている。つまり、車両用装置1では、GPU13に対してプリエンプションを行う構成としている。これにより、CPU10側の負荷が増加することが抑制され、例えばあるアプリ21の処理を優先した結果、他のアプリ21の実行が妨げられるような状況を回避することができる。
 そして、GPU13は、図9にReqAとして示すように、優先キュー13bに入力された描画依頼を優先的に処理する。つまり、この場合であれば、メータアプリ21aから依頼されたサーフェスの描画を優先して行う。これにより、優先すべき描画依頼は、迅速に処理されてサーフェスが描画されることになる。
 一方、車両用装置1は、例えばReqBとして示すナビアプリ21bからのナビゲーション画面M4の描画依頼や、ReqCとして示す安全アプリ21cからのホーム画面M5の描画であれば、相対的に優先度が低いことから、優先すべき描画ではないと判定する。なお、ナビアプリ21bや安全アプリ21cが自身で優先度を判定する構成とすることもできる。この場合、車両用装置1は、ステップS2においてNOとなるため、描画依頼を通常キュー13aに対して出力する。つまり、相対的に優先度の低い描画依頼は、通常キュー13aに入力される。
 そして、GPU13は、図9に示すように、優先キュー13bに入力された描画依頼を優先的に処理したのち、通常キュー13aに描画依頼があれば、その描画依頼をラウンドロビン形式で処理する。つまり、GPU13は、通常キュー13aに入力された描画依頼に対して、時系列でリソースを割り振りつつ順次処理を行っていく。これにより、通常キュー13aに入力された描画依頼は、均等にリソースが割り振られてサーフェスが描画されることになる。
 このように、車両用装置1は、1つのアプリ21を優先する場合に他のアプリ21に与える影響を考慮して、GPU13に対して通常キュー13aと優先キュー13bとを設ける構成、換言すると、GPU13に対してプリエンプションを行う構成とすることにより、複数のアプリ21から描画が行われる際の描画依頼を処理している。
 以上説明した実施形態によれば、次のような効果を得ることができる。
 車両用装置1は、複数のアプリ21から描画が行われるものであって、複数のアプリ21からの描画依頼に基づいて描画を行うGPU13と、GPU13に対する描画依頼が入力される通常キュー13aと、通常キュー13aよりも優先的に処理する描画依頼が入力される優先キュー13bと、を備え、GPU13は、優先キュー13bに入力された描画依頼を優先しつつ、通常キュー13aに入力された描画依頼をラウンドロビン形式で処理する。
 つまり、通常キュー13aおよび優先キュー13bには、複数のアプリ21からの描画依頼、複数のOS20からの描画依頼、複数のCPUモジュール16からの描画依頼、複数のCPU10からの描画依頼、複数のコア10aからの描画依頼、および複数の表示器に対応した描画依頼のうち、少なくとも1つが入力される。
 このように、GPU13に対して通常キュー13aと優先キュー13bとを設けてプリエンプションを行う構成としたことにより、複数のアプリ21から描画が行われる際、1つのアプリ21を優先した結果、他のアプリ21の実行に対するCPU10のリソースが足らなくなることを防止できる。
 そして、GPU13は、優先キュー13bに入力された描画依頼を優先するため、優先して処理すべき描画については迅速に処理することができる。また、通常キュー13aに入力された描画依頼については、ラウンドロビン形式で処理されることから、リソースを均等且つ適切に分配することができる。
 したがって、複数のアプリケーションプログラムから描画が行われる場合であっても、即応性が必要とされる描画を優先的に処理することができるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができる。その結果、1つの表示器あるいは各表示器において、滑らかな表示を実現することができる。
 また、複数のアプリ21から描画が行われる車両用装置1において、複数のアプリ21からの描画依頼に基づいて描画を行う際、通常キュー13aに入力された描画依頼と通常キュー13aよりも優先的に処理される優先キュー13bに入力された描画依頼とを、優先キュー13bに入力された描画依頼を優先しつつ、通常キュー13aに入力された描画依頼をラウンドロビン形式で処理する制御方法によっても、同様に、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができる。
 また、車両用装置1の場合、複数のアプリ21のうち少なくとも1つは、周期的な更新が必要とされる画像の描画依頼を、優先キュー13bに入力する。これにより、例えばメータアプリ21aからの速度計M1や回転数計M2などの描画依頼を優先的に処理することができ、スムーズな表示を行うことができる。
 また、車両用装置1の場合、複数のアプリ21のうち少なくとも1つは、警告表示用の画像の描画依頼を、優先キュー13bに入力する。これにより、例えばメータアプリ21aからの警告灯M3などなどの描画依頼を優先的に処理することができ、即応性の高い表示を行うことができる。
 また、車両用装置1の場合、複数のアプリ21に優先順位を付け、相対的に優先順位が高いメータアプリ21aなどからの描画依頼を優先キュー13bに入力し、相対的に優先順位が低い例えばナビアプリ21bなどからの描画依頼を通常キュー13aに入力する。これにより、優先度の高い描画依頼と相対的に優先度が低い描画依頼とを簡潔に管理することができる。
 さて、ここまでは車両用装置1に1つのOS20が実装されている構成例を示して説明したが、車両用装置1は、異なる構成とすることもできる。例えば、車両用装置1は、図10に示すように、CPU10上でハイパーバイザ40が実行され、そのハイパーバイザ40上で複数、例えば2つのOS20AおよびOS20Bが実行される。
 このとき、OS20AはCPUモジュール16Aに割り当てられており、OS20BはCPUモジュール16Bに割り当てられている。本実施形態では、OS20Aは相対的にリアルタイム性が高い処理を担当し、OS20Bは相対的にリアルタイム性が低い処理を担当するものを想定している。
 例えば、OS20Aでは、リアルタイム性が要求される、例えばメータアプリ21aが実行され、OS20Bでは、リアルタイム性がOS20Aほど要求されないナビアプリ21bや安全アプリ21c、映像アプリ21dやHUDアプリ21eなどが実行される。なお、OS20の種類や数あるいはアプリ21ケーションの配置は一例であり、これらに限定されない。
 このような構成であっても、複数のアプリ21による描画が行われる際、即応性が必要とされる描画を優先的に処理することができるとともに、他の描画へのリソースが不足するおそれを低減することができる。この場合、ハイパーバイザ40は、OS20Aの機能として実行される構成とすることもできる。すなわち、CPU10上でOS20Aを実行し、そのOS20の機能としてハイパーバイザ40を動作させ、そのハイパーバイザ40上でOS20Bを実行する構成とすることもできる。
 あるいは、車両用装置1は、図11に示すように、複数のCPU10を備え、各CPU10上でそれぞれOS20AおよびOS20Bが実行される構成とすることもできる。この場合も同様に、CPU10Aでは、リアルタイム性が要求される例えばメータアプリ21aを実行し、CPU10Bでは、リアルタイム性がCPU10A側ほど要求されないナビアプリ21bや安全アプリ21c、映像アプリ21dやHUDアプリ21eなどを実行することができる。なお、CPU10の数あるいはアプリ21ケーションの配置は一例であり、これらに限定されない。
 このような構成であっても、複数のアプリ21による描画が行われる際、即応性が必要とされる描画を優先的に処理することができるとともに、他の描画へのリソースが不足するおそれを低減することができる。
 本実施形態では、周期的な更新が必要な画像として、主としてメータの針画像M1aやM2aあるいは警告灯M3を例にして説明したが、ナビゲーション画面M4、ホーム画面M5、速度情報M6、時刻情報M7あるいは進路情報M8なども、周期的な更新が必要な画像に含まれる。
   (第2実施形態)
 次に、第2実施形態について説明する。第2実施形態では、GPU13に対してプリエンプションを行う際に生じる更なる課題とその解決手法について説明する。なお、説明の簡略化のために、車両用装置1やOS20あるいはアプリ21には共通する符号を付して説明する。また、車両用装置1の構成は第1実施形態と共通するため、図2、図3、図10あるいは図11等も参照しながら説明する。また、描画依頼処理の流れについては、概ね第1実施形態と共通するため、図8も参照しながら説明する。
 まず、GPU13に対してプリエンプションを行う際に生じる更なる課題について説明する。前述のように、GPU13に対して通常キュー13aと優先キュー13bとを設けてプリエンプションを可能とすることにより、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができる。
 ここで、例えばメータディスプレイ2への表示について検討してみる。メータディスプレイ2は、フルグラフィック表示可能なものであるため、画面全体を更新するのに要する期間が長くなりがちである。これは、メータディスプレイ2の高精細化や大型化が進むにつれて顕著になると考えられる。
 具体的には、図12に比較例として示すように、優先キュー13bにメータアプリ21aからの描画依頼が入力され、ほぼ同時期にナビアプリ21bからの描画依頼と安全アプリ21cからの描画依頼とが通常キュー13aに入力されたとする。この場合、GPU13は、優先キュー13bに入力された描画依頼をまず処理し、その後、通常キュー13aに入力された描画依頼をラウンドロビン形式で処理する。
 しかし、メータアプリ21aからは、上記したように例えば1/60秒といった周期で描画依頼が優先キュー13bに入力されることになる。そのため、メータアプリ21aからの描画要求をGPU13が処理し、続いてナビアプリ21bからの描画依頼を処理したときに、再びメータアプリ21aからの描画要求が優先キュー13bに入力されるといった状況が発生し得る。
 その場合、GPU13は、優先キュー13bに入力された描画依頼を優先して処理するため、安全アプリ21cからの描画依頼が言わば後回しにされることになる。このとき、GPU13がメータアプリ21aからの描画依頼を処理している最中に安全アプリ21cから新たな描画依頼が出力されても、安全アプリ21cからの前回の描画依頼が通常キュー13aに残っている。
 そのため、図12に「×」の記号で示すように、新たな描画依頼は、通常キュー13aに入力されることなく保留される。そして、GPU13は、メータアプリ21aからの描画要求を処理した後、通常キュー13aに入力されている安全アプリ21cからの描画依頼を処理する。
 このように、1つの車両用装置1において複数のアプリ21から描画を行う場合や、1つの車両用装置1で複数の表示器を制御する場合には、GPU13へのプリエンプションを行ったとしても、通常キュー13aに入力された描画依頼を処理しきれなくなるおそれがある。
 そこで、本実施形態では、以下のようにして、各アプリ21からの描画要求を処理できるようにしている。車両用装置1は、図13に示す優先部位を特定する処理を実行する。なお、この処理はアプリ21側で行われるが、説明の簡略化のため、ここでは車両用装置1を主体としている。続いて、車両用装置1は、ステップS2において、その描画が優先部位に対するものであるか否かを判定する。
 ここで、優先部位とは、更新される画面全体のうち、優先して更新する部位である。この優先部位は、例えば、画面を構成するパーツ単位の部位や、前回描画された画面との差分が生じる部位つまりは前回とは異なる描画が必要な部位が該当する。
 例えば、メータアプリ21aの場合であれば、速度計M1の針画像M1aを優先部位とし、目盛り画像M1bは優先部位にしないといったことができる。同様に、回転数計M2の針画像M2aを優先部位とし、目盛り画像M2bは優先部位にしないといったことができる。また、警告灯M3であれば、全てを優先部位とすることができる。
 針画像M1aや目盛り画像M1bは、速度計M1を表示する際のパーツとして考えることができる部位である。そして、図15に示すように、針画像M1aは、更新される前と後とでその位置などが変化すると考えられる一方、目盛り画像M1bは、更新される前と後とで実質的には変化しないと考えられる。なお、これは、本実施形態での例であり、針画像M1aが目盛り画像M1bに重なる表示態様の場合には、目盛り画像M1bも更新前後で変化することがある。
 この点、図4に示した通常表示モードを参照すると、更新前後で変化すると考えられる速度計M1の針画像M1a、回転数計M2の針画像M2a、および警告灯M3は、画面全体からみればごく一部であることが分かる。そのため、優先部位を更新するために要する期間は、画面全体を更新するために要する期間に比べて大幅に短縮可能であると期待できる。
 そのため、車両用装置1は、フルグラフィック表示が可能なメータディスプレイ2に表示する画像の描画依頼を入力するものであり、優先部位として、メータの針画像M1a、針画像M2a、および、警告灯M3の描画依頼のうち少なくとも一方、本実施形態では双方を、優先キュー13bに入力する。
 より具体的には、車両用装置1は、図13に示す処理において、準備した画像が優先部位である場合には、優先部位に対する描画依頼であると判定する。この場合、車両用装置1は、ステップS12がYESとなることから、その描画依頼を優先キュー13bに出力する。一方、車両用装置1は、優先部位に対する描画依頼ではないと判定した場合には、ステップS12がNOとなることから、その描画依頼を通常キュー13aに出力する。
 このように、車両用装置1は、1つのアプリ21から描画が行われる画面全体のうち、優先的に描画すべき優先部位を特定し、第1実施形態でReqAとして説明した画面全体の描画依頼を、図14にReqA1として示す優先部位に対する描画依頼と、ReqA2として示すその他の部位に対する描画依頼とに分ける。なお、図14では便宜的に「針」と示しているが、優先部位に対する描画依頼には警告灯M3の描画要求も含まれている。
 そして、車両用装置1は、優先部位に対する描画依頼を優先キュー13bに出力し、その他の部位に対する描画依頼を通常キュー13aに出力する。また、車両用装置1は、優先部位に対する描画依頼を優先キュー13bに出力し、その他の部位に対する描画依頼を通常キュー13aに出力する処理を含む制御方法を採用している。
 これにより、GPU13は、優先キュー13bに入力された描画要求に対する描画、つまりは、優先すべき描画を画面全体を更新する場合に比べて短期間で行うことができる。そして、優先すべき描画を短期間で行うことができることから、通常キュー13aに入力された描画要求をラウンドロビン形式で処理する際の余裕を確保でき、上記した図12で説明した通常キュー13aに入力された描画要求を処理しきれなくなるおそれを低減することができる。
 以上説明した実施形態によれば、次のような効果を得ることができる。
 まず、車両用装置1は、GPU13に対してプリエンプションを行っていることから、上記した第1実施形態と同様に、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができる。これは、本実施形態による制御方法によっても同様である。
 そして、車両用装置1では、複数のアプリ21のうち少なくとも1つは、描画を依頼する画像のうち優先的に処理すべき優先部位を特定し、優先部位に対する描画依頼を優先キュー13bに入力する一方、優先部位以外に対する描画依頼を通常キュー13aに入力する。
 これにより、優先すべき描画を短期間で行うことができるとともに、通常キュー13aに入力された描画要求をラウンドロビン形式で処理する際の余裕を確保でき、通常キュー13aに入力された描画要求を処理しきれなくなるおそれを低減することができる。すなわち、1つのアプリ21を優先する場合に他のアプリ21に与える影響を考慮して、優先度が高い描画と相対的に優先度が低い描画とを処理することができる。
 また、車両用装置1では、複数のアプリ21のうち少なくとも1つは、フルグラフィック表示が可能なメータディスプレイ2に表示する画像の描画依頼を入力するものであり、優先部位として、メータの針画像M1aおよび針画像M2aに対応する部位の描画依頼を優先キュー13bに入力する。また、車両用装置1では、複数のアプリ21のうち少なくとも1つは、警告表示用の画像つまりは警告灯M3の描画依頼を、優先キュー13bに入力する。これらにより、定期的な更新や即応性が必要とされる針画像M1aや針画像M2aおよび警告灯M3を、適切に表示つまりは更新することができる。
 ところで、優先部位を特定することにより、優先部位の更新を適切に行うことができるものの、懸念される点もある。例えば、速度計M1の針画像M1aの描画要求を優先キュー13bに入力し、それ以外の部位の描画を通常キュー13aに入力した場合であれば、タイミングによっては、図16に比較例として示すように、更新後の画面に、更新前の位置で針画像M1aが残像のように表示されてしまう可能性がある。これは、更新後の針画像M1aが優先して描画され、それ以外の画像の更新が後に来るためである。
 そのため、車両用装置1は、複数のアプリ21のうち少なくとも1つがフルグラフィック表示が可能なメータディスプレイ2に表示する画像の描画依頼を入力するものである場合、前回描画した優先部位を消去するための描画依頼を、優先キュー13bに入力する構成とすることができる。このような構成とすれば、図16に実施例として示すように、更新前の位置の針画像M1aは、破線にて模式的に示すように消去され、残像のように表示されてしまうおそれを防止することができる。
 このとき、前回描画した優先部位は、上記したように画面のごく一部であり、消去するために他のアプリ21へのリソースが不足する懸念は低いと考えられる。また、前回描画した優先部位は、既に描画されているものであり、再度の準備が必要ないため、CPU10の負荷が不要に増加することも抑制される。なお、描画依頼のあった画像を配置する部位の現状を一時的に記憶しておき、次に描画依頼があった際に、記憶した部位を描画することにより、前回描画した領域を消去する構成とすることもできる。
 本実施形態では、優先部位として、主に針画像M1a、針画像M2aおよび警告灯M3を例にして説明したが、例えば進路情報M8は走行中に参照される情報であり、車両の移動に応じて随時更新する必要があるとともにリアルタイム性も要求されると考えられる。そのため、HUDアプリ21eは、進路情報M8を優先部位として描画要求を優先キュー13bに出力し、その他の部位については通常キュー13aに出力することなどができる。これは、他のアプリ21についても同様である。
   (第3実施形態)
 次に、第3実施形態について説明する。第3実施形態では、通常キュー13aと優先キュー13bとに入力する描画要求の他の例について説明する。なお、車両用装置1の構成は第1実施形態や第2実施形態と共通する。
 例えば、車両用装置1は、図17にアプリ別として示すように、複数のアプリ21に例えば数値が低いほど優先度が高くなる態様で優先順位を付け、相対的に優先順位が高い例えばメータアプリ21aなどからの描画依頼を優先キュー13bに入力し、相対的に優先順位が低い例えばナビアプリ21bなどからの描画依頼を通常キュー13aに入力する構成とすることができる。
 このようにアプリ21別に優先度を管理する構成によっても、優先度の高い描画依頼と相対的に優先度が低い描画依頼とを簡潔に管理することができる。勿論、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができるなど、第1実施形態と同様の効果を得ることができる。
 また、車両用装置1は、上記した図10や図11のように複数のOS20が実装されている場合、図18にOS別として示すように、複数のOS20に優先順位を付け、相対的に優先順位が高いOS20からの描画依頼を優先キュー13bに入力し、相対的に優先順位が低いOS20からの描画依頼を通常キュー13aに入力する構成とすることができる。
 このようにOS20別に優先度を管理する構成によっても、優先度の高い描画依頼と相対的に優先度が低い描画依頼とを簡潔に管理することができる。勿論、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができるなど、第1実施形態と同様の効果を得ることができる。
 また、車両用装置1は、上記した図2や図10あるいは図11のように複数のCPUモジュール16を備えている場合、図19にモジュール別として示すように、複数のCPUモジュール16に優先順位を付け、相対的に優先順位が高いCPUモジュール16からの描画依頼を優先キュー13bに入力し、相対的に優先順位が低いCPUモジュール16からの描画依頼を通常キュー13aに入力する構成とすることができる。
 このようにCPUモジュール16別に優先度を管理する構成によっても、優先度の高い描画依頼と相対的に優先度が低い描画依頼とを簡潔に管理することができる。勿論、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができるなど、第1実施形態と同様の効果を得ることができる。
 また、車両用装置1は、上記した図2や図10あるいは図11のように複数のコア10aを備えている場合、図19にコア別として示すように、複数のコア10aに優先順位を付け、相対的に優先順位が高いコア10aからの描画依頼を優先キュー13bに入力し、相対的に優先順位が低いコア10aからの描画依頼を通常キュー13aに入力する構成とすることができる。また、車両用装置1は、上記した図11のように複数のCPU10を備えている場合には、図19にCPU別として示すように、複数のCPU10に優先順位を付ける構成とすることもできる。
 このようなコア10a別またはCPU10別に優先度を管理する構成によっても、優先度の高い描画依頼と相対的に優先度が低い描画依頼とを簡潔に管理することができる。勿論、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができるなど、第1実施形態と同様の効果を得ることができる。
 また、車両用装置1は、上記した図1、図2、図10あるいは図11のように複数の表示器に接続される場合、図20に表示器別として示すように、複数の表示器に優先順位を付け、相対的に優先順位が高い表示器に対する描画依頼を優先キュー13bに入力し、相対的に優先順位が低い表示器に対する描画依頼を通常キュー13aに入力する構成とすることができる。
 このような表示器別に優先度を管理する構成によっても、優先度の高い描画依頼と相対的に優先度が低い描画依頼とを簡潔に管理することができる。勿論、複数のアプリ21から描画が行われる際の描画依頼について、即応性が必要とされる描画を優先的に処理することができるようになるとともに、他の描画へのGPU13のリソースが不足するおそれを低減することができるなど、第1実施形態と同様の効果を得ることができる。
 本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に含まれるものである。
 本開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、本開示に記載の制御部及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。

Claims (11)

  1.  複数のアプリケーションプログラム(21)から描画が行われる車両用装置(1)であって、
     複数の前記アプリケーションプログラムからの描画依頼に基づいて描画を行うグラフィック処理ユニット(13)と、
     前記グラフィック処理ユニットに対する描画依頼が入力される通常キュー(13a)と、
     前記通常キューよりも優先的に処理する描画依頼が入力される優先キュー(13b)と、を備え、
     前記グラフィック処理ユニットは、前記優先キューに入力された描画依頼を優先しつつ、前記通常キューに入力された描画依頼をラウンドロビン形式で処理する車両用装置。
  2.  複数の前記アプリケーションプログラムのうち少なくとも1つは、周期的な更新が必要とされる画像(M1~M8)の描画依頼を、前記優先キューに入力する請求項1記載の車両用装置。
  3.  複数の前記アプリケーションプログラムのうち少なくとも1つは、警告表示用の画像(M3)の描画依頼を、前記優先キューに入力する請求項1または2記載の車両用装置。
  4.  複数の前記アプリケーションプログラムのうち少なくとも1つは、描画を依頼する画像のうち優先的に処理すべき優先部位(M1a、M2a、M3、M8)を特定し、前記優先部位に対する描画依頼を前記優先キューに入力する一方、前記優先部位以外に対する描画依頼を前記通常キューに入力する請求項1から3のいずれか一項記載の車両用装置。
  5.  複数の前記アプリケーションプログラムのうち少なくとも1つは、フルグラフィック表示が可能なメータディスプレイに表示する画像の描画依頼を入力するものであり、前記優先部位として、メータの針に対応する部位(M1a、M2a)、および、メータの警告灯に対応する部位(M3)の描画依頼のうち少なくとも一方を、前記優先キューに入力する請求項4記載の車両用装置。
  6.  複数の前記アプリケーションプログラムのうち少なくとも1つは、フルグラフィック表示が可能なメータディスプレイに表示する画像の描画依頼を入力するものであり、前回描画した前記優先部位を消去するための描画依頼を、前記優先キューに入力する請求項4または5記載の車両用装置。
  7.  複数の前記アプリケーションプログラムに優先順位を付け、相対的に優先順位が高い前記アプリケーションプログラムからの描画依頼を前記優先キューに入力し、相対的に優先順位が低い前記アプリケーションプログラムからの描画依頼を前記通常キューに入力する請求項1から6のいずれか一項記載の車両用装置。
  8.  車両用装置は、複数のオペレーティングシステム(20)が実装されており、
     複数の前記オペレーティングシステムに優先順位を付け、相対的に優先順位が高い前記オペレーティングシステムからの描画依頼を前記優先キューに入力し、相対的に優先順位が低い前記オペレーティングシステムからの描画依頼を前記通常キューに入力する請求項1から7のいずれか一項記載の車両用装置。
  9.  車両用装置は、複数のCPUモジュール(16)を備えており、
     複数の前記CPUモジュールに優先順位を付け、相対的に優先順位が高い前記CPUモジュールからの描画依頼を前記優先キューに入力し、相対的に優先順位が低い前記CPUモジュールからの描画依頼を前記通常キューに入力する請求項1から8のいずれか一項記載の車両用装置。
  10.  車両用装置は、複数の表示器(2、3、4)に画面を出力するものであり、
     複数の前記表示器に優先順位を付け、相対的に優先順位が高い前記表示器に対応する描画依頼を前記優先キューに入力し、相対的に優先順位が低い前記表示器に対応する描画依頼を前記通常キューに入力する請求項1から9のいずれか一項記載の車両用装置。
  11.  複数のアプリケーションプログラム(21)から描画が行われる車両用装置(1)の制御方法であって、
     複数の前記アプリケーションプログラムからの描画依頼に基づいて描画を行う際、通常キュー(13a)に入力された描画依頼と前記通常キューよりも優先的に処理される優先キュー(13b)に入力された描画依頼とを、前記優先キューに入力された描画依頼を優先しつつ、前記通常キューに入力された描画依頼をラウンドロビン形式で処理する車両用装置の制御方法。
PCT/JP2020/015033 2019-04-16 2020-04-01 車両用装置、車両用装置の制御方法 WO2020213401A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202080028326.9A CN113727878B (zh) 2019-04-16 2020-04-01 车辆用装置、车辆用装置的控制方法
DE112020001974.8T DE112020001974B4 (de) 2019-04-16 2020-04-01 Fahrzeugvorrichtung und Fahrzeugvorrichtungssteuerungsverfahren
US17/498,888 US12008676B2 (en) 2019-04-16 2021-10-12 Vehicle device, drawing requests using priority queues, and vehicle device control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-077778 2019-04-16
JP2019077778A JP7180516B2 (ja) 2019-04-16 2019-04-16 車両用装置、車両用装置の制御方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/498,888 Continuation US12008676B2 (en) 2019-04-16 2021-10-12 Vehicle device, drawing requests using priority queues, and vehicle device control method

Publications (1)

Publication Number Publication Date
WO2020213401A1 true WO2020213401A1 (ja) 2020-10-22

Family

ID=72837280

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/015033 WO2020213401A1 (ja) 2019-04-16 2020-04-01 車両用装置、車両用装置の制御方法

Country Status (5)

Country Link
US (1) US12008676B2 (ja)
JP (1) JP7180516B2 (ja)
CN (1) CN113727878B (ja)
DE (1) DE112020001974B4 (ja)
WO (1) WO2020213401A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7180516B2 (ja) 2019-04-16 2022-11-30 株式会社デンソー 車両用装置、車両用装置の制御方法
WO2023136374A1 (ko) * 2022-01-13 2023-07-20 엘지전자 주식회사 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07244572A (ja) * 1994-03-07 1995-09-19 Hitachi Ltd 並列描画処理装置
JP2000056992A (ja) * 1998-08-13 2000-02-25 Nec Corp タスクスケジューリングシステム、方法及び記録媒体
JP2008015638A (ja) * 2006-07-04 2008-01-24 Renesas Technology Corp データ処理装置
JP2008289030A (ja) * 2007-05-21 2008-11-27 Nec Corp 画面描画転送システム
JP2009179240A (ja) * 2008-01-31 2009-08-13 Denso Corp 車両用メータユニット
JP2014021833A (ja) * 2012-07-20 2014-02-03 Denso Corp 車両用の映像制御装置
JP2015041199A (ja) * 2013-08-21 2015-03-02 キヤノン株式会社 情報処理装置
WO2017033289A1 (ja) * 2015-08-25 2017-03-02 三菱電機株式会社 描画制御装置
JP2017068312A (ja) * 2015-09-28 2017-04-06 アルパイン株式会社 電子装置

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5285192A (en) * 1988-09-16 1994-02-08 Chips And Technologies, Inc. Compensation method and circuitry for flat panel display
JPH0664526B2 (ja) * 1988-11-09 1994-08-22 株式会社日立製作所 マルチウィンド表示制御方法
JPH07271344A (ja) * 1994-03-29 1995-10-20 Hitachi Ltd グラフィック表示装置
JPH10275059A (ja) * 1996-04-30 1998-10-13 Matsushita Electric Ind Co Ltd 記憶デバイス制御装置及び管理システム
US5757268A (en) * 1996-09-26 1998-05-26 United Technologies Automotive, Inc. Prioritization of vehicle display features
JP3681026B2 (ja) * 1997-03-27 2005-08-10 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および方法
JP4342710B2 (ja) * 2000-09-18 2009-10-14 株式会社リコー 情報入力/表示システムおよび記憶媒体
JP3975703B2 (ja) * 2001-08-16 2007-09-12 日本電気株式会社 情報処理システムにおける優先実行制御方法及びその装置並びにプログラム
DE10313001A1 (de) * 2003-03-24 2004-10-14 Daimlerchrysler Ag Verfahren zur Abbildung unterschiedlicher Bilddaten auf einem Fahrzeugdisplay
JP2005003870A (ja) * 2003-06-11 2005-01-06 Matsushita Electric Ind Co Ltd 画面表示装置および方法
US7548804B2 (en) * 2005-05-19 2009-06-16 Novariant, Inc. Emulation to provide multiple applications in mobile equipment
US8717380B2 (en) * 2008-07-04 2014-05-06 Canon Kabushiki Kaisha Image processing apparatus and control method thereof
JP5173712B2 (ja) * 2008-09-30 2013-04-03 ルネサスエレクトロニクス株式会社 マルチスレッドプロセッサ
JP5421631B2 (ja) * 2009-03-26 2014-02-19 京セラ株式会社 電子機器
JP5578698B2 (ja) 2009-04-23 2014-08-27 ルネサスエレクトロニクス株式会社 半導体データ処理装置及びデータ処理システム
US9117297B2 (en) * 2010-02-17 2015-08-25 St-Ericsson Sa Reduced on-chip memory graphics data processing
WO2012107975A1 (ja) * 2011-02-09 2012-08-16 パナソニック株式会社 仮想計算機表示装置、仮想計算機表示方法、仮想計算機表示プログラム、記録媒体、及び集積回路
JP5726332B2 (ja) * 2012-01-06 2015-05-27 三菱電機株式会社 描画制御装置
US9142978B2 (en) * 2012-11-06 2015-09-22 EV Connect, Inc. Queue prioritization for electric vehicle charging stations
JP5971138B2 (ja) 2013-01-30 2016-08-17 株式会社デンソー 車載表示システム
JP6080634B2 (ja) 2013-03-19 2017-02-15 三菱電機株式会社 情報処理装置及び情報処理方法及びプログラム
US20150186027A1 (en) * 2013-12-27 2015-07-02 Thomson Licensing System and method for gesture based color correction
EP3092560B1 (en) * 2014-01-06 2019-05-08 Johnson Controls Technology Company Vehicle with multiple user interface operating domains
JP2016061837A (ja) 2014-09-16 2016-04-25 株式会社デンソー 表示システム
KR101672099B1 (ko) * 2014-11-28 2016-11-16 윤석주 2차사고 예방을 위한 델리네이터 모듈 제어 시스템 및 이의 실행 방법
DE102015222388A1 (de) * 2015-11-13 2017-05-18 Bayerische Motoren Werke Aktiengesellschaft Vorrichtung und Verfahren zum Steuern einer Anzeigeeinrichtung in einem Kraftfahrzeug
JP6578901B2 (ja) 2015-11-13 2019-09-25 株式会社デンソー 表示制御装置
DE102016223389A1 (de) * 2016-11-25 2018-05-30 Conti Temic Microelectronic Gmbh Bildverarbeitungssystem und bildverarbeitungsverfahren
JP6986699B2 (ja) * 2017-07-04 2021-12-22 パナソニックIpマネジメント株式会社 表示制御システム、表示システム、移動体、表示制御方法及びプログラム
JP6990089B2 (ja) 2017-10-24 2022-02-10 三菱エンジニアリングプラスチックス株式会社 ポリエステル系樹脂組成物及び車両灯体用部品
JP7180516B2 (ja) 2019-04-16 2022-11-30 株式会社デンソー 車両用装置、車両用装置の制御方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07244572A (ja) * 1994-03-07 1995-09-19 Hitachi Ltd 並列描画処理装置
JP2000056992A (ja) * 1998-08-13 2000-02-25 Nec Corp タスクスケジューリングシステム、方法及び記録媒体
JP2008015638A (ja) * 2006-07-04 2008-01-24 Renesas Technology Corp データ処理装置
JP2008289030A (ja) * 2007-05-21 2008-11-27 Nec Corp 画面描画転送システム
JP2009179240A (ja) * 2008-01-31 2009-08-13 Denso Corp 車両用メータユニット
JP2014021833A (ja) * 2012-07-20 2014-02-03 Denso Corp 車両用の映像制御装置
JP2015041199A (ja) * 2013-08-21 2015-03-02 キヤノン株式会社 情報処理装置
WO2017033289A1 (ja) * 2015-08-25 2017-03-02 三菱電機株式会社 描画制御装置
JP2017068312A (ja) * 2015-09-28 2017-04-06 アルパイン株式会社 電子装置

Also Published As

Publication number Publication date
CN113727878A (zh) 2021-11-30
US12008676B2 (en) 2024-06-11
CN113727878B (zh) 2024-05-14
DE112020001974B4 (de) 2024-10-10
US20220028029A1 (en) 2022-01-27
JP2020177075A (ja) 2020-10-29
DE112020001974T5 (de) 2021-12-30
JP7180516B2 (ja) 2022-11-30

Similar Documents

Publication Publication Date Title
US12008676B2 (en) Vehicle device, drawing requests using priority queues, and vehicle device control method
WO2014196140A1 (ja) 図形表示処理装置、図形表示処理方法及び図形表示処理装置を備える車両
WO2021029178A1 (ja) コンテントの表示制御装置、表示制御方法及び表示制御プログラム
JP6372262B2 (ja) 印刷装置、およびプログラム
US20220024315A1 (en) Vehicular device and control method for vehicular device
CN116762062A (zh) 利用选择性的基于优先级的两级装仓的处理系统
CN113939430B (zh) 车辆用控制装置、车辆用显示系统和车辆用显示控制方法
JP5726332B2 (ja) 描画制御装置
US20220121408A1 (en) Content presentation control device, presentation control method, and non-transitory computer-readable storage medium
US11640358B2 (en) Vehicular device and control method for vehicular device
WO2022138218A1 (ja) 車載コンピュータ、コンピュータ実行方法及びコンピュータプログラム
JP7174926B2 (ja) 表示制御システム、移動体、表示制御方法、表示装置、表示方法及びプログラム
EP3113169B1 (en) Method for controlling a graphic processing unit in a control unit, in particular of a vehicle, computer program product and system for an embedded control unit
KR102407781B1 (ko) 플립 큐 관리에 기초한 그래픽스 컨텍스트 스케줄링
US12020343B2 (en) Vehicle device and vehicle device control method
US20240303103A1 (en) Vehicle-mounted computer, computer execution method, and computer program
WO2020235173A1 (ja) 表示制御装置および表示制御方法
JP2020177074A (ja) 車両用装置、車両用装置の制御方法
JP2022127955A (ja) コンテントの表示制御装置、表示制御方法及び表示制御プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20790408

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 20790408

Country of ref document: EP

Kind code of ref document: A1