System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据交互,尤其涉及一种同步fifo电路及其控制方法。
技术介绍
1、当多个模块或组件之间需要进行数据交换时,同步fifo(synchronous fifo)是一种常用的解决方案。同步fifo提供了一种可靠且有效的方式来实现并行系统中的数据传输和同步。在并行系统中,不同的模块可能以不同的频率产生数据或处理数据,如果没有合适的同步机制,就会导致数据的丢失、错位或不可靠的传输。同步fifo通过使用同步信号和先进先出的原则,解决了这些数据传输和同步的问题。
2、现有的同步fifo一般使用ram作为存储单元,使用ram一般要购买ip从而使成本增加,而且使用ram对数据格式不利于针对特定场景进行定制化设计容易造成面积资源浪费,现有同步fifo在空闲状态未进行低功耗设计易造成能源浪费。现有同步fifo存在假满假空现象。
技术实现思路
1、本专利技术的目的在于提供一种同步fifo电路及其控制方法,增加时钟门控电路,避免了不必要的存储单元翻转带来的动态功耗。
2、为解决上述技术问题,本专利技术采用如下技术方案:
3、本专利技术实施例的一方面提供了一种同步fifo电路,所述同步fifo电路包括:存储单元,所述存储单元用于存储数据;写入控制逻辑单元,所述写入控制逻辑单元连接所述存储单元,用于将数据写入存储单元;读出控制逻辑单元,所述读出控制逻辑单元连接所述存储单元,用于将所述存储单元的数据读出;时钟门控电路和组合逻辑单元,组合逻辑单元分别连接所述写入控制
4、在一些实施例中,所述存储单元包括选择输入开关、选择输出开关和至少两个存储模块,所述至少两个存储模块分别连接所述选择输入开关和选择输出开关,在写入数据时所述选择输入开关用于选择将输入数据写入至少两个存储模块中的一个存储模块内,在读出数据时所述选择输出开关用于选择至少两个存储模块中的一个存储模块的数据输出。
5、在一些实施例中,所述存储单元还包括缓存存储模块,所述缓存存储模块的输入端用于接收所述写入控制逻辑单元写入的数据,所述缓存存储模块的输出端连接所述至少两个存储模块。
6、在一些实施例中,所述缓存存储模块和所述至少两个存储模块均采用寄存器。
7、在一些实施例中,所述至少两个存储模块包括第一存储模块、第二存储模块、第三存储模块和第四存储模块,所述第一存储模块、第二存储模块、第三存储模块和第四存储模块均连接所述缓存存储模块、所述选择输入开关和所述选择输出开关。
8、本专利技术实施例的一方面提供了一种同步fifo电路的控制方法,应用于如上所述的同步fifo电路,所述控制方法包括写入控制逻辑单元控制方法,所述写入控制逻辑单元控制方法包括:所述写入控制逻辑单元获取所述时钟信号、所述存储单元的空间状态、所述存储单元的繁忙状态以及所写入的数据量;根据所述时钟信号、所述空间状态、所述繁忙状态和所述数据量判定是否执行写入操作。
9、在一些实施例中,在根据所述时钟信号、所述空间状态、所述繁忙状态和所述数据量判定是否执行写入操作中,所述方法还包括:当所述空间状态能够容纳所述数据量、所述时钟信号处于上升沿以及所述繁忙状态为不繁忙时,则将数据传输至存储单元。
10、在一些实施例中,所述控制方法还包括读出控制逻辑单元控制方法,所述读出控制逻辑单元控制方法包括:当所述读出控制逻辑单元接收到所述时钟信号处于上升沿以及接收到读出请求信号时,则将存储单元输出的数据读出。
11、在一些实施例中,所述控制方法还包括存储单元控制方法,所述存储单元控制方法包括数据存储方法,所述数据存储方法包括:所述选择输入开关获取待存储数据的存储模块地址,所述缓存存储模块获取时钟信号;当所述时钟信号处于上升沿以及所述缓存存储模块接收到写使能信号时,则选择输入开关根据所述存储模块地址控制待存储数据的存储模块打开,所述缓存存储模块将数据存储至待存储数据的存储模块中。
12、在一些实施例中,所述存储单元控制方法还包括数据读出方法,所述数据读出方法包括:所述选择输出开关获取待读出数据的存储模块地址;所述选择输出开根据所述存储模块地址控制待读出数据的存储模块打开,所述待读出数据的存储模块将数据传输至所述读出控制逻辑单元。
13、根据本专利技术实施例的一种同步fifo电路及其控制方法,至少具有如下有益效果:用寄存器代替ram作为存储单元,控制简单,可根据实际情况设计存储单元的大小即寄存器的个数及数据位宽,减少了面积,节省了芯片成本。在作为存储单元的寄存器堆上增加时钟门控信号,避免了不必要的寄存器翻转带来的动态功耗。
14、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
本文档来自技高网...【技术保护点】
1.一种同步FIFO电路,其特征在于,所述同步FIFO电路包括:
2.根据权利要求1所述的同步FIFO电路,其特征在于,所述存储单元包括选择输入开关、选择输出开关和至少两个存储模块,所述至少两个存储模块分别连接所述选择输入开关和选择输出开关,在写入数据时所述选择输入开关用于选择将输入数据写入至少两个存储模块中的一个存储模块内,在读出数据时所述选择输出开关用于选择至少两个存储模块中的一个存储模块的数据输出。
3.根据权利要求2所述的同步FIFO电路,其特征在于,所述存储单元还包括缓存存储模块,所述缓存存储模块的输入端用于接收所述写入控制逻辑单元写入的数据,所述缓存存储模块的输出端连接所述至少两个存储模块。
4.根据权利要求3所述的同步FIFO电路,其特征在于,所述缓存存储模块和所述至少两个存储模块均采用寄存器。
5.根据权利要求4所述的同步FIFO电路,其特征在于,所述至少两个存储模块包括第一存储模块、第二存储模块、第三存储模块和第四存储模块,所述第一存储模块、第二存储模块、第三存储模块和第四存储模块均连接所述缓存存储模块、所述选择输
6.一种同步FIFO电路的控制方法,应用于如权利要求5所述的同步FIFO电路,其特征在于,所述控制方法包括写入控制逻辑单元控制方法,所述写入控制逻辑单元控制方法包括:
7.根据权利要求6所述的同步FIFO电路的控制方法,其特征在于,在根据所述时钟信号、所述空间状态、所述繁忙状态和所述数据量判定是否执行写入操作中,所述方法还包括:
8.根据权利要求6所述的同步FIFO电路的控制方法,其特征在于,所述控制方法还包括读出控制逻辑单元控制方法,所述读出控制逻辑单元控制方法包括:
9.根据权利要求6所述的同步FIFO电路的控制方法,其特征在于,所述控制方法还包括存储单元控制方法,所述存储单元控制方法包括数据存储方法,所述数据存储方法包括:
10.根据权利要求6所述的同步FIFO电路的控制方法,其特征在于,所述存储单元控制方法还包括数据读出方法,所述数据读出方法包括:
...【技术特征摘要】
1.一种同步fifo电路,其特征在于,所述同步fifo电路包括:
2.根据权利要求1所述的同步fifo电路,其特征在于,所述存储单元包括选择输入开关、选择输出开关和至少两个存储模块,所述至少两个存储模块分别连接所述选择输入开关和选择输出开关,在写入数据时所述选择输入开关用于选择将输入数据写入至少两个存储模块中的一个存储模块内,在读出数据时所述选择输出开关用于选择至少两个存储模块中的一个存储模块的数据输出。
3.根据权利要求2所述的同步fifo电路,其特征在于,所述存储单元还包括缓存存储模块,所述缓存存储模块的输入端用于接收所述写入控制逻辑单元写入的数据,所述缓存存储模块的输出端连接所述至少两个存储模块。
4.根据权利要求3所述的同步fifo电路,其特征在于,所述缓存存储模块和所述至少两个存储模块均采用寄存器。
5.根据权利要求4所述的同步fifo电路,其特征在于,所述至少两个存储模块包括第一存储模块、第二存储模块、第三存储模块和第四存储模块,所述第一存储模块、第二...
【专利技术属性】
技术研发人员:乔树山,王建超,游恒,尚德龙,周玉梅,
申请(专利权)人:中科南京智能技术研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。