2017-07-14 55 views
0

我會第一次問一個問題。如果我的舉止錯了,我很抱歉。減少GPP監測過程

我在Xilinx Zynq的嵌入式Linux上使用了RedHawkSDR v1.10.1。 AM解調處理通過連接三個組件的波形來實現。 當連接以太網和監控波形時,由於接收到的聲音中出現異常噪音,我們升級到RedHawkSDR v2.1.0。 GPP從Python改爲C++,我認爲我可以期待更好的性能。 但是,當採用RedHawkSDR v2.1.0時,它變得更加奇怪了。 查看原因,GPP密集運行每個threshold_cycle_time, 解調處理未完成。 在GPP獲取CPU/NIC等信息並判斷閾值時,看起來異常聲音出現。 有什麼方法可以減少或消除GPP信息採集過程? 環境在下面。 CPU:賽靈思ZYNQ ARM CoretexA9 2cores 600MHz的 操作系統:嵌入式Linux內核3.14 RealTimePatch 幀長:5.333ms(48kHz的採樣,256個數據)

回答

0

GPP擦傷的/ proc針對與紅鷹的所有進程,爲您提供了很多信息(通過利用屬性)以及更好地控制主機的狀態。這個過程在資源受限的系統(比如你正在使用的系統)上可能會很昂貴。您可以通過更改GPP的threshold_cycle_time來更改更新發生的頻率。 如果添加的元素:

<componentproperties> 
<simpleref refid="threshold_cycle_time" value="2000"/> 
</componentproperties> 

在DCD中的GPP componentplacement元件,閾值循環時間從500毫秒(缺省值)增加至2秒。該數字是一個無符號長整數,因此您可以將此延遲增加到400萬秒以上

請注意,如果設置此閾值使得設備的狀態根據處理器的狀態未得到更新,由於處理器的使用,從未達到BUSY狀態,所以它將允許應用程序部署過度的計算硬件

+0

謝謝您的回答。我必須將threashold_cycle_time設置爲400萬秒。 –