当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]0 引言在众多的卫星通信系统中,VSAT(甚小口径卫星终端)卫星通信系统由于具有众多特点,近年来发展很快,特别在专业通信网领域存在广阔的市场,利用此系统进行通信具有灵活

0 引言

在众多的卫星通信系统中,VSAT(甚小口径卫星终端)卫星通信系统由于具有众多特点,近年来发展很快,特别在专业通信网领域存在广阔的市场,利用此系统进行通信具有灵活性强、可靠性高、成本低、使用方便及小站可直接装在用户端等特点,并且VSAT用户数据终端可直与计算机联网,完成数据传递、文件交换、图像传输等通信任务,从而摆脱了远距离通信地面中继站的问题,因此,此系统广泛用于石油、银行、铁路、民航、军事等行业。

在VSAT系统中,用户终端通常是由数字卫星接收机和计算机终端组成,数字卫星接收机包括下变频器、解码器、FEC(前向纠错),解复用器、数字基带处理器和频率合成器等部分,接收机输出的数据一般通过RS-232,RS-422/449以1.2kbit/s-64kbit/s的数据率交给计算机完成应用处理,有些高速卫星数据接收设备解调以后,数据通过额外高速数据卡送入计算机。这种传统的数据卡不仅安装麻烦,且易受机箱内环境的干扰,特别是这种卡通常只能接收单路数据,受计算机插槽数量和地址,中断资源的限制,不可能挂接多个设备,因此,资源浪费尤其严重。

针对这种情况,本文结合卫星接收设备数据采集的实际需要,设计了一种基于USB(通用串行总线)接口的USAT基带数据采集系统,该系统通过对USB接口控制逻辑的合理设计和芯片内部FIFO的有效运用,充分应用了CPLD(复杂可编程逻辑器件)的灵活性,仅采用单片USB接口控制芯片就实现了对多路多速率数字信号的实时采集,这与以往采用USB集线器来实现对多路多速率数字信号采集的系统相比,具有成本低、实现方便等优点。

该系统最多可同时采集8路数字信号,单路最高速率可达2Mbit/s,系统用于控制的CPLD采用Altera公司的EPM7128SLC84;USB接口控制芯片采用Cypress公司EZ-USB FX2系列CY7C68013。

1 系统原理

1.1 USB简介

USB(通用串行总线)是一种应用在PC领域的新型接口技术,支持在主机与各种即插即用外设之间进行数据传输,它由主机预定传输数据的标准协议,在总线上的各种设备分享USB总线带宽,它的主要优点是:数据传输速率明显快于一般的串口,支持控制传输、中断传输、块传输的和同步传输4种传输方式,以满足不同外设的需要,最多可连接127个外设,支持热拔插和即插即用,占用的系统资源少(只占用1个IRP(I/O请求包));无总线竞争等。USB总线技术的提出就是想利用单一的总线技术来满足多种应用领域的需要,USB1.1协议支持低速1.5Mbit/s和全速12Mbit/s两种传输速度。2000年发布了USB2.0协议,它向下兼容USB1.1协议,但在USB1.1的基础上有了质的提高,其理论传输速度可到480Mbit/s。

1.2 系统结构

该系统总体框架分采集控制部分、USB接口控制部分和主机3部分,系统框图如图1所示。

 


外部输入的8路信号中时钟、数据均为TTL电平,采集用的统一时钟为3M赫兹,是由USB控制芯片的外部时钟经八分频得到的。

系统的工作过程如下:每路信号在CPLD的控制下,按采集时钟的统一节拍,各路信号的数据和时钟都被采集进CPLD。在CPLD内,先进行各路信号的时钟上升沿检测,如检测到时钟上升沿,则在相应路数的标志位置1,这表明此时采到的数据有效,若没检测到时钟上升沿,则在相应路数地标志位置0,表明此时采集的数据无效,这样形成的各路信号数据,再加上各路信号数据是否有效的标志,形成2字节的数据送入USB控制芯片的FIFO中,数据进入USB控制芯片后,通过USB接口将数据传输到主机,数据在主机中用软件进行处理,按照各路信号数据是否有效的标志位,将有效数据取出,组合成各路数据。

数据送入主机时的格式如图2所示,前一字节为各路信号数据是否有效的标志,紧跟着的字节为各路信号的实际数据,采用这种特殊的数据格式,以区分各路信号,便于采用统一的时钟来实现对多路多速率数字信号的实时采集,从而减少了很多硬件电路,降低了成本和复杂性,实现更为方便,这也是本系统的一个创新点。

 


2 硬件构成

2.1 EZ-USB FX2(CY7C68013)芯片

CY7C68013属于Cypress公司的FX2系列产品,它提供了对USB2.0的完整解决方案,该芯片虽然采用低价的8051单片机,但仍然能获得很高的速度,主要包括USB2.0收发器、SIE(串行接口引擎)、增强型8051处理器、8.5KB的片上RAM,4KB FIFO存储器、I/O口、数据总线、地址总线和GPIF(通用可编程接口)。

