當前位置:首頁 » 生產成本 » 信號處理低成本能力指什麼
擴展閱讀
蘇寧尼康d3500價格怎麼樣 2025-06-28 06:53:27
ps怎麼套鎖工具繼續選擇 2025-06-28 06:52:43
鑽石扁藍時尚多少錢一條 2025-06-28 06:42:09

信號處理低成本能力指什麼

發布時間: 2022-12-26 04:20:10

⑴ 事業單位考試職測里的信息處理能力是什麼

是指對於收集到的信息,能通過適當的處理,讀取其中隱含的、有意義的信息的能力。處理信息是指獲取信息並對它進行加工處理,使之成為有用信息並發布出去的過程,稱為信息處理。信息處理的過程主要包括信息的獲取、儲存、加工、發布和表示。信息處理現已融入了我們的日常工作和生活中。

⑵ 多采樣率信號處理在FIR數字濾波器中的應用

您的查詢字詞都已標明如下:什麼是dsp 語音 (點擊查詢詞,可以跳到它在文中首次出現的位置)
(網路和網頁http://kookl.blogchina.com/3267295.html" http://kookl.blogchina.com/3267295.html的作者無關,不對其內容負責。網路快照謹為網路故障時之索引,不代表被搜索網站的即時頁面。)

--------------------------------------------------------------------------------
草不枯Thinking:Java中static用法- -| 回首頁 | 2005年索引 | - -我一定是瘋了DSP是什麼 - -
Tag: DSP是什麼

DSP是什麼

| 數字信號處理 | 數字信號處理器 | DSP處理器與通用處理器的比較 |

Digital Signal Processing 數字信號處理

作為一個案例研究,我們來考慮數字領域里最通常的功能:濾波。簡單地說,濾波就是對信號進行處理,以改善其特性。例如,濾波可以從信號里清除雜訊或靜電干擾,從而改善其信噪比。為什麼要用微處理器,而不是模擬器件來對信號做濾波呢?我們來看看其優越性:
模擬濾波器(或者更一般地說,模擬電路)的性能要取決於溫度等環境因素。而數字濾波器則基本上不受環境的影響。
數字濾波易於在非常小的寬容度內進行復制,因為其性能並不取決於性能已偏離正常值的器件的組合。
一個模擬濾波器一旦製造出來,其特性(例如通帶頻率范圍)是不容易改變的。使用微處理器來實現數字濾波器,就可以通過對其重新編程來改變濾波的特性。

信號處理方式的比較

比較因素 模擬方式 數字方式
修改設計的靈活性 修改硬體設計,或調整硬體參數 改變軟體設置
精度 元器件精度 A/D的位數和計算機字長,演算法
可靠性和可重復性 受環境溫度、濕度、雜訊、 不受這些因素的影響
電磁場等的干擾和影響大
大規模集成 盡管已有一些模擬集成電路, 但品種較少、集成度不高、價格較高DSP器件體積小、功能強、功耗小、一致性好、使用方便、性能/價格比高
實時性 除開電路引入的延時外,處理是實時的 由計算機的處理速度決定
高頻信號的處理 可以處理包括微波毫米波乃至光波信號 按照奈准則的要求,受S/H、A/D和 處理速度的限制

Digital Signal Processor 數字信號處理器

微處理器(Microprocessor)的分類
通用處理器(GPP)
採用馮.諾依曼結構,程序和數據的存儲空間合二而一
8-bit Apple(6502),NEC PC-8000(Z80)
8086/286/386/486/Pentium/Pentium II/ Pentium III
PowerPc 64-bit CPU(SUN Sparc,DEC Alpha, HP)
CISC 復雜指令計算機, RISC 精簡指令計算機
採取各種方法提高計算速度,提高時鍾頻率,高速匯流排,多級Cashe,協處理器等
Single Chip Computer/ Micro Controller Unit(MCU)
除開通用CPU所具有的ALU和CU,還有存儲器(RAM/ROM)寄存器,時鍾,計數器,定時器,串/並口,有的還有A/D,D/A
INTEL MCS/48/51/96(98)
MOTOROLA HCS05/011
DSP
採用哈佛結構,程序和數據分開存儲
採用一系列措施保證數字信號的處理速度,如對FFT的專門優化
MCU與DSP的簡單比較
MCU DSP
低檔 高檔 低檔 高檔
指令周期(ns) 600 40 50 5
乘加時間(ns) 1900 80 50 5
US$/MIPS 1.5 0.5 0.15 0.1

DSP處理器與通用處理器的比較
考慮一個數字信號處理的實例,比如有限沖擊響應濾波器(FIR)。用數學語言來說,FIR濾波器是做一系列的點積。取一個輸入量和一個序數向量,在系數和輸入樣本的滑動窗口間作乘法,然後將所有的乘積加起來,形成一個輸出樣本。

類似的運算在數字信號處理過程中大量地重復發生,使得為此設計的器件必須提供專門的支持,促成了了DSP器件與通用處理器(GPP)的分流:

1 對密集的乘法運算的支持

GPP不是設計來做密集乘法任務的,即使是一些現代的GPP,也要求多個指令周期來做一次乘法。而DSP處理器使用專門的硬體來實現單周期乘法。DSP處理器還增加了累加器寄存器來處理多個乘積的和。累加器寄存器通常比其他寄存器寬,增加稱為結果bits的額外bits來避免溢出。
同時,為了充分體現專門的乘法-累加硬體的好處,幾乎所有的DSP的指令集都包含有顯式的MAC指令。

2 存儲器結構

傳統上,GPP使用馮.諾依曼存儲器結構。這種結構中,只有一個存儲器空間通過一組匯流排(一個地址匯流排和一個數據匯流排)連接到處理器核。通常,做一次乘法會發生4次存儲器訪問,用掉至少四個指令周期。

大多數DSP採用了哈佛結構,將存儲器空間劃分成兩個,分別存儲程序和數據。它們有兩組匯流排連接到處理器核,允許同時對它們進行訪問。這種安排將處理器存貯器的帶寬加倍,更重要的是同時為處理器核提供數據與指令。在這種布局下,DSP得以實現單周期的MAC指令。

還有一個問題,即現在典型的高性能GPP實際上已包含兩個片內高速緩存,一個是數據,一個是指令,它們直接連接到處理器核,以加快運行時的訪問速度。從物理上說,這種片內的雙存儲器和匯流排的結構幾乎與哈佛結構的一樣了。然而從邏輯上說,兩者還是有重要的區別。

GPP使用控制邏輯來決定哪些數據和指令字存儲在片內的高速緩存里,其程序員並不加以指定(也可能根本不知道)。與此相反,DSP使用多個片內存儲器和多組匯流排來保證每個指令周期內存儲器的多次訪問。在使用DSP時,程序員要明確地控制哪些數據和指令要存儲在片內存儲器中。程序員在寫程序時,必須保證處理器能夠有效地使用其雙匯流排。

此外,DSP處理器幾乎都不具備數據高速緩存。這是因為DSP的典型數據是數據流。也就是說,DSP處理器對每個數據樣本做計算後,就丟棄了,幾乎不再重復使用。

3 零開銷循環

如果了解到DSP演算法的一個共同的特點,即大多數的處理時間是花在執行較小的循環上,也就容易理解,為什麼大多數的DSP都有專門的硬體,用於零開銷循環。所謂零開銷循環是指處理器在執行循環時,不用花時間去檢查循環計數器的值、條件轉移到循環的頂部、將循環計數器減1。

與此相反,GPP的循環使用軟體來實現。某些高性能的GPP使用轉移預報硬體,幾乎達到與硬體支持的零開銷循環同樣的效果。

4 定點計算

大多數DSP使用定點計算,而不是使用浮點。雖然DSP的應用必須十分注意數字的精確,用浮點來做應該容易的多,但是對DSP來說,廉價也是非常重要的。定點機器比起相應的浮點機器來要便宜(而且更快)。為了不使用浮點機器而又保證數字的准確,DSP處理器在指令集和硬體方面都支持飽和計算、舍入和移位。

5 專門的定址方式

DSP處理器往往都支持專門的定址模式,它們對通常的信號處理操作和演算法是很有用的。例如,模塊(循環)定址(對實現數字濾波器延時線很有用)、位倒序定址(對FFT很有用)。這些非常專門的定址模式在GPP中是不常使用的,只有用軟體來實現。

6 執行時間的預測

大多數的DSP應用(如蜂窩電話和數據機)都是嚴格的實時應用,所有的處理必須在指定的時間內完成。這就要求程序員准確地確定每個樣本需要多少處理時間,或者,至少要知道,在最壞的情況下,需要多少時間。

如果打算用低成本的GPP去完成實時信號處理的任務,執行時間的預測大概不會成為什麼問題,應為低成本GPP具有相對直接的結構,比較容易預測執行時間。然而,大多數實時DSP應用所要求的處理能力是低成本GPP所不能提供的。

這時候,DSP對高性能GPP的優勢在於,即便是使用了高速緩存的DSP,哪些指令會放進去也是由程序員(而不是處理器)來決定的,因此很容易判斷指令是從高速緩存還是從存儲器中讀取。DSP一般不使用動態特性,如轉移預測和推理執行等。因此,由一段給定的代碼來預測所要求的執行時間是完全直截了當的。從而使程序員得以確定晶元的性能限制。

7 定點DSP指令集

定點DSP指令集是按兩個目標來設計的:

使處理器能夠在每個指令周期內完成多個操作,從而提高每個指令周期的計算效率。
將存貯DSP程序的存儲器空間減到最小(由於存儲器對整個系統的成本影響甚大,該問題在對成本敏感的DSP應用中尤為重要)。
為了實現這些目標,DSP處理器的指令集通常都允許程序員在一個指令內說明若干個並行的操作。例如,在一條指令包含了MAC操作,即同時的一個或兩個數據移動。在典型的例子里,一條指令就包含了計算FIR濾波器的一節所需要的所有操作。這種高效率付出的代價是,其指令集既不直觀,也不容易使用(與GPP的指令集相比)。

GPP的程序通常並不在意處理器的指令集是否容易使用,因為他們一般使用象C或C 等高級語言。而對於DSP的程序員來說,不幸的是主要的DSP應用程序都是用匯編語言寫的(至少部分是匯編語言優化的)。這里有兩個理由:首先,大多數廣泛使用的高級語言,例如C,並不適合於描述典型的DSP演算法。其次,DSP結構的復雜性,如多存儲器空間、多匯流排、不規則的指令集、高度專門化的硬體等,使得難於為其編寫高效率的編譯器。

即便用編譯器將C源代碼編譯成為DSP的匯編代碼,優化的任務仍然很重。典型的DSP應用都具有大量計算的要求,並有嚴格的開銷限制,使得程序的優化必不可少(至少是對程序的最關鍵部分)。因此,考慮選用DSP的一個關鍵因素是,是否存在足夠的能夠較好地適應DSP處理器指令集的程序員。

8 開發工具的要求

因為DSP應用要求高度優化的代碼,大多數DSP廠商都提供一些開發工具,以幫助程序員完成其優化工作。例如,大多數廠商都提供處理器的模擬工具,以准確地模擬每個指令周期內處理器的活動。無論對於確保實時操作還是代碼的優化,這些都是很有用的工具。

GPP廠商通常並不提供這樣的工具,主要是因為GPP程序員通常並不需要詳細到這一層的信息。GPP缺乏精確到指令周期的模擬工具,是DSP應用開發者所面臨的的大問題:由於幾乎不可能預測高性能GPP對於給定任務所需要的周期數,從而無法說明如何去改善代碼的性能。

DSP硬體結構的特點和軟體的特點
硬體結構的特點

1 Harvard結構

程序與數據存儲空間分開,各有獨立的地址匯流排和數據匯流排,取指和讀數可以同時進行,從而提高速度,目前的水平已達到90億次浮點運算/秒(9000MFLOPS)

2 採用流水作業(pipline)

3 獨立的硬體乘法器

乘法指令在單周期內完成,優化卷積、數字濾波、FFT、相關、矩陣運算等演算法中的大量重復乘法

4 循環定址(Circular addressing),位倒序(bit-reversed)等特殊指令

使FFT、卷積等運算中的定址、排序及計算速度大大提高。1024點FFT的時間已小於1μs

5 獨立的DMA匯流排和控制器

有一組或多組獨立的DMA匯流排,與CPU的程序、數據匯流排並行工作,在不影響CPU工作的條件下,DMA速度已達800Mbyte/s以上

6 多處理器介面

使多個處理器可以很方便的並行或串列工作以提高處理速度

7 JTAG(Joint Test Action Group)標准測試介面(IEEE 1149標准介面)

便於對DSP作片上的在線模擬和多DSP條件下的調試

軟體的特點
1 立即數定址

2 直接定址

TI公司的TMS320系列晶元將數據存儲器分為512頁,每頁128字。設置一個數據頁指針DP(Data Pointer),用9-bit指向一個數據頁,再加上一個7-bit的頁內偏移地址,形成16-bit的數據地址。這樣有利於大大加快定址速度。

3 間接定址

8個輔助寄存器(AR0--AR7),由一個輔助寄存器指針(ARP 3-bit)來指定一個輔助寄存器算術單元(ARAU)作16-bit無符號數運算,決定一個新的地址,裝入輔助寄存器中的一個

AR0--AR7的內容相當靈活,可以裝入立即數,加上立即數,減去立即數;也可以從數據存儲器裝入地址;還可以作以下的變址定址:

將該AR的內容加1或減1,再定址(循環常用)
將該AR的內容加上或減去AR0的內容,再定址
將該AR的內容逆向進位加上或減去AR0的內容,再定址

由於採用反向進位,得以實現位倒序定址

原序 原地址 位倒序後地址 位倒序
0 000 000 0
1 001 100 4
2 010 010 2
3 011 110 6
4 100 001 1
5 101 101 5
6 110 011 3
7 111 111 7
例:MAC X0,Y0,A X:(R0) ,X0 Y:(R4) N4,Y0
這條指令命令DSP56300:

將寄存器X0和Y0中的數相乘
結果加到Acc A中
將寄存器R0所指的X存儲器地址中的值裝入寄存器X0
將寄存器R4所指的Y存儲器地址中的值裝入寄存器Y0 R0的值加1
寄存器N4的值加給R4

可以看到,運算後的次序符合FFT的蝶形運算的要求

採用循環定址實現零開銷的循環,大大增進了如卷積、相關、矩陣運算、FIR等演算法的實現速度

4 獨特的乘法指令

DSP開發工具
1 代碼生成工具

C 優化編譯器

匯編語言工具
匯編器(Assembler)
連接器(Linker)
歸檔器(Archiver)
交叉引用列表器(Cross-Reference Lister)
2 系統集成及調試環境與工具(以TI為例)

調試器介面(C/Assembly source debugger)

為嵌入式系統的開發提供了豐富的功能與靈活性。該調試器是下面要討論的軟模擬器、評估模塊、在線模擬器等的標准介面。

該調試器可以運行在PC或SPARC等平台上,對用C 或匯編語言寫的程序提供完全的控制。其代碼分析功能通過快速確認最費時的程序段,提示應該將開發時間集中在什麼地方

軟模擬器(Simulator)
TMS320軟體模擬器是一個軟體程序,使用主機的處理器和存儲器來模擬TMS320 DSP的微處理器和微計算機模式,從而進行軟體開發和非實時的程序驗證。在PC機上,典型的模擬速度為每秒幾百條指令

DSP入門套件(DSK,DSP Starter Kit)
為初學者設計和生產的DSK是一種用以評價DSP平台的廉價的開發工具。在PC機的DOS或Windows下,用戶可以使用DSK來作DSP的實驗,進行諸如控制系統、語音處理等應用;也可以用來編寫和運行實時源代碼,並對其作評估;還可以用來調試用戶自己的系統

銀杏開發、實驗系統(DES,Dsp Expirement System)
銀杏DES含有TMS320C542-40及相關介面,還特別內置了信號源,附帶虛擬示波器和頻譜儀軟體。採用這套系統使用戶對外設的依賴降到最低,僅僅需要一張卡和一套軟體就可以進行DSP的開發或實驗。

標准評估模塊(EVM)
TMS320的評估模塊(EVM)是廉價的開發板,用於器件評估、標准程序檢查、以及有限的系統調試。EVM是一個PC插件,包括目標處理器、一個小容量的存儲器、和有限的外設。EVM可以用來實時運行代碼,並與外部系統介面

TMS320硬體模擬器(Emulators)

擴展開發系統(XDS,extended development system)是功能強大的全速模擬器,用以作系統級的集成與調試。

掃描式模擬(Scan-Based Emulator)是一種獨特的、非插入式的系統模擬、集成、調試方法。使用這種方法,程序可以從片內或片外的目標存儲器實時執行,在任何時鍾速度下都不會引入額外的等待狀態

3 實時操作系統

對於簡單的DSP任務,用前面介紹的開發工具已能滿足開發任務的需要,往往不需要操作系統就可以進行。但當DSP的任務增加和任務的復雜性提高,例如對實時性要求很高的多DSP並行操作的多任務系統,可能就需要某種操作系統來管理系統的資源,安排多任務的執行和任務間的信息交換等

DSP的操作系統SPOX
SPOX是專為DSP系統設計和軟體開發而設計的實時多任務操作系統。它提供一組由C語言調用的功能,與所開發的硬體平台無關,從而將DSP的實時應用部分從許多低層的硬體細節中隔離出來。它作為DSP實時應用開發的一個集成環境,完成從新的演算法概念出發,直到把應用軟體裝入產品硬體的整個開發任務

DSP晶元介紹
1 什麼是DSP晶元
DSP晶元,也稱數字信號處理器,是一種具有特殊結構的微處理器。DSP晶元的內部採用程序和數據分開的哈佛結構,具有專門的硬體乘法器,廣泛採用流水線操作,提供特殊的DSP 指令,可以用來快速地實現各種數字信號處理演算法。根據數字信號處理的要求,DSP晶元一般具有如下的一些主要特點:

(1) 在一個指令周期內可完成一次乘法和一次加法。

(2) 程序和數據空間分開,可以同時訪問指令和數據。

(3) 片內具有快速RAM,通常可通過獨立的數據匯流排在兩塊中同時訪問。

(4) 具有低開銷或無開銷循環及跳轉的硬體支持。

(5) 快速的中斷處理和硬體I/O支持。

(6) 具有在單周期內操作的多個硬體地址產生器。

(7) 可以並行執行多個操作。

(8) 支持流水線操作,使取指、解碼和執行等操作可以重疊執行。

與通用微處理器相比,DSP晶元的其他通用功能相對較弱些。

2 DSP晶元的發展

世界上第一個單片DSP晶元是1978年AMI公司宣布的S2811,1979年美國Iintel公司發布的商用可編程期間2920是DSP晶元的一個主要里程碑。這兩種晶元內部都沒有現代DSP晶元所必須的單周期晶元。 1980年。日本NEC公司推出的μPD7720是第一個具有乘法器的商用DSP 晶元。第一個採用CMOS工藝生產浮點DSP晶元的是日本的Hitachi 公司,它於1982年推出了浮點DSP晶元。1983年,日本的Fujitsu公司推出的MB8764,其指令周期為120ns ,且具有雙內部匯流排,從而處理的吞吐量發生了一個大的飛躍。而第一個高性能的浮點DSP晶元應是AT

⑶ dsp中的FFT是如何實現信號的倒序輸入

DSP處理器與通用處理器的比較

考慮一個數字信號處理的實例,比如有限沖擊響應濾波器(FIR)。用數學語言來說,FIR濾波器是做一系列的點積。取一個輸入量和一個序數向量,在系數和輸入樣本的滑動窗口間作乘法,然後將所有的乘積加起來,形成一個輸出樣本。

類似的運算在數字信號處理過程中大量地重復發生,使得為此設計的器件必須提供專門的支持,促成了了DSP器件與通用處理器(GPP)的分流:

1 對密集的乘法運算的支持

GPP不是設計來做密集乘法任務的,即使是一些現代的GPP,也要求多個指令周期來做一次乘法。而DSP處理器使用專門的硬體來實現單周期乘法。DSP處理器還增加了累加器寄存器來處理多個乘積的和。累加器寄存器通常比其他寄存器寬,增加稱為結果bits的額外bits來避免溢出。
同時,為了充分體現專門的乘法-累加硬體的好處,幾乎所有的DSP的指令集都包含有顯式的MAC指令。

2 存儲器結構

傳統上,GPP使用馮.諾依曼存儲器結構。這種結構中,只有一個存儲器空間通過一組匯流排(一個地址匯流排和一個數據匯流排)連接到處理器核。通常,做一次乘法會發生4次存儲器訪問,用掉至少四個指令周期。

大多數DSP採用了哈佛結構,將存儲器空間劃分成兩個,分別存儲程序和數據。它們有兩組匯流排連接到處理器核,允許同時對它們進行訪問。這種安排將處理器存貯器的帶寬加倍,更重要的是同時為處理器核提供數據與指令。在這種布局下,DSP得以實現單周期的MAC指令。

還有一個問題,即現在典型的高性能GPP實際上已包含兩個片內高速緩存,一個是數據,一個是指令,它們直接連接到處理器核,以加快運行時的訪問速度。從物理上說,這種片內的雙存儲器和匯流排的結構幾乎與哈佛結構的一樣了。然而從邏輯上說,兩者還是有重要的區別。

GPP使用控制邏輯來決定哪些數據和指令字存儲在片內的高速緩存里,其程序員並不加以指定(也可能根本不知道)。與此相反,DSP使用多個片內存儲器和多組匯流排來保證每個指令周期內存儲器的多次訪問。在使用DSP時,程序員要明確地控制哪些數據和指令要存儲在片內存儲器中。程序員在寫程序時,必須保證處理器能夠有效地使用其雙匯流排。

此外,DSP處理器幾乎都不具備數據高速緩存。這是因為DSP的典型數據是數據流。也就是說,DSP處理器對每個數據樣本做計算後,就丟棄了,幾乎不再重復使用。

3 零開銷循環

如果了解到DSP演算法的一個共同的特點,即大多數的處理時間是花在執行較小的循環上,也就容易理解,為什麼大多數的DSP都有專門的硬體,用於零開銷循環。所謂零開銷循環是指處理器在執行循環時,不用花時間去檢查循環計數器的值、條件轉移到循環的頂部、將循環計數器減1。

與此相反,GPP的循環使用軟體來實現。某些高性能的GPP使用轉移預報硬體,幾乎達到與硬體支持的零開銷循環同樣的效果。

4 定點計算

大多數DSP使用定點計算,而不是使用浮點。雖然DSP的應用必須十分注意數字的精確,用浮點來做應該容易的多,但是對DSP來說,廉價也是非常重要的。定點機器比起相應的浮點機器來要便宜(而且更快)。為了不使用浮點機器而又保證數字的准確,DSP處理器在指令集和硬體方面都支持飽和計算、舍入和移位。

5 專門的定址方式

DSP處理器往往都支持專門的定址模式,它們對通常的信號處理操作和演算法是很有用的。例如,模塊(循環)定址(對實現數字濾波器延時線很有用)、位倒序定址(對FFT很有用)。這些非常專門的定址模式在GPP中是不常使用的,只有用軟體來實現。

6 執行時間的預測

大多數的DSP應用(如蜂窩電話和數據機)都是嚴格的實時應用,所有的處理必須在指定的時間內完成。這就要求程序員准確地確定每個樣本需要多少處理時間,或者,至少要知道,在最壞的情況下,需要多少時間。

如果打算用低成本的GPP去完成實時信號處理的任務,執行時間的預測大概不會成為什麼問題,應為低成本GPP具有相對直接的結構,比較容易預測執行時間。然而,大多數實時DSP應用所要求的處理能力是低成本GPP所不能提供的。

這時候,DSP對高性能GPP的優勢在於,即便是使用了高速緩存的DSP,哪些指令會放進去也是由程序員(而不是處理器)來決定的,因此很容易判斷指令是從高速緩存還是從存儲器中讀取。DSP一般不使用動態特性,如轉移預測和推理執行等。因此,由一段給定的代碼來預測所要求的執行時間是完全直截了當的。從而使程序員得以確定晶元的性能限制。