本發(fā)明屬于信號(hào)處理技術(shù)領(lǐng)域,尤其涉及一種信道時(shí)延模擬裝置及方法。
背景技術(shù):
在通信模擬系統(tǒng)中,通常需要對(duì)信道時(shí)延進(jìn)行模擬,例如在衛(wèi)星導(dǎo)航信號(hào)模擬系統(tǒng)中,需要模擬出衛(wèi)星到用戶之間信道時(shí)延的效果,信道時(shí)延設(shè)備是通過對(duì)原始信號(hào)進(jìn)行相應(yīng)的緩存從而實(shí)現(xiàn)時(shí)延效果的,通過調(diào)整緩存深度可以調(diào)整時(shí)延量的大小。
現(xiàn)有技術(shù)中為了提高信道時(shí)延的精度,往往需要提高緩存的采樣時(shí)鐘的頻率,所需精度越高,則需要越高的采樣頻率,緩存的數(shù)據(jù)量也隨之不斷增大,導(dǎo)致大量存儲(chǔ)資源的消耗。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例提供了了一種信道時(shí)延模擬裝置及方法,以解決現(xiàn)有技術(shù)中通過提高緩存的采樣頻率來提高信道時(shí)延精度時(shí)而導(dǎo)致的存儲(chǔ)資源大量消耗的問題。
本發(fā)明實(shí)施例的第一方面提供了一種信道時(shí)延模擬裝置,可以包括:數(shù)據(jù)輸入模塊、延時(shí)量輸入模塊、控制調(diào)度模塊、緩存接口模塊、緩存模塊、分?jǐn)?shù)時(shí)延濾波器和輸出模塊;
所述數(shù)據(jù)輸入模塊用于接收待進(jìn)行信道時(shí)延處理的輸入數(shù)據(jù);
所述延時(shí)量輸入模塊用于接收所述輸入數(shù)據(jù)所需的信道時(shí)延量;
所述控制調(diào)度模塊分別連接所述延時(shí)量輸入模塊、緩存接口模塊和所述分?jǐn)?shù)時(shí)延濾波器,用于對(duì)所述信道時(shí)延模擬裝置進(jìn)行整體控制與調(diào)度,獲取所述時(shí)延量輸入模塊接收到的所述信道時(shí)延量,根據(jù)采樣時(shí)鐘的周期將所述信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量,所述第一時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的整數(shù)部分,所述第二時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的分?jǐn)?shù)部分,控制所述緩存接口模塊根據(jù)所述第一時(shí)延量將所述輸入數(shù)據(jù)寫入所述緩存模塊中進(jìn)行緩存,得到第一時(shí)延數(shù)據(jù),控制所述分?jǐn)?shù)時(shí)延濾波器根據(jù)所述第二時(shí)延量對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到第二時(shí)延數(shù)據(jù);
所述緩存接口模塊分別連接所述數(shù)據(jù)輸入模塊、所述緩存模塊和所述分?jǐn)?shù)時(shí)延濾波器,用于在所述控制調(diào)度模塊的控制下從所述數(shù)據(jù)輸入模塊接收所述輸入數(shù)據(jù)寫入所述緩存模塊中進(jìn)行緩存,得到所述第一時(shí)延數(shù)據(jù),并將所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器;
所述緩存模塊用于對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存;
所述分?jǐn)?shù)時(shí)延濾波器與所述輸出模塊連接,用于在所述控制調(diào)度模塊的控制下對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到所述第二時(shí)延數(shù)據(jù);
所述輸出模塊用于將所述第二時(shí)延數(shù)據(jù)作為所述信道時(shí)延模擬裝置的最終輸出數(shù)據(jù)進(jìn)行輸出。
進(jìn)一步地,所述信道時(shí)延模擬裝置還可以包括:第一數(shù)據(jù)緩沖模塊;
所述第一數(shù)據(jù)緩沖模塊分別連接所述數(shù)據(jù)輸入模塊、控制調(diào)度模塊和所述緩存接口模塊,用于在所述控制調(diào)度模塊的控制下從所述數(shù)據(jù)輸入模塊讀取并緩沖所述輸入數(shù)據(jù),并通過所述緩存接口模塊將緩沖后的所述輸入數(shù)據(jù)寫入所述緩存模塊。
進(jìn)一步地,所述信道時(shí)延模擬裝置還可以包括:第二數(shù)據(jù)緩沖模塊;
所述第二數(shù)據(jù)緩沖模塊分別連接所述控制調(diào)度模塊、所述緩存接口模塊和所述分?jǐn)?shù)時(shí)延濾波器,用于在所述控制調(diào)度模塊的控制下通過所述緩存接口模塊從所述緩存模塊中讀取并緩沖所述第一時(shí)延數(shù)據(jù),并將緩沖后的所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器。
進(jìn)一步地,所述控制調(diào)度模塊在所述信道時(shí)延模擬裝置啟動(dòng)或復(fù)位時(shí),執(zhí)行初始化流程;
所述初始化流程可以包括:
所述控制調(diào)度模塊清空所述信道時(shí)延模擬裝置中的寄存器和計(jì)數(shù)器的數(shù)據(jù);
所述控制調(diào)度模塊清空所述第一數(shù)據(jù)緩沖模塊和所述第二數(shù)據(jù)緩沖模塊中的數(shù)據(jù);
所述控制調(diào)度模塊通過所述緩存接口模塊清空所述緩存模塊中的數(shù)據(jù),接收所述緩存模塊在初始化完成后發(fā)送的初始化完成標(biāo)志。
進(jìn)一步地,所述信道時(shí)延模擬裝置的工作流程可以包括:
所述數(shù)據(jù)輸入模塊接收所述輸入數(shù)據(jù);
所述延時(shí)量輸入模塊接收所述信道時(shí)延量;
所述控制調(diào)度模塊獲取所述信道時(shí)延量,并將所述信道時(shí)延量分為所述第一時(shí)延量和所述第二時(shí)延量;
所述控制調(diào)度模塊控制所述第一數(shù)據(jù)緩沖模塊從所述數(shù)據(jù)輸入模塊讀取所述輸入數(shù)據(jù),直至收到復(fù)位信號(hào)則停止;
當(dāng)所述第一數(shù)據(jù)緩沖模塊的存儲(chǔ)量超過了預(yù)設(shè)的閾值時(shí),所述第一數(shù)據(jù)緩沖模塊將所述輸入數(shù)據(jù)打包為數(shù)據(jù)包,并向所述控制調(diào)度模塊發(fā)送第一通知信息;
所述控制調(diào)度模塊在接收到所述第一通知信息后,通過所述緩存接口模塊從所述第一數(shù)據(jù)緩沖模塊讀取所述數(shù)據(jù)包并寫入所述緩存模塊進(jìn)行緩存;
所述控制調(diào)度模塊對(duì)所述數(shù)據(jù)包在所述緩存模塊中已緩存的時(shí)間進(jìn)行累計(jì),當(dāng)計(jì)滿所述第一時(shí)延量時(shí),控制所述第二數(shù)據(jù)緩沖模塊通過所述緩存接口模塊從所述緩存模塊中讀取并緩沖所述第一時(shí)延數(shù)據(jù);
當(dāng)所述第二數(shù)據(jù)緩沖模塊被填滿后,所述第二數(shù)據(jù)緩沖模塊向所述控制調(diào)度模塊發(fā)送第二通知信息;
所述控制調(diào)度模塊在接收到所述第二通知信息后,控制所述第二數(shù)據(jù)緩沖模塊將緩沖后的所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器;
所述控制調(diào)度模塊控制所述分?jǐn)?shù)時(shí)延濾波器根據(jù)所述第二時(shí)延量對(duì)緩沖后的所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到所述第二時(shí)延數(shù)據(jù);
所述輸出模塊將所述第二時(shí)延數(shù)據(jù)作為所述信道時(shí)延模擬裝置的最終輸出數(shù)據(jù)進(jìn)行輸出。
本發(fā)明實(shí)施例的第二方面提供了一種信道時(shí)延模擬方法,可以包括:
接收待進(jìn)行信道時(shí)延處理的輸入數(shù)據(jù);
根據(jù)采樣時(shí)鐘的周期將所述輸入數(shù)據(jù)所需的信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量,所述第一時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的整數(shù)部分,所述第二時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的分?jǐn)?shù)部分;
根據(jù)所述第一時(shí)延量對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存,得到第一時(shí)延數(shù)據(jù);
使用分?jǐn)?shù)時(shí)延濾波器根據(jù)所述第二時(shí)延量對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到第二時(shí)延數(shù)據(jù);
將所述第二時(shí)延數(shù)據(jù)作為信道時(shí)延處理的最終結(jié)果進(jìn)行輸出。
進(jìn)一步地,在所述將所述信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量之前,還可以包括:
獲取固定時(shí)延量,所述固定時(shí)延量為在所述信道時(shí)延量為零的情況下,輸入數(shù)據(jù)從輸入到輸出所消耗的時(shí)間。
根據(jù)所述固定時(shí)延量對(duì)所述信道時(shí)延量進(jìn)行修正,得到修正后的信道時(shí)延量。
進(jìn)一步地,所述根據(jù)所述第一時(shí)延量對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存可以包括:
計(jì)算所述第一時(shí)延量對(duì)應(yīng)的所述采樣時(shí)鐘的周期個(gè)數(shù);
對(duì)所述采樣時(shí)鐘的周期進(jìn)行計(jì)數(shù);
當(dāng)計(jì)滿所述周期個(gè)數(shù)時(shí),輸出所述第一時(shí)延數(shù)據(jù)。
進(jìn)一步地,在所述根據(jù)所述第一時(shí)延量對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存之前,還可以包括:
將所述輸入數(shù)據(jù)存儲(chǔ)到預(yù)設(shè)的第一數(shù)據(jù)緩沖區(qū);
當(dāng)所述第一數(shù)據(jù)緩沖區(qū)的存儲(chǔ)量超過了預(yù)設(shè)的閾值時(shí),將所述第一數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)打包輸出。
進(jìn)一步地,在所述根據(jù)所述第一時(shí)延量對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存之后,還可以包括:
將所述第一時(shí)延數(shù)據(jù)存儲(chǔ)到預(yù)設(shè)的第二數(shù)據(jù)緩沖區(qū);
當(dāng)所述第二數(shù)據(jù)緩沖區(qū)被填滿后,將緩沖后的所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器。
本發(fā)明實(shí)施例與現(xiàn)有技術(shù)相比存在的有益效果是:本發(fā)明實(shí)施例提供的一種信道時(shí)延模擬裝置可以包括:數(shù)據(jù)輸入模塊、延時(shí)量輸入模塊、控制調(diào)度模塊、緩存模塊、緩存接口模塊、分?jǐn)?shù)時(shí)延濾波器和輸出模塊;所述控制調(diào)度模塊根據(jù)采樣時(shí)鐘的周期將信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量,所述第一時(shí)延量和第二時(shí)延量分別為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的整數(shù)部分和分?jǐn)?shù)部分,控制所述緩存接口模塊根據(jù)所述第一時(shí)延量將所述輸入數(shù)據(jù)寫入所述緩存模塊中進(jìn)行緩存,得到第一時(shí)延數(shù)據(jù),控制所述分?jǐn)?shù)時(shí)延濾波器根據(jù)所述第二時(shí)延量對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到第二時(shí)延數(shù)據(jù);所述輸出模塊用于將所述第二時(shí)延數(shù)據(jù)作為所述信道時(shí)延模擬裝置的最終輸出數(shù)據(jù)進(jìn)行輸出。通過本發(fā)明實(shí)施例,將信道時(shí)延量分為整數(shù)部分和小數(shù)部分,整數(shù)部分通過緩存模塊的緩存來實(shí)現(xiàn),小數(shù)部分通過分?jǐn)?shù)時(shí)延濾波器來實(shí)現(xiàn),而分?jǐn)?shù)時(shí)延濾波器對(duì)小數(shù)部分的實(shí)現(xiàn)在較低采樣頻率的前提下也可完成,從而避開了現(xiàn)有技術(shù)中對(duì)高采樣頻率的依賴,由于可以保持較低采樣頻率,所需緩存的采樣數(shù)據(jù)量也會(huì)較少,減少了緩存數(shù)據(jù)對(duì)存儲(chǔ)資源的消耗,在保持現(xiàn)有采樣頻率和現(xiàn)有存儲(chǔ)資源的前提下,即可實(shí)現(xiàn)較高的信道時(shí)延精度。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明實(shí)施例提供的一種信道時(shí)延模擬裝置的示意框圖;
圖2是本發(fā)明實(shí)施例提供的優(yōu)選方案的示意框圖;
圖3是本發(fā)明實(shí)施例提供的一種信道時(shí)延模擬方法的示意流程圖。
具體實(shí)施方式
以下描述中,為了說明而不是為了限定,提出了諸如特定系統(tǒng)結(jié)構(gòu)、技術(shù)之類的具體細(xì)節(jié),以便透徹理解本發(fā)明實(shí)施例。然而,本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)清楚,在沒有這些具體細(xì)節(jié)的其它實(shí)施例中也可以實(shí)現(xiàn)本發(fā)明。在其它情況中,省略對(duì)眾所周知的系統(tǒng)、裝置、電路以及方法的詳細(xì)說明,以免不必要的細(xì)節(jié)妨礙本發(fā)明的描述。
為了說明本發(fā)明所述的技術(shù)方案,下面通過具體實(shí)施例來進(jìn)行說明。
實(shí)施例一:
參見圖1,是本發(fā)明實(shí)施例提供的一種信道時(shí)延模擬裝置的示意框圖,圖中的實(shí)線箭頭表示數(shù)據(jù)的流動(dòng)方向,虛線線段表示控制調(diào)度的過程。所述信道時(shí)延模擬裝置可以包括:數(shù)據(jù)輸入模塊101、延時(shí)量輸入模塊102、控制調(diào)度模塊103、緩存接口模塊104、緩存模塊105、分?jǐn)?shù)時(shí)延濾波器106和輸出模塊107。
優(yōu)選地,所述信道時(shí)延模擬裝置可以在fpga上實(shí)現(xiàn),主要用于導(dǎo)航衛(wèi)星的信道時(shí)延模擬。
所述數(shù)據(jù)輸入模塊101用于接收待進(jìn)行信道時(shí)延處理的輸入數(shù)據(jù)。
所述延時(shí)量輸入模塊102用于接收所述輸入數(shù)據(jù)所需的信道時(shí)延量。
所述控制調(diào)度模塊103分別連接所述延時(shí)量輸入模塊102、緩存接口模塊104和所述分?jǐn)?shù)時(shí)延濾波器106,用于對(duì)所述信道時(shí)延模擬裝置進(jìn)行整體控制與調(diào)度,獲取所述時(shí)延量輸入模塊102接收到的所述信道時(shí)延量,根據(jù)采樣時(shí)鐘的周期將所述信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量,所述第一時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的整數(shù)部分,所述第二時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的分?jǐn)?shù)部分,控制所述緩存接口模塊104根據(jù)所述第一時(shí)延量將所述輸入數(shù)據(jù)寫入所述緩存模塊105中進(jìn)行緩存,得到第一時(shí)延數(shù)據(jù),控制所述分?jǐn)?shù)時(shí)延濾波器106根據(jù)所述第二時(shí)延量對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到第二時(shí)延數(shù)據(jù)。
所述緩存接口模塊104分別連接所述數(shù)據(jù)輸入模塊101、所述緩存模塊105和所述分?jǐn)?shù)時(shí)延濾波器106,用于在所述控制調(diào)度模塊103的控制下從所述數(shù)據(jù)輸入模塊101接收所述輸入數(shù)據(jù)寫入所述緩存模塊105中進(jìn)行緩存,得到所述第一時(shí)延數(shù)據(jù),并將所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器106。
所述緩存模塊105用于對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存。
優(yōu)選地,所述緩存模塊105的大小與性能可以根據(jù)實(shí)際應(yīng)用場景來定,以模擬導(dǎo)航衛(wèi)星信道時(shí)延的場景為例,導(dǎo)航衛(wèi)星的信道時(shí)延一般不會(huì)超過250ms,因此所述緩存模塊105需要能夠存儲(chǔ)250ms的采樣數(shù)據(jù),在100mhz采樣時(shí)鐘且采樣數(shù)據(jù)位寬為16bits的情況下,所述緩存模塊105至少需要具有400mbits的存儲(chǔ)空間,在本實(shí)施例中,優(yōu)選容量不低于512mbits,速率不低于400mhz的片外ddr2sdram芯片。
所述分?jǐn)?shù)時(shí)延濾波器106與所述輸出模塊107連接,用于在所述控制調(diào)度模塊103的控制下對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到所述第二時(shí)延數(shù)據(jù)。
所述輸出模塊107用于將所述第二時(shí)延數(shù)據(jù)作為所述信道時(shí)延模擬裝置的最終輸出數(shù)據(jù)進(jìn)行輸出。
優(yōu)選地,如圖2所示,所述信道時(shí)延模擬裝置還可以包括:第一數(shù)據(jù)緩沖模塊108和第二數(shù)據(jù)緩沖模塊109;
所述緩存接口模塊104連接所述數(shù)據(jù)輸入模塊101可以包括:所述緩存接口模塊104通過所述第一數(shù)據(jù)緩沖模塊108與所述數(shù)據(jù)輸入模塊101間接連接;
所述緩存接口模塊104連接所述分?jǐn)?shù)時(shí)延濾波器106可以包括:所述緩存接口模塊104通過所述第二數(shù)據(jù)緩沖模塊109與所述分?jǐn)?shù)時(shí)延濾波器106間接連接。
所述第一數(shù)據(jù)緩沖模塊108分別連接所述數(shù)據(jù)輸入模塊101、控制調(diào)度模塊103和所述緩存接口模塊104,用于在所述控制調(diào)度模塊103的控制下從所述數(shù)據(jù)輸入模塊101讀取并緩沖所述輸入數(shù)據(jù),并通過所述緩存接口模塊104將緩沖后的所述輸入數(shù)據(jù)寫入所述緩存模塊105。
所述第二數(shù)據(jù)緩沖模塊109分別連接所述控制調(diào)度模塊103、所述緩存接口模塊104和所述分?jǐn)?shù)時(shí)延濾波器106,用于在所述控制調(diào)度模塊103的控制下通過所述緩存接口模塊104從所述緩存模塊中105讀取并緩沖所述第一時(shí)延數(shù)據(jù),并將緩沖后的所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器106。
優(yōu)選地,所述第一數(shù)據(jù)緩沖模塊108通過fpga的片內(nèi)fifo存儲(chǔ)器來實(shí)現(xiàn)。
優(yōu)選地,在fpga片內(nèi)開辟一段存儲(chǔ)空間作為數(shù)據(jù)緩沖區(qū)來實(shí)現(xiàn)第二數(shù)據(jù)緩沖模塊109,緩沖區(qū)的大小由于fpga資源的關(guān)系應(yīng)盡量小,而由于緩沖區(qū)數(shù)據(jù)來自ddr2sdram,ddr2sdram每次讀取數(shù)據(jù)都會(huì)產(chǎn)生一部分控制開銷,那么緩沖區(qū)越大則ddr2sdram的讀取效率越高,那么為了這個(gè)原因緩沖區(qū)應(yīng)盡量大。為平衡兩方面來考慮,應(yīng)當(dāng)將緩沖區(qū)設(shè)置為一個(gè)合理的范圍。
優(yōu)選地,所述控制調(diào)度模塊103在所述信道時(shí)延模擬裝置啟動(dòng)或復(fù)位時(shí),執(zhí)行初始化流程;
所述初始化流程可以包括:
所述控制調(diào)度模塊103清空所述信道時(shí)延模擬裝置中的寄存器和計(jì)數(shù)器的數(shù)據(jù);
所述控制調(diào)度模塊103清空所述第一數(shù)據(jù)緩沖模塊和所述第二數(shù)據(jù)緩沖模塊中的數(shù)據(jù),若此時(shí)正在進(jìn)行寫入所述第一數(shù)據(jù)緩沖模塊的操作,則應(yīng)在對(duì)其清空前首先停止寫入操作;
所述控制調(diào)度模塊103通過所述緩存接口模塊104清空所述緩存模塊105中的數(shù)據(jù),接收所述緩存模塊105在初始化完成后發(fā)送的初始化完成標(biāo)志。
優(yōu)選地,所述信道時(shí)延模擬裝置的工作流程可以包括:
所述數(shù)據(jù)輸入模塊101接收所述輸入數(shù)據(jù);
所述延時(shí)量輸入模塊102接收所述信道時(shí)延量;
所述控制調(diào)度模塊103獲取所述信道時(shí)延量,并將所述信道時(shí)延量分為所述第一時(shí)延量和所述第二時(shí)延量;
所述控制調(diào)度模塊103控制所述第一數(shù)據(jù)緩沖模塊108從所述數(shù)據(jù)輸入模塊101連續(xù)不停地讀取所述輸入數(shù)據(jù),直至收到復(fù)位信號(hào)則停止;
當(dāng)所述第一數(shù)據(jù)緩沖模塊108的存儲(chǔ)量超過了預(yù)設(shè)的閾值時(shí),所述第一數(shù)據(jù)緩沖模塊108將所述輸入數(shù)據(jù)打包為數(shù)據(jù)包,并向所述控制調(diào)度模塊103發(fā)送第一通知信息;
通過這種調(diào)度機(jī)制,可保證所述第一數(shù)據(jù)緩沖模塊108不會(huì)寫滿或溢出。
優(yōu)選地,所述閾值可以設(shè)置為所述第一數(shù)據(jù)緩沖模塊108的總存儲(chǔ)量的一半;
所述控制調(diào)度模塊103在接收到所述第一通知信息后,通過所述緩存接口模塊104從所述第一數(shù)據(jù)緩沖模塊108讀取所述數(shù)據(jù)包并寫入所述緩存模塊105進(jìn)行緩存;
所述控制調(diào)度模塊103對(duì)所述數(shù)據(jù)包在所述緩存模塊105中已緩存的時(shí)間進(jìn)行累計(jì),當(dāng)計(jì)滿所述第一時(shí)延量時(shí),控制所述第二數(shù)據(jù)緩沖模塊109通過所述緩存接口模塊104從所述緩存模塊105中讀取并緩沖所述第一時(shí)延數(shù)據(jù);
在這個(gè)過程中,控制調(diào)度模塊103決定著何時(shí)從所述第一數(shù)據(jù)緩沖模塊108讀取數(shù)據(jù)寫入所述緩存模塊105,何時(shí)從所述緩存模塊105中讀取數(shù)據(jù),也就是說控制調(diào)度模塊103控制著所述緩存模塊105的讀寫時(shí)序,保持著數(shù)據(jù)流的通暢;
當(dāng)所述第二數(shù)據(jù)緩沖模塊109被填滿后,所述第二數(shù)據(jù)緩沖模塊109向所述控制調(diào)度模塊103發(fā)送第二通知信息;
所述控制調(diào)度模塊103在接收到所述第二通知信息后,控制所述第二數(shù)據(jù)緩沖模塊109將緩沖后的所述第一時(shí)延數(shù)據(jù)連續(xù)不停地發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器106;
所述控制調(diào)度模塊103控制所述分?jǐn)?shù)時(shí)延濾波器106根據(jù)所述第二時(shí)延量對(duì)緩沖后的所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到所述第二時(shí)延數(shù)據(jù);
所述輸出模塊107將所述第二時(shí)延數(shù)據(jù)作為所述信道時(shí)延模擬裝置的最終輸出數(shù)據(jù)進(jìn)行輸出。
在沒有輸入時(shí)延量的情況下,或者說輸入時(shí)延量為0的情況下,所述信道時(shí)延模擬裝置本身會(huì)有一個(gè)固定時(shí)延量,如果不進(jìn)行處理,會(huì)影響到時(shí)延的精度,因此,優(yōu)選地,在所述控制調(diào)度模塊103獲取所述信道時(shí)延量之后,首先應(yīng)根據(jù)所述固定時(shí)延量對(duì)所述信道時(shí)延量進(jìn)行修正,得到修正后的信道時(shí)延量,例如,可以通過用所述信道時(shí)延量減去所述固定時(shí)延量得到修正后的信道時(shí)延量,然后再將所述修正后的信道時(shí)延量分為所述第一時(shí)延量和所述第二時(shí)延量。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為了描述的方便和簡潔,僅以上述各功能單元、模塊的劃分進(jìn)行舉例說明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能單元、模塊完成,即將所述裝置的內(nèi)部結(jié)構(gòu)劃分成不同的功能單元或模塊,以完成以上描述的全部或者部分功能。實(shí)施例中的各功能單元、模塊可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中,上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。另外,各功能單元、模塊的具體名稱也只是為了便于相互區(qū)分,并不用于限制本申請(qǐng)的保護(hù)范圍。
綜上所述,本發(fā)明實(shí)施例提供的一種信道時(shí)延模擬裝置可以包括:數(shù)據(jù)輸入模塊、延時(shí)量輸入模塊、控制調(diào)度模塊、緩存模塊、緩存接口模塊、分?jǐn)?shù)時(shí)延濾波器和輸出模塊;所述控制調(diào)度模塊根據(jù)采樣時(shí)鐘的周期將信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量,所述第一時(shí)延量和第二時(shí)延量分別為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的整數(shù)部分和分?jǐn)?shù)部分,控制所述緩存接口模塊根據(jù)所述第一時(shí)延量將所述輸入數(shù)據(jù)寫入所述緩存模塊中進(jìn)行緩存,得到第一時(shí)延數(shù)據(jù),控制所述分?jǐn)?shù)時(shí)延濾波器根據(jù)所述第二時(shí)延量對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到第二時(shí)延數(shù)據(jù);所述輸出模塊用于將所述第二時(shí)延數(shù)據(jù)作為所述信道時(shí)延模擬裝置的最終輸出數(shù)據(jù)進(jìn)行輸出。通過本發(fā)明實(shí)施例,將信道時(shí)延量分為整數(shù)部分和小數(shù)部分,整數(shù)部分通過緩存模塊的緩存來實(shí)現(xiàn),小數(shù)部分通過分?jǐn)?shù)時(shí)延濾波器來實(shí)現(xiàn),而分?jǐn)?shù)時(shí)延濾波器對(duì)小數(shù)部分的實(shí)現(xiàn)在較低采樣頻率的前提下也可完成,從而避開了現(xiàn)有技術(shù)中對(duì)高采樣頻率的依賴,由于可以保持較低采樣頻率,所需緩存的采樣數(shù)據(jù)量也會(huì)較少,減少了緩存數(shù)據(jù)對(duì)存儲(chǔ)資源的消耗,在保持現(xiàn)有采樣頻率和現(xiàn)有存儲(chǔ)資源的前提下,即可實(shí)現(xiàn)較高的信道時(shí)延精度。
實(shí)施例二:
參見圖3,是本發(fā)明實(shí)施例提供的一種信道時(shí)延模擬方法的示意流程圖,所述方法可以包括:
步驟s301,接收待進(jìn)行信道時(shí)延處理的輸入數(shù)據(jù);
步驟s302,根據(jù)采樣時(shí)鐘的周期將所述輸入數(shù)據(jù)所需的信道時(shí)延量分為第一時(shí)延量和第二時(shí)延量,所述第一時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的整數(shù)部分,所述第二時(shí)延量為所述信道時(shí)延量相對(duì)于所述采樣時(shí)鐘的周期的分?jǐn)?shù)部分;
步驟s303,根據(jù)所述第一時(shí)延量對(duì)所述輸入數(shù)據(jù)進(jìn)行緩存,得到第一時(shí)延數(shù)據(jù);
步驟s304,使用分?jǐn)?shù)時(shí)延濾波器根據(jù)所述第二時(shí)延量對(duì)所述第一時(shí)延數(shù)據(jù)進(jìn)行處理,得到第二時(shí)延數(shù)據(jù);
步驟s305,將所述第二時(shí)延數(shù)據(jù)作為信道時(shí)延處理的最終結(jié)果進(jìn)行輸出。
優(yōu)選地,在所述步驟s302之前,還可以包括:
獲取固定時(shí)延量,所述固定時(shí)延量為在所述信道時(shí)延量為零的情況下,輸入數(shù)據(jù)從輸入到輸出所消耗的時(shí)間。
根據(jù)所述固定時(shí)延量對(duì)所述信道時(shí)延量進(jìn)行修正,得到修正后的信道時(shí)延量。
優(yōu)選地,所述步驟s303可以包括:
計(jì)算所述第一時(shí)延量對(duì)應(yīng)的所述采樣時(shí)鐘的周期個(gè)數(shù);
對(duì)所述采樣時(shí)鐘的周期進(jìn)行計(jì)數(shù);
當(dāng)計(jì)滿所述周期個(gè)數(shù)時(shí),輸出所述第一時(shí)延數(shù)據(jù)。
優(yōu)選地,在所述步驟s303之前,還可以包括:
將所述輸入數(shù)據(jù)存儲(chǔ)到預(yù)設(shè)的第一數(shù)據(jù)緩沖區(qū);
當(dāng)所述第一數(shù)據(jù)緩沖區(qū)的存儲(chǔ)量超過了預(yù)設(shè)的閾值時(shí),將所述第一數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù)打包輸出。
優(yōu)選地,在所述步驟s303之后,還可以包括:
將所述第一時(shí)延數(shù)據(jù)存儲(chǔ)到預(yù)設(shè)的第二數(shù)據(jù)緩沖區(qū);
當(dāng)所述第二數(shù)據(jù)緩沖區(qū)被填滿后,將緩沖后的所述第一時(shí)延數(shù)據(jù)發(fā)送至所述分?jǐn)?shù)時(shí)延濾波器。
在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述或記載的部分,可以參見其它實(shí)施例的相關(guān)描述。
本領(lǐng)域普通技術(shù)人員可以意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計(jì)算機(jī)軟件和電子硬件的結(jié)合來實(shí)現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
在本發(fā)明所提供的實(shí)施例中,應(yīng)該理解到,所揭露的裝置和方法,可以通過其它的方式實(shí)現(xiàn)。例如,以上所描述的系統(tǒng)實(shí)施例僅僅是示意性的,例如,所述模塊或單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,例如多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通訊連接可以是通過一些接口,裝置或單元的間接耦合或通訊連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。上述集成的單元既可以采用硬件的形式實(shí)現(xiàn),也可以采用軟件功能單元的形式實(shí)現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中?;谶@樣的理解,本發(fā)明實(shí)施例的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本發(fā)明實(shí)施例各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲(chǔ)介質(zhì)包括:u盤、移動(dòng)硬盤、只讀存儲(chǔ)器(rom,read-onlymemory)、隨機(jī)存取存儲(chǔ)器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。