国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

TM1300嵌入式多媒體網絡通信系統的設計與實現

發布時間:2010-11-16 15:45    發布者:eetech
提出了一種利用TriMedia嵌入式微處理器TM1300為CPU的多媒體網絡系統的整體硬件設計方案。介紹了利用設備庫和BSP分層概念在系統中音視頻外設編程的應用,重點介紹基于pSOS實時操作系統網絡部件pNA+的網絡驅動程序的基本設計方案及網絡編程模型。

多媒體技術與網絡技術的有機結合滿足信息化社會人們對各種信息的大量需求。網絡多媒體技術的迅速發展,加速了多種網絡多媒體技術的應用,如:視頻會議系統、數字視頻監控系統、多媒體電子郵件、視頻點播(VOD)、遠程多媒體數據庫等。  

隨著微處理器技術的發展和嵌入式操作系統的日益廣泛的應用,嵌入式系統以其高速響應、高度自動化、功能易于擴展等獨特優勢已成為計算機工業新的增長熱點。而且,嵌入式設備接入Internt已經成為不可避免的趨勢,并顯示出美好的應用前景。嵌入式系統在多媒體通信應用領域同樣得到了很好的應用,各種基于嵌入式Internet技術的頻服務器、多媒體遠程監控系統已經成功應用于多種場合。  

本文論述一種具有網絡通信和多媒體處理功能的嵌入式系統的設計實現方法。  

1 系統總體框架設計  

基本的多媒體通信系統一般應該具有各種音視頻輸入輸出設備,并具有高速網絡通信功能。本系統采用Philips公司TriMedia系列的TM1300媒體處理器作為主核來構造。其系統設計的各個功能模塊如圖1所示。





1.1 TM1300媒體處理器簡介及其系統設計特點  

TM1300是一種具高質量數字視頻和音頻應用處理能力的媒體處理器。它擁有接線員大的超長指令字(VLIW)核DSP CPU,獨立于DSP CPU的DMA方式工作的音視頻輸入輸出接口,32位高帶寬數據總線將所有的片上模塊單元連接,如PCI、SDRAM、圖像協處理器(ICP)等,使數據處理極為快速方便。另外,其強大的面向多媒體應用的指令系統和豐富的庫函數使開發者能快速完成軟件編程。  

TM1300的PCI/XIO接口控制和復用邏輯使其可以用于為PC機環境設計的PCI音視頻處理加速卡,也可以用于獨立工作的嵌入式系統。在系統設計中,既可以訪問PCI外設,如PCI網絡接口芯片,又可以訪問各種8位外設,如ROM、8位MCU、程序存儲器Flash Memory等。  

1.2 系統框圖說明及芯片典型選型  

本系統是一種嵌入式系統,它能完成視頻和音頻數據的采集與輸出功能,并能通過高速網絡傳遞壓縮編碼后的音視頻數據流。TM1300具有強大的多媒體數據處理能力,它在系統中可以完成音視頻數據的壓縮編碼或解碼,同時處理網絡數據的收發,并可以通過pSOS實時操作系統協調和調度整個系統的任務,從而形成強大的多媒體音視頻數據處理和傳輸系統。  

當然,本系統框圖僅旨在一般意義上的系統,在實際應用中可以按照具體要求裁剪或添加其他外設,如UART控制器、Modem控制器模塊等,使系統具有用戶特定的功能。  

(1)TM1300的視頻輸入接口提供8~10位視頻A/D轉換接口,其最高采樣率可以達81MHz。可以采用Philips公司SAA7113、SAA7114等視頻解碼芯片(Video Decoder)來完成系統各種格式的視頻信號采集。  

(2)視頻輸出接口提供8位的視頻數據輸出口,可以完成解碼后的視頻數據輸出,可以采用Philips公司的視頻編碼芯片(Video Encoder)完成視頻數據的D/A轉換。  

(3)音頻信號采集和輸出的數據都是通過TM1300的標準I2C總線接口來傳輸的。可以用Philips公司的UDA1344音頻編解碼器(Audio Codec)完成音頻數據的A/D和D/A轉換。  

(4)基于網絡接口芯片可以采用常用的Realtek公司的RTL8139C,它是具有10/100Mbps自適應功能的以太網收發控制器,是目前應用最為廣泛的一種網絡接口芯片。設計時,應為其配置啟動EEPROM,如93LC46、93LC56等。



  
(5)啟動EEPROM一般使用符合I2C的器件,如24LC16、24LC32等。因為除了要存放系統啟動設置信息外,還要存放用于系統自舉L1代碼,EEPROM不得小于2K字節空間。EEPROM具體內容格式參照TM1300芯片資料文檔。  

