基于C6000系列DSP的MPEG-4編碼器實(shí)現(xiàn)
PC與編碼卡通信可以通過(guò)并口、串口、USB口、PCI接口等方式實(shí)現(xiàn)。其中PCI接口方式易于PC與編碼器高速傳輸數(shù)據(jù),因此本文采用PCI接口。編碼后的數(shù)據(jù)通過(guò)DSP的HPI、PCI橋芯片、PCI總線到達(dá)PC。PC通過(guò)DSP的HPI直接對(duì)DSP的存儲(chǔ)空間進(jìn)行訪問(wèn)。HPI有兩種工作方式:一種是單數(shù)據(jù)讀寫(xiě),這種方式每次只能讀寫(xiě)一個(gè)數(shù)據(jù),一般主機(jī)對(duì)編碼參數(shù)進(jìn)行設(shè)置,例如設(shè)置圖像大小、幀率等;另一種是burst方式的數(shù)據(jù)讀寫(xiě),在這種方式下只需要指定初始訪問(wèn)地址,然后以地址自加的方式訪問(wèn)DSP的存儲(chǔ)空間,這種訪問(wèn)方式不需要DSP的CPU參與。圖2中CPLD完成PCI橋芯片與DSP之間的訪問(wèn)控制,DSP、PCI的中斷控制等功能。
3 MPEG-4編碼卡的軟件設(shè)計(jì)
C6000系列DSP提供的編譯環(huán)境支持C++、C以及匯編語(yǔ)言,用C++設(shè)計(jì)的程序執(zhí)行效率較低,一般不用;大多數(shù)都采用C語(yǔ)言和匯編語(yǔ)言相結(jié)合的方式來(lái)完成DSP程序設(shè)計(jì)。DSP程序設(shè)計(jì)流程如下:先寫(xiě)出C代碼并對(duì)其優(yōu)化,如果不能達(dá)到預(yù)期的運(yùn)行效率,則編寫(xiě)匯編代碼來(lái)提高效率。對(duì)于MPEG-4這樣復(fù)雜的算法,只運(yùn)用C語(yǔ)言是遠(yuǎn)遠(yuǎn)不夠的,在本設(shè)計(jì)里大部分代碼都由匯編語(yǔ)言完成。
·每一個(gè)指令包可以包括多條操作指令,在C6000系列DSP中每一條指令包括八條32位操作指令;
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開(kāi)關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論