基于fpga的视频节目同时存储系统的设计与实现.docxVIP

  • 0
  • 0
  • 约5.54千字
  • 约 6页
  • 2023-11-03 发布于湖北
  • 举报

基于fpga的视频节目同时存储系统的设计与实现.docx

基于fpga的视频节目同时存储系统的设计与实现 pld器件上 sop(系统模式的私用科学)是一个编程系统或基于最大f的单片系统,由美国全面实施于2000年提出。它将处理器、存储器、I/O口、LVDS、CDR等系统设计需要的功能模块集成到一个PLD器件上, 将其构建成一个可编程的片上系统;具有灵活的设计方式, 可裁减、可扩充、可升级, 并具备软硬件在系统可编程的功能。由于SOPC系统具有灵活的设计方式、高效的开发手段、廉价的设计成本, 可以实现过去不可能实现的更高的系统性能, 因此它在通信和工业控制等领域正得到日益广泛的应用。 NiosII嵌入式处理器是FPGA生产厂商Altera公司推出的软核CPU, 是一种面向用户的, 可以灵活定制的通用精简指令集架构 (RISC) 32位嵌入式CPU。NiosII以软核的方式提供给用户, 并专门在Altera公司的FPGA上实现了优化, 用于SOPC集成, 最后在FPGA上实现。 本文将以VOD 视频点播系统为例, 介绍采用NiosII构建可编程片上系统SOPC的过程, 以及双CPU 及其同步通信技术实现的视频点播系统主机部分的设计思想和工作原理。 1 工程应用 1.1 vod系统系统构成 视频点播是一种交互式多媒体信息点播系统。 其本质是, 信息使用者可根据自己的需求主动获取多媒体信息, 打破目前用户收看节目的被动方式, 使用户从“播什么节目看什么节目”变成 “想看什么节目就播什么节目”, 从而按照自己的意愿通过网络点播视频服务器中的视频节目。视频点播以电视技术、计算机技术、通信技术为基础, 它区别于信息发布的最大不同是用户具有主动性与选择性。 VOD系统主要由3部分构成:视频点播服务器、传输网络和视频点播终端。当点播终端发出点播请求时, 点播服务器就会根据点播信息, 将存放在节目库中的影视信息检索出来, 并将视频数据流通过高速传输网络传送到各个点播终端。点播终端接收到数据流后, 将其解码送到显示器播放。 本设计采用一块大容量硬盘作为VOD系统的点播数据源, 将MPEG-1格式的影音文件按照FAT 32标准存放在硬盘上。由于视频点播系统对硬盘访问的速度要求非常高, 采用操作系统已无法满足要求, 所以利用SOPC技术将Altera公司的第2代嵌入式处理器NiosII嵌入到FPGA中, 并通过DMA控制器直接对硬盘进行最底层的操作, 完成对影音文件的管理、检索和数据读取, 充分发挥了FPGA的高速优势。本视频点播服务器可以驱动多达64个完全独立的视频终端。 为实现64路终端实时播放影片, 必须对视频数据流的传输速率严格规定, 由于所有终端播放的文件均为MPEG-1格式, 此格式下影片连续播放所需的数据流速率为1.416 Mb/s。本系统采用的数据收发器AM7968/7969的传输率为80 Mb/s, 因此只要逻辑电路设计得当且处理器定时发送数据, 就可达到视频不间断播放的设计要求。但点播系统在满足视频数据定时发送的条件下还应当实现读取硬盘中存放MPEG-1数据的功能, 对终端作出的点播信息作出及时响应的功能, 对USB中影音文件录入的功能以及显示屏的刷新与按键的处理功能。如果只采用一个处理器, 则无法对每个环节作出及时响应, 无法保证数据的定时发送和硬盘数据的按时读取, 所以采取在Altera公司的高性能FPGA中嵌入双NiosII软核的方式达到系统设计目的。 1.2 视频监控系统的fpga 点播服务器主要由主控制器部分和外围接口电路两大部分组成, 硬件系统框图如图1所示。主控制器单元主要由FPGA、存储器电路、电源电路、时钟、复位电路和配置芯片电路组成。外围接口主要有:OLED显示屏、动态扫描键盘、数据缓冲区、SD卡、USB控制器、IDE接口、CAN总线接口、光纤接口等。 其中数据缓冲区由2个容量各为32 MB的SDRAM组成, 用于暂时存放DMA控制器从硬盘读出的视频数据;USB接口用于节目源的录入;IDE接口用于与磁盘阵列连接;各终端的点播信息通过CAN总线送到点播服务器;视频数据流通过4根光纤传送到各个终端, 每16个终端共用1根光纤,4根光纤可以驱动64个终端。 其中FPGA中, 双NiosII逻辑设计架构实现如图2所示。 NiosII Execution Core 1为主CPU, 在这个处理器系统里面,DMA控制器负责将视频数据从硬盘读到缓冲区中;USB驱动器负责从其他移动存储设备中录入节目源到硬盘阵列;CAN BUS驱动器负责接收终端的点播信息;Tristate Bridge用来连接外部程序存储器SDRAM和Flash;OLED驱动器用来控制OLED显示屏;Uart核为RS232接口。 Nios II Execution Core 2为从CPU, 专门用于向终端传输视频数据流

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档