目前最新版本的Xilinx Software Development Kit(SDK),它既包含在Vivado Design Suite當(dāng)中,也可以作為獨(dú)立的軟件免費(fèi)下載,它增加了系統(tǒng)性能分析(SPA)工具箱,可以協(xié)助設(shè)計(jì)人員對(duì)基于處理器器件(比如Zynq-7000 SoC)的硬件和軟件系統(tǒng)進(jìn)行早期的研究。這些研究可以讓您(系統(tǒng)設(shè)計(jì)者)清楚和了解到Zynq SoC兩大部分之間數(shù)據(jù)流的相互作用,一部分是Zynq SoC PS(處理器系統(tǒng))部分的兩個(gè)ARM Cortex-A9 MPCore 處理器,另一部分是在PL(可編程邏輯)部分實(shí)現(xiàn)的硬件模塊。Xilinx SPA工具箱提供給您所需的工具,在設(shè)計(jì)的關(guān)鍵階段(PS. 甚至可以在設(shè)計(jì)的最初階段)您便可以建模和觀測(cè)系統(tǒng)的性能,因此您就可以在設(shè)計(jì)的過程中不斷優(yōu)化系統(tǒng)的性能。
下圖顯示了SPA工具箱怎樣融入到SDK中:
SPA工具箱是對(duì)SDK其它工具如分析和調(diào)試工具、驅(qū)動(dòng)、庫的補(bǔ)充。SPA工具箱包含有檢測(cè)框架、用戶接口和可視化工具,支持兩種重要的使用模式:一是早期研究環(huán)境,稱為系統(tǒng)性能建模(SPM),二是監(jiān)測(cè)和分析您自己的設(shè)計(jì)。
SPM是SDK的一個(gè)獨(dú)特的功能,甚至在您的團(tuán)隊(duì)啟動(dòng)系統(tǒng)設(shè)計(jì)之前,允許您進(jìn)行復(fù)雜的性能建模,使用實(shí)際的目標(biāo)硬件和比特流配置文件,包含5個(gè)AXI流量生成器模塊和一個(gè)AXI性能監(jiān)視模塊,這些是作為可配置的IP核在Zynq SoC的PL部分實(shí)現(xiàn)的,如下圖所示:
AXI流量生成器產(chǎn)生的流量嚴(yán)格共享Zynq SoC資源,包括高速AMBA AXI 內(nèi)部互聯(lián)、多端口的DDR SDRA控制器以及兩個(gè)ARM Cortex-A9 MPCore處理器共享的512Kbyte L2緩存。在設(shè)計(jì)不當(dāng)?shù)南到y(tǒng)中,過多的系統(tǒng)流量占用共享資源會(huì)導(dǎo)致多點(diǎn)競(jìng)爭,出現(xiàn)數(shù)據(jù)瓶頸。這種潛在瓶頸的一個(gè)典型的例子就是片上共享的L2高速緩存。因?yàn)?a target="_blank">ACP(加速器一致性端口)與ARM Cortex-A9 CPUs共享L2高速緩存,來自ACP或者處理器的高吞吐量的流量具有降低其他方面性能的潛在問題。您可以預(yù)見這種性能降低的問題,但是除非您有合適的儀器內(nèi)置到系統(tǒng)中,否則您想理解其真實(shí)的性質(zhì)和嚴(yán)重程度是很困難的。
如果您要進(jìn)行這種類型的分析,AXI流量生成器正是您需要的那種儀器。在您的團(tuán)隊(duì)將系統(tǒng)硬件設(shè)計(jì)到Zynq SoC PL中之前,這些流量生成器可以作為系統(tǒng)硬件流量生成的代理。同時(shí)您可以運(yùn)行Zynq PS部分的軟件應(yīng)用,允許您評(píng)估增加的系統(tǒng)流量對(duì)應(yīng)用軟件性能的影響。每個(gè)ARM Cortex-A9 MPcore處理器都有一個(gè)性能檢測(cè)單元(PMU)來協(xié)助軟件性能分析。集成SPM功能的SDK允許您使用您的實(shí)際設(shè)計(jì),通過建模和驗(yàn)證數(shù)據(jù)流量的方法,進(jìn)行端到端的性能分析流程。SDK提供了可視化功能,這幫助您更好的理解這些復(fù)雜的相互作用,即使是在一個(gè)研究探索,設(shè)計(jì)初期的環(huán)境。
這個(gè)過程包括四個(gè)步驟,如下:
需求評(píng)估—首先您要估計(jì)您的設(shè)計(jì)中的AXI流量需求,包括目標(biāo)系統(tǒng)的多個(gè)PS—PL接口的數(shù)據(jù)吞吐量。
模型設(shè)計(jì)—基于這些流量需求,使用SPM對(duì)您的設(shè)計(jì)進(jìn)行建模。使用實(shí)際的目標(biāo)硬件意味著,在建模期間您可以獲得實(shí)時(shí)性能。您可以獲得比基于軟件建模和仿真環(huán)境大為改善的運(yùn)行時(shí)間和提升的建模精度,因?yàn)榧せ畹膶?shí)時(shí)系統(tǒng)是在實(shí)際的硬件下監(jiān)測(cè)的。
性能驗(yàn)證—您可以在設(shè)計(jì)過程的每一步,通過監(jiān)測(cè)和可視化您的實(shí)際設(shè)計(jì)來驗(yàn)證性能結(jié)果。
深入分析—SDK性能分析工具允許更深入的分析,因此您可以更加輕松的評(píng)估系統(tǒng)級(jí)設(shè)計(jì)方案和衡量設(shè)計(jì)“改進(jìn)”帶來的影響。(每個(gè)經(jīng)驗(yàn)豐富的設(shè)計(jì)團(tuán)隊(duì)已經(jīng)認(rèn)識(shí)到哪怕是一個(gè)系統(tǒng)級(jí)“改進(jìn)”或者軟件的改變都會(huì)導(dǎo)致性能問題,這個(gè)工具幫助您快速捕捉和解決這些問題)
實(shí)現(xiàn)這樣端到端的性能分析流程,具有如下多重好處:
減少了設(shè)計(jì)風(fēng)險(xiǎn)—通過基于SPM的建模實(shí)現(xiàn)期望的延遲和吞吐量可以提供更強(qiáng)的保證,最終的設(shè)計(jì)將會(huì)取得相同的期望性能。
設(shè)計(jì)上的改進(jìn)—使用SDK的SPM運(yùn)行流量場(chǎng)景,能夠?yàn)橄到y(tǒng)性能提供有價(jià)值的見解(例如,延遲)。
情景假設(shè)—SPM是一個(gè)高度可配置的模型,所以您可 以使用它來試驗(yàn)不同的功能、特性和體系結(jié)構(gòu)。
-
控制器
+關(guān)注
關(guān)注
112文章
16427瀏覽量
178899 -
建模
+關(guān)注
關(guān)注
1文章
312瀏覽量
60805 -
比特流
+關(guān)注
關(guān)注
0文章
10瀏覽量
8151
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論