基于PCI總線(xiàn)通用DSP信號處理系統的設計

發(fā)布時(shí)間:2010-6-30 16:37    發(fā)布者:我芯依舊
關(guān)鍵詞: dsp , PCI , 信號處理
1 引言

1.1 DSP簡(jiǎn)介及基本特點(diǎn)

數字信號的處理離不開(kāi)算法和實(shí)現手段。數字信號處理器(digital signal processor簡(jiǎn)稱(chēng)DSP)。是在模擬信號變換成數字信號以后進(jìn)行高速實(shí)時(shí)處理的專(zhuān)用處理器,是實(shí)現實(shí)時(shí)數字信號處理的有力工具。DSP目前廣泛應用于模式識別,數字通信,信號處理,工業(yè)控制等領(lǐng)域。TI公司的TMS320C54X系列DSP有著(zhù)以下的特點(diǎn):采用先進(jìn)的修正增強型哈佛結構,片內共有8條總線(xiàn)(1條程序存儲器總線(xiàn),3條數據存儲器總線(xiàn)和4條地址總線(xiàn));高度并行和帶有專(zhuān)用硬件邏輯的CPU設計;高度專(zhuān)業(yè)化的指令系統;模塊化結構設計;能降低功耗和提高抗輻射能力的新的靜電設計方法。因此它能高速實(shí)時(shí)以及靈活地應用于圖像處理、語(yǔ)言處理、頻譜分析、數字濾波、實(shí)時(shí)控制 等各個(gè)領(lǐng)域。TMS320VC5402是54X系列中應用比較廣泛的一種芯片,它有著(zhù)豐富的接口資源,是一種集數據處理和通信功能于一體的高速微處理器。其操作速率為40~100MIPS。

1.2 PCI局部總線(xiàn)的性能和特點(diǎn)

PCI總線(xiàn)是一種不依附于某個(gè)具體處理器的局部總線(xiàn)。從結構上看,PCI是在CPU和原來(lái)的系統總線(xiàn)之間插入的一級總線(xiàn),具體由一個(gè)橋接電路實(shí)現對這一層的管理,并實(shí)現上下之間的接口以協(xié)調數據的傳送。管理器提供了信號緩沖,使之能支持10種外設,并能在高時(shí)鐘頻率下保持高性能。PCI總線(xiàn)也支持總線(xiàn)主控技術(shù),允許智能設備在需要時(shí)取得總線(xiàn)控制權以加速數據傳送。

2信號處理系統的功能構成

通用信號處理系統一般分為數據采集、數據處理和數據管理3個(gè)部分(圖1)。采集部分可以采用通用的數據采集卡,數據管理部分則必須用 PC機才能完成。在信號處理系統中,最費時(shí)間,也即影響信號處理系統的實(shí)時(shí)性的瓶頸是數據的處理部分。數據的處理通常采用微機軟件的方法, 但完全由PC機處理有個(gè)缺點(diǎn),就是信號處理需要的運算主要是數字運算,因相對于通用CPU(GPP)來(lái)說(shuō),它是采用馮·諾依曼存儲器結構,并不適用于數字信號的運算,不僅會(huì )造成處理速度慢,而且占用CPU時(shí)間過(guò)多,直接影響了PC機對數據的管理。因此,我們提出用另一種方法把信號處理部分從微機軟件中分離出來(lái),交給DSP處理,然后把DSP處理好的數據再傳給PC機管理。該系統的功能構成如圖1所示。這樣不僅可以做到信號處理和數據管理并行進(jìn)行,而且充分利用DSP對數字信號處理高速,并行的優(yōu)勢,提高了信號處理系統的實(shí)時(shí)性和穩定性。在對信號作連續的流水處理時(shí),其性能優(yōu)勢更能得以體現,同時(shí)這也是一個(gè)廉價(jià)的產(chǎn)品,有著(zhù)很高的性能價(jià)格比。


3 信號處理部分的硬件構成

信號處理部分接口電路的結構如圖2所示。信號處理程序保存在主機中,在上電以后,自舉加載到DSP中,并由固化在DSP的ROM中的 BOOTLOADER來(lái)完成。


