産品劃分(fēn)和(hé)産品架構的(de)重要(yào)性
自(zì)動駕駛軟件(jiàn)架構涉及太多(duō)不(bù)同領域的<≥(de)技(jì)術(shù)(算(suàn)法設計(jì),算(suàn)法加速,通(t×₽§ōng)訊,圖像處理(lǐ)等等),每一(yī)個(gè₽>)領域都(dōu)可(kě)以是(shì)一(y≠δ±ī)個(gè)企業(yè)的(de)專屬産品。我們需要(yào)一(yī♣∏♣)種方法對(duì)涉及的(de)紛繁複雜(zá)的(de)相(xiàng)關産品做(zσδuò)一(yī)個(gè)産品架構上(shàβ♠&€ng)的(de)梳理(lǐ)。厘清不(bù)同産品之間(jiān)的(de)結構層次。λ不(bù)同産品之間(jiān)的(de)依賴®÷↔關系。這(zhè)樣在我們討(tǎo)論一(yī)個(gè)相(xiàng)關産品時(s∏ φ∏hí),能(néng)夠清楚這(zhè)個(gè≈✔×)産品的(de)作(zuò)用(yòng)以及在整體(tǐ)産品架構&$ 中的(de)地(dì)位。
不(bù)同的(de)産品涉及的(de£≠₽¥)專業(yè)領域差别巨大(dà),沒有(yǒu)人(r 'én)能(néng)掌握所有(yǒu)領域的↑'±'(de)知(zhī)識。區(qū)分(fēn)出不(bù♦ Ω♥)同的(de)産品,可(kě)以使單獨的(de)産$ "∑品更聚焦于特定領域,由合适的(de)産品經理(lǐ)做(zuò)專業(yè)的(de)定義'♦,由具備合适技(jì)能(néng)的(de)研發團隊來(lái)開(kā€€®•i)發和(hé)測試。
不(bù)同産品之間(jiān)有(yǒu)相(xiàng)互的(de)依§∏賴關系,如(rú),A 産品會(huì)交付給客戶,但(dàn)是(s☆Ωhì)其開(kāi)發需要(yào) B 産品和(hé) C 産品進行(xíng)支持,₩ B産品也(yě)要(yào)交付客戶,而 C 産品不(♠∑bù)用(yòng)。厘清其依賴關系可(k₽• ě)以讓我們知(zhī)道(dào)哪些(xiē)要(y ♥♦®ào)先開(kāi)發,哪些(xiē)後開(kγ®♣©āi)發,哪些(xiē)可(kě)以由不(bù)同的(de)♣β₩團隊并行(xíng)開(kāi)發再集成。在産品層面的(de)劃分(fēn)也₩£∞(yě)可(kě)以更明(míng)确哪些(xiē)産品可(kě)φ↓以購(gòu)買,哪些(xiē)必須要(yào)自(zì)己開(kāi)發。
而且不(bù)同的(de)産品有(yǒu)不αα(bù)同的(de)研發周期,如(rú)€∑果A産品依賴與B産品,而B産品的(de)開(kāi)發周期又(yòu)很(hěn)長(chá≤♣πng),我們就(jiù)要(yào)想辦法來(lái)提供模拟的(de)方案來(lái)暫時★×(shí)消除這(zhè)種依賴。保證A産品按期♣♦φ↓完成。這(zhè)些(xiē)都(dōu)需要(yào)統籌考慮。前提是(shì)對(duì)不εφ<(bù)同産品的(de)邊界有(yǒu)一(yī♠¶×÷)個(gè)清晰的(de)劃分(fēn)
産品劃分(fēn)邏輯可(kě)以有(yǒu)很(hěn)多(d ©§uō)種,比如(rú):
1. 根據特定的(de)專業(yè)領域聚類關系進行(xínε§☆←g)劃分(fēn)
2. 根據從(cóng)硬件(jiàn)到(dà♦★♠o)應用(yòng)層的(de)層級關系進行(xíng)劃分(fēn)
3. 根據縱向的(de)功能(néng)切面進行(xíng)劃分(fēn)
4. 根據是(shì)運行(xíng)時(shí)組件δ• (jiàn)和(hé)還(hái)是(shì)開(kāi)發支₽'持工(gōng)具鏈進行(xíng)劃分(fēn)
産品架構與産品線
2.1 四級産品架構

圖1 四級産品架構
下(xià)圖是(shì)以劃分(fēn≈ ")了(le)4級産品架構等級 PA1~PA4。這(zhè)個(gè)劃分(fēn)實→&✔π際是(shì)以“開(kāi)發智能(néng)駕駛軟件(jiàn)框架及£σ基礎組件(jiàn)(L.FW) ”為(wèi)出發點來(lái)做(> γσzuò)的(de)。
"智能(néng)駕駛軟件(jiàn)框架及基礎組件(jiàn)(L.FW)" 本身('φδshēn)為(wèi)第3級(PA3)産品的(de)邊界。PA3 往上(shàngδ©ε₽)的(de)PA2 包括所有(yǒu)運行(xíng)∑¶π在在智能(néng)駕駛域控制(zhì)器(qì)中的(de)軟件(jiàn)。往下(xiλ<à)的(de) PA4 包含各種自(zì)動駕駛功能(♠∏'&néng)軟件(jiàn)包,這(zhè)些(xiē)軟件(jiàn↑§ε)包都(dōu)基于 L.FW 提供的(de)組件(jiàn)接口進行πΩ™(xíng)開(kāi)發。
PA1還(hái)包括在PA2 之外(wài)的(de)所有(yǒu)用(yòng)于 PA2 ↓開(kāi)發的(de)工(gōng)具鏈和(hé)支持系統。
這(zhè)裡(lǐ)的(de) PA1★♠-PA4的(de)産品架構是(shì)包含關系。
每一(yī)級 PA 內(nèi)還(hái)可(kě)以 >包含多(duō)條産品線,一(yī)個(gè)産品線內(nèi)可(kě)以包括多(duō)個(€"α≈gè)相(xiàng)關的(de)産品。産品線是(shì)按照(zhào)産品的(de "≠÷)相(xiàng)關性來(lái)劃分(fēn)的(de)。
比如(rú),PA1 內(nèi)除了(le) PA2外(wài)的(de)♣ε↔産品可(kě)以分(fēn)為(wèi)幾大(dà)産品線:
-
軟件(jiàn)測試
-
數(shù)據采集與數(shù)據管理(lǐ)平台
-
真值系統
-
算(suàn)法開(kāi)發支持
-
仿真測試
2.2 PA2 級産品結構

圖2 PA2(域控制(zhì)器(qì)內(nèi)' )的(de)産品架構
PA2 級别的(de)産品在 (D.P + L.OS©πβ) 主要(yào)是(shì)要(yào)選擇嵌¶↑± 入式的(de)計(jì)算(suàn)機(jī)OS,常用(yòng)的(de)有(yǒu) Lε$₩inux、QNX或 VxWorks 等。
一(yī)般來(lái)講,智能(néng)駕駛≠>¥∞領域以 Linux 為(wèi)主,有(yǒu)開(kāi)源的(de)實現(xiàn)。但₽€'(dàn)最好(hǎo)選用(yòng)有(yǒu)專業(yè)團隊支持的(de)商業→↔(yè)版本,一(yī)方面能(néng &∞)提供加速 Linux 在目标闆上(shàng)的(de)移植和(hé)專項優化(huà)σ<,包括系統裁剪,啓動優化(huà)等,一(yī) ☆方面能(néng)夠提供長(cháng)期的(de)專業(yè)技(jì)術 ↔≤★(shù)支持,跟進最新補丁的(de)加入。
PA2 級别的(de)産品在 (D.R +≤✘★ L.OS) 可(kě)以是(shì)某個(gè)RTOS系統。π↔一(yī)般芯片開(kāi)發商提供微(wēi)處理(lǐ)器π∏♠(qì)抽象層(MCal) 也(yě)在這(z$Ω↓hè)個(gè)位置。RTOS 可(kě)以基于÷☆ Mcal 來(lái)實現(xiàn)自(zì)己的(♣δde)芯片驅動,也(yě)可(kě)以獨立做(zuò)驅動。也(yě)可(k₽ě)以直接使用(yòng) CP AtuoSar ∑♥, 但(dàn) CP AutoSar 橫跨了(le) 實時€±(shí)域的(de) L.OS 和(hé) L.BSW 兩層。
PA2 基本的(de)産品在 (D.Pδ≈₽ + L.BSW) 區(qū)域是(shì)支持性能(nén↔α¥↓g)域的(de)車(chē)載控制(zhì)器(qì)♠←←基礎軟件(jiàn),典型的(de)産品就(jiù)是(shì) AP A↔↕utoSar. 對(duì)等的(de)産品比較接近(jìn)的(de)是(shì©£) ROS2。但(dàn) ROS2 隻是(sh↓§ì)完成了(le) AP AutoSar 通(tō≥ ng)訊部分(fēn)并沒有(yǒu)與車(chē)載控制(zh쮶)器(qì)相(xiàng)關的(de)模塊。另外(wài),在 L.BSW 層,我們→'♣₩還(hái)需要(yào)實時(shí)域♠π→和(hé)性能(néng)域之間(jiāγ≥"n)的(de)數(shù)據同步機(jī)制(zhì)。如(rú)果L.BSW 層選擇$®的(de)第三方産品沒有(yǒu)提供,就(jiù)需要(yào)自(zì)己 €開(kāi)發。
2.3 PA3、PA4 及産品結構
PA3基本上(shàng)等同于 L.FW 層。其內(nèi)部産品主™&要(yào)是(shì)各自(zì)運行(xíng)框架。
FW:ENV 環境模型框架和(hé) EPX-SA 模型的(de)執行(xíng)框架×σ是(shì)最主要(yào)的(de)兩個(gè)。
另外(wài)還(hái)有(yǒu)平台特定的(de)框架,如(rú) 算β$•(suàn)法加速框架,視(shì)頻(pín)處理(lǐ)框架,2£₹↑D/3D 渲染框架,HMI引擎,這(zhè)些(xiē)也(yě)需要(yào)開(k↔÷×āi)發,不(bù)過需要(yào)基于平台特定的(de)SDK&≈↓↔能(néng)力。
L.FW 層還(hái)會(huì)提供Ω★≈一(yī)些(xiē)基礎的(de) EPX-SA 組件(jiàn)和(hé)部分(fēn)基σ✔☆礎的(de)感知(zhī)算(suàn)法,讓整個(gè)框架能(néng)夠運轉起來(lái₽•♦)。
PA4 産品是(shì)基于 PA3 實現(xi✘♠₩γàn)真正的(de)智能(néng)駕駛的(d↔∑♦e)功能(néng)。包含感知(zhī)算(suàn)法和(hé) EPX-SA 的(de)各種組♠¶件(jiàn),這(zhè)些(xiē)算(suàn)法和(hé)組件(jiàn)都(dōu)被裝∞×載到(dào) L.FW 層的(de)合适位置被執行(x≈♣∑εíng)。不(bù)同的(de)算(suàn)法和(hé)組件(jiàn)的(de)集合就π"(jiù)形成某一(yī)個(gè)産品。
轉載汽車(chē)電(diàn)子(zǐ)相(xiàng)關文(wén)章(zhāng)€♠
轉自(zì)汽車(chē)電(diàn)子(zǐ)與軟件(jiàn)