基于NDK的数字电视传输流(TS)网络采集系统
时间:06-21
来源:互联网
点击:
DSP(TMS320DM643)算法处理模块
此模块主要以TI公司的TMS320DM643为核心的嵌入式系统组成。主要实现从PLD模块接收传输流数据包,把数据包打包成TCP/IP格式,并实现对网络接口(BCM5221)控制模块的初始化,然后把数据包传送到网络模块。
为了实现上述功能,必须建立起一套以TMS320DM643为核心的基本系统。系统各个组成部分如图3所示。
系统的具体配置
时钟配置:EMIF内核时钟ECLKIN是133MHz。此外,系统上外设总线、EDMA传输和L2存储器的工作时钟为CPU内核时钟的1/2,即300MHz;片上定时器的工作时钟为CPU内核时钟的1/8,即75MHz。
中断配置:TMS320DM643除了RESET和NMI引脚提供外部不可屏蔽中断请求输入以外,还有2个外部中断引脚GP0[5]/EXT_INT5、GP0[7]/EXT_INT7提供可屏蔽的外部中断请求输入。系统中EXT_INT5外部中断用作PLD模块的请求接收数据信号,每当PLD模块接收完一个传输流(TS)包就会发送一个外部中断信号给DSP,通知DSP接收数据。此外,EDMA中断用于当接收完一个包的数据后做后续处理。
系统对EMIF的使用情况:
系统在CE0空间扩展了4 Mx64-bit的S DRAM 存储器( MT48LC4M32BPG) ,用于存储程序与数据。SDRAM的工作时钟由T MS320DM643 的E CLKOUT1 提供,与E MIF 的工作时钟频率相同,本系统中默认为E CLKIN 为其时钟源,即133MH z。
系统在CE1空间扩展了4Mx8-bit的Flash存储器(Am29LV033C)。在对FLASH进行读/写访问前,需要通过EMIF的CE1控制寄存器CE1CTL将CE1空间配置为8-bit异步存储器接口,及读/写时序。
系统在CE2空间扩展了与PLD模块的fifo模块连接的接口。在DSP看来,fifo模块可视为8-bit异步只读存储器。如图2所示,fifo模块的读使能信号rdreq与TMS320DM643的CE2片选信号连接;fifo模块的读时钟信号rdclk,与TMS320DM643的ARE读使能信号连接。
以太网(EMAC与MDIO)接口
TMS320DM643上集成有一个EMAC+MDIO片上外设,EMAC是Ethernet Media Access controller的缩写,即以太网媒体访问控制器,MDIO是Management Data Input/Output的缩写,即管理数据输入/输出模块。EMAC+MDIO用于为以太网物理层(PHY)器件提供接口,其中EMAC为接口以太网PHY提供数据通路,MDIO为接口以太网PHY提供管理信息通路。以太网接口主要功能如下:符合IEEE 802.3协议;支持传媒无关接口(MII);八个独立的发送与接收通路;同步的10/100Mbit的数据操作;广播及多帧的传送。
TMS320DM643的网络接口的原理框图如图4所示。
图 4描述了EMAC+MDIO与DSP中间有一个EMAC control module模块。它主要包含一些必备的使EMAC更加有效的使用DSP的存储空间,控制其复位、中断的一些逻辑。这些寄存器的地址空间为:0x1C800000~0x1C803FFF。
网络接口(BCM5221)控制模块
本系统中用Broadcom公司的BCM5221作为10/100Base-TX以太网收发器,BCM5221的MII接口与TMS320DM643的MII接口对接。具体接口如图5所示。RJ45连接器选用AMP公司的406549-1,其上带两个LED指示灯,右边的LED为绿色,用作指示连接状态。左边的为黄色,正常情况下用来指示数据传输。
电源模块
系统包括四组电源:系统外接稳压电源,把220V的交流电源电压转换成5V直流电压;PLD模块电源有两种电源供电,分别是3.3V和1.5V;TMS320DM643需要2种电源,分别为CPU核心和周边的I/O接口供电。周边I/O电压要求3.3V,CPU核心电压只要1.4V;网络接口控制模块采用3.3V电源供电。
系统的软件设计
系统的软件设计主要是通过TI公司推出的专门针对C6000系列的TCP/IP网络开发包NDK(Network Developer's Kit)来实现的。该开发包支持TCP/IP协议,并占用较少的系统资源。NDK仅用200~250KB程序空间和95KB数据空间即可支持常规的TCP/IP服务。所以,NDK很适合目前嵌入式系统的硬件环境,是实现DSP网络开发的重要工具。
系统软件的框图如图6所示。
具体流程:系统配置主要在初始化函数中完成,此初始化函数将在.cinit初始化后,并在DSP/BIOS初始化和main函数之前调用。系统配置需要开启INT8中断,也就是EDMA传输中断,并设置GPIO7引脚为高电平,从而使PLD模块始终处于初始状态。TCP/IP协议配置在任务线程中完成,主要实现服务器IP地址和网关的配置。当其完成后,系统就会触发一个软件中断,在软件中断程序中,服务器会产生一个用于侦听的端口,并开始侦听网络上的请求。此时,服务器已经处于待命状态,等待客户机的传输请求。
当客户机的传输请求到来时,系统首先会使GPIO7引脚变为低电平,PLD模块开始发送数据。当其接收到一个完整的传输流数据包后就会发一个中断给DSP,DSP启动EDMA,用ping-pong的方式接收数据进入特定的存储器,当接收完一个完整的传输流数据包后,会产生硬件EDMA中断,中断程序主要是设置特定的标志为1,然后退出硬件中断,重新回到软件中断程序。当软件中断程序检测到特定的标志为1时,就会开始向网络中传输在存储器中的传输流数据包给客户机。当一个数据包传输完毕后,特定的标志会被置0,系统等待下一个数据包的到来。
当客户机要求停止传输的请求到来时,系统会重新使GPIO引脚变为高电平,PLD模块回到初试状态。此时系统也会处于待命状态,继续侦听网络。
此模块主要以TI公司的TMS320DM643为核心的嵌入式系统组成。主要实现从PLD模块接收传输流数据包,把数据包打包成TCP/IP格式,并实现对网络接口(BCM5221)控制模块的初始化,然后把数据包传送到网络模块。
为了实现上述功能,必须建立起一套以TMS320DM643为核心的基本系统。系统各个组成部分如图3所示。
系统的具体配置
时钟配置:EMIF内核时钟ECLKIN是133MHz。此外,系统上外设总线、EDMA传输和L2存储器的工作时钟为CPU内核时钟的1/2,即300MHz;片上定时器的工作时钟为CPU内核时钟的1/8,即75MHz。
中断配置:TMS320DM643除了RESET和NMI引脚提供外部不可屏蔽中断请求输入以外,还有2个外部中断引脚GP0[5]/EXT_INT5、GP0[7]/EXT_INT7提供可屏蔽的外部中断请求输入。系统中EXT_INT5外部中断用作PLD模块的请求接收数据信号,每当PLD模块接收完一个传输流(TS)包就会发送一个外部中断信号给DSP,通知DSP接收数据。此外,EDMA中断用于当接收完一个包的数据后做后续处理。
系统对EMIF的使用情况:
系统在CE0空间扩展了4 Mx64-bit的S DRAM 存储器( MT48LC4M32BPG) ,用于存储程序与数据。SDRAM的工作时钟由T MS320DM643 的E CLKOUT1 提供,与E MIF 的工作时钟频率相同,本系统中默认为E CLKIN 为其时钟源,即133MH z。
系统在CE1空间扩展了4Mx8-bit的Flash存储器(Am29LV033C)。在对FLASH进行读/写访问前,需要通过EMIF的CE1控制寄存器CE1CTL将CE1空间配置为8-bit异步存储器接口,及读/写时序。
系统在CE2空间扩展了与PLD模块的fifo模块连接的接口。在DSP看来,fifo模块可视为8-bit异步只读存储器。如图2所示,fifo模块的读使能信号rdreq与TMS320DM643的CE2片选信号连接;fifo模块的读时钟信号rdclk,与TMS320DM643的ARE读使能信号连接。
以太网(EMAC与MDIO)接口
TMS320DM643上集成有一个EMAC+MDIO片上外设,EMAC是Ethernet Media Access controller的缩写,即以太网媒体访问控制器,MDIO是Management Data Input/Output的缩写,即管理数据输入/输出模块。EMAC+MDIO用于为以太网物理层(PHY)器件提供接口,其中EMAC为接口以太网PHY提供数据通路,MDIO为接口以太网PHY提供管理信息通路。以太网接口主要功能如下:符合IEEE 802.3协议;支持传媒无关接口(MII);八个独立的发送与接收通路;同步的10/100Mbit的数据操作;广播及多帧的传送。
TMS320DM643的网络接口的原理框图如图4所示。
图 4描述了EMAC+MDIO与DSP中间有一个EMAC control module模块。它主要包含一些必备的使EMAC更加有效的使用DSP的存储空间,控制其复位、中断的一些逻辑。这些寄存器的地址空间为:0x1C800000~0x1C803FFF。
网络接口(BCM5221)控制模块
本系统中用Broadcom公司的BCM5221作为10/100Base-TX以太网收发器,BCM5221的MII接口与TMS320DM643的MII接口对接。具体接口如图5所示。RJ45连接器选用AMP公司的406549-1,其上带两个LED指示灯,右边的LED为绿色,用作指示连接状态。左边的为黄色,正常情况下用来指示数据传输。
电源模块
系统包括四组电源:系统外接稳压电源,把220V的交流电源电压转换成5V直流电压;PLD模块电源有两种电源供电,分别是3.3V和1.5V;TMS320DM643需要2种电源,分别为CPU核心和周边的I/O接口供电。周边I/O电压要求3.3V,CPU核心电压只要1.4V;网络接口控制模块采用3.3V电源供电。
系统的软件设计
系统的软件设计主要是通过TI公司推出的专门针对C6000系列的TCP/IP网络开发包NDK(Network Developer's Kit)来实现的。该开发包支持TCP/IP协议,并占用较少的系统资源。NDK仅用200~250KB程序空间和95KB数据空间即可支持常规的TCP/IP服务。所以,NDK很适合目前嵌入式系统的硬件环境,是实现DSP网络开发的重要工具。
系统软件的框图如图6所示。
具体流程:系统配置主要在初始化函数中完成,此初始化函数将在.cinit初始化后,并在DSP/BIOS初始化和main函数之前调用。系统配置需要开启INT8中断,也就是EDMA传输中断,并设置GPIO7引脚为高电平,从而使PLD模块始终处于初始状态。TCP/IP协议配置在任务线程中完成,主要实现服务器IP地址和网关的配置。当其完成后,系统就会触发一个软件中断,在软件中断程序中,服务器会产生一个用于侦听的端口,并开始侦听网络上的请求。此时,服务器已经处于待命状态,等待客户机的传输请求。
当客户机的传输请求到来时,系统首先会使GPIO7引脚变为低电平,PLD模块开始发送数据。当其接收到一个完整的传输流数据包后就会发一个中断给DSP,DSP启动EDMA,用ping-pong的方式接收数据进入特定的存储器,当接收完一个完整的传输流数据包后,会产生硬件EDMA中断,中断程序主要是设置特定的标志为1,然后退出硬件中断,重新回到软件中断程序。当软件中断程序检测到特定的标志为1时,就会开始向网络中传输在存储器中的传输流数据包给客户机。当一个数据包传输完毕后,特定的标志会被置0,系统等待下一个数据包的到来。
当客户机要求停止传输的请求到来时,系统会重新使GPIO引脚变为高电平,PLD模块回到初试状态。此时系统也会处于待命状态,继续侦听网络。
数字电视 嵌入式 DSP 电路 Altera VHDL 总线 收发器 连接器 LED 电源模块 稳压电源 电压 相关文章:
- IPTV技术分析及与数字电视的比较(10-05)
- 德州仪器OMAP? 2 平台助力最新NEC手机(11-14)
- 数字电视终端与芯片的智能化探讨 (03-20)
- 三网融合与数字智能家庭的密切关系(01-26)
- CMMB标准紧急广播服务的研究与应用(02-01)
- 基于AU1200的TS流处理设计(01-22)