《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于NiosⅡ軟核的嵌入式多路視頻點播系統
基于NiosⅡ軟核的嵌入式多路視頻點播系統
摘要: SOPC =NiosⅡ軟核+FPGA這個創新的概念為嵌入式設計帶來的極大的便利和靈活性。利用強大的SOPC開發平臺和豐富的IP資源,可大量縮短系統設計周期,而且系統的改進也變得十分方便。本文提出的通過把用戶自定義的硬盤讀寫模塊整合到SOPC平臺上,與NiosⅡ無縫接合,成功實現了多路視頻數據的并發點播。
Abstract:
Key words :

  引言

  VOD (視頻點播)技術為人們提供了一種交互式的信息獲取方式,并隨著技術的完善不斷擴展著其應用范圍和影響力。

  傳統的VOD系統主要是以服務器作為視頻的信息源,通過局域網進行點播,適合服務于住宅小區或公營機構。而對于缺乏網絡支持、移動性較強的環境,如公共交通工具,傳統的VOD系統顯然難以實現。

  本文針對特定的用戶環境,提出采用Altera的SOPC(片上可編程系統)解決方案,利用NiosⅡ軟核處理器和FPGA(現場可編程門陣列)配置靈活、 IP資源豐富、硬件設計和軟件編程方便的特點,通過擴展IDE(集成開發環境)接口,以硬盤作為存儲媒介,實現多路VOD系統的設計方案。該系統體積小、成本相對低廉,體現了嵌入式電子產品的優勢。與傳統的VOD系統相比,使用范圍更具針對性,裝配更靈活,升級擴展更方便,具有很廣闊的前景。

  1 系統功能劃分

  該系統從功能上可劃分為系統控制核心、多路視頻數據讀取單元、視頻解碼模塊和用戶點播終端4個部分。

  1.1 系統控制核心

  系統以NiosⅡ軟核為控制核心,主要負責硬盤初始化、提取視頻節目簇鏈、生成節目列表、人機交互控制等工作。上電后,NiosⅡ控制器先初始化硬盤的傳輸模式和讀寫狀態,然后讀取主引導記錄,尋址到基本分區的操作系統引導記錄區,計算保留扇區和FAT(文件分配表)大小,分別得到FAT和根目錄的入口。對目錄樹上的文件進行分析后,提取出視頻文件的文件名、文件首簇,根據首簇指針再次查找FAT,追溯出文件的簇鏈,最后燒寫到Flash存儲器中。完成以上工作后,初始化中斷,對用戶端進行輪詢,等待用戶請求,分析用戶指令包,作出相應響應。

  1.2 多路視頻數據讀取

  為實現海量視頻數據的存取,該系統需外擴展硬盤作為存儲介質。通過用戶自定義的硬盤DMA(直接存儲器存取)控制模塊實現對硬盤數據的讀寫,功能包括為上層程序提供控制硬盤和多路數據輸出的接口,產生硬盤DMA操作狀態機信號。數據從硬盤讀出后,以乒乓操作的方式交替存儲在兩片SRAM中,內存中的數據按照對應的輸出端口并行排列。同時,根據用戶終端提出的點播需求,數據往點播端口扇出。

  1.3 視頻解碼

  本系統采用外擴展的視頻解碼板作為硬解碼模塊。解碼芯片是LSI LOGIC公司CL680視頻CDMPEG 1音頻/視頻解碼器。該芯片以CL480/484架構為基礎,用于MPEG-1音頻/視頻解碼,整合數字NTSC/PAL編碼功能和加強KTV功能。

  1.4 用戶點播終端

  為解決多用戶終端遠距離通信的問題,系統采用RS-485收發器作為主機與用戶點播終端的連接橋梁。RS-485收發器采用平衡發送和差分接收,具有抑制共模干擾的能力,加上接收器的高靈敏度,能檢測低達200 mV的電壓,極大地提高信號傳播的可靠性。

  主機與終端間的通信方式采用類似令牌總線的通信協議。主機不斷發出查詢包,收到查詢包的客戶端被賦予發送控制命令的權限,客戶端可選擇發送命令或直接丟棄查詢包,這樣就避免了多個客戶端同時向總線發送數據、導致通信失敗的情況。

  系統采用MB90092視頻字符疊加模塊,在用戶終端屏幕中疊加功能菜單,建立友好的用戶操作界面,用戶可通過控制面板進行點播操作。

  2 系統設計

  2.1 系統硬件結構

  系統硬件結構如圖1所示。

