JP7024415B2 - 自動運転装置 - Google Patents

自動運転装置 Download PDF

Info

Publication number
JP7024415B2
JP7024415B2 JP2018001968A JP2018001968A JP7024415B2 JP 7024415 B2 JP7024415 B2 JP 7024415B2 JP 2018001968 A JP2018001968 A JP 2018001968A JP 2018001968 A JP2018001968 A JP 2018001968A JP 7024415 B2 JP7024415 B2 JP 7024415B2
Authority
JP
Japan
Prior art keywords
processing
cpu
gpu
arithmetic unit
configuration
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.)
Active
Application number
JP2018001968A
Other languages
English (en)
Other versions
JP2019121275A (ja
Inventor
寛士 加藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2018001968A priority Critical patent/JP7024415B2/ja
Publication of JP2019121275A publication Critical patent/JP2019121275A/ja
Application granted granted Critical
Publication of JP7024415B2 publication Critical patent/JP7024415B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、車両等に搭載される自動運転装置に関する。
車両用の自動運転装置は、レーダー等によって車両の周囲の物体を検出し、検出結果に基づいて、処理対象とされた物体である物標の位置、距離あるいは速度等の算出、衝突可能性の予測等の処理を行い、ブレーキ、ステアリングの操作や警告等を行う。自動運転の信頼性向上のためには物標の処理効率の向上が重要である。特許文献1は、レーダー反射強度が第1の閾値よりも高い高閾値物標と、第1の閾値以下かつ第2の閾値より高い低閾値物標とを検出し、同時処理できる最大物標数に制約があるなか、高閾値物体を一定程度優先的に処理対象とする対象選択方法を採用することで信頼性向上を図ることを開示している。
一方、各種演算処理システムにおいてその演算速度等のパフォーマンスの向上のための手法が提案されている。特許文献2は、異種マルチコア処理システムにおいて、第1のタイプの第1の処理コアでプログラムコードを実行しそのパフォーマンスを測定し、測定結果に基づいて、第2のタイプの第2の処理コアでプログラムコードを実行する際のパフォーマンスを予測し、予測結果が第1の処理コアのパフォーマンスよりも良好である場合には、プログラムコードの実行を、第1の処理コアから第2の処理コアにスイッチする手法を開示している。
特開2007-232412号公報 特開2016-95872号公報
自動運転装置の演算器構成として、マルチコアCPU(Central Processing Unit)と、CPU以上の高速演算が期待できるGPU(Graphics Processing Unit)とを組み合わせ、処理速度を向上することが考えられる。しかし、CPU間ではメモリを共有することでデータに高速にアクセスできるのに比べて、CPUとGPUとの間ではPCIバスを用いてデータ転送を行う必要があるため、データへのアクセスに時間がかかる。そのため、GPUを利用してもかえってデータ転送に要する時間がかかり、処理速度を向上させることができないおそれがある。
本発明は、上記課題を鑑みてなされたものであり、演算器としてマルチコアCPUと、GPUとを有する処理部を備えた、処理速度を向上した自動運転装置を提供することを目的とする。
上記課題を解決するために、本発明の一局面は、メモリを共有する複数のCPUと、メモリと異なるメモリを用い複数のCPUとPCIバスを介してデータ転送を行うGPUとを、並列処理が可能な演算器として含む処理部と、処理に用いる演算器の構成として、処理部の処理対象である物標の個数ごとに、レイテンシが最小となる演算器構成を特定可能なテーブルを記憶する記憶部とを備え、複数のCPUの1つであるホストCPUは、テーブルを参照して、処理すべき物標の個数においてレイテンシが最小となる演算器構成を特定し、特定した演算器構成による処理の実行を制御する、自動運転装置である。
これにより、物標の個数に応じて、実質的にレイテンシの最小化を実現する演算器構成を採用した処理が可能となり、処理速度を向上することができる。
本発明によれば、上述のように、物標の個数に応じて、データ転送時間も含めた実質的なレイテンシの最小化を実現する演算器構成を採用した処理が可能となり、処理速度を向上した自動運転装置を提供することができる。
本発明の一実施形態に係る自動運転装置の機能ブロック図 本発明の一実施形態に係る自動運転装置の処理を示すシーケンス図
(概要)
本発明に係る自動運転装置は、マルチコアCPUとGPUとを並列処理させる。物標の個数に応じて、GPUのデータ転送時間も含めた実質的なレイテンシを最小化する演算器構成を、テーブルを参照することで特定し、特定した演算器構成で処理を実行することにより処理速度を向上させることができる。
(実施形態)
以下、本発明の一実施形態について、図面を参照しながら詳細に説明する。
<構成>
図1に、本実施形態における自動運転装置100の要部の機能ブロック図を示す。自動運転装置100は、演算器として、第1のCPU11、第2のCPU12、GPU21を有する処理部60を含む。第1のCPU11、第2のCPU12は、ともにホストメモリ10を用いて、データを共有することができるマルチコアCPUを構成する。GPU21は、ホストメモリ10とは異なるデバイスメモリ20を用いる。そのため、GPU21と第1のCPU11との間および、GPU21と第2のCPU12との間は、一例としてPCIバス30を介してデータ転送が行われる。GPU21は、第1のCPU11、第2のCPU12より演算速度は速いが、第1のCPU11あるいは第2のCPU12との間のデータ転送に時間を要する。また、第1のCPU11は、他のバス50を介して、例えばFlashROMのような不揮発性の記憶部40と接続されている。記憶部40は、後述のテーブルを含む各種データ、プログラム等を記憶しており、第1のCPU11は、適宜これらのデータを読み出すことができる。なお、記憶部40は、他のバス50ではなく、PCI30に接続されていてもよい。
<処理>
処理部60は、レーダー等の各種センサによる車両周辺の物体の検出結果を表すデータである物標データを入力として受け付ける。そして物標データに基づいて、処理対象となる物標の同定、その位置、距離あるいは速度等の算出、衝突可能性の予測等の処理を行い、ブレーキ、ステアリングの操作や警告等のための各種制御指示を出力する。処理部60に要求される単位時間あたりの処理量は、物標数に大きく依存する。そこで、ホストCPUとして機能する第1のCPU11は、物標数に応じて、物標データの入力から、処理結果の出力までに要する時間であるレイテンシを小さくするよう、第2のCPU12やGPU21にも処理を分担させる。その処理について、以下に説明する。図2に、処理部60の各部が実施する処理のシーケンスを示す。本シーケンスは例えば自動運転装置100による自動運転処置が開始されたときに開始される。
(ステップS101):第1のCPU11は、物標データを外部から受け付ける。
(ステップS102):第1のCPU11は、物標データが含む、物標の個数を特定する。そして、記憶部40が記憶するテーブルを参照し、物標の個数に対応する演算器の構成を特定する。表1にテーブルの第1の例を示す。
Figure 0007024415000001
表1に示すテーブルは、物標の個数ごとに、構成A~Eの各演算器の構成(組み合わせ)における物標データ処理のレイテンシ(単位ms)を保持する。例として、物標の個数が50の場合、第1のCPU11は、テーブルを参照して、物標の個数50の場合に最もレイテンシが小さい構成Bを選択する。なお、表1では、分かりやすくするため、物標の個数ごとにレイテンシの最小値を枠で囲んで示す。また、物標の個数がテーブルの見出し値にない200の場合は、第1のCPU11は、例えば物標の個数を超える最小の見出し値である物標数300の場合にレイテンシ最小となる構成Eを選択すればよい。テーブル中のレイテンシの値は、物標の個数および演算器の構成ごとに実測される値であり、第1のCPU11、第2のCPU12、GPU21の演算に要する時間や、GPU21のデータ転送を行う構成C、D、Eにおいてはさらにデータ転送に要する時間を含めた値であり、物標データ処理に要するトータルな処理時間を表す。テーブルは、開発段階において測定した値を設計値として保持してもよいし、自動運転装置100を搭載した車両の走行中に測定した値を自動適合値として学習更新してもよい。また見出し値をさらに多く設けてもよい。
また、テーブルは、表2に示す例のように、物標の個数とレイテンシ最小となる演算器の構成との対応のみを保持するものとしてもよい。
Figure 0007024415000002
以下、ステップS102において特定した演算器の構成に応じて処理が分かれる。構成ごとの処理の後、いずれもステップS118に進む。以下それぞれの処理を説明する。
〔構成A〕
(ステップS103):第1のCPU11が単体で物標データ処理を実行する。
〔構成B〕
(ステップS104):第1のCPU11が物標データ処理を実行する。
(ステップS105):第1のCPU11は、ステップS104と並列的に、第2のCPU12に物標データ処理を実行する指示を発行する。第2のCPU12は指示に従い、物標データ処理を実行する。物標データおよび処理結果はホストメモリ10によって第1のCPU11および第2のCPU12で共有される。
〔構成C〕
(ステップS106):第1のCPU11は、PCIバス30を介して物標データをGPU21に転送する。
(ステップS107):第1のCPU11は、GPU21に物標データ処理を実行する指示を発行する。GPU21は指示に従い、物標データ処理を実行する。
(ステップS108):GPU21は、処理結果を、PCIバス30を介して、第1のCPU11に転送する。
〔構成D〕
(ステップS109):第1のCPU11は、PCIバス30を介して物標データをGPU21に転送する。
(ステップS110):第1のCPU11が物標データ処理を実行する。
(ステップS111):第1のCPU11は、ステップS110と並列的に、GPU21に物標データ処理を実行する指示を発行する。GPU21は指示に従い、物標データ処理を実行する。
(ステップS112):GPU21は、処理結果を、PCIバス30を介して、第1のCPU11に転送する。
〔構成E〕
(ステップS113):第1のCPU11は、PCIバス30を介して物標データをGPU21に転送する。
(ステップS114):第1のCPU11が物標データ処理を実行する。
(ステップS115):第2のCPU11は、ステップS114と並列的に、第2のCPU12に物標データ処理を実行する指示を発行する。第2のCPU12は指示に従い、物標データ処理を実行する。物標データおよび処理結果はホストメモリ10によって第1のCPU11および第2のCPU12で共有される。
(ステップS116):第1のCPU11は、ステップS114と並列的に、GPU21に物標データ処理を実行する指示を発行する。GPU21は指示に従い、物標データ処理を実行する。
(ステップS117):GPU21は、処理結果を、PCIバス30を介して、第1のCPU11に転送する。
(ステップS118):以上の構成ごとの処理の後、第1のCPU11は、各演算器の物標データの処理結果をまとめ、自動運転装置100の出力として外部に出力する。
以上で、1つの物標データに対する本処理は終了となるが、新たな物標データが入力されるごとに本処理が繰り返し実行される。
以上、本発明の一実施形態について説明したが、本発明は、本実施形態に限定されず、適宜変更して実施可能である。例えば、処理部が備えるCPUやGPU等の演算器の数は、上述したものに限定されない。また、並列処理可能な演算器の構成も上述した構成A-Eに限定されない。また、物標データ処理以外のデータ処理にも適用することが可能である。
<効果>
以上のように、本発明によれば、処理量に影響を与える物標の個数に応じて、データ転送時間も含めた実質的なレイテンシの最小化を実現する演算器構成を採用した処理が可能となり、処理速度を向上した自動運転装置を提供することができる。
なお、本発明は、自動運転装置として捉えるだけでなく、CPUを備えるコンピューターが実行する方法やその処理を記載したプログラムとして捉えることも可能である。
本発明は、車両用の自動運転装置等に有用である。
10 ホストメモリ
11 第1のCPU
12 第2のCPU
20 デバイスメモリ
21 GPU
30 PCIバス
40 記憶部
50 バス
60 処理部
100 自動運転装置

Claims (3)

  1. メモリを共有する複数のCPUと、前記メモリと異なるメモリを用い前記複数のCPUとPCIバスを介してデータ転送を行うGPUとを、並列処理が可能な演算器として含む処理部と、
    処理に用いる前記演算器の構成として、前記処理部の処理対象である物標の個数ごとに、前記CPUと前記GPUとの並列処理構成を含む、前記物標のデータ処理のレイテンシが最小となる演算器構成を特定可能なテーブルを記憶する記憶部とを備え、
    前記複数のCPUの1つであるホストCPUは、前記テーブルを参照して、処理すべき前記物標の個数において前記レイテンシが最小となる演算器構成を特定し、特定した演算器構成による処理の実行を制御する、自動運転装置。
  2. 前記テーブルは、処理すべき前記物標の個数における前記レイテンシの値を保持することを特徴とする、請求項1に記載の自動運転装置。
  3. 前記テーブルが保持する前記レイテンシの値は、学習更新が行われることを特徴とする、請求項2に記載の自動運転装置。
JP2018001968A 2018-01-10 2018-01-10 自動運転装置 Active JP7024415B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018001968A JP7024415B2 (ja) 2018-01-10 2018-01-10 自動運転装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018001968A JP7024415B2 (ja) 2018-01-10 2018-01-10 自動運転装置

Publications (2)

Publication Number Publication Date
JP2019121275A JP2019121275A (ja) 2019-07-22
JP7024415B2 true JP7024415B2 (ja) 2022-02-24

Family

ID=67306430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018001968A Active JP7024415B2 (ja) 2018-01-10 2018-01-10 自動運転装置

Country Status (1)

Country Link
JP (1) JP7024415B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806067B (zh) * 2021-07-28 2024-03-29 卡斯柯信号有限公司 基于车车通信的安全数据校验方法、装置、设备及介质
CN114840335B (zh) * 2022-04-22 2023-10-27 北京斯年智驾科技有限公司 一种自动驾驶领域的智能网关控制器及其多核划分策略
WO2024025235A1 (ko) * 2022-07-29 2024-02-01 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016197389A (ja) 2015-04-03 2016-11-24 株式会社デンソーアイティーラボラトリ 学習システム、学習プログラムおよび学習方法
JP2017164914A (ja) 2016-03-14 2017-09-21 コニカミノルタ株式会社 描画処理装置、画像処理装置、描画処理方法及び描画処理プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016197389A (ja) 2015-04-03 2016-11-24 株式会社デンソーアイティーラボラトリ 学習システム、学習プログラムおよび学習方法
JP2017164914A (ja) 2016-03-14 2017-09-21 コニカミノルタ株式会社 描画処理装置、画像処理装置、描画処理方法及び描画処理プログラム

Also Published As

Publication number Publication date
JP2019121275A (ja) 2019-07-22

Similar Documents

Publication Publication Date Title
JP7024415B2 (ja) 自動運転装置
CN107862650B (zh) 加速计算二维图像cnn卷积的方法
US20200172093A1 (en) Lane-based probabilistic motion prediction of surrounding vehicles and predictive longitudinal control method and apparatus
US9483243B2 (en) Interleaving data accesses issued in response to vector access instructions
CN102822802B (zh) 多核处理器系统以及控制方法
US9965329B2 (en) Method and apparatus for workload placement on heterogeneous systems
JP2011524049A (ja) 超並列アクセラレータを使用して学習機械の訓練と分類とを並列化し高速化するシステム及び方法
CN108074211B (zh) 一种图像处理装置及方法
KR102379894B1 (ko) 벡터 연산들 수행시의 어드레스 충돌 관리 장치 및 방법
US11288047B2 (en) Heterogenous computer system optimization
CN110554913A (zh) 神经网络系统及其操作方法以及应用处理器
GB2524287A (en) Graphics processing systems
GB2563469A (en) Methods and systems for inter-pipeline data hazard avoidance
JP2012507796A (ja) 範囲検出を行うための命令及びロジック
EP3789874A1 (en) Vehicle control device, vehicle control method, and recording medium storing vehicle control program
US20170026266A1 (en) Bandwidth estimation circuit, computer system, method for estimating and predicting the bandwidth and computer readable program product
WO2021041447A1 (en) Processor and system to manipulate floating point and integer values in computations
JP7470685B2 (ja) 集積回路中の算出ユニットをプログラムおよび制御すること
US10049487B2 (en) Identifying duplicate indices in an input index stream
JP2014225114A (ja) 車両衝突防止処理方法、プログラム及びシステム
US7631152B1 (en) Determining memory flush states for selective heterogeneous memory flushes
CN109416748B (zh) 基于svm的样本数据更新方法、分类系统和存储装置
CN116048770A (zh) 用于进程调度的方法和设备
US9842049B2 (en) Data deployment determination apparatus, data deployment determination program, and data deployment determination method
US20170090982A1 (en) Dynamic task scheduler in a multi-core electronic control unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210629

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210720

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220111

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220124

R151 Written notification of patent or utility model registration

Ref document number: 7024415

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151