同步fifo电路系统的制作方法

文档序号:6582289阅读:178来源:国知局
专利名称:同步fifo电路系统的制作方法
技术领域
本发明涉及数字电路逻辑设计领域,特别是涉及一种版图可定制的级联阻塞式同 步FIF0(first in first out先进先出)电路系统。
背景技术
同步FIFO是数字电路系统中的一种常用功能模块,主要用于解决逻辑设计中数 据先进先出的存储问题,可以进行数据的同步读取或写入操作。传统的同步FIFO由读、写 指针控制电路和存储体三部分组成。随着存储深度的加深,读、写指针控制电路的规模也相 应增大,芯片面积随之增大,且不得不依赖自动布局布线工具来实现版图,因此很难实现面 积优化。

发明内容
本发明要解决的技术问题是提供一种同步FIFO电路系统,能够实现版图的快速 定制,并可优化集成电路芯片面积。为解决上述技术问题,本发明的同步FIFO电路系统包括多个基本存储单元电 路,各基本存储单元电路通过级联方式依次连接;前级基本存储单元电路的阻塞控制输出作为后级基本存储单元电路的阻塞控制 输入,第一个基本存储单元电路的前级阻塞控制输入为0,即不阻塞,最后一个基本存储单 元电路的阻塞控制输出悬空;后级基本存储单元电路的数据输出作为前级基本存储单元电 路的数据源1的输入,最后一个基本存储单元电路的数据源1的输入为全0 ;读取操作得到 的数据为ο表示同步FIFO电路系统为空,即所有的数据都已被读取完毕;写入操作的数据 要求为非零值,写入0表示当前写入操作无效。所述基本存储单元电路包括数据选择器模块,用于选择需要被锁存的数据源;存储单元模块,与数据选择器模块、阻塞逻辑模块、读写控制逻辑模块相连接,用 于锁存并保持写操作的数据;阻塞逻辑模块,与读写控制逻辑模块、存储单元模块相连接,用于产生相应的阻塞 控制信号,控制所述存储单元模块的阻塞状态;读写控制逻辑模块,与所述数据选择器模块、存储单元模块相连接,根据外部读选 择输入信号或写选择输入信号控制所述存储单元的操作类型。本发明针对传统同步FIFO电路系统需要依赖自动布局布线工具实现版图设计所 存在的缺点,结合具体的应用环境对传统同步FIFO电路系统进行改进,采用级联式的阻塞 技术构造同步FIFO电路系统;使之既能满足实际应用需求,又能优化其版图面积且可以实 现简单快速的定制,并能实现与传统同步FIFO电路系统相似的功能。本发明对于同步FIFO 设计方法的开拓很有裨益,适用于诸如内存管理模块等逻辑设计中。