特別值得注意,設計本系統PCI總線與設計PCI卡時不同的是,TM1300使用PCI總線訪問時總線仲裁需仲裁器。這是因為在基于PC機主板和PCI橋接芯片上已經有總線仲裁邏輯,不需要另外再作處理。嵌入的TM1300系統則需要仲裁來處理PCI總線的請求和應答,具體的邏輯設計應參考PCI規范相關內容。另外,嵌入式系統需要通過JTAG口進行調試和仿真,并要在系統中加入程序代碼存儲器Boot Flash。  

2 音視頻外設編程的分層模型及應用  

系統中的視頻A/D、D/A芯片單元通常連接在TM1300的I2C總線上,其初始化和設置是通過I2C總線訪問其內部寄存器實現,音頻處理芯片則通過I2C接口總線與TM1300連接。TM1300正是通過這些總線對其進行初始化設置。  

在軟件上,TriMedia層次化軟件架構TSA引入設備庫層(Device Library Layer)概念,該層為板級庫到應用程序之間提供了一個公共接口。設備庫輸出兩個接口,其架構由圖2所示。  

在設備庫中,基本的API調用函數和功能描述在表1中給出。


表1 設備庫API  

函數名

功能說明  

devGetCapabilities
設備兼容性請求,如版本、數據格式等

devOpen
請求設備實例

devInstanceSetup
設備實例設置

devStart
開始運行當前設備實例

devStop
停止運行當前設備實例

devClose
釋放當前設備實例

例如,視頻輸出的設備庫函數有voCapabilities、voOpen、voInstanceSetup等。在TriMedia的軟件開發環境TriMedia SDE 2.2對音視頻等設備庫函數都有定義,因此使用時只需加入相應的頭文件即可。  

TriMedia軟件架構中,設備庫由板級歡欣鼓舞。板級庫以板級支持包(BSP)的形式實現,BSP函數由設備庫調用,它負責完成對硬件設備的所有初始化設備,高層軟件不必深入到底層硬件設備細節就能完成對音視頻等硬件設備的編程。BSP允許設計者對底層的接口硬件設備(如Audio D/A)改動,而不必改動該設備的上層編程。如要使用AD1847作為音頻A/D、D/A設備,僅需要修改該部分的BSP即可。  

在TriMedia SDE2.2中已經附帶很多典型器件的BSP,如SAA7113、SAA7121、UDA1344等。開發音視頻應用程序時,只需要調用設備庫API、設置好數據緩沖區指針、指定相應的斷服務程序來處理音視頻設備接口到主存儲器SDRAM的數據傳遞即可。用戶也可以根據具體硬件自己開發BSP。  

3 面向pSOS網絡驅動設計與網絡編程模型  

網絡設備的驅動程序,按照網絡協議棧分層概念,在這其將其稱為網絡接口(Network Interface,簡稱NI),其主要功能是其將最底層的物理網絡細節和上層應用程序隔離開,編程時用考慮網絡硬件、網絡傳輸介質和網絡拓撲等。  

在TriMedia軟件架構中,可以將網絡驅動設計成pSOS網絡部件pNA+訪問網絡接口。這樣設計的優點是:上層軟件可以使用pSOS系統的pNA+軟件部件豐富的系統調用函數,這些函數不但可以操作網絡接口,而且可以操作套節字(Socket)進行高級TCP/IP網絡編程,而不需用軟件來實現TCP/IP協議棧。


  
本節內容旨在論述基本pNA+部件的網絡接口設計和網絡編程的基本概念模型,對其中存儲配置管理沒有作很多具體介紹。論述時按照由底層到高層的順序進行。  

3.1 pSOS簡介及TriMedia SDE對pSOS的支持  

pSOS系統是一個模塊化、高性能的實時操作系統,它提供了一個基于開放系統標準的多任務環境。PSOS系統采用模塊化結構,圍繞pSOS實時多任務內核,集成了基于標準結構的各種功能模塊。其系統架構主要由實時多內核pSOS+、多任務及多處理器的內核pSOS+m、TCP/IP管理部件pNA+、遠程過程調用部件pRPC+、文件系統管理部件pHILE+、ANSI C標準庫部件pRPEC+等組成。  

