KopherUDS:ECU-side UDS 診断ミドルウェア
KopherUDS は DCM、DEM、NM、DoCAN、DoIP、DID、DTC、Routine、SecurityAccess、programming service hooks を統合する設定可能な ECU-side UDS 診断ミドルウェアです。
要点
概要
KopherUDS は設定可能な車載 UDS diagnostic middleware です。DCM、DEM、NM、DoCAN / ISO-TP、DoIP / TCP-IP を再利用可能な診断 runtime として統合し、project callbacks を通じて DID、DTC、Routine、I/O、memory、flash、boot の動作へ接続します。
PC 側の対話診断、自動テスト、Trace、report は KITE UDS Tester が担当します。Kopher Config、KopherUDS、KITE UDS Tester で DID、DTC、Routine、session、security 定義を共有できるため、ECU と PC tool で診断データを重複管理する負担を減らせます。
製品の役割
| Component | エンジニアリング上の役割 |
|---|---|
| Kopher Config | 診断定義と project rules を管理・検証し、ECU configuration を生成します。 |
| KopherUDS | ECU runtime 内で診断サービス、イベント管理、ネットワーク状態、transport を実行します。 |
| KITE UDS Tester | PC から対話診断、自動検証、Trace、report export を実行します。 |
| KopherBoot | PBL / SBL、flash programming、secure boot、recovery、安全な update lifecycle を担当します。 |
各製品が診断データと BSW foundation の一部を共有することで、configuration、ECU runtime、PC validation、programming workflow に一貫した診断モデルを使用できます。
Runtime Architecture
| Layer | KopherUDS の責任 |
|---|---|
| Application / Boot Integration | DID、DTC、Routine、I/O、memory、flash / boot callbacks。 |
| DCM | Diagnostic Session、SecurityAccess、service routing、P2 / P2* timing、positive / negative response、pending flow。 |
| DEM | Event、debounce、snapshot、extended data、DTC state、clear / report、ControlDTCSetting。 |
| NM / ComM / PduR | Network wake / sleep、diagnostic communication hold、message routing。 |
| Transport | DoCAN / ISO-TP、DoIP / TCP-IP。 |
| Platform Services | CAN / Ethernet driver、NvM / Fee / Ea、Flash Driver、target MCU。 |
Application hooks は project-specific です。共通診断コアは protocol と state management を担当し、実データ、hardware I/O、Routine、memory protection、flash policy は ECU project が実装します。
設定可能な UDS Services
KopherUDS は ECU profile ごとに選択できる UDS service modules を提供し、session、ECU control、DTC、DID、memory、SecurityAccess、communication、Routine、programming の主要フローを扱います。
| Group | Dedicated core handlers |
|---|---|
| Session / ECU Control | 0x10 DiagnosticSessionControl、0x11 ECUReset、0x3E TesterPresent |
| DTC | 0x14 ClearDiagnosticInformation、0x19 ReadDTCInformation、0x85 ControlDTCSetting |
| Data / I/O | 0x22 ReadDataByIdentifier、0x24 ReadScalingDataByIdentifier、0x2E WriteDataByIdentifier、0x2F InputOutputControlByIdentifier |
| Memory / Security / Communication | 0x23 ReadMemoryByAddress、0x27 SecurityAccess、0x28 CommunicationControl |
| Routine / Programming | 0x31 RoutineControl、0x34 RequestDownload、0x35 RequestUpload、0x36 TransferData、0x37 RequestTransferExit |
Authentication、periodic DID、dynamic DID、file transfer、secured data transmission、response on event、link control などは、OEM、transport、security、storage、ECU profile に応じて拡張できます。
各 ECU で service、subfunction、session、security level、callback behavior を設定でき、共通診断コアをさまざまな controller と車載 network architecture に適用できます。
DID・DTC・Routine Integration
- DID は list / range、multiple DID、sync / async client-server、sender / receiver、optional NvM path を扱います。
- DEM は event、debounce、snapshot、extended data、DTC state を DCM の clear、report、ControlDTCSetting path へ接続します。
- RoutineControl は StartRoutine、StopRoutine、RequestRoutineResults を扱い、実際の Routine logic は project callback が実装します。
- Memory / programming services は negotiation、transfer state、callbacks を提供し、allowed region、erase / write、verification、recovery policy は project または KopherBoot が担当します。
SecurityAccess Integration
UDS 0x27 は設定可能な GetSeed / CompareKey callbacks により、診断 service core と実際の algorithm を分離します。DCM policy は pending、attempt counter、delay timer、NRC 0x35 / 0x36 / 0x37 を処理し、その後で software algorithm、HMAC、HSM / SHE-backed key service に接続できます。
この境界により、OEM key policy や protected key material を共通診断コアへ固定せず、UDS service flow を安定させられます。
Engineering Workflow
- DID、DTC、Routine、session、SecurityAccess、timing、transport profile を定義します。
- Kopher Config で rules を検証し、KopherUDS に必要な ECU configuration を生成します。
- DCM、DEM、NM、transport、application / boot callbacks を target MCU に統合します。
- KITE UDS Tester で対話診断、自動テスト、Trace、report export を実行します。
- generated configuration、PC evidence、on-target behavior を照合し、project acceptance を完了します。
Project Delivery
KopherBit は診断仕様の整理、Kopher Config configuration、KopherUDS stack integration、application callbacks、transport / platform services integration、KITE UDS Tester の test cases、Trace、report を支援します。Delivery scope は ECU、OEM 診断仕様、開発段階に合わせて調整できます。
FAQ
KopherUDS と KITE UDS Tester の違いは何ですか?
KopherUDS は ECU-side diagnostic middleware、KITE UDS Tester は PC diagnostic instrument です。KopherUDS は ECU 内の DCM、DEM、NM、transport を担当し、KITE UDS Tester は外部から service request、response / NRC 解析、自動テスト、Trace、report を提供します。
KopherUDS の service scope はどのように設定しますか?
ECU profile ごとに session、DID、DTC、Routine、SecurityAccess、memory、communication、programming services を選択し、subfunction、session、security level、timing、project callbacks を設定します。OEM-specific services も同じ architecture 上で拡張できます。
DoCAN と DoIP に対応しますか?
DoCAN / ISO-TP と DoIP / TCP-IP の integration path を提供します。実際の driver、PduR、ComM、NM、network profile、on-target timing は ECU project で設定・検証します。
KopherUDS と KopherBoot の役割分担は?
KopherUDS は application-side ECU 診断コアと programming service hooks を提供します。KopherBoot は boot stage、flash flow、startup trust、recovery、安全な update lifecycle を担当します。診断 BSW foundation の一部を再利用できますが、別々の製品です。
量産向け VCU プラットフォームが必要ですか?
商用EV向けの車両制御ユニットとエンジニアリングサービスをご確認ください。