<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 淺談千兆網(wǎng)接口的攝像機設計與實(shí)現

淺談千兆網(wǎng)接口的攝像機設計與實(shí)現

作者: 時(shí)間:2012-01-04 來(lái)源:網(wǎng)絡(luò ) 收藏

1 引 言

本文引用地址:http://dyxdggzs.com/article/149892.htm

隨著(zhù)監控系統在商用民用的日漸普及,監控系統主要由前端監視設備、傳輸設備、后端控制顯示設備這三大部分組成,其中后端設備可進(jìn)一步分為中心控制設備和分控制設備。前、后端設備有多種構成方式,它們之間的聯(lián)系(也可稱(chēng)作傳輸系統)可通過(guò)電纜、光纖或微波等多種方式來(lái)。視頻監控廣泛應用于居民住宅、樓盤(pán)別墅、商場(chǎng)店鋪、財務(wù)室。每個(gè)不同的應用領(lǐng)域,需要有不同類(lèi)型的監控。傳統的監控圖像分辨率低,難以滿(mǎn)足一些有特殊要求的應用場(chǎng)合。利用網(wǎng)絡(luò )來(lái)對高分辨率高幀率視頻圖像傳輸是視頻監控系統的一種重要思想。本文提出了基于以太網(wǎng)傳輸視頻圖像并充分利用了FPGA并行處理和SDRAM高速緩存的優(yōu)勢,提高了視頻圖像的傳輸速度。

2 硬件總體

硬件總體框架如上圖,主控制器FPGA選用altera公司高性?xún)r(jià)比芯片EP2C20F256C6N.系統工作頻率為100M.圖像傳感器的數據首先在FIFO里緩沖后暫存于SDRAM,在網(wǎng)絡(luò )空閑時(shí)將暫存的圖像數據經(jīng)FIFO2緩沖后送MAC芯片,再發(fā)送到網(wǎng)絡(luò )上。

CMOS芯片中文名稱(chēng):互補型金屬氧化物半導體 芯片類(lèi)型:隨即存貯器(斷電會(huì )丟失數據的那種)容量:128~256字節是一種低耗電存儲器,其主要作用是用來(lái)存放BIOS中的設置信息以及系統時(shí)間日期。應該把它和BIOS芯片區別開(kāi)。早期的CMOS芯片是一塊單獨的芯片MC146818A(DIP封裝),共有64個(gè)字節存放系統信息。386以后的微機一般將 MC146818A芯片集成到其它的IC芯片中(如82C206,PQFP封裝),586以后主板上更是將CMOS與系統實(shí)時(shí)時(shí)鐘和后備電池集成到一塊叫做DALLDA DS1287的芯片中。隨著(zhù)微機的發(fā)展、可設置參數的增多,現在的CMOS ROM一般都有128字節及至256字節的容量。CMOS芯片選用MICRON TECHNOLOGY的MT9P031,在500萬(wàn)像素的滿(mǎn)分辨率下最高可輸出14幀的圖像數據。 SDRAM選用W982516BH-75,容量為32Mbytes,g與FPGA內部FIFO結合可為32Mbytes的大容量循環(huán)緩存,在圖像分辨率為300萬(wàn)像素時(shí)可緩存10幀以上圖像數據。網(wǎng)MAC芯片選用AX88180,物理層芯片選用88E1111,再通過(guò)網(wǎng)絡(luò )變壓器及RJ45用六類(lèi)網(wǎng)線(xiàn)與計算機網(wǎng)卡相連。

3 千兆網(wǎng)

AX88180是亞信公司推出的一款高性能低成本的Non-PCI千兆以太網(wǎng)控制器,適用于多種需要高速接入網(wǎng)絡(luò )的嵌入式系統,如消費電子和家庭網(wǎng)絡(luò )等。AX88180內置10/100/1000 Mb/s以太網(wǎng)媒體存取控制器(MAC),符合IEEE 802.3/IEEE 802.3u/IEEE 802.3ab協(xié)議,可與一般16/32位微控制器連接,其操作與SRAM相同。AX88180內置10/100/1000 Mb/s以太網(wǎng)媒體存取控制器(MAC),與PHY之間采用RGMII;內置主機接口控制器,可以與16/32位主機方便連接尋址方式與SRAM相同;內置40 KB SRAM網(wǎng)絡(luò )封包緩存器,其中32 KB用于從PHY接收數據包,KB用于主機發(fā)送數據包到PHY,可以用高效方式進(jìn)行封包的存儲、檢索與修改;內置256字節的配置寄存器,用于主機控制和參數設置;內置EEP-ROM接口;圖2為AX88180及PHY芯片88E1111的連接圖。

3.1 千兆網(wǎng)接口初始化

對千兆網(wǎng)接口的初始非常重要,如果初始化不正確,系統將無(wú)法正常工作。對接口的初始化主要包括對AX88180和88E1111的初始化。

代碼用verilog語(yǔ)言完成。Verilog HDL是目前應用最為廣泛的硬件描述語(yǔ)言。Verilog HDL可以用來(lái)進(jìn)行各種層次的邏輯設計,也可以進(jìn)行數字系統的邏輯綜合,仿真驗證和時(shí)序分析等。Verilog HDL適合算法級,寄存器級,邏輯級,門(mén)級和版圖級等各個(gè)層次的設計和描述。Verilog HDL進(jìn)行設計最大的優(yōu)點(diǎn)是其工藝無(wú)關(guān)性。這使得工程師在功能設計,邏輯驗證階段可以不必過(guò)多考慮門(mén)級及工藝的具體細節,只需根據系統設計的要求施加不同的約束條件,即可設計出實(shí)際電路。具體代碼可參考亞信公司的驅動(dòng)程序代碼,應注意初始化時(shí)需要加入一些固定的延時(shí)以確定芯片正常工作。