主要的處理流程是:信號采集卡把模擬的信息轉化為數字的信息,進(jìn)入PC機;由PC機通過(guò)PCI接口把數字的信息傳輸到DSP,保存在SRAM中; DSP從SRAM中讀取數據,對信號進(jìn)行處理;然后,把處理后的數據再從PCI接口傳回PC機,交給數據管理部分處理。

3.1 PCI接口

為了管理數據和尋址、接口控制、仲裁以及系統運行,PCI接口對單個(gè)目標設備需要至少47個(gè)引腳,對主控設備最少需要49個(gè)引腳。圖3給出了按功能組劃分的引腳,左邊的為必需引腳,右邊的為可選引腳。圖中的信號的方向是對主控設備/ 目標設備的組合而言?傄_數120條(包含電源、地、保留引腳等)。PCI的總線(xiàn)寬度有32位和64位。在本系統中,設備是32位,沒(méi)有作64位擴展。


由于PCI總線(xiàn)時(shí)鐘高達33MHz,信號線(xiàn)應按微波傳輸線(xiàn)對待,再加上接口邏輯本身的復雜性,設計難度很大。實(shí)現接口的辦法:(1)用可編程邏輯器件EPLD或FPGA和用EPLD或FPGA實(shí)現。PCI接口的優(yōu)點(diǎn)在于其靈活的可編程性。首先PCI接口可以依據插卡功能進(jìn)行最優(yōu)化,而不必實(shí)現所有的PCI功能,這樣可以節約系統的邏輯資源;其次可以將PCI插卡上的其他用戶(hù)邏輯與PCI接口邏輯集成在一個(gè)芯片上,實(shí)現緊湊的系統設計;再者當系統升級時(shí),只需對可編程器件重新進(jìn)行邏輯設計而無(wú)需更新PCB版圖。(2)用專(zhuān)用PCI接口芯片實(shí)現。專(zhuān)用PCI接口芯片可以實(shí)現完整的PCI主控模塊和目標模塊接口功能,將復雜的PCI總線(xiàn)接口轉換為相對簡(jiǎn)單的用戶(hù)接口。廠(chǎng)商對PCI總線(xiàn)接口進(jìn)行了嚴格的測試,用戶(hù)只要設計轉換后的總線(xiàn)接口即可。從某種意義上講,PCI接口完成的是PCI總線(xiàn)和插卡上的從屬處理器之間的消息傳遞。

由于以上原因,再考慮到系統開(kāi)發(fā)的成本和周期,用專(zhuān)用接口芯片來(lái)實(shí)現PCI總線(xiàn)的接口較理想。接口芯片選用的是TI公司的PCI2040。PCI2040 是專(zhuān)門(mén)用來(lái)和54X或6X橋接的芯片,可以實(shí)現與TMS320VC5402的無(wú)縫接口 ;可以對端口進(jìn)行訪(fǎng)問(wèn)讀寫(xiě)。PCI2040提供了一個(gè)由PCI總線(xiàn)至插卡總線(xiàn)的直通通路(pass-thru)。PCI2040通過(guò)這些數據通路將復雜的PCI接口轉換為相對簡(jiǎn)單的插卡總線(xiàn)接口。在本系統中,DSP中的資源映射到PC機的內存D9008000~D9008FFF和D9000000~ D9007FFF,中斷請求為11。

PCI2040通過(guò)HPI接口與DSP通信,通信流程如下:PCI總線(xiàn)向PCI2040讀寫(xiě)數據,PCI2040會(huì )根據這些命令在HPI口上發(fā)起相應的要求,這個(gè)通信過(guò)程可以通過(guò)編程首先初始化HPI控制寄存器HPIC以及主機地址寄存器HPIA,然后再從主機數據寄存器HPID中讀/寫(xiě)數據來(lái)完成。具體的接口電路如圖4所示:一塊PCI2040最多可以?huà)旖?片 DSP,以用于多DSP系統。


3.2 擴展空間

