基于fpga的双千兆网口传输高清视频及多媒体信号的发送装置的制作方法

文档序号:6393357阅读:304来源:国知局
专利名称:基于fpga的双千兆网口传输高清视频及多媒体信号的发送装置的制作方法
技术领域
基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置技术领域
[0001]本实用新型涉及LED显示屏技术领域,具体涉及一种基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置。背景技术
[0002]随着全彩LED显示屏的应用越来越广泛,人们对LED显示屏控制系统的要求越来越高,这也促使着LED显示屏控制系统的不断升级和改造,主要体现在提高性能和节约成本上。LED显示屏控制系统的组成一般有如下几个部分视频发送装置、视频接收分配装置、LED面板。显然,作为前端的视频发送装置在整个环节中起着举足轻重的作用。[0003]LED显示屏控制系统的视频发送装置一般由DVI装置、FPGA控制器、外存储体装置和网络输出装置构成,FPGA控制器将输入的图像数据交替写入外存储体,同时也从外存储体中交替读出图像数据,再通过网络格式依次将数据输出,原理框图如图I所示。[0004]通常,控制LED显示屏的计算机的分辨率设置为1024*768@60Ηζ或者1280*1024@60Ηζ。对于1280*1024@60Ηζ的实时视频源,总的数据量为 1280*1024*60*24=1887436800bit ;其中一帧的数据量为1280*1024*24=31457280bit。[0005]考虑到分辨率为1280*1024@60Ηζ时的像素时钟为108MHz,并且整个实现过程需要2倍的存储空间进行乒乓操作,故通常采用两片32位宽的SDRAM作为外接存储体。[0006]带有外接存储体的发送卡具有缓存一帧数据的能力,并将输出与输入隔离开,有利于从全屏的数据中按照不同需求截取所需数据进行处理。但同时,滞后一帧数据也是实时传输中的一个缺点,尤其是在需要严格实时传输的场合。另外,增加两片SDRAM也给设计增加了成本。[0007]在现有LED显示屏发送卡的基础上,还设计了一种无外接存储体的LED显示屏发送卡,如图2所示。该发送卡由DVI装置、FPGA控制器、两路千兆网输出装置构成。DVI解码芯片将解码得到的数据和控制信号传给FPGA控制器,FPGA控制器通过内部的RAM进行缓存,并做了更换时钟域和位宽变换的操作,然后将处理后的数据通过千兆网输出。[0008]对1280*1024@60Ηζ的实时视频源,这里采用垂直分区的方法,即将满屏数据平均分成两路千兆网输出,每一路千兆传输640*1024,如图3所不。[0009]由图2的基本框图看出,该发送卡的设计除了搭建好硬件平台外,最重要的是 FPGA控制器内部程序的设计。无外接存储体发送卡的FPGA控制器的内部原理框图如图4 所示。[0010]FPGA控制器的内部逻辑包括数据输入装置、双口 RAM及其控制装置、24bit转8bit 装置、千兆网输出装置。数据输入装置将输入的DVI信号(包括数据、时钟、使能、行场同步信号)分配给后端的RAM和RAM控制装置,并控制着整个系统的同步;RAM控制装置控制RAM 的读写操作,尤其是对开始写、写停、开始读、读停这四个状态的控制;从RAM输出的数据经过并串转换后传输给千兆网输出装置,千兆网输出装置则按照一定的网络格式将接收到的数据进行打包输出。[0011]图3提到的将数据分区发送,该方法能够将满屏数据平均分成两路千兆网输出。 以下就以垂直分区的方法分析其数据流向、时钟变化和传输时间差。[0012]对于一路千兆网数据而言,采用I个双口 RAM设计,RAM的深度设置为640,输入和输出字长均设置为24bit,读写时钟和使能分别独立,如图5所示。[0013]其中,数据输入和写时钟分别为DVI解码芯片解码后的24bit图像数据DVI_ DATA[23:0]和时钟WRAM_CLK,读RAM的时钟为千兆网时钟RMII_CLK (125M)三分频后得到的时钟RRAM_CLK(41. 66MHz),这样,后端再通过一个24bit转8bit装置即可将数据进行实时传输。[0014]如图6所示,通过RRAM_CLK (41. 66MHz)时钟从RAM中读出一个像素的数据,然后再通过3个RMII_CLK(125M)传输给千兆网,即做了一个实时的并串转化。如此流水操作下去,当从RAM中读完640个像素时,千兆网控制装置将停止读RAM操作,等待下一行数据的到来。当DVI解码后的下一行数据一旦往RAM中存储的时候(至少已经往其中存储了 I个像素),千兆网控制装置又开始从RAM中读取数据,如此循环,直到第1024行数据的640个像素数据被传输完。[0015]在这里,实时传输具有如下特点1、往RAM中存数据和从RAM中取数据同时进行; 2、存RAM的速度快,读RAM的速度慢;3、对写RAM操作,先把规定的数据存完,用时为11,然后进入等待阶段t2(t=tl+t2为行周期);对读RAM操作,把存好数通过t3的时间传输出去, 必须满足t3〈t。[0016]标准的1280*1024@60Ηζ的行时钟为64ΚΗζ,周期为t=15. 625us ;而从RAM中读完半行像素(640 个)数据的时间是t3= (1/41. 66MHz) *640=15. 36us。[0017]显然,在一个行周期里,只往外传出半行的数据,传输时间差t - t3=265ns>0,且该时间差满足千兆网传输所必须数据包间隔。[0018]由于写RAM的时钟(108MHz)比读RAM的时钟(41. 66MHz)快的多,所以在写RAM的同时可以对RAM进行读操作(至少已经往RAM存储了 I个像素),边写边读,实现了视频数据的实时传输。[0019]同理,另外一路的千兆网设计与此雷同。[0020]以上现有技术存在以下缺点可达到的最高性能仅为1280*1024@60Hz ;不支持音频信号和其它多媒体信号。[0021 ] 有鉴于此,本实用新型人针对现有技术的缺陷深入研究,并有本案产生。
发明内容[0022]本实用新型所要解决的技术问题在于提供一种基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置,其可达到的最高性能为1920*1080p@60Hz,支持音频信号和多媒体信号。[0023]本实用新型采用以下技术方案解决上述技术问题[0024]基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置,包括视频采集装置、视频存储与发送装置、第一发送控制器、第一 MAC模块、UART模块、MCU模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二发送控制器、第二MAC模块;[0025]所述视频采集装置与所述视频存储与发送装置之间通过SRAM写入接口、行同步接口、帧同步接口进行连接;所述视频存储与发送装置与所述第一发送控制器之间通过请求发送模型接口进行连接;所述第一发送控制器与所述第一 MAC模块之间通过MAC帧传输接口进行连接;[0026]所述包头控制器通过包头发送接口与所述第一发送控制器、第二发送控制器连接;[0027]所述音频采集装置与所述音频存储与发送装置之间通过SRAM写入接口、行同步接口、帧同步接口进行连接;所述音频存储与发送装置与所述第二发送控制器之间通过请求发送模型接口进行连接;所述第二发送控制器与所述第二 MAC模块之间通过MAC帧传输接口进行连接;[0028]所述MCU模块通过Wishbone总线接口分别与所述视频采集装置、视频存储与发送装置、第一 MAC模块、UART模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二 MAC模块连接;[0029]所述MCU网络数据发送装置与第一发送控制器及第二发送控制器之间通过请求发送模型接口进行连接;[0030]所述视频采集装置、UART模块、音频采集装置分别连接到上位机。[0031]本实用新型的优点在于采用RGB转YUV444、YUV422及YUV420的三种不同数据处理方式,使得在使用YUV420压缩时可支持的最高视频可达1080Ρ@60ΗΖ,并可兼通其他不同帧率不同分辨率的视频类型,同时提供了对音频信号及其他多媒体信号的支持。
[0032]下面参照附图结合实施例对本实用新型作进一步的描述。[0033]图I是现有技术的一种LED显示屏控制系统的视频发送装置的原理框图。[0034]图2是现有技术的另一种LED显示屏控制系统的视频发送装置的原理框图。[0035]图3是现有技术的另一种LED显示屏控制系统的视频发送装置的视频数据分区图。[0036]图4是现有技术的另一种LED显示屏控制系统的视频发送装置的FPGA控制器的内部原理框图。[0037]图5是现有技术的另一种LED显示屏控制系统的视频发送装置的FPGA控制器的一路千兆网数据传输的双口 RAM配置。[0038]图6是现有技术的另一种LED显示屏控制系统的视频发送装置的FPGA控制器的 24bit转8bit不意图。[0039]图7是本实用新型的系统结构图。
具体实施方式
[0040]在OSI网络模型最低两层为物理层(PHY)和数据链路层(MAC)。[0041]物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。物理层的芯片称之为PHY,本实用新型中称为网络PHY芯片,位于FPGA外部。[0042]数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。以太网卡中数据链路层的芯片称之为MAC控制器,在本例中在FPGA内部实现MAC控制器,并将其称为MAC模块。[0043]在本实用新型中MAC模块与网络PHY芯片之间通过RGMII接口连接。[0044]RGB和YUV都是色彩空间,用于表示颜色,两者可以相互转化。YUV (亦称YCrCb) 是被欧洲电视系统所采用的一种颜色编码方法(属于PAL)。它最大的优点在于只需占用极少的带宽(RGB要求三个独立的视频信号同时传输)。[0045]只使用RGB传输1920*1080p@60Hz的视频信号需要传输的数据量为[0046]2. 985Gbps,无法使用两个千兆网口进行传输,使用RGB转YUV420后需要的传输的数据量为I. 5Gbps可以使用两个千兆网口进行传输。[0047]如图7所示,基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置,包括视频采集装置、视频存储与发送装置、第一发送控制器、第一 MAC模块、UART模块、MCU模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二发送控制器、第二 MAC模块。[0048]视频采集装置与视频存储与发送装置之间通过SRAM写入接口、行同步接口、帧同步接口进行连接;视频存储与发送装置与第一发送控制器之间通过请求发送模型接口进行连接;第一发送控制器与第一 MAC模块之间通过MAC帧传输接口进行连接。[0049]包头控制器通过包头发送接口与第一发送控制器、第二发送控制器连接;[0050]音频采集装置与音频存储与发送装置之间通过SRAM写入接口、行同步接口、帧同步接口进行连接;音频存储与发送装置与第二发送控制器之间通过请求发送模型接口进行连接;第二发送控制器与第二 MAC模块之间通过MAC帧传输接口进行连接。[0051]MCU模块通过Wishbone总线接口分别与视频采集装置、视频存储与发送装置、第一 MAC模块、UART模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二 MAC模块连接。[0052]MCU网络数据发送装置与第一发送控制器及第二发送控制器之间通过请求发送模型接口进行连接。[0053]视频采集装置、UART模块、音频采集装置分别连接到上位机。[0054]视频采集装置使用视频输入时钟采集视频数据,将视频数据进行RGB到YUV的压缩,产生视频SRAM写操作,并产生行/帧同步信号,用于控制视频存储与发送装置。[0055]视频存储与发送装置将视频采集装置的采集到的数据写入SRAM,并根据视频 SRAM写入的地址和行/帧同步数据,在适当的时候(适当的时候指一个视频扫描行存储完成或SRAM写入的数据量达到一定数量时)分别向第一发送控制器和第二发送控制器发送视频数据包发送请求,当收到第一发送控制器或第二发送控制器的允许发送响应后,向第一发送控制器或第二发送控制器发送视频数据。[0056]音频采集装置使用系统时钟采集音频数据,产生音频SRAM写操作。[0057]音频存储与发送装置将音频采集装置的采集到的数据写入SRAM,并根据视频采集装置的帧同步数据和音频SRAM的写入地址,在适当的时候(适当的时候指SRAM的写入数据量达到一定数量时)分别向第一发送控制器和第二发送控制器发送音频数据包发送请求,当收到第一发送控制器或第二发送控制器的允许发送响应后,向第一发送控制器或第二发送控制器发送音频数据。[0058]MCU模块(MCU可以是8051 IP核)从UART模块获取控制数据,将控制数据写入寄存器,并发送UART响应,将需要发送的网络数据包存储在MCU网络数据发送装置中,并对 MCU网络数据发送装置进行设置,根据从UART的接收上位机对MAC地址,IP地址,音视频格式的设置,完成对相应装置的寄存器的配置,从两个MAC模块接收数据包,并对数据进行处理后,通过UART模块将处理后的数据传送给上位机。[0059]MCU网络数据发送装置用于平衡MCU与MAC的数据吞吐量,由于千兆网口的MAC的处理的数据吞吐量可以达到IGbps但是MCU网络数据包的发送速度远低于lGbps,所以如果MCU直接向MAC发送数据则会明显影响音视频数据包的发送速度,故采用本MCU网络数据发送装置先将MCU需要的发送的网络数据包存储在该装置的内部的SRAM中,再分别向第一发送控制器及第二发送控制器发送数据发送请求,得到允许发送的响应后,则向第一发送控制器其第二发送控制器发送MCU网络数据包。[0060]所述包头控制器接收MCU模块的配置数据,配置数据为MAC地址,IP地址,UDP源端口及目标端口,当接收到发送控制器的包头数据请求后,产生适当的包头,并进行IP头校验,然后向发送控制器发送包头数据。[0061]第一发送控制器与第二发送控制器在适当的时候(适当的时候指与发送器相连接的MAC模块等待请求信号无效,且没有更高优先级的数据发送请求时)响应数据发送请求, 控制包头控制器产生的包头数据,将数据源的数据转发至MAC模块。[0062]第一 MAC模块与第二 MAC模块将发送控制器发送的数据存储至SRAM,从SRAM内读取数据,按照以太网帧标准向RGMII接口发送数据,对以太网数据包进行CRC校验,当SRAM 数据溢出前给出等待请求信号,防止SRAM溢出。[0063]FPGA含有5个时钟输入时钟,分别为视频输入时钟(不同视频分辨率时会有不同的时钟频率时钟范围为27MHZ至148. 5MHZ),音频输入时钟(8KHZ至48Khz),FPGA主时钟 25Mhz,第一千兆网芯片RGMII接收时钟125MHZ,第二千兆网芯片RGMII接收时钟125MHZ。[0064]FPGA主时钟25Mhz经过FPGA内部的PLL倍频生成125MHZ的系统时钟。[0065]本实用新型的时钟分布视频采集装置的时钟为视频输入时钟,视频存储与发送装置含有两个时钟,一个为视频输入时钟另一个为125MHZ的系统时钟,MCU模块使用25M 的输入时钟,MAC的RGMII网络数据接收采用千兆网芯片RGMII接收时钟,其他模块都使用 125MHZ的系统时钟。视频存储与发送装置含有两种时钟的同步电路,MCU模块外部含有时钟同步电路用于连接WINSHB0NE总线。[0066]数据信号位宽设定本实用新型中wishobne总线数据信号采用Sbit的数据宽度, 其余所有模块间的连接数据信号都使用32bit的数据宽度。[0067]本实用新型采用RGB转YUV444、YUV422及YUV420的三种不同数据处理方式,使得在使用YUV420压缩时可支持的最高视频可达1080P060HZ,并可兼通其他不同帧率不同分辨率的视频类型,同时提供了对音频信号及其他多媒体信号的支持。[0068]以上所述仅为本实用新型的较佳实施用例而已,并非用于限定本实用新型的保护范围。凡在本实用新型的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本实用新型的保护范围之内。
权利要求1.基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置,其特征在于包括视频采集装置、视频存储与发送装置、第一发送控制器、第一 MAC模块、UART模块、MCU模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二发送控制器、第二 MAC模块; 所述视频采集装置与所述视频存储与发送装置之间通过SRAM写入接口、行同步接口、帧同步接口进行连接;所述视频存储与发送装置与所述第一发送控制器之间通过请求发送模型接口进行连接;所述第一发送控制器与所述第一 MAC模块之间通过MAC帧传输接口进行连接; 所述包头控制器通过包头发送接口与所述第一发送控制器、第二发送控制器连接;所述音频采集装置与所述音频存储与发送装置之间通过SRAM写入接口、行同步接口、帧同步接口进行连接;所述音频存储与发送装置与所述第二发送控制器之间通过请求发送模型接口进行连接;所述第二发送控制器与所述第二 MAC模块之间通过MAC帧传输接口进行连接; 所述MCU模块通过Wishbone总线接口分别与所述视频采集装置、视频存储与发送装置、第一 MAC模块、UART模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二 MAC模块连接; 所述MCU网络数据发送装置与第一发送控制器及第二发送控制器之间通过请求发送模型接口进行连接; 所述视频采集装置、UART模块、音频采集装置分别连接到上位机。
专利摘要基于FPGA的双千兆网口传输高清视频及多媒体信号的发送装置,包括视频采集装置、视频存储与发送装置、第一发送控制器、第一MAC模块、UART模块、MCU模块、MCU网络数据发送装置、包头控制器、音频采集装置、音频存储与发送装置、第二发送控制器、第二MAC模块。本实用新型采用RGB转YUV444、YUV422及YUV420的三种不同数据处理方式,使得在使用YUV420压缩时可支持的最高视频可达1080P@60HZ,并可兼通其他不同帧率不同分辨率的视频类型,同时提供了对音频信号及其他多媒体信号的支持。
文档编号G06F3/14GK202816325SQ20122047082
公开日2013年3月20日 申请日期2012年9月14日 优先权日2012年9月14日
发明者许勇, 陈铮, 刘灵辉 申请人:福建星网视易信息系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1