蔡委哲,楊東華,邱 晗,潘 奇
(南京電子技術(shù)研究所,南京 210039)
顯控終端[1]作為裝備中重要設(shè)備,具有數(shù)據(jù)處理、網(wǎng)絡(luò)通信、綜合顯示、人機交互的作用。顯控終端是與人交互關(guān)系最密切的設(shè)備,通常由顯控處理單元、顯示單元、操控單元組成。顯控處理單元提供數(shù)據(jù)傳輸、視頻處理、接口通信、圖形顯示、狀態(tài)監(jiān)測等功能;顯示單元配備單臺或多臺顯示器,將豐富的顯示信息呈現(xiàn)給操作用戶;操控單元通常包括鍵盤、鼠標(biāo)、軌跡球等交互設(shè)備,為用戶提供各種設(shè)備 操作、參數(shù)設(shè)置、指令下達等手段。顯控終端作為一個獨立且復(fù)雜的系統(tǒng)設(shè)備,承擔(dān)了了裝備狀態(tài)[2]的監(jiān)控、信號檢測、目標(biāo)顯示、操作控制、網(wǎng)絡(luò)通訊等任務(wù)。
隨著信息化技術(shù)的快速發(fā)展與應(yīng)用場景的愈加復(fù)雜,裝備對顯控終端的功能、性能提出更高的要求。目標(biāo)顯示數(shù)量[3]由以往的幾十批目標(biāo)逐步提高到百批、千批目標(biāo)的顯示需求,且目標(biāo)信息要求更加精細化,
點跡、航跡、地圖標(biāo)注等信息需要綜合顯示;顯示內(nèi)容更加的多元,不但含有目標(biāo)的相關(guān)信息還包括多路光電視頻、監(jiān)控視頻等內(nèi)容。顯示方式靈活多變,需要支持多窗口顯示、放大窗顯示、優(yōu)先級顯示、凍結(jié)顯示、尾跡顯示、余暉顯示等多種顯示方式;智能化發(fā)展也要求顯控終端支持復(fù)雜的智能化算法和高效的人機交互,語音識別、語音合成、人臉識別、指紋識別、手勢識別、眼動追蹤成為未來人機交互趨勢。同時,終端裝備的軟硬件國產(chǎn)化也是發(fā)展的必然要求。
傳統(tǒng)的顯控終端采用集中式的處理模式[7],顯控處理單元作為核心設(shè)備承擔(dān)了顯控終端的絕大多數(shù)工作。這種處理模式結(jié)構(gòu)簡單,操作透明性好且操作簡便。當(dāng)其功能、性能、接口需求隨著作戰(zhàn)系統(tǒng)的不斷升級而日益提高,顯控終端需要提供增強的人機交互能力和實時處理能力,且核心軟硬件均采用國產(chǎn)化產(chǎn)品?,F(xiàn)階段,國產(chǎn)化處理器及操作系統(tǒng)自主可控工作取得了長足的進步,但在產(chǎn)品形態(tài)、全棧解決方案和自主生態(tài)體系等方面與國外先進產(chǎn)品依然存在著較大的差距,例如國產(chǎn)化GPU采用的固定渲染管線性能較低,通用可編程能力較差,影響了大帶寬顯示數(shù)據(jù)的處理與高分辨率的圖形圖像顯示。此時,集中處理模式存在著中心處理器負荷較大、多任務(wù)頻繁切換效率低、通信瓶頸、網(wǎng)絡(luò)難擴展等問題。必須基于現(xiàn)有的國產(chǎn)化軟硬件平臺采用更先進的處理架構(gòu)和設(shè)備管理模式提升顯控終端的整體性能。
因此,如何優(yōu)化顯控終端架構(gòu),充分利用每個硬件設(shè)備能力,提升顯控終端的性能,滿足高性能、智能化應(yīng)用需求成為裝備研制過程中的重要內(nèi)容。
文章以顯控終端為研究對象,開展分布式[8]顯控架構(gòu)的研究與設(shè)計,實現(xiàn)分布式智能傳感處理、高清多源綜合顯示、多模態(tài)人機交互等應(yīng)用需求,提供具備智能化、低延時、分布式的基礎(chǔ)軟件功能環(huán)境,整體提升顯控終端性能。
針對上述現(xiàn)狀,提出一種基于分布式的顯控硬件架構(gòu)和基于微服務(wù)的軟件架構(gòu)設(shè)計。該分布式架構(gòu)中以計算處理單元為核心,其它硬件模塊作為協(xié)處理單元,并通過軟件的數(shù)據(jù)協(xié)同與匯總,實現(xiàn)顯控終端的整體功能,提升顯控終端性能。
分布式架構(gòu)是一種彈性技術(shù)架構(gòu),其核心理念是按照一定的維度將系統(tǒng)進行并行拆分和橫向擴展[9],系統(tǒng)各部分采用松耦合[10]方式并行運行,并建立起較為完善的橫向擴展與容錯恢復(fù)機制。相比集中式處理模式,分布式處理是一種將系統(tǒng)級應(yīng)用在物理與邏輯上分布到多個相互分離的處理單元的工作方式,不再是有限處理器集中處理的形式,而是廣泛分布的眾多處理單元共同協(xié)作完成任務(wù)。每個工作單元有各自規(guī)劃的工作任務(wù),最后將處理結(jié)果匯總至中央處理設(shè)備,由中央處理單元統(tǒng)一規(guī)劃、整理、分析、匯總,完成功能的最終實現(xiàn)。這種逐級的處理模式可有效的完成任務(wù)分解,多個子任務(wù)的并行運行于處理,降低多任務(wù)頻繁切換,提升系統(tǒng)任務(wù)的處理速度與效率。同時,每個子任務(wù)的運行相互隔離,可有效實現(xiàn)故障隔離,提高系統(tǒng)可靠性,增強系統(tǒng)可擴展性,減少系統(tǒng)管理成本。
基于上述優(yōu)勢,顯控終端在開放式體系架構(gòu)基礎(chǔ)上采用一種分布式顯控處理協(xié)同架構(gòu)。顯控終端音頻數(shù)據(jù)、圖像數(shù)據(jù)、視頻數(shù)據(jù)、臺位畫面等需要大量計算和處理的數(shù)據(jù)在信息獲取時即進行采集、識別、壓縮、坐標(biāo)變換等分布式處理,將處理后的最終結(jié)果信息或圖像通過PCIe(Peripheral Component Interconnect Express)、以太網(wǎng)、CAN(Controller Area Network)等內(nèi)部互聯(lián)總線送計算處理模塊匯總使用,所有數(shù)據(jù)的分布處理均在計算處理模塊的集中控制下有序進行。
分布式處理顯控架構(gòu)框圖如圖1所示。
圖1 分布式硬件架構(gòu)設(shè)計
各分布式處理單元的主要功能如下:
1)中央處理——顯控計算機:計算處理模塊。
顯控計算機內(nèi)部的計算處理模塊是顯控終端的核心處理單元,采用國產(chǎn)處理器與國產(chǎn)GPU(Graphics Processing Unit),支持高性能整型、浮點運算能力、多路超高清圖形處理與顯示等功能;計算處理模塊采用國產(chǎn)化操作系統(tǒng),部署網(wǎng)絡(luò)驅(qū)動、圖形化驅(qū)動、人機交設(shè)備驅(qū)動、應(yīng)用軟件,是實現(xiàn)顯控終端的數(shù)據(jù)匯總、人機交互、網(wǎng)絡(luò)通訊的最終實現(xiàn)單元。此外,計算處理模塊集成基板管理控制器(BMC,baseboard management controller),管理顯控終端綜合顯示模塊、視頻處理模塊、網(wǎng)絡(luò)交換模塊,以及供電控制模塊內(nèi)部的 BMC (BMC,baseboard management controller)電路,完成整個顯控終端BMC的配置和管理功能,實現(xiàn)顯控終端各模塊設(shè)備的狀態(tài)可視化。
2)分布式處理——顯控計算機:視頻處理模塊。
顯控計算機內(nèi)部的視頻處理模塊作為顯控終端的視頻編解碼處理單元,采用專用視頻處理芯片,用于完成顯示信號的輸入輸出、編解碼處理、數(shù)據(jù)遠超傳輸,實現(xiàn)多路顯示視頻的壓縮編碼、視頻流傳輸、外部視頻的解碼顯示。
3)分布式處理——顯控計算機:顯示處理模塊。
顯控計算機內(nèi)部的顯示處理模塊作為顯控終端的顯示視頻信息的處理單元,采用國產(chǎn)高性能可編程陣列邏輯(FPGA,field programmable gate)實現(xiàn)硬件加速,用于實現(xiàn)多通道專用顯示視頻、光電視頻、監(jiān)控視頻的預(yù)處理,光纖接口(FC ,fibre channel)/萬兆網(wǎng)接口處理,顯示視頻信號接口處理,多層、多窗口綜合顯示與窗口疊加管理等功能。
4)分布式處理——顯控計算機:業(yè)務(wù)擴展模塊。
業(yè)務(wù)擴展模塊是顯控計算機的擴展模塊,接收總線上的大帶寬業(yè)務(wù)數(shù)據(jù),如點監(jiān)測數(shù)據(jù)等,利用板載高性能處理器完成數(shù)據(jù)預(yù)處理及異構(gòu)網(wǎng)絡(luò)融合通信,減輕計算機主機的業(yè)務(wù)負載,提高業(yè)務(wù)信息處理的實時性。
5)分布式處理——一體機。
一體機作為顯控終端的顯示調(diào)度和高頻操作模塊,采用國產(chǎn)處理器與國產(chǎn)化GPU,集成高清顯示、多點觸控、手寫功能、亮度控制,支持圖表顯示、態(tài)勢顯示、數(shù)據(jù)共享、多屏協(xié)同標(biāo)繪、亮度調(diào)節(jié)等應(yīng)用,為顯控計算機的協(xié)處理模塊,擴展顯控計算機的處理能力,提升計算機的處理性能。
6)分布式處理——音頻通訊終端。
音頻通訊終端作為顯控終端的話音通訊設(shè)備,采用嵌入式高性能處理器,完成高清視頻處理與多路音頻處理,提供可視電話、點到點呼叫、會議通訊等功能,為臺位操作人員提供指揮話音通信的功能,支持通過以太網(wǎng)與顯控計算機交互控制信息和語音數(shù)據(jù),實現(xiàn)語音撥號、軟件控制、視頻顯示等功能,支持多點觸控,提供快捷方便的操作控制。
7)分布式處理——語音處理模塊。
語音處理模塊作為顯控終端內(nèi)的音視頻采集與處理設(shè)備,采用專用音視頻處理器,提供麥克風(fēng)陣列音頻采集、音頻降噪、圖像采集、語音合成、語音播報、命令詞識別、連續(xù)語音識別、語義理解、人臉認證、聲紋認證、音視頻編解碼、設(shè)備狀態(tài)監(jiān)測等功能。
8)分布式處理——指紋處理模塊。
指紋處理模塊作為顯控終端內(nèi)的指紋采集與數(shù)據(jù)處理設(shè)備,采用微處理器完成指紋信息的采集錄取、數(shù)據(jù)處理、用戶管理、狀態(tài)管理與交互通信,與計算處理模塊協(xié)同完成臺位操作人員認證登錄等功能。
9)分布式處理——觸控顯示器。
觸控顯示器為顯控終端的顯示單元,為顯控臺提供高清圖像顯示,同時通過USB接口與計算機處理模塊通信,實現(xiàn)觸控控制與顯示器的調(diào)光控制。
10)分布式處理——操控組合。
操控模組包括按鍵模塊、告警模塊、開關(guān)模塊,提供按鍵開關(guān)、信息告警、控制功能。操控組合通過網(wǎng)絡(luò)接口、串行接口與計算模塊通訊,實現(xiàn)按鍵控制信號的采集與操作,告警信號的發(fā)送與提示。按鍵模塊可實現(xiàn)多種功能按鍵的配置與設(shè)定,有效滿足各種平臺的多按鍵功能需求。
鍵盤、鼠標(biāo)、車鐘、操縱桿等設(shè)備為人機操控設(shè)備,均在本地完成操控信息采集和顯示,通過內(nèi)部互聯(lián)與顯控計算機交互信息,可根據(jù)實際應(yīng)用需求進行選用。
分布式架構(gòu)的顯控終端集成了多個功能獨立的設(shè)備,不再是一個簡單的執(zhí)行或傳感硬件,而是包含了多種自運行軟件的智能單元。例如,觸控顯示器不但具備顯示、觸控交互的功能,還具備程控調(diào)光、自身健康狀態(tài)監(jiān)測等功能,語音處理模塊需要進行語音采集、音頻降噪、語音識別、聲音合成、圖像采集、圖像認證等設(shè)備功能,也需要對設(shè)備自身管理,包括設(shè)備的溫度、電流、電壓信息的監(jiān)控,磁盤空間的使用情況統(tǒng)計等功能。因此,對應(yīng)硬件分布式架構(gòu)軟件業(yè)采用一種微服務(wù)架構(gòu)[11-14],支持以專注于單一設(shè)備功能的小型軟件功能模塊為基礎(chǔ),通過API集相互通訊的方式搭建復(fù)雜業(yè)務(wù)系統(tǒng)。
微服務(wù)是一種開發(fā)軟件的架構(gòu)和組織方法,專注于單一責(zé)任與功能的小型功能區(qū)塊為基礎(chǔ),利用模塊化的方式組合出復(fù)雜的大型應(yīng)用程序,即將復(fù)雜的應(yīng)用程序劃分為一組組小的服務(wù),服務(wù)之間互相協(xié)調(diào),互相配合。每個服務(wù)運行在其獨立的進程中,數(shù)據(jù)獨立,不會互相干擾,服務(wù)與服務(wù)之間采用輕量級的通信機制互相溝通。每個服務(wù)都圍繞著具體業(yè)務(wù)進行構(gòu)件,并且能夠獨立部署。微服務(wù)的特點是彈性伸縮,使應(yīng)用程序更易于擴展及功能升級。
結(jié)合顯控終端的硬件分布式處理架構(gòu),終端軟件采用了基于微服務(wù)的綜合顯控軟件架構(gòu),將各個功能模塊的使用劃分為服務(wù)類,每個服務(wù)獨立部署于各分布式設(shè)備中,通過輕量化的API調(diào)用服務(wù),完成各模塊的功能集成、數(shù)據(jù)收集、指令分發(fā),最終實現(xiàn)復(fù)雜的應(yīng)用功能。
基于微服務(wù)的綜合顯控軟件架構(gòu)實現(xiàn)方案如圖2所示。
圖2 微服務(wù)軟件架構(gòu)
基于微服務(wù)的顯控軟件架構(gòu)包括4個層次:硬件適配層、微服務(wù)層、微服務(wù)總線、應(yīng)用層。
硬件適配層主要實現(xiàn)對各個硬件設(shè)備的管理、狀態(tài)上報、數(shù)據(jù)傳輸?shù)裙δ?,上報參?shù)包括設(shè)備溫度、電壓、電流、資源使用情況等數(shù)據(jù)。
微服務(wù)層包含各種微服務(wù),各個微服務(wù)與硬件模塊相對應(yīng),提供觸控、監(jiān)控、語音、人臉、聲紋、指紋、視頻、管理、調(diào)度、數(shù)據(jù)等服務(wù)。各個微服務(wù)獨立部署、數(shù)據(jù)獨立、相互隔離,并且可以根據(jù)具體應(yīng)用進行擴展或者刪除。
微服務(wù)總線采用虛擬網(wǎng)絡(luò)總線,各個微服務(wù)以標(biāo)準(zhǔn)網(wǎng)絡(luò)接口形式接入微服務(wù)總線,微服務(wù)總線實現(xiàn)各個微服務(wù)統(tǒng)一,支持應(yīng)用或者調(diào)度服務(wù)對各種服務(wù)的調(diào)度與管理。
應(yīng)用層可支持本地應(yīng)用與遠程應(yīng)用調(diào)用。本地應(yīng)用注冊其需要的微服務(wù),通過標(biāo)準(zhǔn)網(wǎng)絡(luò)接口,完成對相應(yīng)設(shè)備的操控。遠程應(yīng)用通過實體以太網(wǎng)的網(wǎng)絡(luò)傳輸接口獲取與本地一致的微服務(wù)。
在系統(tǒng)架構(gòu)中,部署一個管理、調(diào)度微服務(wù),該微服務(wù)實現(xiàn)對所有微服務(wù)的統(tǒng)一管理[15],包括硬件環(huán)境、服務(wù)狀態(tài)、系統(tǒng)健康信息、接口調(diào)用情況、異常實時告警及潛在問題的事先預(yù)警等功能。
顯控終端是裝備中人機交互的重要設(shè)備,下文重點闡述基于分布式架構(gòu)終端的人機交互設(shè)計、終端健康管理設(shè)計。
顯控終端交互場景包含了大量的顯示因素,包括裝備狀態(tài)、目標(biāo)航跡、背景地圖、區(qū)域劃分等顯示內(nèi)容,同時具備多窗口同時顯示、疊加顯示、開窗顯示等多種顯示方式。傳統(tǒng)的交互方式通過鼠標(biāo)、鍵盤進行上、下屏切換,深度菜單尋找,存在操作步驟多、操控時間長、控制不靈活等問題?;诜植际郊軜?gòu)的顯控終端集成了語音識別、多點觸控等智能化人機交互功能。因此,在界面設(shè)計時,充分考慮多點觸控、語音識別的交互優(yōu)勢開展界面的開發(fā)設(shè)計。
2.1.1 觸控交互界面
基于觸控的交互界面采用大控件尺寸,尺寸標(biāo)準(zhǔn)大小44 px,滿足手指觸控人機工程尺寸[16-17],避免誤操作。此外,采用多宮格組合控件,空格組件區(qū)分明顯,利于快速選擇與操作,如圖3所示。操控區(qū)優(yōu)先布局于界面底部,可以減少雙手移動距離,實現(xiàn)手指的就近操作,同時解決手臂易遮擋的問題,符合快捷觸控操作習(xí)慣。
圖3 多點觸控軟件界面設(shè)計
觸控操作動作包括點擊、長按、滑動、拖動、旋轉(zhuǎn)、縮放等,通過長按實現(xiàn)功能菜單快捷探出,通過按住拖動實現(xiàn)窗口移動,通過雙指的捏合和擴展,實現(xiàn)界面的縮小與放大。此外多點觸控能賦予更多操作可能性,使單人或多人同時完成多個點操作,提高操作效率。
2.1.2 語音交互界面
語音交互通過聽和說的方式代替手動操作,達到快速獲得信息、快速控制系統(tǒng)的作用,有效提升系統(tǒng)智能化和便捷化水平。語音交互界面的如圖4所示。
圖4 語音交互界面
通過語音指令,可以完成地圖操作、標(biāo)牌操作、菜單圖層選擇、窗口打開/關(guān)閉、模式選擇切換、目標(biāo)跟蹤、目標(biāo)設(shè)定、目標(biāo)屬性顯示、裝備開關(guān)機等常用操作。語音輸入文字內(nèi)容簡潔,界面實時顯示輸入信息和狀態(tài)反饋,對重點目標(biāo)、目標(biāo)偏航、特殊目標(biāo)、來襲目標(biāo)等特情進行聲音告警,提供輔助決策。通過基于觸摸屏、語音識別的交互操控設(shè)計,更加直接、自然、快捷的完成控制操作,提升了顯控系統(tǒng)操控的便捷性。
傳統(tǒng)的顯控終端主要針對顯控計算的運行狀態(tài)進行監(jiān)測,未對各個模塊進行健康信息的收集與分析,存在故障診斷與健康評價能力不足、缺乏對性能退化故障的預(yù)測能力[18]。分布式顯控終端以顯控計算機為核心處理單元,收集、監(jiān)測、分析各個模塊的健康信息。
顯控計算機的計算處理模塊搭載功能獨立的BMC單元,作為顯控終端的健康信息管理中心,對各模塊狀態(tài)進行全面匯總、監(jiān)測和集中管理;各模塊板卡具備智能平臺管理器(IPMC,intelligent platform management controller),支持對芯片電壓、電流、模塊溫度等狀態(tài)的檢測和上報。計算處理模塊BMC電路通過I2C接口連接顯控計算機內(nèi)部智能平臺管理總線(IPMB,intelligent platform management bus),完成板卡健康管理;通過串口連接顯控終端供電控制模塊,完成電源監(jiān)測和整臺加電控制;其他模塊復(fù)用主要通信接口向計算處理模塊上報狀態(tài)信息,由計算處理模塊轉(zhuǎn)發(fā)至管理中心。計算機處理模塊收集、監(jiān)測的顯控終端信息通過可視化軟件展現(xiàn)給用戶,包括各個模塊的溫度、電壓、電流、鏈路情況、資源使用情況,當(dāng)模塊狀態(tài)信息出現(xiàn)異常時,可視化軟件會進行閃爍告警,同時播放告警聲音。健康監(jiān)測用戶界面如圖5所示。
圖5 顯控終端健康監(jiān)測系統(tǒng)界面設(shè)計
基于分布式架構(gòu)的顯控終端健康監(jiān)測系統(tǒng)具備以下功能:
1)每臺顯控終端部署獨立的健康監(jiān)測軟件,支持周期性上報顯控臺內(nèi)部各模塊硬件狀態(tài);
2)提供顯控終端健康信息監(jiān)測管理功能,可依據(jù)用戶需要指定的硬件平臺上實時監(jiān)測聯(lián)網(wǎng)的顯控終端運行狀態(tài)信息;
3)提供顯控終端履歷管理功能,實現(xiàn)對不同臺套顯控終端累計運行狀態(tài)、故障模塊等信息可視化、精確管理,支持性能退化故障的預(yù)測能力。
終端采用上下雙屏形式,計算處理模塊與一體機均采用國產(chǎn)飛騰處理器,景嘉微顯卡[19-20]。顯控終端可支持2路3 840×2 160@30Hz分辨率超高清圖形處理與顯示。顯示處理模塊采用復(fù)旦微FPGA,支持2路2 K光電視頻同時處理與顯示、監(jiān)控視頻顯示。終端設(shè)備主要包括臺體、顯示器、電源、機箱、及臺面各個嵌臺設(shè)備,示意圖如圖6所示。
圖6 顯控終端設(shè)備
顯控計算機中包括計算機處理模塊、顯示處理模塊等模塊,與電源、轉(zhuǎn)接板安裝在臺體內(nèi)部,顯示器安裝在臺面上的顯示器支臂上,顯控終端面集成揚聲器、語音通訊模塊、麥克風(fēng)、按鍵模塊、告警模塊、開關(guān)模塊、語音采集模塊、一體機、鼠標(biāo)、鍵盤等模塊,為用戶提供豐富的操作控制接口。
終端上電后,顯控計算機進行通用數(shù)據(jù)處理、圖像顯示、操控響應(yīng),支持超高清分辨率的精細化信息顯示;提傳統(tǒng)的鍵盤、鼠標(biāo)操作以及基于觸控顯示器與一體機的單點、多點觸控快捷操作;同時接收語音通訊模塊的通訊數(shù)據(jù)、語音采集模塊的語音和人臉數(shù)據(jù),具備視頻通訊、語音識別、語音合成、人臉認證、指紋認證等生物信息采集與識別功能。高效完成了顯控終端的信息顯示、人機交互、操作控制功能。
基于分布式架構(gòu)的顯控終端有效整合各個協(xié)處理單元的能力,綜合完成顯控終端的復(fù)雜功能,具有豐富的功能和較高的處理性能,與傳統(tǒng)顯控終端的性能參數(shù)對比如表1。
表1 性能對比表
經(jīng)過對比分析,基于分布式架構(gòu)的顯控終端功能更加豐富,信息呈現(xiàn)方式多樣化,人機交互更加高效,設(shè)備狀態(tài)可視化,性能得到較大的提升。
本設(shè)計針對顯控終端應(yīng)用需求,基于國產(chǎn)化處理器,采用分布式顯控架構(gòu),合理劃分功能,眾多處理器共同協(xié)作完成任務(wù),共同實現(xiàn)顯控終端的數(shù)據(jù)處理、高清顯示、智能人機交互、健康監(jiān)測等功能。經(jīng)試用表明,該分布式顯控架構(gòu),切實解決了國產(chǎn)化平臺下性能不足的問題,具備良好的可行性,有效提升了顯控終端的整體性能和裝備作戰(zhàn)效能。