一种基于usb接口的设备互连装置的制作方法

文档序号:6617394阅读:342来源:国知局
专利名称:一种基于usb接口的设备互连装置的制作方法
技术领域
一种基于USB接口的设备互连装置技术领域
本实用新型涉及消费性电子产品技术领域,特别涉及一种基于USB接口 的设备互连装置。背景技术
目前,USB接口技术已经广泛的应用于计算机以及消费电子产品中,USB 接口虽然能够实现设备间数据的交换,但是它并不是一种严格意义上的对等 互连接协议,在USB连接系统中,必须有一个主机存在,通信也是建立在主 从控制关系基础之上。也就是说在USB连接系统中,数据交换的双方是主动 与被动的关系,处于主机状态的设备具有控制权,而处于从状态的设备处于 被控制状态。在USB协议开发之初是围绕计算机这个控制中心来设计的,也 就是计算机是USB连接体系中主控制者,它负责USB外围设备ID的分配和 数据的交换控制。随着USB设备产品的日益丰富,更多的USB产品不再是 计算机的周边设备了,许多诸如电视、PDA、数码相机等设备,这些设备也 具有USB的主控制能力,也就是电脑不再是USB连接体系的主体了。当这 样的设备需要相互数据交换和通信的时候,出现了多个HOST控制器的局 面,比如电视和电脑、电视与电视、PDA与电视等具有HOST USB控制功能 的设备在一起的时候,无法将USB直接连接通信了。为此,USB发展到 USB2.0的时候,提出了 OTG (onthego)的处理办法,此方法是在USB DEVICE的基础上添加USB HOST功能,具备一定的主从切换能力。但是仍 然不能满足各种USB设备之间互连互通的需要。新型内容为解决上述问题,本实用新型的主要目的在于提供一种基于USB接口的 设备互连装置。为实现上述目的,本创作的技术方案为 一种基于USB接口的设备互连装置,包括嵌入式CPU、用于动态配置USB接口的FPGA芯片、FLASH程序 存储器、DRAM数据存储器;其中,嵌入式CPU以local bus总线方式连接FPGA 芯片,FPGA芯片利用其高速I/0口连接多个USB接口;另外,CPU还连接有 程序存储器FLASH和数据存储器DRAM。进一步地,所述Flash程序存储器存储有本装置运行所需的嵌入式操作系 统、USB驱动程序、设备互连交换协议、FPGA芯片中配置USB接口的IP核。进一步地,所述IP核分成HOST和DEVICE两种核,用以把FPGA配置成 为具有USB接口功能的硬件单元,根据设备情况可以把该接口变成USB的 HOST或者DEVICE设备。进一步地,所述嵌入式CPU负责整个装置的控制,具体包括对FPGA的动 态配置、USB设备的识别、驱动加载、以及设备间交换协议的执行控制。进一步地,所述FPGA在嵌入式CPU的控制下处于动态配置和运行两个状 态,CPU根据插入设备的性质HOST或者DEVICE来配置该FPGA上USB接口 的IP核。相较于现有技术,本实用新型一种基于USB接口的设备互联装置,具备 多个USB接口 ,且每个USB接口都可以被灵活配置为HOST模式或者DEVICE 模式,结合设备互联交换协议,通过CPU的控制,保证各种USB设备之间能 够有机连接和通信。
图1为本实用新型的原理方框图; 图2为本实用新型中的软件运行处理流程框图。
具体实施方式
请参照图l所示,本实用新型一种基于USB接口的设备互连装置,包括嵌入式CPU、用于动态配置USB接口的FPGA芯片、FLASH程序存储器、DRAM数据存储器;其中,嵌入式CPU以localbus总线方式连接FPGA芯片,FPGA芯片利用其高速I/0口連接多个USB接口;另外,CPU还连接有程序存储器FLASH和数据存储器DRAM。嵌入式CPU负责整个装置的控制,具体包括对FPGA的动态配置、USB设备的识别、驱动加载、设备间交换协议的执行控制工作;FPGA用以实现多个USB设备的物理连接;Flash程序存储器存储有本装置运行所需的嵌入 式操作系统、USB驱动程序、设备互连交换协议、FPGA芯片中配置USB接 口的IP核。其中,嵌入式操作系统负责驱动代码的加载、交换协议程序的运 行、以及设备数据交换中系统资源的提供;USB驱动程序则主要是保证能够 兼容各种USB设备的接入,以及系统对该设备的读写控制;设备互连交换协 议主要是用以不同种类、不同性质USB设备的发现、软件连接、以及通信。 具体包括把已经进行物理连接的USB设备在本装置操作系统中注册、分配本 装置设置的访问ID、统一各个USB设备之间的数据访问方式等工作;IP核 用以把FPGA配置成为具有USB接口功能的硬件单元,其分成HOST和 DEVICE两种核,才艮据设备情况把该接口变成USB的HOST或者DEVICE 设备。在嵌入式CPU的控制下,FPGA处于动态配置和运行两个状态,也即 CPU根据插入设备的性质HOST或者DEVICE来配置该FPGA上USB接口 的IP核,从而建立起基本的USB底层通信。具体的,当插入设备为DEVICE(从设备)时候,该FPGA上的USB接口被配置成为HOST (主控制)模式; 当插入HOST(主控制)设备时,该FPGA上的USB接口被配置成为DEVICE(从设备)模式。当有设备连接到本装置时,首先FPGA的连接在USB接口上的I/O 口能 够根据插入设备的电源引脚电平高低来判断当前设备是主还是从设备,此时 FPGA会把检测的结果反馈给CPU,CPU得到来自FPGA的信息后,从FLASH 中取出FPGA的配置代码,把配置代码动态的配置在该FPGA相应接口单元 中并形成硬件单元。此后,运行在CPU中的软件会进一步检测该设备的类型 以及型号,并调用相应的驱动程序。当为该端口加载设备驱动后,基本的USB 通信已经建立。运行在CPU中的数据交换处理软件,进一步的为建立基本通 信的USB接口分配特定的ID信息并在操作系统中注册,最后根据该设备的 类型设定数据访问接口 。当有另外一个USB设备需要访问这个端口的USB 设备时,首先它要在系统中搜索已经注册的设备信息,并找到这些设备的ID, 最后才找到这些设备的访问接口。当两个设备建立其通信关系后,在数据交 换进程的控制下,便能实现两个设备间的自由数据交换。请参照图2所示,应用时,操作系统启动,首先对CPU及其周边设备做 初始化,然后对FPGA做简单的初始配置,使得各个USB接口具有端口检测功能。当FPGA被初始化结束后,操作系统启动应用程序,并不断的查询FPGA 上的端口是否有设备接入。当检测到有设备接入到FPGA的USB端口上时, 应用程序会进一步的检测该设备是主还是从设备,即检测该设备电源接入端 是否为高电平,如果为高电平,则接入设备为主设备,反之为从设备。在判 断主从设备后,CPU从FLASH中取出FPGA的配置代码对FPGA动态配置。 配置原则是,如果接入设备为主设备,则配置从USB的IP核;如果接入从 设备,则配置主USB的IP核。对FPGA进行动态配置后,操作系统需要进一步的检测该USB设备的具 体类别和型号,以便于加载相应的驱动程序。驱动程序成功加载后,数据交 换软件为该设备分配ID以及对其注册,以便其它设备搜索。成功注册后, 系统为该设备建立统一的数据访问通道。即当有其它设备接入时候,能够通 过这样一个统一通道进行数据交换和通信。以上所描述的最佳实施例仅是对本实用新型进行阐述和说明,但并不局 限于所公开的任何具体形式,进行许多修改和变化是可能的。
权利要求1. 一种基于USB接口的设备互连装置,包括嵌入式CPU、与CPU相连的FLASH程序存储器、DRAM数据存储器,其特征在于还包括还有用于动态配置USB接口的FPGA芯片;其中,嵌入式CPU以local bus总线方式连接FPGA芯片,FPGA芯片利用其高速I/O口连接多个USB接口。
专利摘要本实用新型公开一种基于USB接口的设备互连装置,包括嵌入式CPU、用于动态配置USB接口的FPGA芯片、FLASH程序存储器、DRAM数据存储器;其中,嵌入式CPU以local bus,总线方式连接FPGA芯片,FPGA芯片利用其高速I/O口连接多个USB接口;另外,CPU还连接有程序存储器FLASH和数据存储器DRAM,通过CPU的控制,保证各种USB设备之间能够有机连接和通信。
文档编号G06F13/38GK201111021SQ20072011866
公开日2008年9月3日 申请日期2007年2月12日 优先权日2007年2月12日
发明者勇 徐, 骥 白, 郭敏强 申请人:深圳创维-Rgb电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1