采用Zynq SoC實現Power-Fingerprinting 網絡安全性
因此,分布式計算架構是最理想的選擇,因為每個傳感器都具備一個計算節點。此外,分布式架構還能在同一單元中將傳感器模擬前端和算法處理高度整合在一起,從而降低成本和復雜性。此外,對于大部分安裝來說,現有的網絡基礎設施足以支持目前被認為是超低的數據速率。但是,在采用分布式處理處理的情況下,監控器節點的設計就變得更具挑戰性,因為其自身必須滿足傳感器節點和監控器算法處理的綜合要求。
因此監控器節點必須體積小、功耗低、成本低。其必須能夠處理和緩沖來自于高速 ADC 的數據,并且還能夠滿足算法的計算需求。此單元必須足夠小才能緊靠目標器件放置,進而不僅能限制線纜長度,而且還可提高傳感器的抗擾度。大小和潛在的安裝空間限制確定該單元可在無風扇的情況下運行;因而必須設計為低功耗。
由于在需要監控的既定安裝中可能有數百個目標器件,因此該單元的成本必須非常低才能保持較低的總體安裝成本低廉。很多嵌入式處理器都能夠滿足上述大部分條件,例如部分基于流行的 ARM® 架構的嵌入式處理器。除了大部分由 ARM 器件實現的低功耗和低成本之外,ARM 產品還擁有更多優勢,例如對大型社區的支持、嵌入式操作系統和開發工具的可用性以及針對大部分器件的原生千兆以太網支持。
其中幾乎所有器件都欠缺處理原始 ADC 數據的能力(速率高達 8 Gbps)。它們也不具備對該數據進行任何有意義操作的數字信號處理 (DSP) 功能。
充分利用 Zynq SoC 以實現 FFP Cybersecurity
這些更嚴格的要求使得 Zynq SoC 理想適用于該應用。Zynq SoC 可在單個全功能器件中將雙核 ARM 處理系統與高性能可編程邏輯高度整合在一起。這種組合不但可提供能滿足應用的處理需求的異構計算架構,同時還能簡化基于 PC 系統的代碼移植工作。
Zynq SoC 的處理系統能提供上述嵌入式 ARM 處理器的所有優勢,而增加的可編程邏輯也擁有若干優勢。它們包含與 ADC 的無縫連接,并且還能夠處理 ADC 的全數據速率。此外,Zynq SoC 在可編程邏輯結構中包含幾百個 DSP 模塊和幾萬個邏輯模塊,能夠利用它們對檢測和訓練算法實現顯著加速。Zynq SoC 還可全方位滿足針對低功耗、低成本和小尺寸的要求。
通過采用 28 納米可編程邏輯結構和 ARM 處理系統,器件可實現相對較低的功耗。由于 Zynq SoC 擁有極高的集成度,因而無需采用之前本來所必需的眾多支持電路和外設,這不僅能縮小總體系統設計,同時還可降低成本。此外,為了降低風險并加速上市進程,理想的情況是在設計中添加基于 Zynq SoC 的小型模塊級系統 (SoM)。
iVeia 公司推出的 Atlas-I-Z7e 理想適用于嵌入式監控器設計,因為其擁有如下優勢:極高的性能功耗比(歸功于低功耗 Zynq 7020 器件和 LPDDR2 內存);專用的可編程邏輯內存在無需處理器干預的情況下對 ADC 數據進行緩沖;以及能在工業環境中可靠運行。Atlas 高度靈活的無縫接口可簡化基礎板設計。此外,SoM 開發套件還包含具備參考設計的免版權信號處理 IP 資源庫,其不僅能提供監控器應用代碼的主要部分,而且還能快速提升設計功能。圖 2 描述了的基于 Zynq SoC 的最終監控器設計。
如何執行計算密集型系統功能
一旦選定硬件,現在的重點將轉變成為爸代碼從基于 PC 的設計移植到基于 Zynq SoC 的嵌入式平臺。由于對 PC 的計算負載具有重要意義,因此必須將 Zynq SoC 的可編程邏輯部分必須用于加速代碼并且不能僅充當無縫邏輯。一種可能的方法是將 PC 代碼移植到 ARM 處理器,對代碼進行概要分析以確定計算瓶頸制定計劃以將軟件分組為要在可編程邏輯中加速的代碼(對比于 ARM 處理器上運行的代碼)。但是,在側重加速上市進程的情況下,我們的最初方法是通過將這些具有等效、隨時可用的 IP 核(并且已知為計算密集型)功能轉移到可編程邏輯中,從而對設計進行分組。接下來,我們重構并移植了 PC 代碼,然后對其余代碼進行概要分析以確定是否還需要任何其他加速。圖 3 對此方案進行了說明。
毋庸置疑,DDC 是可編程邏輯實現方式的理想之選,因為 DDC 內核被納為 SoM 開發套件的一部分 ,并且 DDC 組的合并計算要求可超過 20 gigaflop。DDC 組是入侵檢測算法的一部分,其必須實時運行才能避免錯失入侵事件。DDC 組的抽取輸出可傳遞到 ARM 處理器,以便在軟件中進一步處理入侵算法。雖然輸出速率可達 2 Gbps,但卻能被高性能 AXI 端口輕松處理,這些端口可將 Zynq SoC 的可編程邏輯連接到 ARM 內存。
通過使用應用編程接口的通用型 AXI 總線從 ARM 處理器對 DDC 內核進行配置。API 允許在 ARM 上運行的軟件動態更改 DDC 參數,以便中心頻率、帶寬和抽取速率方面的更新可以根據控制算法命令實時進行。
由于通過轉移 DDC 負載而顯著降低數據速率,因而以 766 MHz 頻率運行的兩個 ARM 中央處理單元 (CPU) 具有足夠的性能來支持后續處理進程。由于該設計在對稱多處理 (SMP) 模式中采用 Linux 操作系統,因而能分離兩個 ARM CPU 內核之間的處理,一個處理入侵檢測,而另一個處理控制算法以及可與中央監控站的通信接口。此外,Linux 還具備穩健可靠的網絡支持和安全性,可允許進行遠程網絡管理(這正是大部分安裝所必需的),同時禁用任何在不久的將來可能會出現漏洞的不必要特性。
控制處理需要原始 ADC 樣本的大型相鄰模塊。一個需注意事項是將原始 ADC 樣本通過高性能 AXI 端口從 ADC 接口邏輯直接串流到 ARM 內存。但是,為了保留處理器系統的內存帶寬以用于處理算法,我們反而選擇了將 ADC 數據緩沖在可編程邏輯專用的物理內存中。這種內存具有確定性的帶寬并確保相鄰 ADC 樣本的大量集合,而不會干擾 ARM CPU 的操作。
可將從專用可編程邏輯內存中收集的數據通過其中一個高性能 AXI 端口傳輸到 ARM,以保持低延遲并最大限度降低 ARM CPU 的開銷。我們使用多端口內存仲裁器提供了一個收集端口和一個檢索端口。這種方法可提供在收集樣本的同時并發檢索樣本所需的仲裁,從而進一步減少延遲。
在對新分區的設計進行分析時,控制算法不會足夠頻繁地運行來充分地保持檢測精度。性能瓶頸在很大程度上歸因于 16,000 點 FFT 運算。借助賽靈思的 Vivado® Design Suite 提供的 FFT IP 核,FFT 的性能將遠遠足夠,因為其設計為實時運行。但是,對可編程邏輯的其他資源需求將強制設計利用更大的 Zynq 7030 器件。
評論