對信號處理系統來(lái)講,DSP芯片所帶的資源常常不能滿(mǎn)足要求。這包括兩個(gè)方面,一是程序空間,二是數據空間。對程序空間,可以選擇不同的自舉方式,充分利用PC機的資源。對數據空間有下面幾種解決方法:(1)選擇資源多的芯片,但這會(huì )引起成本的上升;(2)改進(jìn)算法,邊讀取數據邊處理;(3)用一個(gè)鎖存器保存高位地址,自己擴展數據空間。這 里采用的方法是在用算法進(jìn)行邊讀數據邊處理的同時(shí),用SRAM對數據空間進(jìn)行了擴展?紤]到時(shí)序關(guān)系,以及TMS320VC5402只能與異步的存儲器連接等因素。選用了TPS73HD318。它是 3.3V,1M×16大小的靜態(tài)RAM,高低位字節可選,其讀寫(xiě)速度達到12ns,能夠與DSP的讀寫(xiě)速度相匹配,無(wú)須另加接口時(shí)序。對于等待時(shí)間的產(chǎn)生,可以用軟件的方法,對等待狀態(tài)寄存器(SWWSR)進(jìn)行設置。而產(chǎn)生的時(shí)延在調試時(shí)可以對DSP的時(shí)延寄存器進(jìn)行設置, 以達到最大速度。硬件接口如圖5所示。


4 DSP系統的自舉

所謂自舉(Bootload),就是在上電時(shí)從外部加載并執行用戶(hù)的程序代碼。加載的途徑有:(1)從一個(gè)外部的EPROM或FLASH加載;(2)從主機通過(guò)HPI總線(xiàn)、并行I/O口、任何一個(gè)串行口、用戶(hù)定義的地址熱自舉等方式加載。因為信號處理的程序一般都比較大,為了保證這個(gè)信號處理系統的通用性和可移植性,需把程序保存在主機中,用HPI總線(xiàn)自舉。HPI是一個(gè)8位的并行口,PC機和'5402通過(guò)共享的片內存儲器交換信息。選用HPI自舉方式,需要把HINT和INT2引腳連在一起。復位時(shí),Bootload使HINT置位,從而使 INT2置位。BootloaD讀出中斷標志寄存器(IFR)的bit2位后,即能從HPI口進(jìn)行自舉。與別的54X系列一個(gè)很重要的不同是:5402要檢查數據存儲器的OX7FH位以決定程序的入口地址,用戶(hù)程序也要在復位完成后才能加載到HPI的RAM中。

5 驅動(dòng)程序

因為PCI2040擴展了配置空間,所以,要通過(guò) HPI口實(shí)現與DSP的通信,需要驅動(dòng)程序。如果直接使用DDK來(lái)編寫(xiě)PCI設備的驅動(dòng)程序,需要大量的Windows底層的知識,難度比較大。因此可以使用別的驅動(dòng)程序的編寫(xiě)工具,如Vtools和 WinDrive。我們選用了WinDrive 。Jungo公司的WinDrive與其他驅動(dòng)程序開(kāi)發(fā)工具的最大不同是它可以在編程者不太了解Windows內核的情況下編寫(xiě)驅動(dòng)程序。這樣,可以把精力主要放在功能的實(shí)行上,同時(shí)用WinDrive寫(xiě)成的驅動(dòng)程序只需作很少的修改就能很方便地適用于各種操作系統,如Win dows 9x, Window 2000,Windows NT以及Linux等。編寫(xiě)過(guò)程如下:(1)用WinDrive 的Drive Wiz ard 工具查找所要編寫(xiě)驅動(dòng)程序的PCI卡,并用CREATING INF FILE 產(chǎn)生INF 文件,然后添加新硬件;(2)對PCI卡上的配置寄存器,I/O空間,內存范圍,中斷,片內寄存器進(jìn)行設置;(3)生成源代碼,對它進(jìn)行功能添加,主要是實(shí)現對DSP 片內SRAM的訪(fǎng)問(wèn)。
本文地址:http://selenalain.com/thread-14185-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
youyou_zh 發(fā)表于 2012-2-3 20:32:13
buzid
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页