CY7C68013与外设有可编程接口GPIE和从FIFO两种接口方式。可编程接口GPIF是主机方式,可以由软件设置读写控制波形,灵活性很大,几乎可以对任何8bit/16bit接口的控制器、存储器和总线进行数据的主动读写,使用非常灵活,从FIFO方式是从机方式,外部控制器可像对普通FIFO一样对FX2的多层缓冲FIFO进行读写。在本设计中为了方便控制,采用从FIFO方式。

2.2 CPLD芯片EPM7128SLC84

在本设计中,所用的CPLD采用Altera公司的EPM7128SLC84。它属于MAX7000系列,是Altera公司的基于第2代MAX结构的CPLD。它提供多达5000个可用门、128个宏单元,其引脚到引脚延时快达6ns。可以容纳各种独立的组合逻辑和时序逻辑功能,EPM7128S的优点是它基于E2PROM,可以通过JTAG口进行在线编辑,设计者可将设计内容从PC机上通过下载电缆和JTAG口对EPM7128S进行任意次修改,它有多达100个I/O引脚可供编程使用,方便系统扩展存储空间和外设。

本系统使用EPM7128S的主要功能是对各路信号的时钟上升沿进行检测,另外还需要完成一些控制功能,完成各路信号数据的合路,形成特定的数据格式,送入USB控制芯片的FIFO中。

2.3 硬件连接

根据系统对数据传输的速度和实时性的要求,配置CY7C6013的工作接口模式为从FIFO模式,硬件连接方式如图3所示。

 

[!--empirenews.page--]

CPLD控制采集外部数据的时钟可同时作为CY7C68013的从FIFO模式的读写控制时钟,即CY7C68013的接口时钟连接到IFCLK引脚,FLAGA-FLAGD为FIFO标志引脚,用于映射FIFO的当前状态,SLWR/SLRD是CY7C68013从FIFO的写使能/读允许信号,CPLD向CY7C68013从FIFO提供从FIFO输出允许信号SLOE,仅在数据输出时有效,FD[15:0]为16位双向数据总线。FIFOADR[1:0]为端点FIFO选择信号。

3 软件设计

本系统软件设计部分包括固件、驱动程序和应用程序的设计。

3.1 USB设备固件程序设计

固件程序是指运行在设备CPU中的程序,是整个程序设备的核心,可采用汇编语言和C语言设计,CyPress为用户提供了一个固件程序框架,帮助用户完成相当一部分USB协议相关的工作,用户只需根据外设功能的具体要求,在相应的函数中填写函数体。Cypress提供的这一框架程序简化了用户的固件程序设计。

本系统固件开发所使用的编程语言为德国Keil公司的C51编译器,集成开发环境为μVision2,该固件共包含以下5个文件:

1)ez-usb.lib

是EZ USB函数库对象程序代码。

2)usbjmptb.obj

定义了FX2中INT2和INT4的中断跳转表。

3)dscr.a51

包含描述符的表数据,包括设备描述符、设置描述符、接口描述符、端点描述符和字串描述符等,用来定义设备的ID号、端点的设置特性,主机就是通过读取设备的描述符来获取USB外设的功能特性,从而给设备加载相应的驱动程序并配置设备。

4)fw.c

是固件运行的主程序文件,负责处理主机发出的各种USB设备请求,该程序首先初始化所有的内部状态变量,然后调用TD_Init函数进行初始化,并打开中断。之后,固件程序开始列举USB设备,直至在端点0上接收到SETUP令牌包时为止。一旦接收到STUP令牌,其将重复执行下面的任务分配过程:调用用户函数TD_Poll,以完成用户指定的任务;检测是否有USB设备请求(SETUP令牌)如果有,则执行指令并作出相应的操作,如果没有,则继续向下执行,检测USB核是否有USB挂起实践,如果有USB挂起事件,则调用用户程序TD_Suspend,交由用户处理;当TD_Suspend返回为真时,USB核检测是否重新开始事件,如果没有USB挂起事件,则使处理器处于挂起状态,当检测有重新开始的事件,USB核调用用户程序TD_Resume,并继续执行本步骤,当TD_Suspend返回为假时,则继续执行本步骤。

5)periph.c

包含各种用户功能函数(如TD_Init、TD_Poll等)及其INT2中断服务子程序的定义,它实现了本系统的主要功能。

在本系统中,把端点2配置为批量传输、IN方向,封包大小为512字节,每微帧包含2个封包,数据传输速率为64Mbit/s为就可满足实际需要,终端0作为默认的控制传输管道来处理USB事件。

3.2 驱动程序设计

FX2的设备驱动程序有两种:一种用来在设备接入时从主机下载固件到RAM中,称为固件下载驱动程序(ezloader.sys);另一种是在设备重新列举后加载的设备驱动程序(ezusb.sys)。应用软件通过该设备驱动程序与FX2通信。