TriMedia在得到pSOS系統開發商集成系統公司(IIS)許可權的前提下,已經對pSOS進行了移植和標準化,并在TriMedia SDE中發布,因此使用時不需要獨立安裝。在TriMedia軟件架構中,pSOS也是通過庫鏈接到應用程序中。pSOS內核的配置通過包含頭文件(sys_conf.h)的形式來完成,頭文件和內核編譯后形成pSOS板級支持包,即pSOS BSP。  

3.2 在系統中設計面向pNA+服務的網絡接口  

網絡接口提供pNA對網絡的訪問,并將其與物理網絡隔離開來。一個pNA+節點可以連接一到多個網絡接口,每個網絡接口都分配獨立的IP地址和接口號。  

在設計時,網絡接口須為pNA+提供7種不同的網絡接口功能調用,在表2中將其列出。


表2 網絡接口功能  

服  務
功能號

功能描述  

NI_INIT
1
初始化網絡接口

NI_GETPKB
2
分配網絡接口包緩沖區

NI_RETPKB
3
返回網絡接口包緩沖區

NI_SEND
4
網絡接口發送包

NI_BROADCAST
5
網絡接口廣播包

NI_POLL
6
查詢包收發及緩沖區狀態

NI_IOCTL
7
執行I/O控制

(1)幾種接口功能詳細說明  

NI_INIT:在pNA+初始化時,自動調用該功能,也可以通過pNA+的系統調用add_ni()來激活該功能。在NI_INIT中初始化網絡硬件、包緩沖池,設置網絡接口的中斷服務程序入口,并保存pNA+傳遞的Announce_Packet入口參數(包接收通知處理函數入口)及一些其他網絡接口參數;  
NI_POLL:該功能用來查詢網絡是否有接收包,當有接收包時,它通過Announce_Packet入口點將包傳遞到pNA+;  
NI_IOCTL:該功能通過pNA+傳遞的不同命令執行網絡的I/O控制操作,主要有調協IP地址、多播主機地址的增加、刪除等。  
另外幾個接口功能不再詳細介紹。  

(2)網絡接口功能調用接口主函數NIMain設計  

上述各種網絡接口功能通過一個接口主函數調用,它提供pNA+和網絡接口之間功能調用的接口。  

調用時,pNA+必須為NIMain函數提供兩個參數:一個整型的功能號;一個定義為nientry聯合體指針的網絡接口參數。其中nientry是由niinit、nigetpkb…niioctl等結構體構成的聯合,分別對應上述各功能的參數結構。所以,NIMain函數的一般形式:  

long NIMain(int function,union nientry *p)  
{/*注:NI_INIT到NI_OCTL常數及本文所用到各種數據結構及系統函數在TriMedia SDE pSOS頭文件pna.h中定義*/  
int rc;  
switch(function)  
{ /*NI_INIT調用處理*/  
/*網絡芯片及緩沖區初始化,記錄網絡接口號...*/  
Lan_chip_Init();InitBuffer();  
number=p->niinit.if_num;  
ni_init(); …  
case NI_GETPKB:… /*NI_GETPKB調用處理*/  
case NI_RETPKB:… /*NI_RETPKB調用處理*/  
case NI_SEND:… /*NI_SEND調用處理*/  
case NI_BROADCASE:… /*NI_BROADCAST調用處理*/  
case NI_POLL: /*NI_POLL調用處理*/  
case NI_IOCTL:… /*NI_IOCTL調用處理*/  
default:… /*返回錯誤代碼*/  
}  
return rc;  
}  

可以看出,pNA+在調用網絡接口功能時,只需傳遞參數指針,其具體動作都是由NIMain函數完成,NIMain起到了隔離網絡底怪和pNA+的作用。  

(3)pSOS系統中加入網絡接口的方法  

在pSOS系統添加網絡接口增添其它的設備驅動程序類似,采用InstallNi函數完成。其函數定義格式如下面程序片段所示:  

struct ni_init *pna_Init; /*用于傳入pNA+配置表的nc_nni字段*/  
void InstallNi (int (*entry)(),int ipadd,int mtu,int hwalen,  
int flags,int subnetaddr,int dstipaddr)  
{  
pna_Init ->entry=(int (*)())entry;/*NI接口函數入口*/  
pna_Init ->ipadd=htonl((ULONG)ipadd); /*IP地址*/  
pna_Init ->mtu=ntu; /*大傳輸量,以太網為1518字節*/  
pna_Init ->hwalen=hwalen; /*硬件地址長度,以太網為6*/  
pna_Init ->flags=flags; /*接口標志*/  
/*子網掩碼、目的IP、缺省變量*/  
ni_ptr->subnetaddr=htonl((ULONG)subnetaddr);  
ni_ptr->dstipaddr=htonl((ULONG)dstipaddr);  
ni_ptr->reserved[0]=0;  
}  

