发明名称 基于FPGA的USB转多路链路接口电路
摘要 本发明公开了一种基于FPGA的USB转多路链路接口电路,主要解决现有单个USB不能与转换为多路链路接口的问题。它包括:USB数据转存单元(1)、下行数据读取单元(2)、下行数据解析单元(3)、N个下行先入先出存储器单元(4)、N个下行Link Port单元(5)、N个上行Link Port单元(6)、N个上行先入先出存储器单元(7)、上行数据写入单元(8)和状态机单元(9)。USB数据转存单元(1)提取USB数据,存入下行先入先出存储器单元(4),再由下行Link Port单元(5)将数据发送给ADSP;上行Link Port单元(6)提取Link Port数据,存储到上行先入先出存储器单元(7),再由USB数据转存单元(1)转换为USB数据。本发明具有结构简单、速度快的优点,可用于USB转多路链路接口。
申请公布号 CN103412847B 申请公布日期 2016.01.13
申请号 CN201310374495.X 申请日期 2013.08.24
申请人 西安电子科技大学 发明人 侯彪;焦李成;张文科;白静;王爽;倪玉峰
分类号 G06F13/40(2006.01)I 主分类号 G06F13/40(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 一种基于FPGA的USB转多路链路接口电路,包括:USB数据转存单元(1)、下行数据读取单元(2)、下行数据解析单元(3)、N个下行先入先出存储器单元(4)、N个下行Link Port单元(5)、N个上行Link Port单元(6)、N个上行先入先出存储器单元(7)、上行数据写入单元(8)和状态机单元(9);所述USB数据转存单元(1),其输入端与电脑的USB接口连接,其输出端与下行数据读取单元(2)连接,用于在下行数据传输时,将USB串行总线数据转换到其内部的下行从属存储器中,在上行数据传输时,将其内部的上行从属存储器中数据转换为USB串行总线数据;所述下行数据读取单元(2),其输入端与USB数据转存单元(1)内部的下行从属存储器和状态机单元(9)连接,其输出端与下行数据解析单元(3)连接,用于读取USB数据转存单元(1)内部的下行从属存储器中的数据;所述下行数据解析单元(3),其输入端与下行数据读取单元(2)和状态机单元(9)连接,其输出端与N个下行先入先出存储器单元(4)连接,用于提取USB数据转存单元(1)内部的下行从属存储器中数据的目标信息,并根据该目标信息,将数据存入对应的下行先入先出存储器单元(4)中;所述N个下行先入先出存储器单元(4),其输入端与下行数据解析单元(3)连接,其输出端与N个下行Link Port单元(5)连接,用于暂时存储下行数据解析单元(3)解析出的数据,其中2≤N≤12;所述N个下行Link Port单元(5),其输入端与N个下行先入先出存储器单元(4)连接,其输出端与模拟半导体的数字信号处理器连接,用于将下行先入先出存储器单元(4)中的数据按照Link Port接口时序发送到模拟半导体的数字信号处理器中;每个下行Link Port单元(5),包括:下行先入先出存储器读取模块(51),其输入端与下行先入先出单元(4)、时钟模块(53)连接,其输出端与下行Link Port时序产生模块(52)连接,用于读取下行先入先出单元(4)中的数据,并输出给下行Link Port时序产生模块(52);下行Link Port时序产生模块(52),其输入端与下行先入先出存储器读取模块(51)、时钟模块(53)连接,其输出端与模拟半导体的数字信号处理器连接,用于将下行先入先出存储器读取模块(51)输入的数据按照Link Port接口时序发送给模拟半导体的数字信号处理器;时钟模块(53),其输出端与下行先入先出存储器读取模块(51)、下行Link Port时序产生模块(52)、状态控制模块(54)连接,用于产生这些模块所需的时钟信号;状态控制模块(54),其输入端与时钟模块(53)连接,其输出端与下行先入先出存储器读取模块(51)、下行Link Port时序产生模块(52)连接,用于控制下行先入先出存储器读取模块(51)的读取操作,并控制下行Link Port时序产生模块(52)的时序产生操作;所述N个上行Link Port单元(6),其输入端与模拟半导体的数字信号处理器连接,输出端与N个上行先入先出存储器单元(7)连接,用于提取模拟半导体的数字信号处理器发送的数据,并将数据写入对应的上行先入先出存储器单元(7)中;每个上行Link Port单元(6),包括:上行Link Port组合逻辑模块(61),其输入端与模拟半导体的数字信号处理器、上行状态控制模块(64)、时钟模块(62)连接,其输出端与上行先入先出存储器写入模块(63)连接,用于读取模拟半导体的数字信号处理器发送的数据;时钟模块(62),其输出端与上行Link Port组合逻辑模块(61)、上行先入先出存储器写入模块(63)、上行状态控制模块(64)连接,用于产生这些模块所需的时钟信号;上行先入先出存储器写入模块(63),其输入端与上行Link Port组合逻辑模块(61)、上行状态控制模块(64)、时钟模块(62)连接,其输出端与上行先入先出存储器单元(7)连接,用于将上行Link Port组合逻辑模块(61)提取出的数据写入到上行先入先出存储器单元(7)中;上行状态控制模块(64),其输入端与时钟模块(62)连接,输出端与上行Link Port组合逻辑模块(61)、上行先入先出存储器写入模块(63)连接,用于控制上行Link Port组合逻辑模块(61)的读取操作,并控制上行先入先出存储器写入模块(63)的写入操作;所述N个上行先入先出存储器单元(7),其输入端与N个上行Link Port发送单元(6)连接,其输出端与上行数据写入单元(8)连接,用于暂时存储上行Link Port单元(6)提取出的数据;所述上行数据写入单元(8),其输入端与N个上行先入先出存储器单元(7)和状态机单元(9)连接,其输出端与USB数据转存单元(1)内部的上行行从属存储器连接,用于读取N个上行先入先出存储器单元(7)中的数据,并将读取出来的数据写入到USB数据转存单元(1)内部的上行从属存储器中;所述状态机单元(9),其与下行数据读取单元(2)、下行数据解析单元(3)以及上行数据写入单元(8)连接,用于在下行数据传输时,控制下行数据的读取和解析操作,在上行数据传输时,控制上行数据写入单元(8)的写入操作。
地址 710071 陕西省西安市太白南路2号