固件的程序代码既可以通过外部E2PROM下载,也可以通过主机下载在本系统中选择从主机下载,此时外接E2PROM中存放的是固件下载的PID/VID,且第1个字节是0xC0H,系统通过该PID/VID找到固件下载驱动程序(ezloader.sys)将相应的固件代码下载到FX2的RAM中。ezloader.sys的生成是利用Cypress公司提供的固件下载驱动程序源代码和用户编译成功的固件代码。在Win2000 DDK中创建的,并根据E2PROM提供的PID/VID修改相应的.inf文件,在将固件下载RAM中后,系统清楚内存中的固件下载驱动程序,并进行重新列举,让C8051固件控制FX2,此时,系统获得由C8051固件提供的PID/VID(与E2PROM中的不同),认为有新的USB设备接入,并据此加载相应的设备驱动程序。

Ezusb.sys是本系统运行时所使用的主要驱动程序,它定义了几个IOCTL代码,其中:IOCTL_Ezusb_GET_DEVICE_DESCRIPTOR用于读取USB设备描述符;IOCTL_Ezusb_GET_CONFIGURATION_DESCRIPTOR用于读取USB设备的配置信息,IOCTL_Ezusb_BULK_READ用于主机读取USB设备发出的块数据,IOCTL_Ezusb_GET_CURRENT_FRAME_NUMBER,用于读取USB传输过程中当前的帧序号。

3.3 用户程序设计

应用程序开发中,可用VC++编制应用程序。所有的用户程序是通过I/O控制调用来访问EZ-USB的设备驱动程序的,可以把EZ-USB设备当成文件来操作,利用CreateFile得到EZ-USB句柄,通过得到的句柄,用一个Win32函数DeviceIoControl(),把IOCTL和相关的输入输出缓冲区提交给驱动程序,来进行控制传输,用ReadFile,WriteFile进行批量传输。当应用软件退出时,用CloseHandle()关闭设备。

4 结束语

本文结合实际工程的需要,提出了基于USB接口的VSAT基带数据采集的设计方案,并给出了硬件系统及软件设计方法,在USAT通信的实际应用中,该系统与后端软件结合,很容易实现对VSAT数据的分析与处理,可广泛应用于VSAT通信系统中。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

2024 年 3 月 - 全球领先的工业称重和检测技术制造商之一茵泰科推出了Midrics® 1 Ex防爆称重显示器,为危险区域的称重结果显示提供了新的解决方案。以更优惠的价格向客户提供可靠、操作直观简便的产品。

关键字: 显示器 数字通信接口 数据采集系统

USB接口,英文全称为Universal Serial Bus,中文含义是“通用串行总线”。它是一种快速的、双向的、同步传输的、廉价的并且可以进行热拔插的串行接口。USB接口不仅广泛应用于个人电脑和移动设备等信息通讯产品...

关键字: usb接口 USB Type-A

在广泛应用中实现精确测量-从原型机测试,到设备与工厂监控的绝佳工具

关键字: 数据采集 传感器 数据采集系统

北京2023年1月26日 /美通社/ -- 微云全息公司(纳斯达克:HOLO)(以下简称为"HOLO"或"公司"),一家提供全息数字孪生技术服务提供商,今日宣布推出全息脑机接口数据...

关键字: NAS 数据采集系统 脑机接口 DAQ

摘要:研究一类基于STM32的数据采集系统,采集并储存有轨电车车载超级电容的电压/电流数值。首先介绍该数据采集系统中硬件部分的各个功能区域,随后设计了数据采集系统的软件部分,编写了ADC采集的程序并通过GPRS4G无线通...

关键字: STM32 数据采集系统 寿命预测

通过消除对定制ASIC的需求并简化前端设计,测试和测量工程师可以节省数月的设计时间 北京2022...

关键字: 缓冲放大器 数据采集系统

(全球TMT2022年1月20日讯)德州仪器(TI)推出具有业界超宽带宽的高输入阻抗(Hi-Z)缓冲放大器BUF802,能够支持高达3GHz的频率带宽。BUF802具有更宽的带宽和高压摆率,从而能够实现更高的信号吞吐量...

关键字: 缓冲放大器 数据采集系统

摘要:为了解决软件无线电应用中高频处理信号的大带宽信号采集和处理问题,给出了一种在FPGA数据采集系统中采用高速A/D转换芯片ADC08D500来对宽带、高频信号进行实时采样和转换的设计方案以及实验结果,该方案采用模块化...

关键字: 大带宽信号 FPGA 数据采集系统 ADC08D500

本文重点讨论USB通信协议及其接口芯片的控制方法,针对临床需求,设计实现了具有心电、血压智能监测和USB高速数据传输功能的小型化设备,提供心电、血压数据电子病历查询、打印和网络传输等功能,对于提

关键字: 嵌入式 usb接口 血压监测仪
关闭
关闭