当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于USB协议的DSP高速上位机接口设计

摘要:弹载信号处理机的DSP系统需要高速、简便的上位机接口实现大数据量的变量实时监控和在线程序加载功能。USB接口以其简单、高速与通用的优势成为优选。介绍一种基于USB接口芯片(CY7C68013A)和FPGA实现的ADSP-TS101扩展USB接口的设计方法,该方法利用DSP的Link-port接口,以DMA方式进行高速数据交换,目前该设计已成熟、可靠地应用于某弹载信号处理系统。
关键词:USB;DSP Linkport;PC机接口;高速数据交换

0 引言
    ADI公司的DSP器件(ADSP-TS101)具有浮点实时处理能力强、并行性好等优点,从而广泛被弹载信号处理系统选用。其作为弹载主处理器,在导弹的系统试验中,需要利用上位机对其中的大数据量的软件变量进行实时监控和记录,这就需要一个上行传输给上位机的高速通信接口,数据上行的数据率需要大于6 MB/s。同时这个通信接口还需具有双向特性,通过数据下行可实现在线程序加载与烧写。这样的通信接口,还需具备设备连接简单、通用性强等特性,并能实现远程(大于3m)数据传输。
    ADSP-TS101自身的外总线接口和链路口(Linkport接口),虽速度很快,但连接复杂,难以长线传输,并不具备上述需求特征。可以通过在DSP的Linkport总线接口上增加FPGA实现的适配电路,扩展USB 2.0接口,实现上述应用需求。下文将介绍具体的实现方案。

1 系统总体方案
    系统实现的总体方案如图1所示。


    在本方案中,USB接口芯片选用Cypress公司的CY7C68013A。该芯片是Cypress公司FX2系列USB 2.0集成微控制器之一。集成了USB 2.0收发器、SIE、增强8051微控制器和GPIF,是一种优秀的高速USB外设控制器。内置的8051微控制器独立于USB数据通道,由SIE实现大部分USB 1.1和USB 2.0协议;USB FIFO和外部从FIFO映射到相同的8个512 B RAM模块,实现内部传输和外部传输的无缝连接,可以较低的代价获得较高的带宽;8.5 KB内部RAM空间,可运行较为复杂的固件,实现软件对硬件的配置。GPIF是由用户可编程有限状态机驱动的柔性8/16位并行口,可编程GPIF向量组成一个GPIF波形,匹配受控接口的时序。
    ADSP-TS101作为弹载主DSP芯片,含4个链路口,每个链路口可在时钟双沿以8位进行双向数据传输,速率高达250 MB/s。通过该接口,DSP每个处理帧将预观测的变量结果以DMA的方式打包向上位机发送。
    FPGA实现ADSP-TS101的Linkport接口与CY7C68013A之间的双向数据缓冲和接口协议转换。考虑到CY7C68013A中的FIFO容量较DSP的一个处理帧预发送或接收的数据量较小,故在FPGA中设置上行和下行各一个大容量FIFO,用于数据缓冲,以减少对DSP中并行流水运行的程序的打扰。这里,由于DSP链路口的瞬时数据率远高于USB芯片的传输速率(理论上限为60 MB/s),故FIFO的DSP端口的数据传输为:一个处理帧只操作一次,而USB芯片端则分成多次操作。
    限于篇幅,下文将重点对传输数据率要求高、设计难度大的上行通道的设计进行详细描述。
[!--empirenews.page--]
2 FPGA的模拟Linkport口设计
    FPGA需要模拟Linkport口的接口时序,其与DSP的硬件连接关系图如图2所示。


    Link协议通过8位并行数据总线完成双向数据传输,与数据总线配合的还有相应的时钟信号线LxCLKIN,LxCLKOUT。
