天天看點

深入探讨軟體定義架構及其意義

在上期文章中,我們了解了現代GNSS模拟中的軟體定義架構,并與傳統架構進行了對比,本期文章中我們将繼續深入探讨軟體定義架構及其意義。

所謂軟體定義架構,其實是用軟體去定義系統的功能,用軟體給硬體賦能,最大程度提升系統運作效率和能量效率。軟體定義的本質就是在硬體資源數字化、标準化的基礎上,通過軟體程式設計去實作靈活多樣的虛拟化和定制化功能,對外提供專用智能化、定制化的服務,實作應用軟體與硬體的深度融合。目前技術已經具備了實作軟體定義架構的兩個條件:

  • 首先,硬體越來越成熟,功耗、散熱、加工工藝、成本等方面都變得更加的完善,可以更加順利的完成軟體發出的指令。
  • 其次,軟體發展速度快,通信網絡也已經完全打破了時空的限制,随着技術越來越成熟,軟體不但可以控制本地硬體實作各種功能,還可以通過通信網絡控制遠處的資訊系統協同實作各種功能,軟體+網絡的形式為硬體賦能提供更多可能。
深入探讨軟體定義架構及其意義

軟體定義的核心是API(Application Programming Interface),并由此引申出軟體定義的兩大技術發展方向。一種是平台化,也就是說在API之下,“如無必要、勿增實體”,這一方向創造的是一種開放系統架構,軟硬體解耦。沒有開放的系統架構,就無法提供足夠的可擴充性;不解除軟硬體之間的耦合關系,軟體定義就無法可持續發展。

以GNSS模拟為例,如圖所示,在GNSS模拟器中,可以根據不同的信号模拟需求配置不同的硬體和軟體功能。

深入探讨軟體定義架構及其意義

對于硬體部分,如果需要一個射頻端口,就配置一個SDR,如果需要多個射頻端口,就可以配置多個SDR。如果模拟的星座和頻道過多,一個GPU運轉不過來,那麼則可以再增加一個GPU。總的來說,硬體是為軟體服務的,可根據功能進行配置,完全不同于傳統的固定硬體,極大的節省了經濟和時間成本。比如多車模拟中,如果需要模拟多個信号并同時模拟多種進階場景,則需要強大的GPU的支援。傳統的GNSS模拟器的GPU通道數不夠時,就沒有辦法生成模拟,但軟體定義的GNSS模拟器,由于能夠實作軟硬體解耦,它的SDR和GPU都可以進行內建,如下圖,這很好的展現了軟硬體解耦的優勢。

深入探讨軟體定義架構及其意義

另一個技術方向是智能化,也就是說,在API之上,一切皆可程式設計。智能化的核心要素是算法,随着算法的進步,智能化的水準将越來越高。同樣以GNSS模拟器為例,它的軟體部分能夠實作基礎功能,而某些複雜的功能可以通過增加插件來完成,如果有些功能插件無法滿足,也可以自行通過提供的API進行程式設計,實作使用者所需功能。軟體定義模拟器的插件功能如下:

提供不同功能的插件(閉源):

  • SKY-HIL – 硬體在環模型
  • SKY-EXLI – 擴充限制
  • SKY-IQFILE – 允許儲存IQ檔案
  • SKY-MULTI – 建立多個執行個體
  • SKY-ADVJAM – 進階幹擾模拟
  • SKY-ADVSP – 進階欺騙模拟
  • SKY-CSI – 使用者自定義信号
  • SKY-PLG-SDK – 允許使用者開發插件

使用者通過二次開發開發自己的插件(開源):

  • API接口用于各種程式設計語言,如Python\C#\C++\LabVIEW

軟體定義的發展勢頭迅猛,并且快速向各個行業延伸。目前已有軟體定義無線電、軟體定義網絡、軟體定義存儲、軟體定義汽車、軟體定義飛行器、軟體定義衛星等。可以說,當下的時代是軟體定義時代,軟體定義将成為科技發展的重要推手。

繼續閱讀