hsdi(high speed direct injection)是一种可配置的高速数据接口。例如,德州仪器公司生产的集成式1394a链接层控制器与舣端口物理层控制器tsb43da42和tsb43db42分别包括3个高速数据端口(hsdi)。每个端口均支持数据i/o,能专门负责一个同步数据路径,所有端口都支持与各种编解码器的无缝连接,能够根据iec61883标准实现压缩的a/v数据与数字音频的传输。还有就是freescale公司计划开发的uwb系列产品。这些uwb网卡符合美国联邦通讯委员会(fcc)现行拟定的uwb标准,支持多种操作系统;同时,这些产品将拥有mini-pci和sdio模组外形结构,并且,还将具有pci、mini-pci、hsdi、pci-express、usb 2.0和ieeel394等各种界面。下面就freescale公司的一种uwb网卡上的hsdi接口作一介绍。
mc270143 mac是freescale公司uwb网卡xsllo上的一部分。它直接与基带控制器mc270123相连,当和mc270123控制器以及mc270113 rf发送器结合使用时,可以提供一种完全端到端的wpan/wlan芯片集解决方案,并具备低成本、低功耗和高速数据传输速率。
由于freescale公司的uwb网卡遵循ieee 802.15.3网络层协议标准,那么对于其上的hsdi接口,从主机来说,遵循ieee 802.15.3协议标准的请求和响应消息是从hsdi的a口输入的,而确认和指示消息是从hsdi的b口输出给当地主机的;通过空中链路去往另一个uwb设备的数据信息,从hsdi的a口进入,另一个uwb设备从b口输出。在hsdi并行接口中,是以字节为单位来传输数据的,并且字节与字节之间没有延时。
1 hsdi接口硬件结构
图1为freescale公司xsilo网卡上mc270143模块的hsdi接口硬件结构框图。
①hsdi a和hsdi b用于传输高速数据流或者命令和控制信号,它们支持传输同步或异步的数据流以及命令消息和相关的响应消息。hsdi a只能配置成输入接口,hsdi b只能配置成输出接口。hsdia和hsdi b都是由8位并行端口和输入时钟以及相关控制信号组成的。
②每个fifo的容量为512×32位。
③o_hsdiahalt信号用来阻止数据从hsdi a接口输入,o_hsdiahaltxin信号产生后mc270143最多还可以接收16字节的数据。也就是说,外部时钟必须在16个时钟周期之前产生o_hsdiahalt。
④任何从mc270143接收输出数据的设备必须能够在产生i_hsdibhalt后再接收至少1 6字节的数据,也可配置mc270143上的hsdi b模块忽略产生i_hsdibhalt信号。
2 hsdl接口信号描述
整个xsll0模块的外部接口主要为:输入是天线部分,输出是hsdi接口。接口(相对uwb网卡而言)说明如表l所列。
hsdi接口可以配置成发送和接收定长/可变长度的数据包。定长数据包模式包括hsdi输入模式(hsdi a)和hsdi输出模式(hsdi b):所有输入到hsdi接口的数据都是在hsdiclk的上升沿采样输入;输出数据在hsdi-clk的下降沿输出。相应的时序图如图2和图3所示。
说明:在定长和可变长数据包类型下,hsdi接口信号描述是相同的;惟一的不同在于,在可变长模式下,hsdisync信号与最后一个有效字节对齐,而在定长模式下与第一个有效字节对齐。
3 基于fpga实现hsdi接口的设计
利用fpga硬件处理速率高的特点,通过普通数据包的发送可实现发送端hsdi接口的设计,并把数据通过hsdi接口发送到uwb网卡,再由uwb网卡发送出去,随后由另外的uwb网卡接收相应的数据。
发送端fpga负责把数据打包并生成相应的数据有效信号和同步信号,然后通过hsdi接口发送给uwb网卡。fpga与hsdi的接口定义如图4所示。
4 打包发送模块程序设计
由于usb网卡遵循ieee 802.15.3网络层协议标准,考虑到发送端和接收端.做简单的应用层协议如下:
其次,按照hsdi传输格式,可以确定的是在发送hsclivalid、hsdisync、hsdidata信号的时候要用lasdiclk的下降沿送出,以保证网卡的正确采样。(vhdl程序见本刊网站www.mesnet.com.cn——编者注)
①hsdidata数据信号的生成:将发送包的包头信息存放在一个固化的小表里(内部的自建存储器)。数据的打包发送主要由2个与时钟同步的计数器datacntl和datacnt2(hsdiclk下降沿产生)控制。datacntl为4位,控制发送11位包头信息,根据不同计数器的值决定发送包头信息位数据。发送到最后1位包头信息时。启动datacnt2计数,开始发送包数据,且发送的数据和计数器datacnt2的值是相等的,以确保接收端检测数据传输的正确性。
②hsdivalid信号的生成:由datacnt2来控制。hsdi-valic初始化为0,在计数器datacnt2记到x“ff”时为0,其他情况下为l即可标志一个包的有效数据位。
③hsdisync信号的生成:由datacntl来控制。hsdi-sync韧始化为0,由于采用的是定长数据包模式,所以在计数器记到x“00”时为1,标志包数据的第1位,其他情况下为0。modelsim仿真得到的时序如图5所示。quartusⅱ仿真结果如图6所示。
5 结论
本文详细讨论了hsdi接口的硬件结构以及接口信号的时序和功能操作。结合fpga高处理速度的特点,实现了基于fpga的hsdi接口设计,最后结合实例成功地进行了仿真和验证,并在实际硬件平台上实现了发送和接收解析数据包。
硕盟USB3.0电脑千兆以太网卡,让电脑连接高速有线网络
如何自制一个简易的100W的高频逆变器?
元宇宙时代入口之战打响 Meta首个VR展厅来了
助力汽车电子产业创新 科达嘉车规级一体成型电感
阿里云严重故障,全线产品受影响(已恢复)
利用FPGA硬件处理速度性能实现HSDI高速数据接口的设计
实施各种软件值得付出努力吗?
【节能学院】ANSVC无功补偿装置在河北某购物广场中的应用
基于NI Scope实时数据采集系统设计
智能燃气表电机阀的原理及设计
Cargo如何访问世界上最强大的3D库
东芝为工控设备提供的九款通过UL 508认证的光继电器资料说明
微处理器温度控制模拟计算阶段功能块
福布斯发布第33期年度全球亿万富豪榜,马化腾进入TOP20的理由是什么?(附名单)
如何使用LED恒流驱动IC和多谐振荡器实现PWM调光控制
轻松清洁房屋,蒸汽拖把好用吗
为什么中国AI芯片产业难改依附式生存?
智慧社区积极对抗疫情 发挥了极其重要的作用
飞兆半导体推出 2MHz、500mA同步降压调节器FAN53
英镑抢手机内幕?小米饥饿营销