2.1 Linkport口的传输协议
    Linkport口传输数据时,每8个周期传送一个4字组(16 B),在时钟的上升沿和下降沿均传送一个字节。在传送过程中,发送端将检测接收端的LxCLKOUT信号,仅当接收端将它的LxCLKOUT置为高时,即接收端处于接收方式,且有空闲的缓冲时,发送端才可以启动下一个传送过程。
    传送启动过程如图3所示,发送端驱动信号LxCLKOUT为低电平,以此向接收端发出令牌请求,发出令牌请求后,发送端等待6个周期,并验证LxCLKIN是否依旧为高,若是则启动传送过程。传送过程启动一个周期以后,接收端将发送端的LxCLKIN驱动为低,以此作为连接测试。若接收完当前4字组后接收端无法再接收另外的4字组,则接收端保持LxCLKIN为低。这种情况下,缓冲空闲后LxCLKIN信号被禁止。若缓冲为空,则接收端将置LxCLKIN为高电平。


    作为同步信号,LxCLKOUT信号由发送端驱动。数据在LxCLKOUT的上升沿和下降沿处锁存到接收缓冲中,发送和接收缓冲都是128b宽。  LxCLKIN信号由接收端驱动,发往发送端,它通常用作“等待”指示信号,但LxCLKIN信号也可以用作连接测试信号,保证接收端能正确地接收当前传送数据。
    当LxCLKIN信号用于等待指示信号时,接收端驱动LxCLKIN信号为低电平。若LxCLKIN信号保持低电平状态,则发送端可以[完成当前的4字组传送,但无法启动下一个垂字组传送。若还有其余的数据需要传送,发送端需将LxCLKOUT置低,并等待接收端将LxCLKIN驱动为高电平。如果在第12个时钟沿到来之前LxCLKIN变为高电平,则紧跟着传送的将是新的4字组。[!--empirenews.page--]
2.2 FPGA内的Linkport口逻辑设计
    由于Link协议采用双时钟沿传输数据,而同步FPGA系统中,一般只采用单一时钟的上升沿完成操作,因此需要将FPGA系统工作频率SCLK设定为Link时钟的2倍。然后将该时钟的两分频输出作为LxCLKOUT信号,有效数据则在SCLK的上升沿更新。
    FPGA中的Linkport口接口模块电路与ADSP-TS101的Linkport口完全兼容,且采用了双向双倍数据传输DDR技术,能实现双向双倍的数据传输。FPGA中的Link口接口模块电路如图4所示。


    图5是FPGA内实现DSP数据上行的Linkport口接收时序仿真图(基于Modelsim仿真软件)。


    Link口协议的一大特点就是在收发数据时可以选择是否需要校验位VERE比特,VERE的启用或关闭可以通过ADSP-TS101中的寄存器来设置,也可以通过FPGA模块中的Verein信号置高或置低来设置。该设计在FPGA中设置VERE信号的启用或关闭。当VERE启用后,FPGA模块中的输出信号Rx_Vere_Bad用于表征最后接收的128 b数据是否正确。由于使用VERE有两个好处,一是能保证数据的完整性;二是能减小在两个时钟不严格一致的系统中传输数据时产生数据重叠的可能性。因而在设计中采用了带数据校验的传输方式。
[!--empirenews.page--]
3 USB传输设计
3.1 传输方式的确定
    CY7C68013A芯片具有GPIF模式和从属FIFO(Slave FIFO)模式两种接口工作模式。在本设计中,USB数据传输存储模块负责完成存储算法产生的大量数据的高速传输,由于不涉及到对外部电路的控制,所以不选用GPIF模式,而选择Slave FIFO模式进行连接。在数据传输时,用Slave FIFO接口模式,批量传输,自动输入(AUTOIN)方式,使用EP6端口作为上行输入缓冲区。CY7C68013A的,Slave FIFO接口模式如图6所示。


3.2 EZ-USB FX2时序设计
    在本设计的FPGA中,设计了如图6的外部主控制器的功能逻辑。由于DSP端Linkport口数据传输速率很高,而在USB端的速率可能无法跟Linkport口的数据率相匹配,故在FPGA中开辟一个2KB的FIFO,经由Linkport上传的数据首先传送到FIFO中,之后再经由USB口上传至主机。为了保证数据传输的完整性,设计USB的数据传输速率为DSP Link口的1/8。在此,对FPGA逻辑应用Modelsim软件进行了仿真,仿真结果如图7所示。


    图7中,在LxCLKIN时钟的上升沿和下降沿将DSP_Data中的数据写入到FPGA的FIFO中,然后再把FIFO中的数据从数据线USB_Data中输出给EZ-USB FX2的FD数据线,最后经由USB传送给主机。图中USB_Data的数据率明显只有DSP_Data数据率的1/8,是符合设计要求的。


    在上传传输时,采用异步自动输入方式。EZ-USB FX2芯片FIFO异步写时序如图8所示。根据此时序,在本设计中,FPGA输出的USB_Data信号提供给USB的FD数据线,FPGA输出的USB_SLWR提供给USB的SLWR,USB端便能在SLWR的下降沿把数据线FD中的数据写入到FX2芯片FIFO中,并由USB传送给主机。

4 结语
    本文重点对DSP扩展USB接口的数据上行通道的硬件设计进行了详细论述。本系统经测试验证,通过该扩展USB接口,配合定制的上位机软件,DSP数据上传PC机的速率平均达到8 MB/s以上,连接可靠稳定,满足对DSP变量实时监测的数据率需求,同时可通过此接口完成程序的加载与烧写功能。仅需一台带USB接口的PC机,就能完成弹载DSP系统的实时测试与在线程序加载,简捷、通用、方便,具有显著的工程实用价值。

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

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