发明名称 同异步转换的双端双通道FIFO
摘要 本发明公开了一种同异步转换的双端双通道FIFO,在数据处理芯片和通信接口之间连接同异步转换的双端双通道FIFO,同异步转换的双端双通道FIFO包括上下行FIFO存储单元、控制数据读写及状态标志生成的逻辑单元、总线管理单元和总线仲裁单元,上下行FIFO存储单元、控制数据读写及状态标志生成的逻辑单元通过总线管理单元连接通信接口,上下行FIFO存储单元、控制数据读写及状态标志生成的逻辑单元在总线仲裁单元的管理下通过总线管理单元连接数据处理芯片。该双端双通道FIFO采用FPGA构造,实现USB2.0接口的同步数据读写和MPU的数据异步读写,满足数据处理芯片和通信接口间进行数据通信协调的需要。
申请公布号 CN102253916B 申请公布日期 2013.09.18
申请号 CN201010180858.2 申请日期 2010.05.21
申请人 淮阴工学院;江苏省电力公司淮安供电公司;江苏省电力公司;国家电网公司 发明人 丁卫红;付丽辉;戴峻峰
分类号 G06F13/40(2006.01)I 主分类号 G06F13/40(2006.01)I
代理机构 淮安市科翔专利商标事务所 32110 代理人 韩晓斌
主权项 同异步转换的双端双通道FIFO,在数据处理芯片和通信接口之间连接同异步转换的双端双通道FIFO,同异步转换的双端双通道FIFO包括上下行FIFO存储单元、控制数据读写及状态标志生成的逻辑单元、总线管理单元和总线仲裁单元,上下行FIFO存储单元、控制数据读写及状态标志生成的逻辑单元通过同步端的总线管理单元连接通信接口,上下行FIFO存储单元、控制数据读写及状态标志生成的逻辑单元在总线仲裁单元的管理下通过异步端的总线管理单元连接数据处理芯片,上行FIFO与USB的数据端点之间使用同步方式进行数据通信,下行FIFO与数据处理芯片MPU之间使用固定地址异步通信方式;其特征在于:上下行FIFO用于数据存储与传输,逻辑单元用于控制数据读写及状态标志生成,逻辑单元根据双向FIFO中的数据当前状态和USB端口的状态生成同步端和异步端所需的各个状态标志,同时使用安全岛机制约束同步端和异步端对同一FIFO的读写,以保证在没有共同的同步时钟的前提下数据读取的正确性;总线管理单元对两端的数据总线的使用方向以及输出状态进行管理,以满足共享数据总线的需要;总线仲裁单元根据当前的异步端口送出的地址信息进行数据总线信号的读写目标的管理,以协调FPGA芯片中构建的各种功能单元的数据读写和总线的共享;根据USB接口芯片输出的端口状态OUT_EMPTY和IN_FULL以及内部状态状态标志FIFO_RDE进行工作状态转换,OUT_EMPTY代表USB的输出端口的空标志,IN_FULL为USB的输入端口的满标志,FIFO_RDE为上行FIFO的读允许标志,系统中各标志都为低电平有效;系统启动后进入状态1,检查OUT_EMPTY、IN_FULL和FIFO_RDE状态标志,如OUT_EMPTY=1,即USB有数据送出,进入工作状态2,在IFCLK的同步作用下将USB输出端口的数据写入下行FIFO中;若OUT_EMPTY=0,即USB数据被读空,转入工作状态3,判断IN_FULL和FIFO_RDE的状态,若N_FULL=1,即USB输入端口不为满,FIFO_RDE=0,上行FIFO可读,则进入工作状态4,在同步信号IFCLK的同步下将上行FIFO的数据写入USB的输入端口;如该两状态标志之一不满足要求即停止数据传输,在N_FULL=0或者FIFO_RDE=1的前提下进入空闲状态1,或根据USB的输入端口的需求OUT_EMPTY=1进入状态2进行下行数据传输;同样如果在状态1时如没有下行数据需求OUT_EMPTY=0,可以根据上行数据需求N_FULL=1,FIFO_RDE=0进入上行数据传输工作状态4。
地址 223001 江苏省淮安市清河区北京北路89号