DSP與PC機的無線交換調(diào)制模塊設(shè)計
1 引言
DSP作為可編程數(shù)字信號處理專用芯片是微型計算機發(fā)展的一個重要分支,也是數(shù)字信號處理理論實用化過程中的重要技術(shù)工具。隨著微電子技術(shù)和數(shù)字信號處理技術(shù)的迅速發(fā)展,DSP的性能價格比不斷提高,正在受到業(yè)界越來越廣泛的關(guān)注。尤其是在科學(xué)技術(shù)發(fā)展的今天,各種智能化系統(tǒng)的結(jié)構(gòu)和控制算法越來越復(fù)雜,單純依靠PC機和單片機組成的計算機控制系統(tǒng)結(jié)構(gòu)的設(shè)計格局正在逐漸發(fā)生變化,以局部高速信息處理和全局PC控制的復(fù)雜計算機控制系統(tǒng)以及以高速DSP為核心的具有復(fù)雜計算和控制的嵌入式控制系統(tǒng)設(shè)計電路正在逐漸興起。
2 系統(tǒng)設(shè)計方案
本系統(tǒng)的設(shè)計任務(wù)就是實現(xiàn)計算機上數(shù)據(jù)的無線傳輸,其關(guān)鍵技術(shù)在于計算機同DSP的數(shù)據(jù)交換以及數(shù)據(jù)的編碼調(diào)制。這里,采用的糾錯編碼方式為與交織結(jié)合的戈萊碼編碼方式,調(diào)制方式為4FTSK。但是,與傳統(tǒng)方法不同的是,該系統(tǒng)的數(shù)據(jù)交換是通過計算機的PCI總線來實現(xiàn)的,并且4FTSK的調(diào)制是通過DSP用數(shù)字合成頻率的方法實現(xiàn)的。同時,考慮到系統(tǒng)的可再開發(fā)性,模塊集成了調(diào)制和解調(diào)模塊。系統(tǒng)核心框圖如圖1所示。
圖1 系統(tǒng)核心框圖
3 系統(tǒng)硬件設(shè)計
3.1 系統(tǒng)硬件原理
系統(tǒng)的硬件原理框圖如圖2所示。系統(tǒng)選用TI公司的TMS320C5402作為處理芯片,PCI2040作為PCI接U芯片,利用DSP的HPI接口實現(xiàn)計算機和插卡之間的數(shù)據(jù)交換。同時,還選用高速的RAM, EPROM作為擴展數(shù)據(jù)、程序存儲器。DSP接收到計算機的數(shù)據(jù)后,根據(jù)數(shù)據(jù)存儲器里預(yù)先開辟的作為數(shù)字合成頻率正弦表的一塊內(nèi)存實現(xiàn)FTSK的調(diào)制,并利用并行數(shù)模轉(zhuǎn)換芯片CA3338將FTSK調(diào)制數(shù)據(jù)轉(zhuǎn)變?yōu)槟M信號并通過放大器進行放大。這樣,就完成了計算機輸入數(shù)據(jù)的調(diào)制。為了保證系統(tǒng)的可靠性,采用MAX814作為看門狗電路。此外,選用一片CPLD對芯片進行邏輯控制,這樣,增強了系統(tǒng)的可擴展性。
圖2 系統(tǒng)硬件結(jié)構(gòu)圖
3.2 硬件抗干擾設(shè)計
由于DSP是高速器件,因此在設(shè)計本系統(tǒng)的電路板時面臨著電磁干擾(EMI)的問題。印制電路板的抗干擾設(shè)計對PCB的電磁兼容性影響很大,為了使PCB上的電路正常工作,本系統(tǒng)采取了以下措施:1) 加粗電源線寬度,減少環(huán)路電阻。同時,使電源線、地線的走向和數(shù)據(jù)傳遞的方向一致,這樣有助于增強抗噪聲能力;2) 數(shù)字地與模擬地分開,接地線盡量加粗, 接地線構(gòu)成閉環(huán)路;3) 配置去耦電容可以抑制因負載變化而產(chǎn)生的噪聲,這是印制電路板的可靠性設(shè)計的一種常規(guī)做法;4) 對于DSP閑置的I/O口,不要懸空,接地或接電源,對DSP使用看門狗電路,盡量降低DSP的晶振和選用低速數(shù)字電路。[!--empirenews.page--]
4 系統(tǒng)實現(xiàn)的關(guān)鍵技術(shù)
在系統(tǒng)的設(shè)計上,比較關(guān)鍵的技術(shù)是:DSP同計算機之間通過HPI接口和PCI總線進行數(shù)據(jù)交換、根據(jù)數(shù)字合成頻率的方法利用DSP實現(xiàn)數(shù)據(jù)的調(diào)制、上位機軟件實現(xiàn)數(shù)據(jù)的編碼交織、DSP的匯編程序設(shè)計和PCI接口卡驅(qū)動程序設(shè)計。
4.1 DSP同計算機數(shù)據(jù)交換的實現(xiàn)
DSP同計算機之間的數(shù)據(jù)交換有很多種方法:串口、并口、I/O接口還有HPI接口。為了方便并且快速的實現(xiàn)數(shù)據(jù)交換,在本系統(tǒng)中,采用TMS320C5402的HPI接口與計算機的PCI總線進行數(shù)據(jù)交換。
TMS320C5402是在類別上屬于TMS320C54x系列DSP。它由中央處理單元(CPU)、總線、存儲器、片內(nèi)外設(shè)、以及外部總線接日等部分組成。TMS320C5402的外設(shè)有:軟件可編程等待狀態(tài)發(fā)件二器,有可編程的塊切換等待狀態(tài);增強型的8位主機接口(HPI8 );兩個硬件定時器;擁有鎖相環(huán)(PLL)的時鐘發(fā)生器;一個直接存儲器(DMA)控制器;兩個多通道緩沖串行!l(McBSPs)等。HPI接口是一個8位并行口,用來與主設(shè)備或主處理器接口。TMS320C5402采用增強型主機接口。此主機接口同標(biāo)準(zhǔn)型主機接日相比主要區(qū)別在于:增強型可以訪問整個片內(nèi)RAM。
在本系統(tǒng)中,PCI接口芯片選用TI公司的PCI2040。PCI2040可以實現(xiàn)8位HPI接口的TMS320C54X系列與高性能的PCI總線之間無縫連接的DSP-PCI橋。PCI2040提供了幾個外部接口:
PCI總線接口:PCI2040提供了與PCI總線規(guī)范完全兼容的32位總線接口。這些總線接口可以實現(xiàn)配置寄存器讀寫,內(nèi)部存儲器訪問,并可以通過存儲器映射空間訪問HPI接口。
HPI接口:PCI2040的HPI接口用于訪問TMS320C54X或TMS320C6X。連接到HPI接口的設(shè)備以存儲器映射的方式映射到卞機存儲區(qū)內(nèi)。主機通過訪問PCI2040訪問HPI接口。
4.2 利用DSP實現(xiàn)數(shù)據(jù)的調(diào)制
由于本設(shè)計的調(diào)制主要是利用軟件與硬件結(jié)合的方法實現(xiàn),并且力求產(chǎn)生的信號精確,故系統(tǒng)選用了高速D/A(CA3338)轉(zhuǎn)換芯片,用匯編語言編程實現(xiàn)調(diào)制信號輸出。
4.2.1 硬件連接圖
調(diào)制的硬件電路如圖3所示。TMS320C5402的IOSTRB和IS相或后作為CA3338的片選信號,通過數(shù)據(jù)總線將數(shù)據(jù)送到CA3338中,D/A轉(zhuǎn)換后模擬信號經(jīng)過運算放大器后輸出。
圖3 DSP同D/A轉(zhuǎn)換芯片的連接圖
4.2.2 DSP調(diào)制程序設(shè)計
原始數(shù)據(jù)在DSP中進行FTSK調(diào)制,它是通過DSP的軟件編程利用DDS(數(shù)字合成頻率)的原理實現(xiàn)的。
1 實現(xiàn)方法。DDS(直接數(shù)字頻率合成)技術(shù)是一種把一系列數(shù)字量形式的信號通過DAC轉(zhuǎn)換成模擬量形式的信號的合成技術(shù)。目前使用最廣泛的一種DDS方式是利用高速存儲器作查尋表,然后通過高速DAC產(chǎn)生已經(jīng)用數(shù)字形式存入的正弦波。在本系統(tǒng)中,首先,在DSP內(nèi)部ROM開辟一段存儲空間作為一個周期的正弦波抽樣點存儲器。通過軟件對該存儲器進行相位一幅值的轉(zhuǎn)換,從而在給定的時間確定相應(yīng)的輸出幅值。發(fā)送一個周期的正弦波流程圖如圖4所示。
2 4FTSK信號的產(chǎn)生及輸出。4FTSK信號包含4個頻率的波形,因此先根據(jù)不同的頻率,計算出相應(yīng)的采樣率,編寫產(chǎn)生這四個頻率正弦波的子程序。在主程序中,判斷要調(diào)制的碼元,決定發(fā)送的4個頻率的順序。在本系統(tǒng)中,頻率與碼元的對應(yīng)關(guān)系如表1所示(fl:800; f2:1200; f3:1600; f4: 2000)
表1 頻率與碼元對應(yīng)關(guān)系[!--empirenews.page--]
圖4 發(fā)送一個頻率的正弦波流程圖
信號最終是通過r/o u輸出到D/A轉(zhuǎn)換芯片中實現(xiàn)從數(shù)字量到模擬量的轉(zhuǎn)換。再經(jīng)過低通濾波之后,便可得到頻率純凈的模擬信號。
3信號的測試、分析。由于4FTSK信號的解調(diào)需要調(diào)制信號的精度很高,因此設(shè)計了測試電路測試發(fā)送信號的精確度。測量方法:通過控制輸入計數(shù)頻率值,來測量調(diào)制期間的時間長度,發(fā)送數(shù)據(jù)的長度是等于計數(shù)頻率的周期值X計數(shù)值,即計數(shù)值除以頻率值。
4.2.3 上位機軟件實現(xiàn)編碼及交織
對于本系統(tǒng)而言,在信道中傳輸中所引起的多次突發(fā)錯誤,對一個碼組來說,碼組中的差錯完全可以看作是獨立的。因而在計算輸出誤碼率時,就可以按反映隨機信道錯誤分布的二進制對稱信道(BSC)模型計算。在BSC模型中,傳輸“1”和“0”兩種信息,其傳輸錯誤的概率相同,均為Pe,傳輸正確的概率為1-Pe, Pe稱為信道誤碼率。在BSC下,傳輸長度為n的碼組時,正好出現(xiàn)m個差錯的概率為
(1)
碼組內(nèi)出現(xiàn)≧m個差錯的概率為
2)
在本系統(tǒng)中,交織度為144,所使用差錯控制碼為Golay (23,12)碼,可糾3位錯碼,因此根據(jù)上式,可得誤碼率為
(3)
4.2.4 DSP的匯編程序設(shè)計
DSP的匯編程序設(shè)計包括兩部分:系統(tǒng)的ROOT程序設(shè)計以及主程序設(shè)計。主程序主要是對寄存器的初始化。
4.2.5 PCI接口卡驅(qū)動程序設(shè)計
在設(shè)計和使用PCI設(shè)備時,經(jīng)常要在PC機的軟件中訪問和控制硬件設(shè)備為了保證系統(tǒng)的安全性、穩(wěn)定性和可移植性,對應(yīng)用程序訪問硬件資源加以限制,這就要求設(shè)計設(shè)備驅(qū)動程序以實現(xiàn)PC機的軟件對PCI設(shè)備的訪問。硬件設(shè)備驅(qū)動程序的基本功能就是完成設(shè)備的初始化、對端口的讀寫操作以及對內(nèi)存的直接讀寫。
5 本文作者創(chuàng)新點
在用單片機實現(xiàn)的基礎(chǔ)上,本文提出了以TMS320C5402為主控制器的無線數(shù)據(jù)調(diào)制模塊的實現(xiàn)方法,并對其具體實現(xiàn)包括硬件及軟件做了比較全面的介紹??梢钥闯?在速度、精度等很多方面DSP系統(tǒng)都優(yōu)于單片機系統(tǒng),而且DSP利用HPI 口和PCI總線,極大的方便了主機與DSP系統(tǒng)的數(shù)據(jù)交換。該系統(tǒng)靈活、簡單,是一種比較先進的技術(shù),具有一定的理論和實踐意義。