下面结合附图与具体实施方式
对本发明作进一步详细的说明图1是本发明的基本存储单元电路一实施例原理框图;图2是本发明的同步FIFO电路系统一实施例结构框图。
具体实施例方式在一些诸如内存管理模块的设计中,写操作涉及的数据均为非零数据,而且数据 的读、写操作发生在不同的时钟周期内,因此传统同步FIFO电路系统通常具有的两套独立 的读、写指针控制电路是完全可以改进的。参见图1所示,在一实施例中所述基本存储单元电路,包括数据选择器模块110 ; 存储单元模块120 ;阻塞逻辑模块130 ;读写控制逻辑模块140。数据选择器模块110,根据读写控制逻辑模块140提供的控制信号,从数据源1和 数据源2中选择在下一时钟周期需要被锁存的数据源,作为存储单元模块120的输入。数 据源1是后级存储单元中锁存的数据。数据源2是写操作需要存储的数据。存储单元模块120,根据读写控制逻辑模块140提供的控制信号,锁存并保持数据 选择器模块110提供的写操作的数据;存储单元模块120锁存后的存储数据输出同时作为 阻塞逻辑模块130的输入使用。数据锁存采用同步时钟锁存的方式。读写控制逻辑模块 140提供的控制信号决定下一时钟周期存储单元模块120是否锁存数据选择器模块110输 入的数据。阻塞逻辑模块130,根据存储单元模块120输出的存储数据产生后级基本存储单 元电路100 (结合图2所示)的阻塞控制信号并输出,同时将阻塞控制信号反馈给读写控制 逻辑模块140。阻塞控制信号由存储单元模块120的存储数据按位或并取反之后与前级阻 塞控制信号异或得到;若异或结果为0,则当前存储单元在下一次写操作时将被阻塞;若异 或结果为1,则存储单元模块120在下一次写操作时不会被阻塞,即数据将被写入该存储单 元模块120。阻塞逻辑模块130产生的后级基本存储单元电路100的阻塞控制信号若为1, 则后级存储单元模块120在下一次写操作时会被阻塞;若为0,则后级存储单元模块120的 阻塞与否取决于后级存储单元模块120中锁存的数据是否为0,数据为0则不阻塞,数据为 1则阻塞。读写控制逻辑模块140,根据外部输入的读选择、写选择信号,结合阻塞逻辑模块 130输出的阻塞控制信号,产生读控制信号、写控制信号输出给数据选择器模块110和存储 单元模块120使用。外部输入的读选择、写选择信号在一个时钟周期内只有一个有效或两 个都无效。若为读选择信号有效(即读操作),则读写控制逻辑模块140输出的控制信号使 存储单元模块120在下一时钟周期锁存数据选择器模块110提供的数据源1 ;若为写信号 有效(即写操作),则读写控制逻辑模块140输出的控制信号使存储单元模块120在下一时 钟周期根据阻塞情况决定是否锁存数据选择器模块110提供的数据源2 ;若读、写操作都无 效,则读写控制逻辑模块140输出的控制信号使存储单元模块120在下一时钟周期保持当 前数据。图2是本发明的同步FIFO电路系统200 —实施例结构示意图。所述同步FIFO电路系统200由N个基本存储单元电路100 (在下面的描述中简称为存储单元)通过级联构成,N为存储深度,根据图2存储顺序从右至左依次为存储单元0, 存储单元1,依次类推,直至存储单元N-1。前级存储单元的阻塞控制输出作为后级存储单 元的阻塞控制输入。存储单元0的前级阻塞控制输入为0,即不阻塞。存储单元N-I的阻塞 控制输出悬空。后级存储单元的数据输出作为前级存储单元的数据源1的输入。存储单元 N-I的数据源1的输入为全0。上电复位后所有基本存储单元的初始值均为0。整个电路系统的数据存取操作基 于时钟进行,数据读取或数据写入操作在不同的时钟周期内完成,不可同时进行。读取操作得到的数据为0表示同步FIFO电路系统为空,即所有的数据都已被读取 完毕。写入操作的数据要求为非零值,写入0表示当前写入操作无效。若数据存储深度为N,基本存储单元从0至N-I依次排序,数据从第0个基本存储 单元开始依次存储,直至第N-I个基本存储单元;在已达到最大存储深度的情况下,无法继 续存储新的数据,即新的数据丢失。读取操作始终获取第0个基本存储单元的数据;当第0个基本存储单元的数据被 读取后,第ι个基本存储单元的数据被存储到第O个基本存储单元,第2个基本存储单元的 数据被存储到第1个基本存储单元,依次类推,第N-I个基本存储单元的数据被存储到第 N-2个基本存储单元,第N-I个基本存储单元存储数据0。若第0个基本存储单元的数据为0,会阻塞第1个基本存储单元的数据写入操作; 若第1个基本存储单元的数据为0,会阻塞第2个基本存储单元的数据写入操作,依次类推; 保证写入的数据按照先后次序依次存储。基本存储单元电路100的规模小,结构简单,十分易于通过手工方式实现版图以 得到较优的面积。本发明的同步FIFO电路系统200由于采用N个基本存储单元电路100 通过简单级联构成,因此可手工实现版图以达到结合芯片具体情况优化集成电路芯片面积 的目的。以上通过具体实施例对本发明进行了详细的描述说明,但这些并非构成对本发明 的限制。在不脱离本发明原理的情况下,本领域的技术人员还可以做出许多改进和变形,这 些均视为本发明的保护范围。权利要求
1.一种同步FIFO电路系统,其特征在于,包括多个基本存储单元电路,各基本存储单 元电路通过级联方式依次连接;前级基本存储单元电路的阻塞控制输出作为后级基本存储单元电路的阻塞控制输入, 第一个基本存储单元电路的前级阻塞控制输入为0,即不阻塞,最后一个基本存储单元电路 的阻塞控制输出悬空;后级基本存储单元电路的数据输出作为前级基本存储单元电路的数 据源1的输入,最后一个基本存储单元电路的数据源1的输入为全0 ;读取操作得到的数据为ο表示同步FIFO电路系统为空,即所有的数据都已被读取完毕;写入操作的数据要求为非零值,写入0表示当前写入操作无效。
2.如权利要求1所述的同步FIFO电路系统,其特征在于,所述基本存储单元电路包括数据选择器模块,用于选择需要被锁存的数据源;存储单元模块,与数据选择器模块、阻塞逻辑模块、读写控制逻辑模块相连接,用于锁 存并保持写操作的数据;阻塞逻辑模块,与读写控制逻辑模块、存储单元模块相连接,用于产生相应的阻塞控制 信号,控制所述存储单元模块的阻塞状态;读写控制逻辑模块,与所述数据选择器模块、存储单元模块相连接,根据外部读选择输 入信号或写选择输入信号控制所述存储单元的操作类型;数据存取操作基于时钟进行,数据读取或数据写入操作在不同的时钟周期内完成,不 可同时进行。
3.如权利要求2所述的同步FIFO电路系统,其特征在于所述数据选择器模块根据所 述读写控制逻辑模块提供的控制信号,从数据源1和数据源2中选择需要被锁存的数据源, 作为所述存储单元模块的输入;数据源2是写操作需要存储的数据;所述读写控制逻辑模 块提供的控制信号决定下一时钟周期即将被锁存的数据源。
4.如权利要求2所述的同步FIFO电路系统,其特征在于所述存储单元模块,根据所 述读写控制逻辑模块提供的控制信号,锁存并保持所述数据选择器模块提供的写操作的数 据;存储单元模块锁存后的存储数据输出同时作为所述阻塞逻辑模块的输入;数据锁存采用同步时钟锁存的方式; 上电复位后所有基本存储单元的初始值均为0 ;所述读写控制逻辑模块提供的控制信号决定下一时钟周期所述存储单元模块是否锁 存所述数据选择器模块输入的数据。
5.如权利要求2所述的同步FIFO电路系统,其特征在于所述阻塞逻辑模块,根据所 述存储单元模块输出的存储数据产生后级基本存储单元电路的阻塞控制信号并输出,同时 将阻塞控制信号反馈给所述读写控制逻辑模块。
6.如权利要求1或5所述的同步FIFO电路系统,其特征在于阻塞控制信号由所述 存储单元模块的存储数据按位或并取反之后与前级阻塞控制信号异或得到;若异或结果为 0,则当前存储单元模块在下一次写操作时将被阻塞;若异或结果为1,则当前存储单元模 块在下一次写操作时不会被阻塞。
7.如权利要求5所述的同步FIFO电路系统,其特征在于所述阻塞逻辑模块产生的后级基本存储单元电路的阻塞控制信号若为1,则后级存储单元模块在下一次写操作时会被 阻塞;若为0,则后级存储单元模块的阻塞与否取决于后级存储单元模块中锁存的数据是 否为0,如果该锁存的数据为0则不阻塞,如果该锁存的数据为1则阻塞。
8.如权利要求2所述的同步FIFO电路系统,其特征在于所述读写控制逻辑模块,根 据外部输入的读选择、写选择信号,结合所述阻塞逻辑模块输出的阻塞控制信号,产生读控 制信号、写控制信号输出给所述数据选择器模块和存储单元模块;所述外部输入的读选择、写选择信号在一个时钟周期内只有一个有效或两个都无效; 若为读选择信号有效,则所述读写控制逻辑模块输出的控制信号使存储单元模块在下一时 钟周期锁存所述数据选择器模块提供的数据源1 ;若为写信号有效,则读写控制逻辑模块 输出的控制信号使存储单元模块在下一时钟周期根据阻塞情况决定是否锁存数据选择器 模块提供的数据源2 ;若读、写操作都无效,则读写控制逻辑模块输出的控制信号使存储单 元模块在下一时钟周期保持当前数据。
9.如权利要求1所述的同步FIFO电路系统,其特征在于若数据存储深度为N,基本存 储单元从0至N-I依次排序,数据从第0个基本存储单元开始依次存储,直至第N-I个基本 存储单元;在已达到最大存储深度的情况下,无法继续存储新的数据,即新的数据丢失。若 第0个基本存储单元的数据为0,会阻塞第1个基本存储单元的数据写入操作;若第1个基 本存储单元的数据为0,会阻塞第2个基本存储单元的数据写入操作,依次类推;保证写入 的数据按照先后次序依次存储。
10.如权利要求9所述的同步FIFO电路系统,其特征在于读取操作始终获取第0个 基本存储单元的数据;当第0个基本存储单元的数据被读取后,第1个基本存储单元的数据 被存储到第ο个基本存储单元,第2个基本存储单元的数据被存储到第1个基本存储单元, 依次类推,第N-I个基本存储单元的数据被存储到第N-2个基本存储单元,第N-I个基本存 储单元存储数据0。
全文摘要
本发明公开了一种同步FIFO电路系统,包括多个基本存储单元电路,各基本存储单元电路通过级联方式依次连接;前级基本存储单元电路的阻塞控制输出作为后级基本存储单元电路的阻塞控制输入,第一个基本存储单元电路的前级阻塞控制输入为0,即不阻塞,最后一个基本存储单元电路的阻塞控制输出悬空;后级基本存储单元电路的数据输出作为前级基本存储单元电路的数据源1的输入,最后一个基本存储单元电路的数据源1的输入为全0。本发明能够实现版图的快速定制,并可优化集成电路芯片面积,适用于诸如内存管理模块等逻辑设计中。
文档编号G06F5/10GK102053815SQ20091020175
公开日2011年5月11日 申请日期2009年11月5日 优先权日2009年11月5日
发明者顾福敏 申请人:上海华虹集成电路有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1