專利名稱:用于檢測二維數(shù)據(jù)集里局部最大值的方法和設備的制作方法
技術領域:
本發(fā)明一般涉及信號處理系統(tǒng),更確切地說,涉及一種用于檢測二維數(shù)據(jù)集里的局部最大值的系統(tǒng)。
背景技術:
在電信領域中,信號處理變得尤其重要。例如,在基于碼分多址(CDMA)技術的無線電信網(wǎng)絡中,許多用戶使用多種無線裝置來在網(wǎng)絡內通信,所述無線裝置有時被稱為終端。這些終端包含無線電話、尋呼機、電子郵件裝置、個人數(shù)字助理(PDA)及其他裝置。
所述網(wǎng)絡用數(shù)據(jù)加密和復雜的基站接收機以允許向預定區(qū)域或小區(qū)內的所選終端提供通信服務。舉例而言,來自一個小區(qū)內的每個終端的發(fā)射內容被唯一地編碼,并被發(fā)射給基站接收機。為了接收所發(fā)射的信息,可為每個發(fā)射終端對接收機進行調諧,以便過濾掉多余噪音。為了達到這一目的,接收機可對接收到的發(fā)射內容進行處理,以便產生二維數(shù)據(jù)陣列,所述陣列有時被稱為“搜索空間”。搜索空間的一個實例以二維數(shù)據(jù)陣列提供接收到的發(fā)射內容,其中所選頻率中的能量值與解碼序列中的變差相關聯(lián)。
通常,搜索空間包含局部數(shù)據(jù)最大值(峰值),其對應于與特定發(fā)射終端相關聯(lián)的頻率和解碼序列變差。通過檢測二維數(shù)據(jù)陣列中的局部峰值(即頻率和序列),可利用這一信息對接收機進行調諧,從而可準確地接收來自所選發(fā)射終端的數(shù)據(jù)發(fā)射。
當前的通信系統(tǒng)在存儲器中存儲二維數(shù)據(jù)陣列,并反復地訪問所述存儲器,以便將數(shù)據(jù)元素與其相鄰元素進行比較以檢測出局部峰值。舉例而言,如果想判定二維陣列的特定元素是否為局部最大值,則將所述元素與其周圍的四個相鄰元素進行比較。這會導致至少五次存儲器訪問,而當要檢測任何相鄰元素是否代表數(shù)據(jù)陣列中的局部最大值時,存儲器訪問次數(shù)可能會翻倍。因此,當前系統(tǒng)非常不足,因為其需要雙倍的存儲器訪問才能檢測出數(shù)據(jù)陣列中的局部峰值。如果系統(tǒng)利用的是帶寬相對較慢的存儲器,這一操作便尤其成問題。例如,數(shù)據(jù)數(shù)量通常太大,難以存儲在高速緩沖存儲器或寄存器頻段中,且外部存儲器的帶寬通常比內部存儲器低很多。
因此,需要一種可運行以有效地檢測二維數(shù)據(jù)陣列中的局部最大值,且無需執(zhí)行當前系統(tǒng)中所需的雙倍的存儲器訪問的系統(tǒng)。
發(fā)明內容
在一個或一個以上實施例中,提供一種峰值檢測系統(tǒng),其可運行以檢測二維數(shù)據(jù)陣列中的局部最大值。所述系統(tǒng)適用于任何類型的必須檢測數(shù)據(jù)陣列中的局部數(shù)據(jù)最大值且同時要節(jié)約帶寬的系統(tǒng)。在一個實施例中,所述系統(tǒng)按照行或列的次序從存儲器中讀取二維數(shù)據(jù)陣列的數(shù)據(jù)元素,這使得數(shù)據(jù)具有流特性。隨后,數(shù)據(jù)經(jīng)受一系列的延遲,所述延遲利用二維陣列的結構以便可容易地對數(shù)據(jù)元素進行比較,從而檢測出局部最大值。所述檢測系統(tǒng)運行以非常有效地利用存儲器帶寬,因為陣列中的數(shù)據(jù)元素僅從存儲器中讀出一次。因此,所述系統(tǒng)適用于任何類型的需要在搜索空間中檢測局部最大值以便調諧接收機的通信系統(tǒng)。
在一個實施例中,提供一種檢測二維數(shù)據(jù)集里的局部最大值的設備,其中數(shù)據(jù)元素流代表數(shù)據(jù)集。所述設備包括第一檢測邏輯,其接收所述數(shù)據(jù)流,并運行以檢測代表所述數(shù)據(jù)集的第一維中的峰值的第一數(shù)據(jù)元素。所述設備還包括第二檢測邏輯,其接收所述數(shù)據(jù)流,并運行以檢測代表所述數(shù)據(jù)集的第二維中的峰值的第二數(shù)據(jù)元素,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到局部最大值。
在另一實施例中,提供一種檢測二維數(shù)據(jù)集里的局部最大值的設備,其中數(shù)據(jù)元素流代表數(shù)據(jù)集。所述設備包括用于接收所述數(shù)據(jù)流的裝置,和用于檢測代表所述數(shù)據(jù)集的第一維中的峰值的第一數(shù)據(jù)元素的裝置。所述設備還包括用于檢測代表所述數(shù)據(jù)集的第二維中的峰值的第二數(shù)據(jù)元素的裝置,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到局部最大值。
在另一實施例中,提供一種檢測二維數(shù)據(jù)集里的局部最大值的方法,其中數(shù)據(jù)元素流代表數(shù)據(jù)集。所述方法包括接收所述數(shù)據(jù)流,并檢測所述數(shù)據(jù)流中的第一數(shù)據(jù)元素,所述第一數(shù)據(jù)元素代表所述數(shù)據(jù)集的第一維中的峰值。所述方法還包括將一旗標與所述第一數(shù)據(jù)元素相關聯(lián),并檢測所述數(shù)據(jù)流中的第二數(shù)據(jù)元素,所述第二數(shù)據(jù)元素代表所述數(shù)據(jù)集的第二維中的峰值。所述方法還包括如果所述旗標與所述第二數(shù)據(jù)元素相關聯(lián),則檢測到局部最大值。
在又一實施例中,提供一種包括若干指令的計算機可讀媒介,所述指令在被處理器執(zhí)行時運行以檢測二維數(shù)據(jù)集里的局部最大值,其中數(shù)據(jù)元素流代表數(shù)據(jù)集。所述計算機可讀媒介包括用于接收所述數(shù)據(jù)流的指令,和用于檢測代表所述數(shù)據(jù)集的第一維中的峰值的第一數(shù)據(jù)元素的指令。所述計算機可讀媒介還包括用于檢測代表所述數(shù)據(jù)集的第二維中的峰值的第二數(shù)據(jù)元素的指令,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到局部最大值。
結合附圖參閱以下詳細說明,將更容易了解本文所述的實施例的以上方面和隨之而來的優(yōu)點,附圖中圖1繪示一通信系統(tǒng),其包含運行以檢測數(shù)據(jù)陣列中的局部最大值的檢測系統(tǒng)的一個實施例;圖2繪示信號預處理器的一個實施例的功能圖;圖3繪示圖2所示的預處理器產生的數(shù)據(jù)陣列;圖4繪示用以檢測二維數(shù)據(jù)陣列中的局部最大值的檢測系統(tǒng)的一個實施例;圖5繪示用于峰值檢測系統(tǒng)的一個實施例中的一個實施例水平檢測器的詳細繪圖;圖6繪示用于峰值檢測系統(tǒng)的一個實施例中的一個實施例垂直檢測器的詳細繪圖;和圖7繪示用于運行一檢測二維數(shù)據(jù)集里的局部最大值的檢測系統(tǒng)的方法的一個
具體實施例方式
以下詳細描述說明峰值檢測系統(tǒng),其包含用于檢測數(shù)據(jù)陣列中的局部最大值。應了解,所描述的峰值檢測系統(tǒng)實際上也可與任何類型的數(shù)據(jù)處理系統(tǒng)一起使用,其中包含但不限于無線通信系統(tǒng)、有線通信系統(tǒng)、電信系統(tǒng)、聯(lián)網(wǎng)系統(tǒng)或其他任何類型的需要檢測數(shù)據(jù)集中的局部最大值的系統(tǒng)。
圖1繪示一通信系統(tǒng)100,其包含一個運行以檢測數(shù)據(jù)陣列中的局部最大值的峰值檢測系統(tǒng)的實施例。通信系統(tǒng)100包括一與終端102、104及106通信的衛(wèi)星108。衛(wèi)星108接收從終端102、104及106發(fā)射的信號,并將這些信號重新發(fā)射給接收機110。
在一個實施例中,系統(tǒng)100使用CDMA技術運行,以便將來自發(fā)射終端102、104、106的數(shù)據(jù)編碼并擴展得如同噪音信號。因此,接收機110的工作是對所接收到的噪音信號進行解碼,以獲得所發(fā)射的數(shù)據(jù)。應注意,系統(tǒng)100只代表一種配置,且其他配置也是可能的。例如,在另一種配置中,終端102、104、106直接與接收機110通信。
接收機110包括信號預處理器112,其接收從衛(wèi)星108發(fā)射的信號。所述預處理器運行以處理所接收到的信號118,并形成一個代表從終端102、104及106發(fā)射的數(shù)據(jù)之數(shù)據(jù)陣列。所述數(shù)據(jù)陣列被輸入到峰值檢測系統(tǒng)114的一個實施例,所述系統(tǒng)運行以檢測數(shù)據(jù)陣列中的局部最大值。在檢測到局部最大值之后,檢測系統(tǒng)114將關于所檢測到的局部最大值的信息發(fā)射給鑒別器116。鑒別器116用所述信息來處理所接收到的信號,以便能從所接收到的信號中恢復從每個終端(102、104、106)發(fā)射的數(shù)據(jù)。
此實例中的系統(tǒng)100包括一衛(wèi)星通信系統(tǒng),然而,峰值檢測系統(tǒng)114的實施例適合與基于地面的通信系統(tǒng)一起使用,或與其他任何類型的需要判定數(shù)據(jù)集中的局部最大值的處理系統(tǒng)一起使用。
圖2繪示的是預處理器112的一個實施例的功能圖。預處理器112包括相關器邏輯202,快速傅立葉變換(FFT)邏輯204及偽隨機噪音(PN)產生器208。
應了解,圖2所示的預處理器112的元件僅出于說明目的,可使用更多或更少的功能元件以任何數(shù)目的方法中的一種方法來構建預處理器112。例如,相關器邏輯202、FFT邏輯204和PN產生器208均可建構在由一個或一個以上處理器執(zhí)行的計算機程序中。
在預處理器112運行期間,相關器202將所接收到的信號118與PN產生器208所產生的偽隨機噪音序列相關。例如,在一個實施例中,PN產生器208產生128個PN序列,相關器202將所述PN序列與所接收到的信號118相關。然而,應注意,可產生任何數(shù)目的序列,以便與所接收到的信號相關。
相關器202產生128個輸入到FFT邏輯204中的相關序列210。相關器的用途是整理(unscramble)數(shù)據(jù),但仍需判定數(shù)據(jù)的頻率。FFT邏輯204在輸入序列上執(zhí)行FFT,并產生128個FFT輸出,將所述輸出存儲在存儲器206中。例如,F(xiàn)FT邏輯204將輸入序列210變換成頻率域信號212。例如,在一個實施例中,F(xiàn)FT邏輯204將輸入序列變換成1024個頻段(bin),其中與每個頻段相關聯(lián)的值代表特定頻率下的能量。例如,用頻段的數(shù)目來劃分整個帶寬,以便判定每個頻段所代表的帶寬。
因此,由于相關器202的運行,PN產生器208、FFT邏輯204、存儲器206含有二維數(shù)據(jù)集,所述數(shù)據(jù)集代表所接收到的信號在與所選PN序列相關后的頻率能量。所述二維數(shù)據(jù)集包含局部最大值,其代表來自一個或一個以上發(fā)射終端的所發(fā)射的能量。在一個或一個以上實施例中,本文所述的檢測系統(tǒng)運行以檢測局部最大值,以使得從發(fā)射終端發(fā)射的數(shù)據(jù)可被接收和恢復。例如,局部最大值對應于與發(fā)射終端相關聯(lián)的頻率和序列變量。所述信息用來調諧接收機,以便準確地接收從終端發(fā)射的數(shù)據(jù)。
圖3繪示的是由預處理器112產生并存儲在存儲器206中的數(shù)據(jù)陣列300。數(shù)據(jù)陣列300包括若干行(R)和列(C),其中數(shù)據(jù)陣列中的每個元素均表示用于從相關器邏輯202輸出的相關序列210中的一個序列的所選頻率區(qū)域(頻段)中的能量。例如,行的數(shù)目與相關輸出序列210的數(shù)目相同,且在每個行中,列表示頻率區(qū)域。在一個實施例中,每個FFT輸出212存在128個相關序列210和1024個頻段,因此陣列300包含128個行和1024個列。
在一個實施例中,數(shù)據(jù)陣列300的每個元素包括一個32位寬的數(shù)據(jù)元素。例如,數(shù)據(jù)元素302說明一個數(shù)據(jù)元素,其位于數(shù)據(jù)陣列300中的(1,1)處。元素302包括數(shù)據(jù)部分304、識別符(ID)306和旗標308。數(shù)據(jù)部分304代表FFT邏輯204為所述序列的所述頻段判定的能量。ID 306表示元素在數(shù)據(jù)陣列300中的位置。例如,ID指示數(shù)據(jù)元素的頻段和序列號碼。檢測系統(tǒng)用這一信息來判定數(shù)據(jù)陣列300中的所檢測到的局部峰值的位置。檢測系統(tǒng)在檢測局部最大值的過程中使用旗標308,且本文件的另一章節(jié)將更詳細地論述所述旗標的用途。
圖4繪示的是峰值檢測系統(tǒng)114的一個實施例,其運行以檢測二維數(shù)據(jù)陣列中的局部最大值。所述檢測系統(tǒng)包括水平檢測邏輯402、垂直檢測邏輯404、時鐘406及輸出邏輯408。系統(tǒng)114還包括存儲器控制器410和處理器412。
存儲器控制器410和處理器412運行以訪問存儲器中存儲的數(shù)據(jù)陣列,例如陣列300。在一個實施例中,處理器410包括CPU、門極陣列、硬件邏輯、軟件或硬件與軟件的任何組合。存儲器控制器410包括任何合適的硬件和/或軟件,從而允許系統(tǒng)114通過控制信號416訪問數(shù)據(jù)陣列。時鐘406用來同步檢測系統(tǒng)114的運行。例如,存儲器控制器410訪問存儲器,以便以經(jīng)過預處理的數(shù)據(jù)流414的形式讀出二維數(shù)據(jù)陣列。例如,參看數(shù)據(jù)陣列300,在一個行上逐元素地讀出數(shù)據(jù),然后再向下進行到下一行。因此,形成經(jīng)過預處理的數(shù)據(jù)流414。
水平檢測邏輯402對經(jīng)過預處理的數(shù)據(jù)流414進行處理,以便檢測一個維中的局部最大值。例如,一個維(水平)界定為代表沿數(shù)據(jù)陣列300的每行的數(shù)據(jù)。水平檢測邏輯402運行以通過比較數(shù)據(jù)流414中的相鄰的行元素,并對數(shù)據(jù)流414中檢測為水平最大值的任何數(shù)據(jù)元素進行標記,來檢測局部最大值。
在通過水平檢測邏輯402進行處理之后,經(jīng)過預處理的數(shù)據(jù)流隨機流向垂直檢測邏輯404。垂直檢測邏輯404對經(jīng)過預處理的數(shù)據(jù)流414進行處理,以便檢測稱為垂直維的另一維中的局部最大值。例如,參看數(shù)據(jù)陣列300,每列代表垂直維,垂直檢測邏輯404按每列檢測局部最大值。在一個實施例中,垂直檢測邏輯404利用延遲元素,以便將數(shù)據(jù)陣列的每列內的相鄰元素相互比較,且可檢測到垂直維中的局部最大值。
一旦檢測到水平和垂直方向中的局部最大值,便將信息傳遞給輸出邏輯408。輸出邏輯408接收關于經(jīng)過預處理的數(shù)據(jù)流中哪些元素是垂直和水平維二者中的局部最大值的信息。例如,如果水平檢測邏輯402發(fā)現(xiàn)數(shù)據(jù)元素是局部最大值,則設置與所述數(shù)據(jù)元素相關聯(lián)的旗標。如果垂直檢測邏輯404發(fā)現(xiàn)同一數(shù)據(jù)元素是局部最大值,則對與所述元素相關聯(lián)的旗標進行測試。如果設置了旗標,則將關于數(shù)據(jù)元素的信息發(fā)送給輸出邏輯。例如,將包含數(shù)據(jù)值及其識別符的峰值信息發(fā)送給輸出邏輯408,輸出邏輯408將峰值信息418轉發(fā)給接收機的下一級,意即鑒別器。因此,檢測系統(tǒng)運行以檢測數(shù)據(jù)陣列中的局部最大值,并將檢測到的峰值信息提供給接收機的下一級。
圖5繪示的是用于峰值檢測系統(tǒng)的一個實施例的水平檢測器402的一個實施例的詳細繪圖。水平檢測器402包括寄存器502、504、506,比較器510、512,AND邏輯514及旗標邏輯508。
寄存器502、504、506優(yōu)選包括硬件,但可包括硬件、軟件或其任何組合。寄存器502、504、506中的每者均為經(jīng)過預處理的數(shù)據(jù)流414的一個數(shù)據(jù)元素提供存儲。寄存器502、504、506均接收源自時鐘406的時鐘信號,以便使寄存器以同步的方式運行。
比較器510、512優(yōu)選包括硬件,但可包括硬件、軟件或其任何組合。比較器510、512具有輸入“A”和“B”,用以接收值,所述值被彼此比較以便產生輸出。如果比較器510的B輸入處的值大于其A輸入處的值(B>A),則比較器510會產生輸出值“1”。如果比較器512的A輸入處的值大于其B輸入處的值(A>B),則比較器512會產生輸出值“1”。
比較器的輸出被輸入到AND邏輯514,如果兩個輸入均為“1”,則所述AND邏輯產生輸出值“1”。來自AND邏輯514的輸出值被輸入到旗標邏輯508。
在水平峰值檢測器402運行期間,經(jīng)過預處理的數(shù)據(jù)流414被輸入到寄存器502。時鐘信號提供的時鐘脈沖使得經(jīng)過預處理的數(shù)據(jù)流414循序通過寄存器502、504及506移位。每次移位之后,比較器510、512對經(jīng)過預處理的數(shù)據(jù)流414中的相鄰數(shù)據(jù)值進行比較。如果存儲在寄存器504中的數(shù)據(jù)值大于存儲在寄存器502及506中的值,則檢測到水平峰值。比較器510及512輸出值“1”,所述值“1”使得AND邏輯514輸出值為“1”。來自AND邏輯514的輸出被輸入到旗標邏輯508,其運行以設置一與存儲在寄存器504中的數(shù)據(jù)元素相關聯(lián)的旗標。
在下一時鐘周期中,存儲在寄存器504中的數(shù)據(jù)值轉移到寄存器506。轉移到寄存器506的數(shù)據(jù)值包含任何可能已由旗標邏輯508設置的旗標。例如,參看數(shù)據(jù)元素302,如果這一元素經(jīng)檢測是水平最大值,則將設置旗標308。因此,可將所述數(shù)據(jù)值識別為局部水平峰值,因為已經(jīng)設置了旗標。
系統(tǒng)繼續(xù)在整個檢測器402中為經(jīng)過預處理的數(shù)據(jù)流414計時,直到所有或部分數(shù)據(jù)元素經(jīng)過寄存器502、504及506為止。因此,會產生具有旗標值516的經(jīng)過預處理的數(shù)據(jù)流。在數(shù)據(jù)流516中,任何已經(jīng)判定為代表局部水平最大值的數(shù)據(jù)元素均將具有其相關聯(lián)的旗標設置。隨后將數(shù)據(jù)流516輸入到垂直檢測邏輯404。
在一個實施例中,檢測邏輯402因執(zhí)行存儲在存儲器中的指令而運行,以執(zhí)行本文所述的功能。例如,存儲器可為處理器412的一部分。所述指令可在制造檢測系統(tǒng)114時存儲在存儲器中。在一個實施例中,指令被存儲在計算機可讀媒介上,例如軟盤、硬盤、CDROM、快閃存儲器或其他任何類型的計算機可讀媒介。檢測系統(tǒng)114可檢索和執(zhí)行計算機可讀媒介上的指令。在一個實施例中,將指令從計算機可讀媒介下載到檢測系統(tǒng)114中,并存儲在存儲器中以供隨后執(zhí)行。因此,在一個實施例中,檢測系統(tǒng)114運行以執(zhí)行存儲在計算機可讀媒介上的指令,以執(zhí)行本文所述的功能。
圖6繪示的是在一峰值檢測系統(tǒng)的一個實施例中使用的垂直檢測器404的一個實施例的詳細繪圖。垂直檢測器404包括移位寄存器602、604、606,比較器608、610。圖中還繪示了輸出邏輯408,其包括AND邏輯612。
寄存器602、604、606優(yōu)選包括硬件邏輯,但可包括硬件、軟件或其任何組合。寄存器602、604、606每者均包括“C”級,用以為經(jīng)過預處理的數(shù)據(jù)流516的“C”數(shù)據(jù)元素提供存儲?!癈”的值等于經(jīng)過預處理的數(shù)據(jù)陣列中列的數(shù)目。例如,在一個實施例中,列的數(shù)目為1024,其與同F(xiàn)FT邏輯204的輸出相關聯(lián)的頻段數(shù)目相關。寄存器502、504、506均接收源自時鐘406的時鐘信號,以使得寄存器以同步方式運行。例如,在時鐘輸入的1024個時鐘周期之后,寄存器602的輸入處的數(shù)據(jù)值將出現(xiàn)在所述寄存器的輸出處。
比較器608、610優(yōu)選包括硬件邏輯,但可包括硬件、軟件或其任何組合。比較器608、610具有輸入“A”和“B”,用以接收值,所述值經(jīng)彼此比較以便產生輸出。如果比較器608的B輸入處的值大于其A輸入處的值(B>A),則比較器608會產生輸出值“1”。如果比較器610的A輸入處的值大于其B輸入處的值(A>B),則比較器610會產生輸出值“1”。
比較器608、610的輸出被輸入到AND邏輯612,如果其所有三個輸入均為“1”,則所述AND邏輯產生等于“1”輸出值(E)。到達AND邏輯612的第三輸入為一與從寄存器604輸出的數(shù)據(jù)元素相關聯(lián)的旗標值。來自AND邏輯612的輸出值(E)用來指示已在經(jīng)過預處理的數(shù)據(jù)流516中檢測到局部最大值。例如,如果峰值檢測系統(tǒng)114是用在接收機中,則可將輸出值(E)和局部峰值(LP)值提供給接收機中的另一電路,例如鑒別器116。
在垂直峰值檢測器404運行期間,具有旗標516的經(jīng)過預處理的數(shù)據(jù)流被輸入到寄存器602。由時鐘信號提供的時鐘脈沖使得經(jīng)過預處理的數(shù)據(jù)流516循序通過寄存器602、604及606移位。然而,將數(shù)據(jù)元素通過寄存器602、604及606中的每者徹底移位要花費“C”個時鐘周期。每次移位之后,比較器510、512對經(jīng)過預處理的數(shù)據(jù)流516中的數(shù)據(jù)值進行比較。被比較的數(shù)據(jù)值為數(shù)據(jù)陣列中垂直相鄰的值。例如,數(shù)據(jù)值為數(shù)據(jù)陣列300的列中的相鄰值。如果存儲在寄存器604中的數(shù)據(jù)值大于存儲在寄存器602及606中的值,則檢測到垂直峰值。比較器608及610輸出值“1”,如果設置了與從寄存器604輸出的數(shù)據(jù)元素相關聯(lián)的旗標值(旗標),則所述輸出值使得AND邏輯612輸出(E)值“1”。
系統(tǒng)繼續(xù)在整個檢測器404中為經(jīng)過預處理的數(shù)據(jù)流516計時,直到所有或部分數(shù)據(jù)元素經(jīng)過寄存器602、604及606為止。因此,對具有旗標值516的經(jīng)過預處理的數(shù)據(jù)流進行處理,以產生存儲在存儲器中的數(shù)據(jù)陣列中的局部最大值的檢測。
在一個實施例中,檢測邏輯404因存儲在存儲器中的指令的執(zhí)行而運行,以便執(zhí)行本文所述的功能。例如,存儲器可為處理器412的一部分。所述指令可在制造檢測系統(tǒng)114時存儲在存儲器中。在一個實施例中,指令被存儲在計算機可讀媒介上,例如軟盤、硬盤、CDROM、快閃存儲器或其他任何類型的計算機可讀媒介。檢測系統(tǒng)114可取得和執(zhí)行計算機可讀媒介上的指令。在一個實施例中,將指令從計算機可讀媒介下載到檢測系統(tǒng)114中,并存儲在存儲器中以供之后執(zhí)行。因此,在一個實施例中,檢測系統(tǒng)114運行以執(zhí)行存儲在計算機可讀媒介上的指令,以便執(zhí)行本文所述的功能。
圖7繪示的是用于檢測二維數(shù)據(jù)集里的局部最大值的方法700的一個實施例。方法700適合與本文所述的峰值檢測系統(tǒng)的一個或一個以上實施例一起使用。對于以下描述,假設接收機接收到無線電信號,所述信號包括來自一個或一個以上發(fā)射終端的發(fā)射內容。所述接收機包含本文所述的峰值檢測系統(tǒng)的一個或一個以上實施例。所述接收機還包括預處理器,其運行以對所接收到的信號進行預處理。例如,所述接收機可為圖1所示的接收機110。
在方塊702處,產生一個代表所接收到的信號的二維數(shù)據(jù)陣列,其包括來自一個或一個以上發(fā)射終端的發(fā)射內容。所述數(shù)據(jù)陣列存儲在接收機處的存儲器中。例如,包含在接收機中的預處理器對所接收到的信號進行處理,并產生二維陣列,所述陣列存儲在存儲器中。例如,在一個實施例中,所述預處理器為圖2所示的預處理器112。
在方塊704處,對移位寄存器進行初始化,以開始峰值檢測過程。例如,在一個實施例中,峰值檢測系統(tǒng)包括水平和垂直檢測電路,所述電路包含用以移位數(shù)據(jù)陣列以判定水平和垂直峰值的移位寄存器。這些寄存器被初始化(意即被清除或預置)或以另外的方式設置,以便處理峰值檢測過程。
在方塊706處,對存儲器進行訪問以讀出數(shù)據(jù)陣列。以依序的方式逐元素地讀出陣列,以便形成數(shù)據(jù)流。例如,在每個行上讀出元素,直到已讀出所有行或一部分行為止。
在方塊708處,開始檢測過程,其將數(shù)據(jù)流地元素移位到檢測系統(tǒng)中。例如,用時鐘來以同步和依序的方式將每個元素移位到檢測系統(tǒng)中。
在方塊710處,對數(shù)據(jù)陣列的三個水平元素進行測試,以便判定是否存在局部水平峰值。例如,在一個實施例中,圖5所示的水平峰值檢測器用來對從三個寄存器(502、504、506)輸出的數(shù)據(jù)元素進行比較,以便檢測局部水平峰值。
在方塊712處,執(zhí)行測試以判定是否已檢測到局部水平峰值。例如,參看圖5,比較器510和512將中間數(shù)據(jù)元素與兩個鄰近數(shù)據(jù)元素進行比較。如果中間數(shù)據(jù)元素大于鄰近元素,則檢測到峰值,且所述方法前進到方塊714。如果未檢測到峰值,則所述方法前進到方塊716。
在方塊714處,設置與所檢測到的水平峰值相關聯(lián)的旗標。例如,旗標邏輯508設置一個旗標,所述旗標為所檢測到的峰值的數(shù)據(jù)元素的一部分。
在方塊716處,數(shù)據(jù)陣列的三個垂直元素經(jīng)過測試,以便判定是否存在局部垂直峰值。例如,在一個實施例中,圖6所示的垂直峰值檢測器用來對從三個寄存器(602、604、606)輸出的數(shù)據(jù)元素進行比較,以便檢測局部垂直峰值。
在方塊718處,執(zhí)行測試以判定是否檢測到局部垂直峰值。例如,參看圖6,比較器608和610將中間數(shù)據(jù)元素與兩個垂直鄰近的數(shù)據(jù)元素進行比較。如果中間數(shù)據(jù)元素大于垂直鄰近的元素,則檢測到垂直峰值,且所述方法前進到方塊720。如果未檢測到峰值,則所述方法前進到方塊724。
在方塊720處,執(zhí)行測試以判定是否設置了與所檢測到的垂直峰值相關聯(lián)的旗標。如果設置了旗標,則在數(shù)據(jù)陣列中檢測到了局部峰值。例如,如果在方塊712處檢測到水平峰值,則旗標在方塊714處。如果設置了旗標,則所述方法前進到方塊722,且如果未設置旗標,則所述方法前進到方塊724。
在方塊722處,在數(shù)據(jù)陣列中檢測到局部峰值,且從檢測系統(tǒng)中輸出關于這一峰值的信息。例如,在一個實施例中,檢測系統(tǒng)可為信號接收機的一部分,且檢測器所檢測到的峰值信息輸出到鑒別器電路,如圖1所示。輸出信息中含有經(jīng)檢測為峰值的數(shù)據(jù)元素的值,以及識別數(shù)據(jù)陣列中的峰值位置的識別符信息。
在方塊724處,數(shù)據(jù)陣列的下一元素移位到檢測系統(tǒng)中以供處理。例如,時鐘信號用來將另一數(shù)據(jù)元素從數(shù)據(jù)流移位到檢測系統(tǒng)中。方法700繼續(xù),直到數(shù)據(jù)陣列中的所有或部分數(shù)據(jù)元素移位到檢測系統(tǒng)并由檢測系統(tǒng)處理為止。
因此,方法700描述如何在數(shù)據(jù)陣列中檢測局部峰值,以便判定與從發(fā)射終端發(fā)射的數(shù)據(jù)相關聯(lián)的頻率和序列變量。所述方法適合用于任何類型的需要檢測數(shù)據(jù)陣列中的局部峰值的處理系統(tǒng)。應注意,可在不偏離實施例的范疇的情況下執(zhí)行方法步驟的添加、變化、刪減或組合。
在另一實施例中,單獨考慮數(shù)據(jù)陣列中的局部峰值的位置。例如,可使用計數(shù)器或其他類型的電路來追蹤數(shù)據(jù)陣列中的局部峰值的位置。在對陣列進行處理之后,用計數(shù)器的值來識別所檢測到的峰值的位置。
已經(jīng)描述了峰值檢測系統(tǒng),其運行以檢測二維數(shù)據(jù)集里的局部峰值。因此,雖然本文已說明和描述了峰值檢測系統(tǒng)的一個或一個以上實施例,但應了解,可在不偏離實施例的精神或實質特性的情況下,對實施例進行各種變化。因此,本文的揭示和描述是用來于說明性的,但并不是用來限制隨附權利要求書中所闡述的本發(fā)明范疇的。
權利要求
1.一種用于檢測一二維數(shù)據(jù)集里的局部最大值的設備,其中所述數(shù)據(jù)集由一數(shù)據(jù)元素流來代表,所述設備包括第一檢測邏輯,其接收所述數(shù)據(jù)流,并運行以檢測代表所述數(shù)據(jù)集的一第一維中的一峰值的一第一數(shù)據(jù)元素;和第二檢測邏輯,其接收所述數(shù)據(jù)流,并運行以檢測代表所述數(shù)據(jù)集的一第二維中的一峰值的一第二數(shù)據(jù)元素,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到一局部最大值。
2.根據(jù)權利要求1所述的設備,其進一步包括用以處理所述數(shù)據(jù)集以產生所述數(shù)據(jù)元素流的邏輯。
3.根據(jù)權利要求1所述的設備,其中所述第一檢測邏輯進一步包括用以將一旗標與所述第一數(shù)據(jù)元素相關聯(lián)的旗標邏輯。
4.根據(jù)權利要求1所述的設備,其中在所述第二檢測邏輯中進一步包括對所述旗標進行處理以判定所述第一和第二數(shù)據(jù)元素是否為相同元素的邏輯。
5.根據(jù)權利要求1所述的設備,其進一步包括輸出關于所述局部最大值的信息的輸出邏輯。
6.根據(jù)權利要求5所述的設備,其中在關于所述局部最大值的所述信息中包括一識別所述局部最大值在所述數(shù)據(jù)集中的一位置的識別符。
7.根據(jù)權利要求1所述的設備,其中所述第一檢測邏輯包括第一寄存器邏輯,所述第一寄存器邏輯運行以接收所述數(shù)據(jù)流,并輸出在所述數(shù)據(jù)集的所述第一維中相鄰的所選數(shù)據(jù)元素。
8.根據(jù)權利要求7所述的設備,其中所述第一檢測邏輯包括比較器邏輯,所述比較器邏輯運行以對所述所選數(shù)據(jù)元素進行比較以判定所述第一數(shù)據(jù)元素,且其中所述比較器邏輯具有一耦合到所述旗標邏輯的輸出。
9.根據(jù)權利要求1所述的設備,其中所述第二檢測邏輯包括寄存器邏輯,所述寄存器邏輯運行以接收所述數(shù)據(jù)流,并輸出在所述數(shù)據(jù)集的所述第二維中相鄰的所選數(shù)據(jù)元素。
10.根據(jù)權利要求9所述的設備,其中所述第二檢測邏輯包括比較器邏輯,所述比較器邏輯對所述所選數(shù)據(jù)元素進行比較以判定所述第二數(shù)據(jù)元素。
11.根據(jù)權利要求1所述的設備,其中所述二維數(shù)據(jù)集包括數(shù)據(jù)元素行和列,且其中所述數(shù)據(jù)集的所述第一維由列的數(shù)目界定,且所述數(shù)據(jù)集的所述第二維由行的數(shù)目界定。
12.一種用于檢測二維數(shù)據(jù)集里的局部最大值的設備,其中所述數(shù)據(jù)集由一數(shù)據(jù)元素流來代表,所述設備包括用于接收所述數(shù)據(jù)流的裝置;用于檢測代表所述數(shù)據(jù)集的一第一維中的一峰值的一第一數(shù)據(jù)元素的裝置;和用于檢測代表所述數(shù)據(jù)集的一第二維中的一峰值的一第二數(shù)據(jù)元素的裝置,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到一局部最大值。
13.根據(jù)權利要求12所述的設備,其進一步包括用以處理所述數(shù)據(jù)集以產生所述數(shù)據(jù)元素流的裝置。
14.根據(jù)權利要求12所述的設備,其中用以檢測所述第一數(shù)據(jù)元素的所述裝置進一步包括用以將一旗標與所述第一數(shù)據(jù)元素相關聯(lián)的裝置。
15.根據(jù)權利要求12所述的設備,其中用以檢測所述第二數(shù)據(jù)元素的所述裝置進一步包括用以對所述旗標進行處理以判定所述第一和第二數(shù)據(jù)元素是否為相同元素的裝置。
16.根據(jù)權利要求12所述的設備,其進一步包括用于輸出關于所述局部最大值的信息的裝置。
17.根據(jù)權利要求16所述的設備,其中在關于所述局部最大值的所述信息中包括一識別所述局部最大值在所述數(shù)據(jù)集中的一位置的識別符。
18.根據(jù)權利要求12所述的設備,其中用于檢測所述第一數(shù)據(jù)元素的所述裝置包括用于存儲所述數(shù)據(jù)流的一部分的裝置;和用于輸出來自所述數(shù)據(jù)流的所述所存儲部分的所選數(shù)據(jù)元素的裝置,所述所選數(shù)據(jù)元素在所述數(shù)據(jù)集的所述第一維中是相鄰的。
19.根據(jù)權利要求18所述的設備,其中用于檢測所述第一數(shù)據(jù)元素的所述裝置包括用于對所述所選數(shù)據(jù)元素進行比較以判定所述第一數(shù)據(jù)元素的裝置。
20.根據(jù)權利要求12所述的設備,其中用于檢測所述第二數(shù)據(jù)元素的所述裝置包括用于存儲所述數(shù)據(jù)流的一部分的裝置;和用于輸出來自所述數(shù)據(jù)流的所述所存儲部分的所選數(shù)據(jù)元素的裝置,所述所選數(shù)據(jù)元素在所述數(shù)據(jù)集的所述第二維中是相鄰的。
21.根據(jù)權利要求20所述的設備,其中用于檢測所述第二數(shù)據(jù)元素的所述裝置包括用于對所述所選數(shù)據(jù)元素進行比較以判定所述第二數(shù)據(jù)元素的裝置。
22.根據(jù)權利要求12所述的設備,其中所述二維數(shù)據(jù)集包括數(shù)據(jù)元素行和列,且其中所述數(shù)據(jù)集的所述第一維由列的數(shù)目界定,且所述數(shù)據(jù)集的所述第二維由行的數(shù)目界定。
23.一種用于檢測二維數(shù)據(jù)集里的局部最大值的方法,其中所述數(shù)據(jù)集由一數(shù)據(jù)元素流來代表,所述方法包括接收所述數(shù)據(jù)流;檢測所述數(shù)據(jù)流中的一第一數(shù)據(jù)元素,所述第一數(shù)據(jù)元素代表所述數(shù)據(jù)集的一第一維中的一峰值;將一旗標與所述第一數(shù)據(jù)元素相關聯(lián);檢測所述數(shù)據(jù)流中的一第二數(shù)據(jù)元素,所述第二數(shù)據(jù)元素代表所述數(shù)據(jù)集的一第二維中的一峰值;和如果所述旗標與所述第二數(shù)據(jù)元素相關聯(lián),則檢測到一局部最大值。
24.根據(jù)權利要求23所述的方法,其進一步包括處理所述數(shù)據(jù)集以產生所述數(shù)據(jù)元素流。
25.根據(jù)權利要求23所述的方法,其進一步包括輸出關于所述局部最大值的信息。
26.根據(jù)權利要求23所述的方法,其中關于所述局部最大值的所述信息包括一識別所述局部最大值在所述數(shù)據(jù)集中的一位置的識別符。
27.根據(jù)權利要求23所述的方法,其中檢測所述第一數(shù)據(jù)元素的所述步驟包括存儲所述數(shù)據(jù)流的一部分;和輸出來自所述數(shù)據(jù)流的所述所存儲部分的所選數(shù)據(jù)元素,所述所選數(shù)據(jù)元素在所述數(shù)據(jù)集的所述第一維中是相鄰的。
28.根據(jù)權利要求27所述的方法,其中檢測所述第一數(shù)據(jù)元素的所述步驟包括對所述所選數(shù)據(jù)元素進行比較以判定所述第一數(shù)據(jù)元素。
29.根據(jù)權利要求23所述的方法,其中檢測所述第二數(shù)據(jù)元素的所述步驟包括存儲所述數(shù)據(jù)流的一部分;和輸出來自所述數(shù)據(jù)流的所述所存儲部分的所選數(shù)據(jù)元素,所述所選數(shù)據(jù)元素在所述數(shù)據(jù)集的所述第二維中是相鄰的。
30.根據(jù)權利要求29所述的方法,其中檢測所述第二數(shù)據(jù)元素的所述步驟包括對所述所選數(shù)據(jù)元素進行比較以判定所述第二數(shù)據(jù)元素。
31.根據(jù)權利要求23所述的方法,其中所述二維數(shù)據(jù)集包括數(shù)據(jù)元素行和列,且其中所述數(shù)據(jù)集的所述第一維由列的數(shù)目界定,且所述數(shù)據(jù)集的所述第二維由行的數(shù)目界定。
32.一種包括指令的計算機可讀媒介,所述指令在被一處理器執(zhí)行時運行以檢測二維數(shù)據(jù)集里的局部最大值,其中所述數(shù)據(jù)集由一數(shù)據(jù)元素流來代表,所述計算機可讀媒介包括用于接收所述數(shù)據(jù)流的指令;用于檢測代表所述數(shù)據(jù)集的一第一維中的一峰值的一第一數(shù)據(jù)元素的指令;和用于檢測代表所述數(shù)據(jù)集的一第二維中的一峰值的一第二數(shù)據(jù)元素的指令,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到一局部最大值。
33.根據(jù)權利要求32所述的計算機可讀媒介,其進一步包括用于處理所述數(shù)據(jù)集以產生所述數(shù)據(jù)元素流的指令。
34.根據(jù)權利要求32所述的計算機可讀媒介,其中用于檢測所述第一數(shù)據(jù)元素的所述指令進一步包括用于將一旗標與所述第一數(shù)據(jù)元素相關聯(lián)的指令。
35.根據(jù)權利要求32所述的計算機可讀媒介,其中用于檢測所述第二數(shù)據(jù)元素的所述指令進一步包括用于對所述旗標進行處理以判定所述第一和第二數(shù)據(jù)元素是否為相同元素的指令。
36.根據(jù)權利要求32所述的計算機可讀媒介,其進一步包括用于輸出關于所述局部最大值的信息的指令。
37.根據(jù)權利要求36所述的計算機可讀媒介,其中在關于所述局部最大值的所述信息中包括一識別所述局部最大值在所述數(shù)據(jù)集中的一位置的以別符。
38.根據(jù)權利要求32所述的計算機可讀媒介,其中用于檢測所述第一數(shù)據(jù)元素的所述指令包括用于存儲所述數(shù)據(jù)流的一部分的指令;和用于輸出來自所述數(shù)據(jù)流的所述所存儲部分的所選數(shù)據(jù)元素的指令,所述所選數(shù)據(jù)元素在所述數(shù)據(jù)集的所述第一維中是相鄰的。
39.根據(jù)權利要求38所述的計算機可讀媒介,其中用于檢測所述第一數(shù)據(jù)元素的所述指令包括用于對所述所選數(shù)據(jù)元素進行比較以判定所述第一數(shù)據(jù)元素的指令。
40.根據(jù)權利要求32所述的計算機可讀媒介,其中用于檢測所述第二數(shù)據(jù)元素的所述指令包括用于存儲所述數(shù)據(jù)流的一部分的指令;和用于輸出來自所述數(shù)據(jù)流的所述所存儲部分的所選數(shù)據(jù)元素的指令,所述所選數(shù)據(jù)元素在所述數(shù)據(jù)集的所述第二維中是相鄰的。
41.根據(jù)權利要求40所述的計算機可讀媒介,其中用于檢測所述第二數(shù)據(jù)元素的所述指令包括用于對所述所選數(shù)據(jù)元素進行比較以判定所述第二數(shù)據(jù)元素的指令。
42.根據(jù)權利要求32所述的計算機可讀媒介,其中所述二維數(shù)據(jù)集包括數(shù)據(jù)元素行和列,且其中所述數(shù)據(jù)集的所述第一維由列的數(shù)目界定,且所述數(shù)據(jù)集的所述第二維由行的數(shù)目界定。
全文摘要
本發(fā)明提供用于檢測二維數(shù)據(jù)集里的局部最大值的方法和設備。提供檢測二維數(shù)據(jù)集里的局部最大值的設備,其中數(shù)據(jù)元素流代表所述數(shù)據(jù)集。所述設備包含第一檢測邏輯,其接收所述數(shù)據(jù)流,并運行以檢測代表所述數(shù)據(jù)集的一第一維中的一峰值的一第一數(shù)據(jù)元素。所述設備還包含第二檢測邏輯,其接收所述數(shù)據(jù)流,并運行以檢測代表所述數(shù)據(jù)集的一第二維中的一峰值的一第二數(shù)據(jù)元素,其中如果所述第一和第二數(shù)據(jù)元素為相同元素,則檢測到一局部最大值。
文檔編號G06F7/22GK1947091SQ200580012597
公開日2007年4月11日 申請日期2005年4月1日 優(yōu)先權日2004年4月21日
發(fā)明者羅伯特·萊利, 休伊·特蘭多 申請人:高通股份有限公司