系統硬件結構

  為實現對硬盤的控制及兩片內存的乒乓控制,系統使用了定制的DMA控制模塊,通過SOPC Builder軟件,以用戶邏輯形式掛到Avalon總線上。

  2.1.1 DMA控制模塊

  DMA控制模塊框圖如圖2所示。

DMA控制模塊框圖

  DMA 控制模塊主要功能是控制硬盤進行多路視頻數據的并發傳輸。為保證視頻質量,需考慮到數據讀寫速度的提高。本系統采用按照ATA/ATAPI-6協議編寫的 DMA模塊,控制置硬盤以Ultra-DMA方式傳輸數據,可實現最大傳輸速率為66 Mbit/s,滿足多路MPEG-1視頻碼流的并發傳輸。除了解決傳輸速率問題,該系統涉及到同時處理多路數據的讀寫,因此引入相應的功能子模塊,以乒乓操作的方式控制兩片SRAM的讀寫,并對多路數據的存儲分區進行地址管理。

  模塊的主要子模塊有DMA控制器、DMA狀態機、switch和SRAM控制器。

  DMA控制器作為Avalon總線與硬盤的接口,主要功能是接收上層程序的控制命令,再對硬盤的控制寄存器進行讀寫,在NiosⅡ程序的控制下將硬盤的傳送模式設置為Ultra-DMA模式進行數據傳輸。

  DMA 狀態機模塊是根據T13小組發布ATA(ATA/ATAPI-6)文檔為設計標準,用Verilog HDL(硬件描述語言)實現的有限狀態機。在控制終端的設置下傳輸方式轉為Ultra-DMA模式后,硬盤向控制器發出DMA請求,此時DMA狀態機啟動。主機端向硬盤發送響應信號,握于成功,解除DMA STOP狀態,同時使IDE_HDMARDY有效表示主控端已準備好。接著,數據流從硬盤流出,并發出一雙沿鎖存信號,SRAM控制器在該信號控制下將數據鎖存入內存。直到DMA請求結束,STOP信號生效,DMA傳輸結束。整個過程遵守ATAPI-6協議,使用Verilog HDL描述出硬盤DMA傳輸過程的時序。

 

  Switch和SRAM控制器模塊主要負責在DMA傳輸過程中在兩片 SRAM間調度數據,從而實現數據的乒乓存取。Switch模塊用于完成兩塊RAM之間的切換及數據的分區存儲。它工作于兩個狀態:以Flag為標志位, Flag為0時做寫RAMl的操作;Flag為1時做寫RAM2的操作。在DMA方式下,一次DMA讀取硬盤一個扇區剛好寫滿一片RAM,Switch模塊掛起數據寫入,等待中斷。當另一片RAM中的數據被全部讀出后中斷發生,此時Switch模塊交換兩片內存的讀寫端口地址。

  2.1.2 RAM分區讀寫

  由于系統要提供多路視頻的播放,因此,在進行DMA傳輸的過程中需實現各路視頻數據的分區讀寫。在寫內存時,采用雙時鐘控制機制。若要實現32路VOD系統,將一片512 k的RAM分為32個單元,每個單元長度為16 k,定義RAM的地址為:wraddress2=wraddressl+wraddress

  wraddressl為每個內存分區的基地址,它的取值分別是0 k,16 k,32 k,48 k,…,496 k,另外是一個偏移地址wraddress。內存分區方式如圖3所示。

內存分區方式

  定義時鐘C0為寫內存分區時鐘,C1為寫內存偏移時鐘,C0的頻率為寫C1的32倍。當偏移地址為某一值時,權值地址的取值會從0 k~496 k遍歷一次,即每一內存單元讀寫周期,寫入每個分區的一個單元。

  同樣,對內存中的數據也要分區讀出并送往相應端口。該模塊使用一種內存地址的計數方法:將地址線的長度設置為10位,再將低5位的地址和高5位的地址互換,目的是從高5位開始計數,計數滿了進位到低5位。高5位表示分區地址,低5位為分區的偏移地址,地址從第6位開始累加,剛好遍歷32個分區,完成高5 位的依次累加后,進位到低5位的分區偏移地址,表示開始讀下一輪分區的第2個內存單元。如此類推。根據計算出的地址可實現對各分區的數據依次讀取。地址算法示意圖如圖4所示。