3.2 圖像數據的封包

當圖像的分辨率為2048×1536時(shí),一個(gè)UDP數據包包含1024字節的圖像數據和兩個(gè)bytes圖像行編號。當計算機收到數據包時(shí),根據圖像行編號信息放入對應的內存中,可以很方便的組合成一副完整的圖像。以下這FPGA寫(xiě)入AX88180的UDP包頭代碼。

  case(param_num)

  'd0: w_dd = 'hFFFF;//目的MAC地址(廣播地址),寫(xiě)三次

  'd3: w_dd = 'h1111;//源MAC地址,均為0x1111,寫(xiě)三次

  'd6: w_dd = 'h0008;//協(xié)議號

  'd7: w_dd = 'h0045;//固定數據VIP4,

  'd8: w_dd = 'h1E04;//IP包總長(cháng)度1026+28,并且高低8位交換

  'd9: w_dd = 'h0;//ID號,始終為0

  'd10:w_dd = 'h0;//fragment offset始終為0;

  'd11:w_dd = 'h1140;//生存期和協(xié)議號,固定

  'd12:w_dd = 'h0;//IP校驗和,由MAC芯片自動(dòng)生成

  'd13:w_dd = 'hA8C0;//源IP,固定為192.168.1.204

  'd14:w_dd = 'hCC01;

  'd15:w_dd = 'hFFFF;//目的IP,任意

  'd16:w_dd = 'hFFFF;

  'd17:w_dd = 'h7017;//源端口,固定為6000

  'd18:w_dd = 'h7017;// 目的端口,固定為6000

  'd19:w_dd = 'h0A04;//UDP數據長(cháng)度

  'd20:w_dd = 'h0;////校驗和由AX88180自動(dòng)生成

  'd21:w_dd = row_num;//圖像行信息從0開(kāi)開(kāi)始

  default:w_dd = w_dd;

  endcase

3.3 應用程序設計

由于大量數據在網(wǎng)絡(luò )上傳輸,用SOCKET的方式來(lái)獲圖像數據包已經(jīng)比較困難,丟包率會(huì )比較高。采用Winpcap來(lái)捕獲網(wǎng)絡(luò )上的數據包,可有效的減少丟包率。

  第一步,指定要通信的網(wǎng)卡設備并打開(kāi)。

  BOOL InitWpcap(){

  pcap_if_t* alldevs;

  pcap_if_t* d;

  char errbuf[PCAP_ERRBUF_SIZE];

  if(pcap_findalldevs(alldevs, errbuf) == -1){

  AfxMessageBox(Error in pcap_findalldevs);

  return FALSE; }

  // 枚舉網(wǎng)卡然后添加到用戶(hù)選擇的ComboBox中,代碼省略

  char *filter = port 6000;//只接收端口6000的數據

  bpf_u_int32 NetMask = 0xFFFFFF;

  struct bpf_program fcode;

  if(pcap_compile(m_pcap, fcode, filter, 1, NetMask) 0){

  AfxMessageBox(nError compiling filter: wrong syntax);

  pcap_close(m_pcap); return FALSE; }

  if(pcap_setfilter(m_pcap, fcode)0){

  AfxMessageBox(nError setting the filtern);

  pcap_close(m_pcap); return FALSE; }

  pcap_freealldevs(alldevs); // 釋放alldev資源

  return TRUE;}

第二步:開(kāi)啟一個(gè)線(xiàn)程接收數據。

  UINT RecvProc(LPVOID lpParammeter)

  { pcap_loop(m_pcap, 0, packet_handler, NULL); return 0;}

packet_handler是處理收到數據包的回調函數, 當從port6000收到數據后它會(huì )被調用,直到線(xiàn)程終止。

第三步:處理收到的數據

  void packet_handler(u_char *param, const struct pcap_pkthdr *header, const u_char *pkt_data){

  const u_char *real_data = pkt_data+42;

  int row=real_data[0]+(real_data[1]《8); }//這里就沒(méi)有處理包頭,直接處理數據。

4 總結

兆網(wǎng)接口攝像機,網(wǎng)絡(luò )傳輸有效數據帶寬達400Mb/s以上,較好的解決了百兆網(wǎng)傳輸帶寬不足、數據傳輸速度慢的問(wèn)題。傳輸300萬(wàn)像素不進(jìn)行壓縮的原始圖像,幀率可達18幀/秒,視頻流暢清晰。計算機采用Winpcap捕獲圖像數據,丟包率小于0.02%.winpcap的主要功能在于獨立于主機協(xié)議(如TCP-IP)而發(fā)送和接收原始數據包。也就是說(shuō),winpcap不能阻塞,過(guò)濾或控制其他應用程序數據包的發(fā)收,它僅僅只是監聽(tīng)共享網(wǎng)絡(luò )上傳送的數據包。因此,它不能用于QoS調度程序或個(gè)人防火墻。目前,winpcap開(kāi)發(fā)的主要對象是windows NT/2000/XP,這主要是因為在使用winpcap的用戶(hù)中只有一小部分是僅使用windows 95/98/Me,并且MS也已經(jīng)放棄了對win9x的開(kāi)發(fā)。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>