3.3 pNA+部件的配置及初始化  

pSOS系統中,各個部件的配置都定義成一個結構體,并存放在結點配置表中(Node Configuration Table),結點配置表可以駐留在系統存儲區的任意地址處。  

PNA+部件配置表結構為pNAConfigTable。它用于定義pNA+所需的硬件和特定應用信息。如pNA+代碼入口、網絡接口初始化信息、初始ARP表、套字節數量、pNA后臺程序優先級等。  

PNA+使用時,需要通過pNA+配置表結構進行初始化。在初始化設置網絡接口時,需調用前面所述的InstallNi,調用時必須將其第一個函數指針變量參數entry用NIMain代入,系統自動執行NI_INIT功能調用,使pNA+和特定網絡接口實例關聯起來。  

應用程序在進行pSOS系統初始化時,需要將pNA+配置表加入結點配置表,以后就可以通過pNA+訪問網絡接口了。  

3.4 使用pNA+部件進行網絡編程  

pNA+部件提供了pSOS系統對TCP/IP協議的支持。PNA+可以通過工業標準網絡編程套節字Socket對TCP/UDP、IP、ICMP、IGMP、ARP等進行訪問。PNA+還提供NFS、Telne、RPC(遠程過程調用)的支持。可見pNA+可以滿足絕大多數的網絡編程。  

pNA+的軟件架構可用圖3表示。  

pNA+定義了很多系統調用函數進用戶編程使用,包括與Windows Socket編程完全兼容的眾多Socket API函數,如:socket、close、bind、recvfrom、sendto、listen、accept、connect等。另外,還定義了套節字Socket的屬性選項設置和控制、消息塊的分配、網絡接口國入等API函數,如setsockopt、ioctl、pna_allocb、add_in等。  

4 系統應用  

設計的目的是將本系統用于銀行監控系統中,作為多媒體音視頻數據采集和網絡傳輸的終端服務器。這種基于嵌入式技術監控系統的優點是:由于這種系統的硬件是一個與處理和操作系統捆綁較為緊密、功能專一、專門設計的獨立設備,不像插卡系統那樣受通用計算機系統中其它軟硬件的影響,因此性能更穩定,且便于安裝,省掉各種復雜的電纜,配置簡單方便,僅設置一個IP地址即可以使用了。  
本系統是基于具有開放性的IP網絡來實現,具有通用性。而音視頻數據處理可以按照實際應用采用各種不同的編解碼標準,如MPEG、JPEG、H.263等。它可以用于多媒體遠程監控系統、Web Camera(網絡攝像機)、視頻服務器、可視電話、視頻會議終端等。
本文地址:http://m.qingdxww.cn/thread-39749-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 与青春有关的日子完整版免费观看 | 四虎影院永久免费| 116美女写真成人午夜视频| 久草在线一免费新视频| 张津瑜的9分58秒7段免费| 一二三四在线视频社区8| 午夜99| 天天上天天干| 亚洲精品一区二区久久这里| 俄罗斯6一9泑女网站| 我强进了老师身体在线观看| 亚州 色 图 综合| 婷婷激情四月| 野战play肉嗯嗯啊| 九九热这里都是精品| 主播蜜汁丝袜精品自拍| 青草免费在线观看| 香蕉视频色| 一级毛片免费全部播放完整| 久久精品av| 色综合久久综合欧美综合图片| 爽好大快深点视频网站| 亚洲一区二区三区在线免费观看| 在线观看中文字幕亚洲| 欧美videos人牛交| 亚洲热久久| 天天综合网天天综合色不卡| 亚洲欧美日韩综合在线| 黄色a一级视频| 热re99久久国产精品| 日本噜噜影院| 我和黑色丝袜班主任| 国产Av影片麻豆精品传媒| 亚洲精品无码不卡在线播HE| 五月婷亚洲| 视频在线观看一区二区| 啊轻点啊再深点视频免费| 亚洲国产精品第一影院在线观看| 网红主播自拍偷拍的激情视频| 亚洲一区综合在线播放| 宅男视频免费|