dsp與數(shù)據(jù)轉(zhuǎn)換器協(xié)同工作所必須考慮的10大因素_第1頁
已閱讀1頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、DSP與數(shù)據(jù)轉(zhuǎn)換器協(xié)同工作所必須考慮的10大因素假設(shè)您接到一項(xiàng)工作任務(wù),設(shè)計(jì)一套由DSP與DAC與ADC等模擬器件組成的信號處理系統(tǒng)。如果您考慮到幾個(gè)重要因素,工作就會(huì)非常簡單。下面就來談?wù)勗O(shè)計(jì)工作中應(yīng)該考慮的這幾個(gè)因素。詳細(xì)了解應(yīng)用類型詳細(xì)了解應(yīng)用類型第一步需要了解應(yīng)用類型。對于控制型應(yīng)用,既需要應(yīng)對突發(fā)的大量數(shù)據(jù)處理情形,也要考慮間歇的閑置狀態(tài);而對于音頻應(yīng)用,則需要處理連續(xù)數(shù)據(jù)流的能力。了解應(yīng)用的具體需求將有助于選擇適當(dāng)?shù)慕涌诤驼?/p>

2、確的數(shù)據(jù)讀取方法。評估系統(tǒng)速率評估系統(tǒng)速率第二步需要了解數(shù)據(jù)采樣的速率。舉例來說,音頻系統(tǒng)可能是一部CD播放機(jī),采樣率為96kHz,也可能是電話語音系統(tǒng),采樣率僅為8kHz。當(dāng)然,也可能是其他系統(tǒng),如ADSL質(zhì)量測量應(yīng)用,采樣速率高達(dá)10MSPS,或者是稱重應(yīng)用,每秒只要16次采樣就足夠了,但要求具備較高的分辨率(如24位)。了解此方面信息,將有助于開展下一步工作,即選擇正確的DSP接口。選擇正確的選擇正確的DSPDSP接口接口了解了應(yīng)

3、用及速率要求后,就對采用哪種DSP接口有了一定的認(rèn)識。大多數(shù)音頻設(shè)備均使用特定類型的串行接口,不過高速應(yīng)用則要求并行接口。當(dāng)采樣速率為10MSPS、分辨率為12位時(shí),如果采用串行接口,其端口的速率要達(dá)到120MHz才能從轉(zhuǎn)換器向DSP發(fā)送數(shù)據(jù)。這一要求大大超過了大多數(shù)50MHz串行端口的處理能力。若使用并行接口,則總線上信號交換的頻率為10MHz,速率顯著降低,因此處理起來非常簡單。在選擇接口時(shí),還要考慮的另一問題就是,并行總線能否滿足

4、所需的數(shù)據(jù)速率要求,或者說并行總線芯片在滿足程序與系數(shù)要求后是否已經(jīng)達(dá)到了滿負(fù)荷。如果是的話,不妨考慮在DSP與轉(zhuǎn)換器之間插入FIFO。確定握手模式確定握手模式一旦選擇了DSP接口,下一步就要考慮轉(zhuǎn)換器與DSP之間的握手模式(hshakemode)。大多數(shù)轉(zhuǎn)換器在發(fā)出新的數(shù)據(jù)字之前都會(huì)給出某種類型的轉(zhuǎn)換結(jié)束(EOC)信號。處理器使用上述信號的方式有兩種:一是輪詢(poll);二是用其作為中斷。使用EOC信號作為中斷具有一定優(yōu)勢,因?yàn)镃P

5、U不會(huì)被輪詢標(biāo)記占用,因此在獲得數(shù)據(jù)前不會(huì)打斷CPU的正常工作。不過,如果轉(zhuǎn)換器等待處理特定的協(xié)議來讀取數(shù)據(jù),比如轉(zhuǎn)換器發(fā)出轉(zhuǎn)換結(jié)束信號后又需要讀取命令來檢索數(shù)據(jù),每個(gè)讀取命令都會(huì)觸發(fā)新的中斷,那么就會(huì)造成過多的開銷,得不償失。在這如果改變連接后轉(zhuǎn)換器的第“11”位剛好連接至DSP數(shù)據(jù)總線的第“15”位,那么符號位從首位算起剛好位于正確的位置,這就能實(shí)現(xiàn)基于DMA的傳輸,而且也不用再進(jìn)行數(shù)據(jù)位移。確保處理的是正確數(shù)據(jù)確保處理的是正確數(shù)據(jù)

6、現(xiàn)在,數(shù)據(jù)已經(jīng)進(jìn)入系統(tǒng),數(shù)據(jù)字存儲(chǔ)在陣列中,數(shù)據(jù)大小也合適,于是開始處理數(shù)據(jù),但沒有獲得預(yù)期的結(jié)果,這時(shí)需要思考到底出了什么問題。首先應(yīng)該檢查DSP的高速緩存,DMA傳輸數(shù)據(jù)進(jìn)入存儲(chǔ)器時(shí)是否啟用高速緩存,在這種情況下,高速緩存很可能保留拷貝的舊數(shù)據(jù),并在算法工作中使用它們。如果發(fā)生了此類問題,就必需注意高速緩存相關(guān)性與轉(zhuǎn)儲(chǔ)清除問題,或者是存儲(chǔ)新數(shù)據(jù)的高速緩存區(qū)失效。這樣就能確保CPU處理的數(shù)據(jù)是傳輸完成后的最新數(shù)據(jù)。如果用如果用C語言編

7、程應(yīng)分配易失關(guān)鍵字語言編程應(yīng)分配易失關(guān)鍵字在調(diào)試嵌入式系統(tǒng)時(shí),采用變量查詢外設(shè)的狀態(tài)后,發(fā)現(xiàn)CPU所用變量值是錯(cuò)誤的,這時(shí)就要思考到底哪里出了問題。先看看下面這個(gè)結(jié)構(gòu):unsignedintpControl=(unsignedint)0x00COFFEEfile:錯(cuò)誤while(pControl==0)file:等待一個(gè)外部事件這里的pControl指向一個(gè)外設(shè)。通過while循環(huán),期望EOC能從“0”轉(zhuǎn)換為“1”。但在大多數(shù)情況下,恐

8、怕得一直等下去,因?yàn)榫幾g器認(rèn)為它已經(jīng)完全控制了變量及與其相關(guān)的存儲(chǔ)器,只加載pControl指向的存儲(chǔ)器位置的內(nèi)容一次,就會(huì)對其進(jìn)行循環(huán)測試。但問題在于,由于不會(huì)重新讀取存儲(chǔ)器內(nèi)容,也就不能結(jié)束循環(huán)。解決這一問題的方法就是將pControl的聲明作一下修改,通知編譯器其指向的存儲(chǔ)器位置可由外部事件修改,而每次使用該變量時(shí)都必須重新載入,如下所示:volatileunsignedintpControl=(unsignedint)0x00C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論