基于SPW-FSM Editor的CPM調制器的建模
摘 要:CPM調制是一種非線性有記憶調制方式,其信號內在的狀態轉移特性更適合于用有限狀態機(FSM)來描述。SPW的FSM Editor是一個簡單易用的FSM建模工具,用其生成的FSM模型可以直接用于SPW的BDE仿真環境中。本文給出了3RC-CPM信號的內在狀態及其轉移的分析,并對基于FSM Editor的建模過程進行了詳細敘述,最后給出了完整的CPM調制器系統模型及其仿真波形。
關鍵詞:SPW;FSM Editor;CPM調制器;有限狀態機
引言
CPM(連續相位調制)是典型的有記憶調制方式,其符號間的關聯特性使得這種調制方式具有不同的狀態。在對CPM系統進行仿真時,首先需要產生調制信號。產生調制信號的方法有很多,最直接的方法是按照CPM信號的表達式運算得到,但需要記憶很多中間狀態;還可以將所有可能的輸出波形存成一張表,采用查表法得到調制信號,但需要較大的存儲空間。事實上,CPM信號可以看作是一個有限狀態系統,在時間軸上具有清晰的狀態轉移關系,根據這一特性,我們采用SPW的建模工具FSM Editor成功地生成了CPM的調制信號。由于該方法實際上是對CPM本質特性的描述,因此物理意義清晰,且參數易于修改,非常適合CPM系統的建模仿真。
FSM Editor簡介
FSM Editor是SPW的一個可選工具,主要是以圖形化的方式對有限狀態機系統進行建模,應用對象包括控制系統、網絡協議以及有記憶調制系統等。一個完整的FSM模型由狀態集、狀態間的轉移、附加在狀態和轉移上的ADL(Action Description Language)文本、輸入/輸出端口、參數以及記憶變量構成,并且可以封裝成標準的SPW模塊。ADL事實上是C語言的一個子集,每一個狀態的入口動作和出口動作以及每一個轉移的驅動條件和執行動作都由ADL文本描述。
創建一個FSM模型包括以下步驟:啟動FSM Editor;定義輸入/輸出端口、參數和記憶變量;創建起始狀態和其它狀態,每一個FSM模型都必須有且僅有一個起始狀態(起始狀態以雙線環表示,其他狀態以單線環表示);編輯各狀態屬性,包括名稱、描述、入口動作和出口動作的定義;創建狀態間的轉移;編輯轉移屬性,包括名稱、描述、驅動條件和執行動作的定義;利用FSM Editor的Verify功能對模型進行驗證;保存模型,同時生成標準的SPW模塊。
模型創建完成即可以像普通的BDE模塊一樣添加到任何一個仿真系統中進行仿真。
CPM調制狀態分析
CPM調制信號的一般表達式為:
(1)
其中
(2)
T為符號周期,即波特率的倒數,e表示時間T內的信號能量,fc為載波頻率,h為有理調制指數,…}為M進制發送符號序列,取值范圍是…, ,q(t)為歸一化相位成形波形,滿足條件:
(3)
定義q(t)的微分形式為g(t),則g(t)是持續時間為LT的脈沖波形,稱為相位成形脈沖。如果L=1,相應的CPM信號稱為全響應CPM;如果L>1,則稱為部分響應CPM。
生成CPM調制信號的關鍵在于產生相位f(t;I),由(2)式可得:
(t-kT)
(t-kT)
(4)
其中qn可以遞歸的方式表示為:
(5)
由(4)式可知,時間內的f(t;I)可由qn及{In, In-1, …In-L+1}唯一確定,因此CPM信號在t=nT時刻的狀態可以定義為
…,In-L+1} (6)
由于,因此當m為偶數時,qn共有p個,即;當m為奇數時,qn共有2p個,即,所以CPM信號的狀態數為:
(7)
以二進制CPM(即M=2)為例,其他參數如下:L=3,h=1/2(m=1,p=2),則狀態數為2pML-1=2
評論