一种基于fpga技术的光纤传输usb信号的装置的制作方法

文档序号:6589865阅读:107来源:国知局
专利名称:一种基于fpga技术的光纤传输usb信号的装置的制作方法
技术领域
本实用新型涉及USB信号的传输,具体是一种基于FPGA技术的光纤来传输USB信 号的装置。
背景技术
—般来说,USB设备与PC之间的通信是通过电缆实现的。电缆因为造价低廉,因 此在现实生活中广泛应用。然而因为电缆信号的抗衰减以及抗干扰性能不是很理想,所以 在USB规范中对电缆的长度有着严格限制,其通信距离也因此受到限制。相比之下,采用光 纤作为介质来传输USB信号则可以大大提高USB系统的抗衰减和抗干扰性能。此外采用光 纤来传输USB信号,也为远距离传输USB信号成为可能。 —般情况下PC机和USB设备之间的连接方式,前者为直接连接,这样电缆的长度 不能超过5m。另外的常见方法则在PC机和USB设备之间级联了一个hub。 USB规范中允许 最多级联5个hub。 中国专利ZL02284431. 4提到了一种用光纤来传输USB信号的方法,但是这个专利 主要是基于全硬件(例如逻辑电路、驱动电路、激光检测与接收发送电路等)的方式来进行 的。这种近似于全模拟电路的实现方式存在抗干扰能力不强的缺点。另外,USB高速模式 下的差分信号的电平很低,只有几百毫伏。这种电压在普通电路中,特别是逻辑电路中,都 被视为低电平。因此,国内专利ZL02284431. 4提到的方法很难区分USB高速模式下的数据 状态和空闲状态,即很难判断当前是否有数据需要进行传输。另外,USB高速模式下的信号 速率达到480Mbps,而一般电路器件很难满足这种速率下对各种指标的要求,比如对器件翻 转时间、时序上的建立时间和保持时间的要求等。 在专利CN101176085A中公开了利用光纤以及其他介质来进行USB信号的传输,但 是这个专利只是更多地强调其对延时的容忍度很高,更多地描述对如何增加延时容忍度的 实现方法,而并没有很详细描述其如何具体利用光纤来实现USB信号的传输。

实用新型内容本实用新型的目的在于通过光纤来传输USB(通用串行总线)信号,以提高系统的 抗衰减和抗干扰性能,并为远距离传输USB信号创造条件。 如果采用硬件电路的方式将USB信号到光信号两者之间直接进行转换,就很难保 证稳定传输USB高速模式下的信号。但是,如果将USB高速信号数字化,再将其通过光纤来 传输,则可以很好避免上述提到的问题。 基于这个出发点,本实用新型提出了一种基于FPGA技术的光纤传输USB信号的装 置,先将USB高速信号数字化,再将其通过光纤来传输,具体为该装置包括PC端、USB设 备端及光纤,PC端部分包括hub、由FPGA实现的设备控制器、USB PHY、光模块,USB设备端 包括hub、由FPGA实现的主机控制器、USB PHY、光模块,两个部分内部的模块均通过电路连 接,两部分外部之间包括握手信号、USB数据信号以及监控信号均通过光纤连接。[0009] 上述设备控制器和主机控制器的内部均设置有通过电连接的主要负责检测PC机 在枚举USB设备过程中出现的握手信号的握手模块,主要负责对数据的接收、存储和发送 处理的数据收发模块,及主要检测PC机和USB设备的物理连接以及对系统状态的处理的监 控模块。 设备控制器和主机控制器的握手模块内部均设置着通过电连接的上电初始子模 块、USBPHY配置模块、链路连接检测子模块、握手信号检测子模块和握手信号产生子模块。 主机控制器的握手模块内部的握手信号产生子模块设置着握手监控子模块、 CHIRPK码检测子模块和CHIRP KJ序列产生子模块;设备控制器的握手模块内部的握手信 号产生子模块设置着握手监控子模块、CHIRP KJ序列检测子模块和CHIRPK码产生子模块。 本实用新型中,一套装置的设备端挂载着13个USB设备。 由FPGA实现的设备控制器和主机控制器首先检测PC机和USB设备与本装置的物 理连接,由FPGA实现的设备控制器检测PC机与本装置的物理连接,同时主机控制器首先检 测USB设备与本装置的物理连接。当检测到有效连接,主机控制器和设备控制器分别模拟 不同的USB角色,分别检测握手信号,并在不同时间段做出响应信号,进行PC机对USB设备 的握手; 当主机控制器和设备控制器分别检测到有数据的时候,即启动数据收发模块对数 据进行处理,USB PHY芯片负责将USB差分信号转换成并行数据信号,进而主机控制器或者 设备控制器截取该数据,并根据协议进行打包,发送给光模块,对方从光模块接收到信号后 根据协议进行相应的解包,然后再把得到的数据根据USB PHY芯片要求的数据格式将数据 发送给USB PHY芯片,USB PHY芯片再将该数据转换成USB的差分信号,送到PC机或者USB 设备进行识别; 由FPGA实现的设备控制器和主机控制器中设置的数据收发模块在空闲状态就将 下一个帧的SYNC字符提前写入RAM中,当本地的控制器中的数据收发模块接收到经过光纤 传输过来的USB帧信号后就马上发送SYNC,在发送SYNC的同时,本地控制器的数据收发模 块也开始存储这次USB帧的信息,当发送完SYNC后,本地控制器的数据收发模块就已经存 储了一定深度的数据。 主机控制器的握手模块内部的握手信号产生子模块设置着握手监控子模块、 CHIRPK码检测子模块和CHIRP KJ序列产生子模块,后两个模块均与第一个模块相连接,且 在其监控下运行;设备控制器的握手模块内部的握手信号产生子模块设置着握手监控子模 块、CHIRPKJ序列检测子模块和CHIRPK码产生子模块,后两个模块均与第一个模块相连接, 且在其监控下运行。 本实用新型的一套装置的设备端挂载着13个USB设备。如果在外部再级联hub 的话,可以挂载更多设备。 在上电后,本装置会首先检测PC机和USB设备与本装置的物理连接是否有效。一 旦检测到有效连接,装置中的主机控制器和设备控制器分别模拟不同的USB角色,促使PC 机开始对设备进行握手。之后,两个控制器会分别检测握手信号,并在不同时间段做出响应 信号,以完成PC机对USB设备的握手。当主机控制器和设备控制器分别检测到有数据的时 候,即启动数据收发模块对数据进行处理。该数据收发模块通过根据USB帧的特点,采用的 数据收发方法,一定程度上縮小了数据传输上的延时。[0019] 整个装置对所有USB信号进行透明传输,因此不需要再对USB设备的驱动程序进 行额外的开发。本装置支持对USB设备的热插拔。而且,任意时刻PC端部分的状态可以在 USB设备端部分反映出来,USB设备端部分的状态也可以在PC机端部分反映出来。本实用 新型可以利用光纤稳定传输USB高速信号,且兼容全速和低速信号。