地址算法示意圖

  2.1.3 移位輸出模塊

  該模塊主要實現的功能是:在分路時鐘的控制下,將從內存中讀出的多路數據移位輸出。該模塊定義了一組長度為16位的移位寄存器。數據I/O讀寫的時間和速度由video_clock確定,video_clock的頻率是12.5 MHz,負責控制SRAM_R控制器,移位輸出模塊和視頻解碼板的同步。模塊中還設置了一個累加計數器div3,工作頻率與video_clock相同。當SRAM_R控制器依次將各路視頻文件讀人一個寄存器后,每一個時鐘下降沿到來時移出1位,直至全部移出。若加大時鐘頻率和緩沖內存空間,可以增加移位寄存器的數目,從而增加視頻輸出端口的數量,實現系統點播路數的增加。

  2.2 系統軟件工作流程

  系統程序劃分為主機程序和點播終端兩大部分。主機程序主要實現3個功能:管理硬盤,提取簇鏈;播放節目,點播控制;響應請求,串口中斷。管理硬盤的方式主要是通過自定義的DMA控制模塊對硬盤的控制寄存器進行操作,驅動硬盤后訪問FAT32文件系統下的相應扇區,追朔簇鏈,將簇鏈提取出來寫入到Flash ROM中,為播放做準備。點播端程序則主要負責生成指令包。本系統軟件工作流程如圖5所示。

本系統軟件工作流程

  本系統要處理多路視頻數據,并且視頻信號數據量大,在點播過程中系統必須集中大部分處理器時間來處理各路視頻信號,而視頻文件的文件名和簇鏈結構必須通過相對低速的PIO操作來獲得。為了解決簇鏈讀取速度的瓶頸,本文設計了適合本系統應用的數據結構來優化對數據的管理,加快讀取速度。定義的數據結構有:

定義的數據結構

  客戶端的狀態和播放進度也由專門的結構體來記錄和管理。定義的數據結構有:

定義的數據結構

  3 結束語

  SOPC =NiosⅡ軟核+FPGA這個創新的概念為嵌入式設計帶來的極大的便利和靈活性。利用強大的SOPC開發平臺和豐富的IP資源,可大量縮短系統設計周期,而且系統的改進也變得十分方便。本文提出的通過把用戶自定義的硬盤讀寫模塊整合到SOPC平臺上,與NiosⅡ無縫接合,成功實現了多路視頻數據的并發點播。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久国产毛片| 欧美日韩免费观看中文| 亚洲精品欧美激情| 欧美一区二区在线播放| 亚洲永久视频| 亚洲视频免费| 在线一区免费观看| 野花国产精品入口| 一区二区欧美视频| 在线一区二区视频| 中文欧美在线视频| 在线午夜精品| 亚洲调教视频在线观看| 一本久久综合亚洲鲁鲁| 夜夜精品视频一区二区| 在线视频精品一区| 亚洲资源av| 欧美一区二区三区在| 小处雏高清一区二区三区| 亚洲欧美视频一区二区三区| 亚洲欧美日韩精品久久| 亚洲欧美国产77777| 香蕉久久精品日日躁夜夜躁| 欧美一区二区视频网站| 亚洲第一天堂无码专区| 亚洲风情亚aⅴ在线发布| 亚洲高清视频一区| 亚洲人成网站影音先锋播放| 亚洲精品一区二区三区99| 日韩视频在线一区二区| 亚洲视频999| 午夜精品99久久免费| 亚洲欧美网站| 久久久精品动漫| 免费在线观看一区二区| 欧美激情一区二区三区在线视频 | 亚洲在线视频免费观看| 亚洲欧美日韩精品久久奇米色影视| 欧美一区二区三区男人的天堂| 欧美一站二站| 欧美a级片一区| 欧美午夜精品理论片a级大开眼界 欧美午夜精品理论片a级按摩 | 在线国产欧美| 亚洲伦理在线| 午夜国产不卡在线观看视频| 久久精品一区二区国产| 99亚洲伊人久久精品影院红桃| 亚洲欧美日韩在线| 久久久伊人欧美| 欧美激情小视频| 国产精品区一区二区三区| 国产一区二区三区视频在线观看| 亚洲电影中文字幕| 一区二区高清视频在线观看| 欧美一级日韩一级| 亚洲麻豆一区| 欧美一区二区三区的| 蜜臀久久99精品久久久画质超高清| 欧美日韩国产一中文字不卡| 国产欧美日本一区视频| 亚洲国产精品va在看黑人| 在线一区免费观看| 亚洲国产高清在线观看视频| 一区二区av在线| 久久久久久久久久码影片| 欧美日韩高清在线观看| 国产区精品在线观看| 亚洲国产婷婷综合在线精品| 亚洲伊人第一页| 亚洲精品国久久99热| 欧美一区二区三区四区在线观看| 欧美成人免费全部| 国产伦精品一区二区三区四区免费| 一区在线电影| 亚洲欧美久久久久一区二区三区| 亚洲精品日韩一| 欧美自拍偷拍午夜视频| 欧美日韩国产丝袜另类| 国内精品久久久久影院 日本资源 国内精品久久久久伊人av | 欧美剧在线免费观看网站| 国产亚洲欧美一区二区三区| 日韩一区二区福利| 亚洲国产一区二区视频| 欧美一级大片在线观看| 欧美日韩精品综合在线| 国产综合欧美| 亚洲在线1234| 亚洲婷婷综合久久一本伊一区| 欧美成人免费全部观看天天性色| 国产精品视频午夜| 亚洲精选一区二区| 91久久精品国产91久久性色| 性视频1819p久久| 欧美日韩一区综合| 91久久精品国产91久久| 久久国产精品99久久久久久老狼| 亚洲欧美日韩一区二区三区在线| 欧美精品在线免费观看| 在线观看三级视频欧美| 欧美在线一二三区| 欧美在线视频日韩| 国产精品九色蝌蚪自拍| 亚洲国产一区二区a毛片| 亚洲成色777777在线观看影院| 欧美中文字幕| 国产精品亚洲人在线观看| 99国产精品一区| 日韩亚洲欧美高清| 你懂的视频一区二区| 精品成人在线视频| 久久不见久久见免费视频1| 欧美综合国产| 国产欧美一区二区三区久久人妖| 亚洲午夜羞羞片| 亚洲一区欧美激情| 国产精品福利影院| 中文一区在线| 亚洲欧美综合另类中字| 国产精品盗摄一区二区三区| 日韩视频免费在线观看| 一本色道久久精品| 欧美日韩情趣电影| 亚洲免费av片| 亚洲婷婷综合色高清在线| 欧美视频不卡| 中日韩午夜理伦电影免费| 亚洲一区三区视频在线观看| 欧美午夜片在线免费观看| 99精品国产热久久91蜜凸| 亚洲一区二区三区四区中文 | 麻豆精品精品国产自在97香蕉| 韩国精品主播一区二区在线观看| 午夜精品久久| 久久精品中文字幕一区二区三区| 国产亚洲欧洲一区高清在线观看| 久久av免费一区| 免费视频一区| 亚洲人成网站777色婷婷| 中文欧美字幕免费| 国产精品99免费看| 亚洲综合国产精品| 久久国产日韩| 在线观看成人av电影| 日韩一级免费观看| 欧美日一区二区三区在线观看国产免| 在线综合视频| 久久av红桃一区二区小说| 国内精品伊人久久久久av影院| 亚洲黄色一区二区三区| 欧美裸体一区二区三区| 在线综合亚洲欧美在线视频| 欧美亚洲色图校园春色| 国产永久精品大片wwwapp| 亚洲黄色成人久久久| 欧美视频在线一区| 午夜精品一区二区在线观看| 巨乳诱惑日韩免费av| 亚洲人精品午夜在线观看| 亚洲欧美一区二区精品久久久| 国产日韩一区| 日韩视频在线一区| 国产乱肥老妇国产一区二 | 午夜视频一区二区| 国语对白精品一区二区| 亚洲全部视频| 国产精品国产三级欧美二区 | 亚洲一区二区三区精品动漫| 国产日韩精品视频一区二区三区| 亚洲高清激情| 欧美日韩综合在线免费观看| 午夜在线一区| 欧美顶级大胆免费视频| 亚洲视频大全| 毛片av中文字幕一区二区| 99精品99| 久久一综合视频| 一区二区三区精品视频| 久久久午夜精品| 99www免费人成精品| 久久精品亚洲精品| 亚洲精品视频在线播放| 欧美制服丝袜第一页| 亚洲精品一区二区三区在线观看| 欧美一区在线直播| 亚洲另类在线一区| 久久久久久久久久码影片| 日韩西西人体444www| 久久午夜精品一区二区| 一区二区三区视频免费在线观看| 久久视频在线看| 亚洲视频精品| 欧美高清影院| 欧美在线免费视频| 国产精品jizz在线观看美国 | 久久国产天堂福利天堂| 亚洲日本va午夜在线电影| 久久高清福利视频| 亚洲精选一区| 免费欧美在线| 欧美专区中文字幕|