[发明专利]一种可配置的多进多出FIFO的设计方法及装置有效

专利信息
申请号: 202011043662.9 申请日: 2020-09-28
公开(公告)号: CN112181356B 公开(公告)日: 2022-08-19
发明(设计)人: 王俊辉;孙彩霞;郑重;郭维;郭辉;雷国庆;隋兵才;黄立波;冯权友;倪晓强;王永文 申请(专利权)人: 中国人民解放军国防科技大学
主分类号: G06F5/06 分类号: G06F5/06;G06F30/343;G06F8/30
代理公司: 湖南兆弘专利事务所(普通合伙) 43008 代理人: 谭武艺
地址: 410073 湖南*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 配置 多进多出 fifo 设计 方法 装置
【权利要求书】:

1.一种多进多出FIFO,其特征在于,包括控制单元fifo_ctl和数据存储单元fifo_dp,所述控制单元fifo_ctl和数据存储单元fifo_dp均带有时钟输入信号clk和复位控制信号rst,所述控制单元fifo_ctl的输出端和数据存储单元fifo_dp之间连接有信号wren、读指针rptr和写指针wptr一共三组信号,其中信号wren用于表示每个元素是否要根据输入进行更新;读指针rptr用于表示当前输出的指针;写指针wptr用于表示当前输入的指针;所述数据存储单元fifo_dp带有输入信号data_in和输出信号data_out,所述输入信号data_in的输入带宽为输入宽度*元素宽度,所述输出信号data_out的输出带宽为输出宽度*元素宽度,元素宽度为多进多出FIFO的基本宽度,所述控制单元fifo_ctl的输入信号包括ielem_vld、ielem_cnt、oelem_free,输出信号还包括oelem_valid、emtpy、full、fifo_top_vld,输入信号ielem_vld表示当前周期输入数据是否有效;输入信号ielem_cnt表示当前周期输入数据的有效元素个数;输入信号oelem_free表示当前周期队列下游可接收的元素的个数;输出信号oelem_valid表示当前周期的输出数据是否有效;输出信号emtpy表示FIFO队列是否为空;输出信号full表示当前多进多出FIFO是否已满;输出信号fifo_top_vld表示当前多进多出FIFO中最高输入宽度的位的有效状态。

2.根据权利要求1所述的多进多出FIFO,其特征在于,所述控制单元fifo_ctl输出的读指针rptr表示输出元素的指针位置,随着有效输出而循环增加;写指针wptr表示输入元素的指针位置,根据最后输入的有效元素而循环增加;信号wren根据写指针wptr的值和有效输入元素将对应位置的位置为1,指导数据进入到数据存储单元fifo_dp中;

所述控制单元fifo_ctl包括:

输入转换语句模块BCT,用于将正常二进制编码的输入信号ielem_cnt转变为输入宽度的塔式编码的信号ielem_cnt_dec,N位的塔式编码是指对于二进制表示的x,其从x+1到0位都是为1,其余高位都是为0;

第一状态计算语句模块QVC,用于结合信号ielem_cnt_dec、输入信号ielem_vld和信号queue_vld生成信号queue_vld_inc,信号queue_vld表示当前多进多出FIFO中有效元素个数,信号queue_vld_inc用于表示接收该周期有效的输入元素后多进多出FIFO当前的有效状态;其中,信号queue_vld采用塔式编码,信号queue_vld_inc为将信号queue_vld最左侧的1扩展有效元素的个数;

第二状态计算语句模块QVD,用于根据信号queue_vld_inc输出信号queue_vld_dec_winc,信号queue_vld_dec_winc表示考虑了当前周期有效输入和有效输出以后的FIFO队列有效状态;还用于根据输入信号oelem_free和表示当前多进多出FIFO中有效元素个数的信号queue_vld生成信号queue_vld_dec_woinc,信号queue_vld_dec_woinc表示无有效输入元素时的FIFO队列有效状态的变化;

溢出判断语句模块CO,用于根据queue_vld_inc信号、输入信号oelem_free计算表示是否会发生溢出的信号overflow,如果信号queue_vld_inc右移输入信号oelem_free表示的元素个数后仍然超过多进多出FIFO的深度,则信号overflow就置高表示发生溢出;

选择语句模块MUX,用于在信号overflow的控制选择信号queue_vld_dec_winc或信号queue_vld_dec_woinc作为信号queue_vld_dec,且信号overflow置高时选择信号queue_vld_dec_woinc,否则选择信号queue_vld_dec_winc,信号queue_vld_dec表示本周期最后的队列状态信号;

寄存语句模块FF,用于对信号queue_vld_dec进行寄存器暂存,生成表示当前多进多出FIFO中有效元素个数的信号queue_vld供下个周期使用,且信号full为信号queue_vld的最高位;信号empty为信号queue_vld的最低位取反的结果;信号fifo_top_vld为信号queue_vld中最高输入宽度的指定若干位;信号oelem_valid为输入信号oelem_free与信号queue_vld的与操作的结果。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011043662.9/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top