- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MPEG2码流传输卡的设计与实现-Read
MPEG2码流传输卡的设计与实现
上海交通大学自动化系 薛祥川 徐王景 陈卫东
摘要:
本文介绍了一块基于PCI 总线的符合欧洲数字广播系统DVB标准的MPEG2码流传输卡的设计与实现方法。利用该卡与相应的软件配合可以满足多种场合下MPEG2码流发生、传输、分析和存储的不同需要。
关键词: PCI;MPEG2;DMA;DVB-ASI;DVB-SP;FPGA
引言
MPEG2码流传输卡主要是针对实时传送分析及存储MPEG2传送流(Transport Stream,简称TS码流)而设计的产品,适用面宽,用途广泛。该卡与不同的上层软件配合能够以低成本实现多用途码流发送接收设备,可以构成的产品有:实时TS码流发生器、实时TS码流分析仪、TS码流复用器、TS码流存储设备以及TS码流转发器等。相比国外的产品,该卡可设定的码流速率范围宽,并且任意可调。许多场合可以直接替代国外价格昂贵的MPEG2码流分析仪器。
图1 硬件组成框图
图2 JTAG加载模式图
图3 NCO寄存器写入时序
图4 DVB-ASI发送方式时序图
图5 同轴电缆ASI接口链路流程图
图6 DVB-SP1接口定义
硬件设计
系统硬件设计见图1所示,该图表示了各芯片之间的连接关系。下面对主要硬件在本设计中的功能进行说明。
PCI桥
PCI桥芯片是板卡内部总线与PCI总线接口的桥接芯片,这里选用的是PLX公司的PLX9054,该芯片符合PCI总线V2.2标准,内部具有DMA控制器,可以在MASTER和SLAVE方式工作,进行DMA操作时不占用系统CPU资源。在该设计中用它的目的是建立计算机和该卡之间的联系,系统在上电后首先识别该芯片,然后根据要求分配给该卡所需的计算机操作系统资源,操作系统为其在内存中分配所需的空间映射地址和范围,从而建立与操作系统的联系。该芯片与PCI总线连接的称为PCI侧,另一端提供给用户使用的称为LOCAL侧,提供的是与各种CPU或者DSP接口的通用总线形式。该芯片的寄存器设置是通过外挂的EEPROM和该卡的设备驱动程序进行设置的,也可以根据要求在LOCAL侧设置寄存器,完成相应的各种读写操作,比如DMA传输操作、中断请求等。
在该卡中,LOCAL侧没有CPU,是直接连接到FPGA内部的,其地址、数据和控制总线信号通过FPGA的编码和译码与其它芯片进行连接。在该芯片的配置寄存器中,分别为数据的DMA(Direct Memory Access)发送和接收分配了256K空间,为NCO配置了8字节的空间,这样配置后在Windows操作系统启动后会在系统内存空间内为配置寄存器所指定的空间大小分配相应的内存空间,以便应用程序对其灵活操作。
EEPROM
该EEPROM选用的是Microchip公司的93LC56B。用于装载PCI桥接芯片的最基本的芯片识别信息和资源配置信息,是PLX9054桥接芯片所指定的EEPROM芯片型号之一。选用不同厂家的93C/CS56芯片时需要注意该芯片是否支持16比特连续读功能,否则该桥接芯片不能正确读取EEPROM内的数据,造成配置数据加载失败,现象表现为计算机不能启动,或者计算机启动后加载的配置数据与EEPROM中的数据不符。
FPGA
这里FPGA选用的是XILINX公司的SpartanII系列芯片:XC2S30。该FPGA性能高、价位低,逻辑门有3万门;内部带有24K比特(3K字节)的Block RAM,可以根据需要配置成异步FIFO,用于数据流的缓存;有4个全局时钟输入用于不同的外部时钟输入;多种配置方法。上电配置这里选用的是CPU配置方法。利用该51单片机的P1.0、P1.1、P1.2、P1.3口编写JTAG加载模式时序对FPGA进行加载配置,硬件连接见图2所示。
FPGA在该板上完成的功能包含了所有的控制信号,包括:系统逻辑控制地址译码及数据通道切换逻辑、存储器逻辑控制及状态发生器逻辑、中断发生器、可调时钟逻辑控制、DVB-SPI和DVB-ASI发送信号时序产生及逻辑控制、DVB-SPI和DVB-ASI接收译码及逻辑控制以及LED系统状态指示逻辑控制等。下面对各个逻辑功能模块分别说明。
(1) 系统逻辑控制地址译码及数据通道切换逻辑。
该部分逻辑电路主要完成各个部分器件的选通及相应数据总线的切换,因为板子上的不同器件在系统空间内已经映射了不同的地址空间,比如数据的DMA收发空间,NCO寄存器配置空间等;各器件的数据总线接口不同、位宽也不一定相同。
(2) 存储器逻辑控制及状态发生器逻辑。
该部分逻辑与BUFFER构成了廉价、高速及大容量的FIFO。逻辑部分实现了BUFFER异步读写的双向计数以及BUFFER的状态指示逻辑的生成,比如空状态指示、半满状态指示和全满状态指示等。。
(3)
原创力文档


文档评论(0)