資料介紹
近幾年來,Analog Devices公司的ADSP系列數字信號處理器以其優異的性能和簡單易學的語言逐漸受到人們的青睞,其中的ADSP218X定點系列更是得到廣泛的應用。ADSP2189片內有192KB的RAM,因此更多地應用于圖像領域。本文就圖像處理壓縮過程中常用到的算法及其在ADSP2189上的實現進行了分析,如何充分利用ADSP系列數字信號處理器特殊的硬件結構和功能強大的指令集實現各種算法是本文討論的重點。然而作為通用定點處理器,處理過程中如何避免可能出現的問題以及如何解決問題也是本文所要討論的。
1 ADSP2189及EZ-KIT簡介
ADSP2189是指令執行速度最高可達75MIPS的16位定點數字信號處理器,主要具有以下特點:單周期指令執行,片內的程序控制器不會附加循環和條件指令的執行周期;三總線的體系結構允許在單指令周期中進行雙操作數傳遞;片內192KB的存儲器可被配置成32K×24bit的程序區(PM Program Memory)和48K×16bit的數據區(DM: Data Memory),而PM中還可同時存放數據。除了具有優異的計算能力外,ADSP2189還具有強大的系統接口:8位的BDMA端口尋址可達4MB,用來提供片內外存儲器的高速存??;16位的IDMA(Internal Direct Memory Access)端口可實現主系統對片內存儲器的高速存??;2048個I/O地址,支持并行的外設;兩個雙緩沖串口,帶自動壓擴。
ADSP-2189M EZ-KIT Lite是一塊可用來演示驗證DSP基本算法的仿真板,也是本文所有算法的測試平臺。它主要由以下器件組成:
·ADSP-2189M 75 MIPS DSP
·AD73322立體聲編譯碼器
·RS-232接口
·FLASH存儲器
EZ-KIT Lite的FLASH存儲器中帶有監控程序,這段程序可完成仿真板與PC機間的串行通信,并允許用戶下載、執行和調試ADSP2189程序。EZ-KIT Lite可與EZ-ICE仿真器相連,通過EZ-ICE仿真器,用戶可以單步執行程序、觀察和改變寄存器和內存值以及完成其它調試工作[1]。
2 模板運算
在圖像處理時,模板運算有著廣泛的應用。例如,在邊沿檢測時,通過將像素矩陣與邊沿檢測矩陣即模板相卷積來實現檢測功能;在圖像平滑時,通過模板運算來濾除噪聲。模板運算的數學涵義就是卷積(或互相關)運算[2],它是一項非常耗時的運算。以模板1/16[1 2 1 2 4 2 1 2 1]為例,每個像素完成一次模板操作要用9個乘法、8個加法和1個除法。對于一幅N×N的圖像,就是9N2個乘法,8N2個加法和N2個除法,算法復雜度為0(N2)。一幅較大的圖像計算量是很大的,所以很多專用的圖像處理系統,用硬件來完成模板運算,這樣可以大大提高速度。在ADSP2189上快速實現模板運算需要充分利用ADSP2189的結構特點和功能強大的指令集。由于ADSP的哈佛結構允許同時訪問程序和數據存儲器,而ADSP的多功能指令(Multifunction Instructions)在執行算術操作的同時還可以并行進行數據傳輸,因此在單周期內可以完成取指、譯碼、讀數、執行和調整寄存器。例如,MR=MR+MX0*MY0(SS)、MX0=DM(I0,M0)、MY0=PM(I4,M4),MX0和MY0分別從數據和程序存儲區以間接尋址方式取得操作數相乘,乘積與結果寄存器中數值相加后放回結果寄存器,數值計算的同時地址指針寄存器I0、I4中的地址自動與調整寄存器中M值進行相加更新。雖然ADSP2189支持除法指令,但為了提高速度,可在程序中將除法改為乘以除數的倒數。另外,在程序中將2維模板運算轉換成1維模板運算,可極大地降低運算量。需要注意的是,由于ADSP2189中CNTR寄存器為14bit,所以在單循環處理中輸入像素個數必須小于16383。模板運算程序的流程如圖1所示。
以3×3模板為例,通過在Visual DSP環境下設置PROFILE選項,可以得到以下結論:對于一個100×100的數組,完成模板運算共需要96445個指令周期;對于一個640×480的數組,共需要3052205個指令周期,遠遠低于直接計算。
3 DCT變換
許多圖像壓縮算法采用DCT(Discrete Cosine Transform,即離散余弦變換)來消除像素間冗余,例如JPEG 、H.261以及MPEG。采用DCT是因為它具有以下優點:DCT不同于DFT(Discrete Fourier Transform,即離散傅立葉變換),它屬于實域運算;DCT變換矩陣的基向量很接近于托波列茲矩陣的特征向量,所得變換系數具有弱相關性,可以單獨處理各系數而不損失壓縮效率。
1 ADSP2189及EZ-KIT簡介
ADSP2189是指令執行速度最高可達75MIPS的16位定點數字信號處理器,主要具有以下特點:單周期指令執行,片內的程序控制器不會附加循環和條件指令的執行周期;三總線的體系結構允許在單指令周期中進行雙操作數傳遞;片內192KB的存儲器可被配置成32K×24bit的程序區(PM Program Memory)和48K×16bit的數據區(DM: Data Memory),而PM中還可同時存放數據。除了具有優異的計算能力外,ADSP2189還具有強大的系統接口:8位的BDMA端口尋址可達4MB,用來提供片內外存儲器的高速存??;16位的IDMA(Internal Direct Memory Access)端口可實現主系統對片內存儲器的高速存??;2048個I/O地址,支持并行的外設;兩個雙緩沖串口,帶自動壓擴。
ADSP-2189M EZ-KIT Lite是一塊可用來演示驗證DSP基本算法的仿真板,也是本文所有算法的測試平臺。它主要由以下器件組成:
·ADSP-2189M 75 MIPS DSP
·AD73322立體聲編譯碼器
·RS-232接口
·FLASH存儲器
EZ-KIT Lite的FLASH存儲器中帶有監控程序,這段程序可完成仿真板與PC機間的串行通信,并允許用戶下載、執行和調試ADSP2189程序。EZ-KIT Lite可與EZ-ICE仿真器相連,通過EZ-ICE仿真器,用戶可以單步執行程序、觀察和改變寄存器和內存值以及完成其它調試工作[1]。
2 模板運算
在圖像處理時,模板運算有著廣泛的應用。例如,在邊沿檢測時,通過將像素矩陣與邊沿檢測矩陣即模板相卷積來實現檢測功能;在圖像平滑時,通過模板運算來濾除噪聲。模板運算的數學涵義就是卷積(或互相關)運算[2],它是一項非常耗時的運算。以模板1/16[1 2 1 2 4 2 1 2 1]為例,每個像素完成一次模板操作要用9個乘法、8個加法和1個除法。對于一幅N×N的圖像,就是9N2個乘法,8N2個加法和N2個除法,算法復雜度為0(N2)。一幅較大的圖像計算量是很大的,所以很多專用的圖像處理系統,用硬件來完成模板運算,這樣可以大大提高速度。在ADSP2189上快速實現模板運算需要充分利用ADSP2189的結構特點和功能強大的指令集。由于ADSP的哈佛結構允許同時訪問程序和數據存儲器,而ADSP的多功能指令(Multifunction Instructions)在執行算術操作的同時還可以并行進行數據傳輸,因此在單周期內可以完成取指、譯碼、讀數、執行和調整寄存器。例如,MR=MR+MX0*MY0(SS)、MX0=DM(I0,M0)、MY0=PM(I4,M4),MX0和MY0分別從數據和程序存儲區以間接尋址方式取得操作數相乘,乘積與結果寄存器中數值相加后放回結果寄存器,數值計算的同時地址指針寄存器I0、I4中的地址自動與調整寄存器中M值進行相加更新。雖然ADSP2189支持除法指令,但為了提高速度,可在程序中將除法改為乘以除數的倒數。另外,在程序中將2維模板運算轉換成1維模板運算,可極大地降低運算量。需要注意的是,由于ADSP2189中CNTR寄存器為14bit,所以在單循環處理中輸入像素個數必須小于16383。模板運算程序的流程如圖1所示。
以3×3模板為例,通過在Visual DSP環境下設置PROFILE選項,可以得到以下結論:對于一個100×100的數組,完成模板運算共需要96445個指令周期;對于一個640×480的數組,共需要3052205個指令周期,遠遠低于直接計算。
3 DCT變換
許多圖像壓縮算法采用DCT(Discrete Cosine Transform,即離散余弦變換)來消除像素間冗余,例如JPEG 、H.261以及MPEG。采用DCT是因為它具有以下優點:DCT不同于DFT(Discrete Fourier Transform,即離散傅立葉變換),它屬于實域運算;DCT變換矩陣的基向量很接近于托波列茲矩陣的特征向量,所得變換系數具有弱相關性,可以單獨處理各系數而不損失壓縮效率。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- EE-115:ADSP-2189 IDMA接口,連接Motorola MC68300微處理器系列
- EE-115:與摩托羅拉MC68300系列微處理器的ADSP-2189 IDMA接口
- ADSP-2189M EZ-KIT Lite<sup>?</sup>評估系統手冊
- ADSP-2189M版本0.0-0.4的異常列表 0次下載
- ADSP-2189M:DSP微機數據表
- 基于圖像增強和神經網絡的腦部CT與MRI圖像融合 5次下載
- 基于模板、檢索和深度學習的圖像描述生成方法 12次下載
- ADSP-2189M EZ-KIT立體設計數據ase
- 結合多尺度邊緣保持分解與PCNN的圖像融合方法 16次下載
- 基于內容的圖像分割方法綜述 2次下載
- 5灰度圖像偽彩處理 0次下載
- 圖像恢復的實現方法研究 26次下載
- 用FPGA實現共軛變換圖像處理方法 56次下載
- 基于ADSP21060和Virtex II的圖像處理系統設計
- 圖像質量評價方法研究進展
- 圖像處理之預處理方法 1122次閱讀
- 如何使用機器學習處理圖像 737次閱讀
- 圖像處理常用算法總結 1082次閱讀
- 淺談區域車輛架構中音頻和無線電處理 833次閱讀
- 常見的圖像預處理方法 2.5w次閱讀
- 基于計算機的圖像處理方法 4805次閱讀
- Python中最常用十大圖像處理庫詳細介紹 2.1w次閱讀
- 最基礎的圖像處理常用算法 3261次閱讀
- 探析數字圖像處理常用的方法 5268次閱讀
- 基于圖像處理的水表檢定方法和裝置及系統 1360次閱讀
- 基于AIS系統中2189M的硬件設計 2423次閱讀
- 圖像處理之動態范圍擴展定義與方法 1.1w次閱讀
- 模糊圖像處理解決方案 1.1w次閱讀
- ADSP21160實現數字信號處理系統 2460次閱讀
- ADSP2189M在船舶自動識別系統開發中的應用 1408次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多