图1为本实用新型的PC机与设备的连接方式; 图2为本实用新型的主机控制器或者设备控制器的内部结构图; 图3是主机控制器握手控制模块的内部结构图; 图4是设备控制器握手控制模块的内部结构图; 图5为本实用新型所采用的数据收发方法的原理图。
具体实施方式从图1可以看出,该方式下的装置主要分为两个部分,即PC端部分和USB设备端 部分。图中也标示出了每个部分内部的模块。 见图2,控制器的内部结构主要分为三个模块。根据需要还可以在控制器内部添加 加密模块。握手模块主要负责PC机在检测USB设备中的握手信号,以及对不同时间节点的 握手信号做出相应的响应。数据收发模块主要负责对数据的接收、存储和发送处理。监控 模块主要检测PC机和USB设备的物理连接以及对系统状态的处理。 当上电的时候,PC端部分的设备控制器和设备端的主机控制器分别进行相应的初 始化工作,见图3和图4。此时,PC端的USB PHY(USB底层物理传输芯片)被设备控制器设 置成CHIRP模式,以驱动USB的DP和匿两根差分信号线上出现SEO信号。相应地,设备端 的USB PHY (USB底层物理传输芯片)被主机控制器设置成全速模式,以使得USB的DP差分 信号线为高,匿为低,即进入全速模式的空闲状态。这样做,就不会使得PC机或者USB设 备在对方没有物理连接的情况下自行开始握手。之后,两个控制器分别检测PC机和设备是 否都已经物理连接。如果没有,则继续等待。如果是,则PC端的设备控制器将首先驱动PC 端的USB PHY进入全速模式。在检测到PC机发送过来的连续的满足一定时间长度的SEO 信号后,PC端的设备控制器通过光纤通知设备端的主机控制器驱动其USB PHY进入CHIRP 模式,以通知USB设备开始握手。之后,设备端的主机控制器再启动检测模块,检测USB设 备是否上报CHIRP K码。如果没有,则等待;如果有,则通过光纤通知PC端的设备控制器开 始向PC机报告CHIRP K码,并且根据USB设备传递过来的信息控制CHIRP K码的长度。之 后,PC端的设备控制器开始检测PC是否报告CHIRP K J序列。如果没有,则等待。如果有, 则通过光纤通知设备端的主机控制器向USB设备发送CHIRP K J序列,并根据PC传递过来 的信息决定CHIRP K J序列的长度。主机控制器和设备控制器会对握手事件进行同步。 在完成握手后再启动数据收发模块对USB的数据进行处理。这里以PC访问一次 USB设备为例,说明这个装置是如何通过光纤传输USB信号的,USB访问PC也是同样的方 式。在传输数据的时候,USB PHY芯片负责将USB差分信号转换成并行数据信号。进而主 机控制器或者设备控制器截取该数据,并根据协议进行打包,发送给光模块。这样,数据就 能够通过光纤传递到对方。对方从光模块接收到信号后根据协议进行相应的解包,然后再把得到的数据根据USB PHY芯片要求的数据格式将数据发送给USB PHY芯片。USB PHY芯 片再将该数据转换成USB的差分信号,从而被PC机或者USB设备所识别。 根据USB2. 0规范, 一个有效的USB帧包括SYNC、PID、DATA、CRC和E0P。而每个帧 的SYNC字符的结构都是一样的。基于这一点,FPGA的数据收发模块在空闲状态就将下一 个帧的SYNC字符提前写入RAM中。如图5所示,DIR_R, NXT_R信号为对端USB PHY芯片根 据ULPI协议转换出来的接口信号。这两个信号与USB帧包括SYNC、 PID、 DATA、 CRC和EOP 是对应的。通常情况下,USP PHY是从PID开始报告有效数据的,这样的话,本地的FPGA就 会在接收到PID后再开始往本地的USB总线上驱动SYNC,见图5上半部分。因此,延时会 增大。但是,按照这种新的方法,见图5下半部分,当本地的FPGA接收到经过光纤传输过来 的USB帧信号后就马上发送SYNC。在发送SYNC的同时,本地FPGA也开始存储这次USB帧 的PID、DATA、CRC等信息。当发送完SYNC后,本地FPGA也已经存储了一定深度的数据。因 此,本地FPGA可以接着发送PID, DATA, CRC等信息。这样,既不会破坏当前USB帧的有效 性,又可以一定程度上縮小传输延时。虽然从图5也可以看出本地在接收到对方的帧后只 是延时了很少的时钟周期,但这对于USB通信来说是很有利的。
权利要求一种基于FPGA技术的光纤传输USB信号的装置,包括PC端、USB设备端及光纤,其特征是PC端部分包括hub、由FPGA实现的设备控制器、USB PHY、光模块,USB设备端包括hub、由FPGA实现的主机控制器、USB PHY、光模块,两个部分内部的模块均通过电路连接,两部分外部之间包括握手信号、USB数据信号以及监控信号均通过光纤连接。
2. 根据权利要求1所述的装置,其特征是设备控制器和主机控制器的内部均设置有 通过电连接的主要负责检测PC机在枚举USB设备过程中出现的握手信号的握手模块,主要 负责对数据的接收、存储和发送处理的数据收发模块,及主要检测PC机和USB设备的物理 连接以及对系统状态的处理的监控模块。
3. 根据权利要求2所述的装置,其特征是设备控制器和主机控制器的握手模块内部 均设置着通过电连接的上电初始子模块、USB PHY配置模块、链路连接检测子模块、握手信 号检测子模块和握手信号产生子模块。
4. 根据权利要求3所述的装置,其特征是主机控制器的握手模块内部的握手信号产 生子模块设置着握手监控子模块、CHIRPK码检测子模块和CHIRP KJ序列产生子模块;设备 控制器的握手模块内部的握手信号产生子模块设置着握手监控子模块、CHIRP KJ序列检测 子模块和CHIRPK码产生子模块。
5. 根据权利要求1所述的装置,其特征是一套装置的设备端挂载着13个USB设备。
专利摘要本实用新型提出了一种基于FPGA技术的光纤传输USB信号的装置,先将USB高速信号数字化,再将其通过光纤来传输,具体装置为PC端部分包括hub、由FPGA实现的设备控制器、USB PHY、光模块,USB设备端包括hub、由FPGA实现的主机控制器、USB PHY、光模块,两个部分内部的模块均通过电路连接,两部分外部之间包括握手信号、USB数据信号以及监控信号均通过光纤连接。整个装置采用的数据收发方法,一定程度上缩小了数据传输上的延时,对所有USB信号进行透明传输,任意时刻PC机的状态可以在USB设备端部分反映出来,同理USB设备的状态也可以在PC端部分反映出来,且兼容全速和低速信号。
文档编号G06F13/38GK201477579SQ20092014091
公开日2010年5月19日 申请日期2009年6月2日 优先权日2009年6月2日
发明者吴振峰, 孙述桂, 嵇凌, 张小辉, 秦志辉, 范志刚, 许廷丽 申请人:中国电子科技集团公司第三十四研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1