读等待时间控制电路的制作方法

文档序号:6757912阅读:113来源:国知局
专利名称:读等待时间控制电路的制作方法
技术领域
本发明涉及一种用于初始化一个读等待时间的方法以及电路布置,其特别用于DDR图形存储器中。
虽然能用于任意的半导体存储器,但以下将关于DDR半导体存储器、并且这里特别关于图形存储器,说明本发明及本发明所涉及的问题。
在现代计算机和软件应用中对在更短的时间内处理更大的数据量的需求迅速增加。使用例如DRAM存储器的大规模集成存储器来存储数据。在这样的半导体存储器,特别是在例如DRAM存储器的动态读写存储器的制造中,使用了各种实施例以及变型,各个实施例由于其各自操作特性的缘故而彼此不同。
因此,为了满足以上所述的处理数据对高速的需求,有必要生产这样一种半导体存储器,其能迅速地将所述的数据写入存储器并能相应快速地将数据从存储器中读出。这能通过逐步地增加从半导体存储器读出数据以及将数据写入半导体的操作频率而实现。
还可能使用特别为高数据率而设计的半导体存储器。这种半导体存储器的一种典型代表就是所谓的DDR-DRAM存储器,其中DDR代表“双数据率”(Double Data Rate)。而在传统的半导体存储器中写和读操作仅仅在时钟信号的上升沿或下降沿执行,在本发明所涉及的DDR半导体存储器中,数据在时钟信号的上升沿和下降沿都能从该半导体存储器读出和写入。这样的半导体存储器因此称之为双数据率。
在同步的,即时钟控制的数据通信中,特定的时间周期,即所谓的等待时间,通常存在于发起数据传送的命令和实际数据传送之间。在包括了一个处理器和存储器芯片的计算机系统中,如果所述的存储器芯片从处理器一起接收一个读取命令和所需的地址,该存储器芯片随后将所请求的数据发送回处理器。然而,在这种情况下,读取的数据并不会立即发送到处理器,而是在经过预先设置的、固定的时钟周期,即所谓的读等待时间后再发送。相应的情况也同样发生在写操作中。
读等待时间以及写等待时间尤其取决于存储器芯片提供数据所需的绝对时间,同时也取决于系统时钟的时钟周期的持续时间。在传统的DRAM半导体存储器中,读等待时间被程序化于该半导体存储器的模式寄存器中。例如,在第二代DDR-DRAM半导体存储器(DDR-II)中,写等待时间连接到读等待时间并且通常比读等待时间要短一个时钟周期。因此存在以下关系写等待时间=读等待时间减1。
等待时间发生器的结构和功能以及读等待时间电路都是公知的,在以下将不再进行详细地描述。这种等待时间电路的通用背景可以参考DE10239322A1、DE10208715A1、DE10208716A1以及DE10210726A1号专利文献。
涉及“IEEE国际固态电路会议2003(International Solid StateCircuits Conference 2003)”的会议公开文献ISSCC 2003/17期/SRAM和DRAM/17.8号文章说明了一种用于SDRAM半导体存储器的读等待时间控制电路。这样的读等待时间控制电路的基本原理如文章中的图17.8.4所示,其包括了产生以及提供了两个内部时钟信号CLKDQ、CLKRD。这些时钟信号用来驱动FIFO电路,通过该电路,关于给定的读信号的信息变得对于半导体存储器的数据路径是可用的,其中半导体存储器具有使用由DLL电路提供的时钟信号CLKDQ的正确计时。
已知的读等待时间控制电路具有一个设计用来将来自于读入数据的第一时间参考信号(时间域)的两个时钟信号转换成读出数据的第二时间参考信号--与第一时间参考信号不同--的FIFO电路。在每个情况中,一个时钟信号用于输出指针和还有由此衍生的时钟信号,该时钟信号用于FIFO电路的输入指针,因此该FIFO电路通过两个反馈到相应的环形计数器的不同时钟信号驱动。读命令反馈到FIFO电路的输入端。等待时间控制信号在该FIFO电路的输出端输出。
虽然在该介绍中所引证的ISSCC 2003文献中描述了为等待时间控制而使用FIFO电路,但其中并未描述该输入指针以及输出指针的初始化以及这两个指针的同步。然而,FIFO电路的初始化对这样的等待时间控制电路正确实施功能是最重要的。
在初始化阶段,为了在通过输入指针写入FIFO单元和通过输出指针从所述单元读出之间的时间响应所需的存储在模式寄存器中的读等待时间,所以输入指针和输出指针的相位关系必须以定义的方式指定。
在用于FIFO电路的输入和输出指针的不充分初始化的情况下所产生的问题是,提供输入指针的开始计数器不清楚在何进开始计数以及它该访问什么锁存器。这在特定的环境下,对相对较低的半导体存储器频率来说,还不是什么大问题,。然而,不充分的初始化,特别是随着时钟信号频率的增加,会导致如下的结果,在特定的环境下,FIFO电路的输入指针和输出指针彼此不再同步,也就是说对于另一个不再具有一个定义的很好的时间间隔。但是,这对于存储器操作的可靠性来说是必须的。
由于目前和今后半导体存储器发展的趋势是向着更高的频率发展,以第三代DDR-DRAM存储器(DDR-III)为例,上述提及的问题将会越来越明显。从半导体存储器对数据进行所定义的读出不再可能,或仅在很高的电路开支的情况下才有可能。
在这方面,也可以参考W.Dally所著的课本,“数字系统工程”(Digital System Engineering)Cambridge 1998,第477-480页。它阐明了基于FIFO的相应于在ISSCC公开文献中所描述的等待时间控制电路,但它也未公开任何初始化过程。

发明内容
在此背景下,本发明在客观上的技术目的是提供一个可靠的,也就是说尽可能没有错误的对于读等待时间控制电路,特别是对于半导体存储器的初始化。尤其是基于FIFO读等待时间控制电路的FIFO电路的输入和输出指针根据初始化彼此而产生一个合适定义的时间间隔。
根据本发明,这些目的中的至少一个通过具有权利要求1的特征的方法以及通过具有权利要求16的特征的读等待时间控制电路而实现。
根据一个优选实施例,共用的时钟信号由DLL电路产生的时钟信号。
根据一个进一步优选的实施例,第二时钟信号为延迟第一时钟信号所取得的信号。
根据一个进一步优选的实施例,第一时钟信号响应共用时钟信号。
根据一个进一步优选的实施例,该延迟以这样的方式设定,其响应提供相应的用来读取读数据的读命令的读信号的持续时间和半导体存储器输出驱动的传播时间的总和。
根据一个进一步优选的实施例,通过控制信号而设定读等待时间。
根据一个进一步优选的实施例,设定的读等待时间决定输出指针的开始点和/或输入指针的开始点。
根据一个进一步优选的实施例,读等待时间存储在模式寄存器中,而分别存储的读等待时间用于定义在输入指针和输出指针之间的开始间隔。
根据一个进一步优选的实施例,在DLL电路重新启动的情况下执行输入指针和输出指针的初始化。
根据一个进一步优选的实施例,DLL电路的至少一个输出由于复位事件而中断。特别地,在差分信号或输出的情况下,这具有如下的优点,即输出终端能置于特定的电势位,而第二信号组件继续执行,从而能表示控制序列而无需提供额外的控制信号。
根据一个进一步优选的实施例,该中断是同步发生的。
根据一个进一步优选的实施例,由DLL电路所产生的时钟信号的时钟周期数在DLL电路复位后计数,仅在时钟信号的时钟周期的第一个计数后开始初始化,而该第一计数比由半导体存储器的参数预先设定的、在复位后再允许的读访问开始的所述时钟信号的时钟周期的数要少。
根据一个进一步优选的实施例,初始化进行于DLL电路已经设定之后,而且是在可以对半导体存储器进行访问之前。
根据一个进一步优选的实施例,通过分别由两个时钟信号之一所驱动的环形计数器设定固定的预定时间的偏移量。
根据一个进一步优选的实施例,选择读信号的数据宽度以便输出指针能驱动一个输出驱动器。
本发明的优点和改进能从进一步的从属权利要求以及参考附图所进行的描述中体现出来。
本发明从基于FIFO的读等待时间控制电路开始。
本发明的要点包括,一方面在于,用于输入指针和输出指针的两个时钟信号彼此均从作为基准的通用时钟信号而得到。此处所包括的是一个从在集成电路或半导体存储器中的DLL电路(DLL表示延迟锁定环(Delay Locked Loop))所产生的的内部时钟信号。另一方面,要点在于,用于FIFO的输入指针的一个时钟信号(CLKRD)和用于FIFO的输出指针的其它时钟信号(CLKDQ)彼此不同。然而,在用于输入指针和输出指针的这两个时钟信号之间存在有一个固定的时间偏移量。该偏移量,也就是说在这两个时钟信号之间的时间长度是以固定的方式指定的并由于在低频和高频上的异步而总是相同。
根据本发明的用于初始化FIFO电路的输入指针和输出指针的方法是基于指定给输入指针和输出指针的时钟信号(CLDRD,CLKDQ)的初始化序列。该初始化顺序在相应的用于提供基准时钟信号(DLLCLK)的DLL电路设定后但仍在实际访问半导体存储器之前的任何时候执行。
本发明的思想还在于先关闭DLL电路的相应的一对差分终端的输出。特别地,为了防止DLL时钟信号的高或低相位变短的情况的发生,在这种情况下该输出同时关闭。同时,即DLL输出关闭的时候,DLL电路继续运行从而仍保持在被锁定的状态,即所谓的锁定状态。如果只有差分输出中的一个断开,或在固定的电势而第二输出仍旧提供由DLL电路所产生的相应的差分时钟信号的第二部分,则初始化序列发出信号。该“编码”使得它得以省却额外的控制线。在一个预定的时间后,优选地在DLL电路的瞬间恢复相位的末端,发生用于读等待时间控制电路的FIFO电路的输入和输出指针的时钟信号的本发明的初始化。以这种方式执行初始化能确保指定给输入和输出指针的时钟信号在其之间具有一个固定的偏移量。同时以这种方式也能确保FIFO电路的输入和输出指针能通过该初始化而重新设置。
特殊优点在于,在初始化的末端,输入指针开始位置的起始指针和输出指针开始位置的起始指针用于设定一个合适的数据传输。只要出现了两个时钟信号,即用于输入指针的时钟信号CLKRD和用于输出指针的时钟信号CLKDQ,的边缘,则两个环形计数器就开始运行并且起始指针和输出指针根据彼此固定的时间间隔离开原始位置开始移动。此外,本发明的特殊优点还在于,以这样的方式定义在输入指针和输出指针之间的固定间隔。
在特定的有益改进中,只要DLL电路重新启动,则进行FIFO电路的输入和输出指针的初始化并且从而进行它们的同步。以这样的方式可以确保,依据以此方式重新生成每个DLL时钟信号,FIFO电路的输入指针和输出指针以及相应的指定给所述指针的时钟信号的相位关系在每次重新启动时都能以固定的方式指定。
而且,与本发明的有益改进相同,选择读信号的数据宽度以便能直接使用FIFO电路的输出指针,即对于驱动半导体芯片的输出驱动器来说没有任何迂回之处。
在类似的特定有益改进中,存储在模式寄存器中的等待时间,即所谓的CAS等待时间(CAS表示列地址选择,Column Address Select),用来定义在输入和输出指针之间的开始间隔。例如其可以通过所谓的“扰乱(scrambling)”或通过为FIFO电路的两个环形计数器至少之一选择不同的起始值而实现。
在本发明类似的特定有益改进中,将计数器连接到DLL电路的输出来使用它。所述的计数器接着对由在输出端的DLL电路所产生的DLL时钟信号的时钟周期数从复位开始进行记数。许多半导体存储器,如SDRAM说明书中所提及的,在DLL电路复位后再次允许进行读访问之前指定时钟周期的预定数。根据SDRAM说明书该数可以是DLL时钟信号的200个时钟周期。在根据本发明的方法中,在特定的时钟周期数(例如180个时钟周期)少于预定的时钟周期(这里是200个时钟周期)后所述的计数器接着为相应的FIFO电路的输入和输出指针触发初始化序列。对这样的初始化,仍留有足够的、在当前状态下20个时钟周期相应的时间来彼此同步输入指针和输出指针。
根据本发明,分别考虑到所请求或所需的读等待时间,FIFO电路具有一个确定初始化序列并校正FIFO电路的输入和输出指针。代之以在FIFO电路中确定初始化序列的电路的实施方式,其也可以连接到FIFO电路。


本发明将在以下基于参考附图的示意图所指定的典型实施例进行更为详细的描述,其中图1A、1B示出了在典型的操作环境(1A)中在输出端用于产生DLL时钟信号的DLL电路的方框图以及相应于由DLL电路(1B)所产生的时钟信号的信号时序图;图2示出了根据本发明的在初始化序列期间由DLL电路所产生的时钟信号CLKDQ,CLKRD的基本轮廓;图3示出了基于FIFO的读等待时间控制电路的示意性结构图;图4基于详细的功能电路图示出了相应于图3的读等待时间控制电路的结构和功能;图5示出了在图4所示的功能电路图的FIFO电路中出现的信号的信号时序图;图6示出了具有等待时间FIFO的根据本发明的读等待时间控制电路的方框图;图7示出了用于相应的等待时间FIFO的输入和输出指针的初始化的信号时序图。
在附图中,除非另外指定,相同的或者说在功能上相同的元件、特征以及信号用相同的附图标记进行标注。
附图标记列表1电路结构2DLL电路3复制电路,用于tDP的延迟电路4复制电路,用于tRD的延迟电路5输入6输出7输出8反馈路径11 读等待时间控制电路12 输入13 输出14 锁存装置15 开关装置16-19锁存器20-23开关,多路复用器24 反相电路25、26 反相器27 反馈反相器28 用于输入指针的环形计数器29 用于输出指针的环形计数器30 扰频器,混频电路31-35FIFO单元36 等待时间FIFO的输出40 用于同步关闭的电路41 计数器42 复位输入43 DLL电路的输出44 检测电路100 接收电路101 时钟分叉树
102 状态机103 读信号分配器104 顺序控制器CLK#反相外部时钟信号CLK 外部时钟信号CLKDQ 内部时钟信号CLKRD 延迟内部时钟信号CLKVE 延迟内部时钟信号DLLCLK DLL电路输出端的时钟信号INP<0>...<4>输入指针L 等待时间L0-L3 数据信号LATINFO 等待时间控制信号LT 等待时间控制信号O<0>...<4> 输出信号OUTEN 输出信号OUTP<0>...<4> 输出指针PREAD 读信号R1 关闭控制信号R2 复位信号RESET 复位信号Δt 延迟周期,时间偏移量t1,t1’ 第一时刻t2,t2’ 第二时刻tDP 第一延迟tRD 第二延迟tCLK时钟周期t 时间D0-D3 数据DQ 数据信号CMD 命令信号
RD 读命令RAS控制信号CAS控制信号WE 控制信号CS 控制信号具体实施方式
图1A、1B示出了在典型的操作环境(1A)中在输出端用于产生DLL时钟信号的DLL电路的方框图以及相应于由DLL电路(1B)所产生的时钟信号的信号时序图。
在图1A中,附图标记1表示用于提供差分时钟信号的基于DLL的电路结构。电路结构1具有一个DLL电路2。该DLL电路2连接到输入5和输出6。外部信号CLK,例如系统时钟的时钟信号,可以通过输入5而连接到DLL电路2。在锁定状态,DLL电路2在输出6产生一个DLL时钟信号CLKDQ。电路结构1还具有一个反馈路径8,在其上布置一个设计为一个OCD电路(OCD,芯片外驱动器,OffChip Driver)的延迟电路3。所述的OCD电路3从DLL时钟信号CLKDQ产生,在输出端,获取一个延迟时钟信号CLKVE,该信号反馈到DLL电路2的另一个输入。所述时钟信号CLKVE进一步反馈到连接到另一个时钟输出7的又一个延迟电路4。从而该延迟电路4在输出端产生时钟信号CLKRD。根据本发明,时钟信号CLKDQ和CLKRD通常反馈到读等待时间控制电路结构10,其细节将在以下更详尽地说明。读等待时间控制电路10接收一个读信号PREAD并输出等待时间控制信号LT。该读信号PREAD由外部时钟信号CLK锁定的顺序控制器104所产生。该产生的读信号PREAD从外部时钟信号CLK通过顺序控制器104中的接收电路100时开始关于时钟信号CLK而延迟,并经历时钟分叉树101和读信号分配器103以及状态机102的写传播时序,其中状态机102接收相关的控制信号RAS、CAS、WE、CS等,并产生特定的信号延迟。该由顺序控制器104偏移,偏移量为所提供的读信号PREAD由与外部时钟信号CLK比较所得的时间tRD。
延迟电路3、4也可设计为所谓的复制电路,复制电路4用于在顺序控制器104中的信号路径的模拟以及在tRD期间的时间延迟。由控制信号发送给顺序控制器104的读命令RD用外部时钟信号CLK提供,在其上读信号PREAD在时间tRD后准备好。从而该延迟tRD相应于在由顺序控制器104请求读命令RD和提供读信号PREAD之间的时间周期。
复制电路3模拟偏移驱动器的电路结构并实现由所述的偏移驱动器tDP的传播时间的延迟。
图1B示出了在输出端的电路结构1或DLL电路2所产生的时钟信号CLKDQ,CLKVE,CLKRD的相应的信号时序图。由于复制电路3,时钟信号CLKVE具有关于时钟信号CLKDQ的tDP延迟。时钟信号CLKRD具有关于时钟信号CLKVE的延迟tRD。因此,时钟偏移Δt=tDP+tRD的结果为在输出6,7所提供的时钟信号CLKDQ、CLKRD的总和。
图2示出了根据本发明的在初始化序列期间由DLL电路所产生的时钟信号CLKDQ、CLKRD的基本轮廓。
在此情况下,DLL电路2的输出的时刻与断开的时钟信号CLKDQ通过图2中的t1而指定。时钟信号CLKRD的相应时刻由t1’指定。例如对时刻t2,其值为20,则时钟周期(t=20*tCK),DLL电路2再次打开并再次在输出端提供整个时钟信号CLKDQ。时钟信号CLKRD相应的时刻--在Δt期间所延迟的--通过t2’指定。
两个时钟信号CLKDQ、CLKRD用于读等待时间控制电路的FIFO电路的各个输入和输出指针的同步。该读等待时间控制电路或相应的等待时间FIFO的结构和功能将在以下参考图3、4、6详细描述。通过电路结构1,通过对数据路径的相关部分和内部读信号,即所谓的PREAD信号,的产生和分配的相关部分的模拟而传输输出时钟信号CLKDQ,以此产生时钟信号CLKRD。从而根据本发明的用于初始化等待时间FIFO的输入和输出指针的方法基于两个时钟信号CLKDQ、CLKRD的根据本发明的初始化序列。在稳定也就是说锁定DLL电路2后,但仍然在实现读访问半导体存储器之前,执行该初始化序列。
在本发明的优选实施例中,DLL电路与在重置DLL电路2后对时钟周期数计数的计数器连接。在预定的DLL电路瞬时恢复相位的时钟周期之后,所述计数器触发根据本发明的所述用于等待时间FIFO的初始化序列。举个实际的范例,所述初始化序列首先包括DLL电路2的输出并同步断开时钟信号CLKDQ。仅由于其输出已被关闭因此DLL电路2一直运行,但DLL电路仍然处于锁定状态。作为DLL电路2的输出所出现的时钟信号CLKDQ的结果,在预定数的时钟周期后,DLL电路2再次同步断开。在延迟时间Δt=tDP+tRD后,时钟信号CLKRD接着也出现在输出7。
图3基于方框图示出了基于FIFO的读等待时间控制电路的示意性结构图。基于所引证的ISSCC公开文本中和其中的图17.8.4中所描述的电路结构而构建图3所描述的电路结构。
读等待时间控制电路由图3中的附图标记10来表示。该读等待时间控制电路10具有一个安排在输入12和输出13之间的等待时间FIFO电路11。在这种情况下,在输入12出现读信号PREAD,且等待时间控制信号LT可以在输出13被输出。等待时间FIFO 11具有一个锁存装置14和一个开关装置15。在本发明的优选实施例中,锁存装置14包括四个彼此并联安放的锁存器16-19。数据信号L0-L3分别在各个锁存器16-19的输出端输出。开关装置15为所连接的锁存装置14的下端并包括彼此并联的四个开关20-23,例如多路复用器。在这种情况下,各个锁存器16-19的输入端连接到读等待时间控制电路10的输入12,而其输出端串联连接到开关20-23的下端。开关20-23的输出端连接到输出13。从而等待时间FIFO 11具有四个FIFO单元。
在开关装置15和输出13之间还提供有一个反相装置24。该反相装置24在所有情况下均具有彼此串联的两个反相器25、26,以及一个与一个反相器反相连接的反馈反相器27。
电路结构10还具有两个计数器28、29,其优选地设计为环形计数器28、29。计数器28的输入端连接到终端7,以便时钟信号CLKRD反馈到所述的计数器28。该计数器28的输出端在每种情况下均连接到每个锁存器16-19的控制端。从而计数器28在输出端为四个不同的锁存器16-19产生四个不同的输入指针,这将在以下参考图4进行描述。
环形计数器29用时钟信号CLKDQ将其输入端连接到终端6。在输出端,在每种情况下均将计数器29连接到开关20-23。而且,所谓的扰频器30,即所谓的混频器30,插入在计数器29和开关装置15之间。混频器30在输出端产生四个反馈到四个不同开关20-23的输出指针。这样的混频器30的简要结构和功能是公知的,因此就不在以下进行更为详细的描述。
在等待时间FIFO 11中提供有初始化确定电路(在图3中未示出),该电路用于确定初始化序列,如图2所示,并根据所需的读等待时间而设定等待时间FIFO 11的输出指针。
图4基于详细的功能电路图示出了相应于图3中的读等待时间控制电路的结构和功能。
与图3中的优选实施例相反,在读等待时间控制电路中配置有具有四个FIFO单元的等待时间FIFO 11从而FIFO深度为四,在图4中的等待时间FIFO具有的FIFO深度为五。进一步假定图4中的读等待时间控制电路10设计为L=5的等待时间的情况。
环形计数器28在输出端产生五个输入指针INP<0>-INP<4>。环形计数器29在输出端产生五个输入指针INP<0>-INP<4>,其连接到下游的混频器30的输入。两个环形计数器28、29能通过复位信号RESET而复位。
在控制端,混频器30通过存储在于例如控制端连接到混频器30的模式寄存器中的等待时间值而反馈一个控制信号LATINFO。该混频器30用来设定不同的等待时间。混频器30在输出端产生五个不同的输出指针OUTP<0>-OUTP<4>。
通过环形计数器28、29而产生输入和输出指针INP<0>-INP<4>,OUTP<0>-OUTP<4>,同时混频器30连接到等待时间FIFO11的相应的控制输入。所述的等待时间FIFO 11具有总共五个FIFO单元31-35,其中在各种情况下每个单元都具有一个锁存器和一个下游连接到所述锁存器的开关(参见图3)。而且,内部读输入信号PREAD会反馈给各个FIFO单元31-35。依靠所述的读输入信号PREAD以及各个输入指针输入INP<0>-INP<4>,以及输出指针OUTP<0>-OUTP<4>,等待时间FIFO 11在输入产生一个输出信号OUTEN。
图5示出了相应于图4的功能电路图的时序图。在该情况下,信号CLK指定外部时钟信号,例如系统时钟的时钟信号。信号CMD指定命令信号,也就是说指定读命令RD。信号DQ指定要从例如半导体存储器读取的外部数据信号。
根据本发明的初始化序列将在下面参考图5和2来简要说明。
时钟信号CLKRD是使用复制电路3、4将相应的时钟信号CLKDQ延迟Δt=tDP+tRD而构建的。在用于同步的初始化相位的开始,时钟信号CLKDQ、CLKRD均在预定的时间期间调到低逻辑电平(“0”,LOW),在图2中的优选实施例的情况下大约是20个时钟周期。一旦两个时钟信号CLKDQ、CLKRD所谓的LOW相位在初始时由为此提供的检测电路确定,则依照所需的等待时间,各个输出指针OUTP<0>-OUTP<4>均设定为初始状态。在图4和5中图示出了对于优选实施例所提出的L=5的等待时间。在这种情况下,必须选择输出指针OUTP<4>作为开始指针。根据时钟信号CLKDQ的边界“5”,输出指针相应地可以从OUTP<4>到OUTP<0>转换。所述的输出指针OUTP<0>打开FIFO单元31并包含关于读命令RD是否接收时钟信号CLKRD的边界“0”的信息项。
图5表示了用于图示目的的三个读命令。在输入指针INP<0>-INP<4>中,标示的“0”或标示的“1”表示内部产生的读信号PREAD是否确定为“1”或“0”。在PREAD信号的高逻辑电平或“1”情况下所确定的读命令RD以及在PREAD信号的低逻辑电平或“0”情况下不存在读命令,则该内部读信号PREAD因此提供一个关于读命令的存在情况的信息项。
等待时间FIFO 11的输出36上的输出信号OUTEN包含瞬间作用的信息项,在该时刻半导体存储器的输出驱动器为读取数据而接收可以得到的信号。在当前的优选实施例中,读信号PREAD的整个长度为两个时钟周期,从而满足在每个读访问中,在向外部的半个时钟周期的数据宽度中提供四个数据的需求。该读操作通常也优选地为预取-4的访问。通过依照所使用的预取访问的宽度而进行的对PREAD信号的数据宽度的选取,等待时间FIFO 11的输出能很有利地直接用于驱动半导体存储器的输出驱动器。本发明的有益结构将在下面参考表1图示,表1阐释了PREAD信号的宽度和预取访问的关系

表1扰频器30在初始化的瞬间估算存储在模式寄存器(未示出)中的读等待时间并以等待时间控制信号LATINFO的形式反馈给扰频器30。在很有益的结构中,根据本发明的读等待时间控制电路10具有一个可调整的读等待时间L。举例来说,取决于等待时间控制信号LATINFO的值,此处可以设定读等待时间为5、6和7。下面的表2图示了分别对于等待时间为5、6、7的输出指针OUTP<0>-OUTP<4>的各个开始点的关系。

表2上面的表2仅仅提供给了深度为5的等待时间FIFO,也就是说如图4所示的等待时间FIFO。等待时间FIFO 11的深度取决于能选择的最高的等待时间以及延迟时间tDP、tRD。在这种情况下,延迟时间tDP实质上相应于DLL电路的超前时间。时间tRD指定了在接收外部读信号和在等待时间FIFO上出现信号PREAD之间的时间。
图6示出了根据本发明的读等待时间控制电路的方框图。
根据本发明的图6所示的读等待时间控制电路首先具有一个用于关闭DLL电路2的的输出的装置。而且,读等待时间控制电路10同时包含一个确定初始化序列并根据所需的读等待时间正确设定输出指针的电路。在这种情况下,在图6所示的优选实施例中的电路结构构建图1中的DLL电路2以及图3和4中的电路结构上。
输出6和在DLL电路2的输出之间提供有一个电路40,该电路40用于在输出端执行由DLL电路2所提供的DLL时钟信号DLLCLK的同步关闭。该电路结构40通过关闭控制信号R1而驱动。所述的关闭控制信号R1由计数器41提供。在输入端计数器41连接到复位输入42以及DLL电路2的差分输出终端对43。复位信号RESET通过复位输入42而连接。所述的复位信号RESET一方面连接到DLL电路2,另一方面连接到计数器41。计数器41还输入DLL电路2的输出信号DLLCLK。为了以后的关闭,计数器41从这两个信号产生所述的馈送到电路结构40的关闭控制信号R1。
还进一步提供有检测装置44。检测装置44通过能复位的等待时间FIFO 11而指定来产生一个复位信号R2。为了该目的,检测装置44在输入端连接到输出6而在输出端连接到等待时间FIFO 11的控制输入。因此检测装置44在输入端输入时钟信号CLKDQ。
在图6中,与图3相反,两个复制电路3,4在单个电路模块中实现。
依照图6,根据本发明的读等待时间控制电路10的功能将在以下简要描述。
DLL电路2的输出信号DLLCLK连接到计数器41。在外部预定的DLL复位后,相应的复位信号RESET类似地连接到计数器41。
在可选的实施例中,在第二个信号用做控制或复位信号时,通过向计数器仅仅传送一个差分的部分信号DLLCLK而发生的复位,通过传达该复位而对在复位输入42和计数器41之间的控制线进行分配。
例如,在连接所述的复位信号RESET后,计数器41对时钟信号DLLCLK的时钟周期计数直到达到预定的数180。DLL电路2因此处于稳定状态。从而根据本发明仍然保留大约20个时钟周期的时间来执行等待时间FIFO的初始化。假定存在关闭控制信号R1,其相应于计数器值180,用于同步关闭的电路结构40中断DLL电路2的输出43,以使得没有时钟信号CLKDQ通过输出6传送到等待时间FIFO11。结果,时钟信号CLKRD也从而被中断。与计数器41连接的关闭装置40的功能上的特别优点在于时钟信号CLKDQ为几个时钟周期就可以中断时钟信号CLKDQ而不会出现半个时钟周期或部分时钟周期。
检测电路44发现了多个时钟信号CLKDQ的高相位的缺失并在输出端产生用于驱动等待时间FIFO 11的复位信号R2。检测电路44和连接到DLL电路2的输出43的计数器41的结构和功能都是公知的,因此在以下就不在累述。
图7使用了序列图来示出根据本发明的用于初始化以及同步等待时间FIFO 11的输出和输入指针的方法。在该方法中,用来实现半导体电路的偏移驱动器的传播时间的功能的延迟时间tDP和用来指定为提供读出数据的读信号PREAD的延迟tRD均是为了初始化而考虑的。
图7示出了等待时间L=5的优选实施例。在时刻t10发送读命令RD。为了考虑等待时间L=5而读出的读数据D0-D3也同步读出,必须考虑相应的延迟时间tRD,tDP。可以理解同步读出就意味着根据外部提供的时钟信号CLK或从其上所获取的例如反相的时钟信号CLK#的时钟信号,读数据D0-D4是同步的。
在图7的实例中,读数据D0-D4的第一数据D0要被读出,因此在时刻t11开始。在这种情况下,时刻t11相应于外部时钟信号CLK的上升沿或相应的反相时钟信号CLK#的下降沿。然而,该读出操作或该读出操作的控制以及更特别的对所需的等待时间L=4的设定并不基于所述的外部时钟信号CLK发生作用。用来设定读等待时间的内部时钟信号DLLCLK,CLKDQ在此应用。由DLL电路2获得该内部时钟信号DLLCLK,CLKDQ。然而,问题是这里必须考虑延迟时间tRD和tDP。这就意味着,一方面,对于在等待时间L=5之后而同步数据D0-D4的读出,相应的为数据读出的输出指针必须同时考虑延迟tDP,即偏移驱动器的规定传送时间周期。在这种考量下,为了同步初始化该读出操作,相应的用于与时钟信号同步读出的数据D0-D4的时钟信号CLKDQ的上升沿必须暂时提前延迟时间tDP的时间长度。时钟信号CLKDQ的输出指针因此必须指向时刻t12。时刻t12暂时以t11和t12之间的差相应于延迟时间tDP的方式超前于时刻t11。
而且,时间tRD也需考虑同步读出。在相对于时刻t10的时刻tRD之后,输出内部读信号PREAD,其请求了一个读操作。该读信号PREAD通过读命令RD而从外部请求。
为了相对于外部时钟信号CLK能同步地读出,由DLL电路2所提供的内部时钟信号CLKDQ必须相应地在考虑时间周期Δt=tDP+tRD的情况下设定。由于延迟时间tRD相对于时刻t10是固定的,为了确定内部时钟信号CLKDQ具有上升沿的时刻t14,有必要从时刻t10中减去延迟tDP,以便在时刻t13和t14之间的差恰好相应于时间周期Δt=tDP与tRD的和。因此内部时钟信号CLKDQ在时刻t14上具有上升沿,从而确保考虑等待时间L=5的情况,在时刻t11,数据可以同步读出。
虽然本发明已经以优选实施例为基础而进行了详细解释,但也并不局限于此,而可以以其他方法进行修改。
特别的,根据本发明的读等待时间控制电路以及相应的FIFO、环形计数器以及混频器刻意以非常简单的方式图示。也就是说任意改变所描述的电路结构而不会背离本发明的原理。因此,在以上所描述的优选实施例中,可以为提供各个输出指针而将混频器分配给环形计数器。但,此外混频器也可以可选地分配给用来提供输入指针的环形计数器。
在原理上,这些读等待时间控制电路的功能当然也是用程序控制的装置来实现的,该程序控制的装置例如可以是微处理器或微控制器,或像PLD或FPGA电路的可编程的逻辑电路。但以上参考附图所描述的结构具有特别的益处,因此从电路以及性能方面考虑都是优选的。而且,无需一定要提供在每个读访问中分别将四个数据包写入存储器的所谓的预取-4的读访问。在每个写访问中也可以提供更多或更少的预取读访问,例如预取-2或预取-8的读访问。
在以上的优选实施例中,读等待时间控制电路图示了一个具有深度4或5的等待时间FIFO。然而,当然也可以提供具有更大或更小的深度的等待时间FIFO 11的任意不同配置。而且,与图5和7中的优选实施例不同,读等待时间并不限于等于5的读等待时间。当然这里也能提供更大或更小的读等待时间。其仅仅需要一个相应的FIFO单元或等待时间FIFO的电路改变。
虽然在图中仅仅示意了单信号或单路径,但根据本发明的等待时间控制还可以包括差分信号的设定和产生。因此,图示的终端和信号路径也可以作为差分终端对和信号路径。
权利要求
1.一种通过用于对半导体存储器进行读访问的基于FIFO的读等待时间控制电路(10)而设定和控制读等待时间(L)的方法,该方法包括步骤提供通用内部时钟信号(DLLCLK);由通用时钟信号(DLLCLK)产生内部第一时钟信号(CLKDQ)以及一个与第一时钟信号(CLKDQ)不同的内部第二时钟信号(CLKRD);为读出读数据(DQ)而从第一时钟信号(CLKDQ)产生输出指针(INP<0>…<4>);为读入读数据(DQ)而从第二时钟信号(CLKRD)产生输入指针(INP<0>…<4>);通过在输出指针(OUTP<0>…<4>)和输入指针(INP<0>…<4>)间定位一个所定义的、固定的预定时间偏移量(Δt)而初始化输入和输出指针。
2.如权利要求1所述的方法,其中所述通用时钟信号(DLLCLK)为由DLL电路(2)所产生的时钟信号。
3.如前述权利要求中任一个所述的方法,其中所述第二时钟信号(CLKRD)源于对第一时钟信号(CLKDQ)的延迟。
4.如前述权利要求中任一个所述的方法,其中第一时钟信号(CLKDQ)相应于通用时钟信号(DLLCLK)。
5.如前述权利要求中任一个所述的方法,其中所述延迟(Δt)以这样的方式设定,其相应于提供用于读出读数据(DQ)的相应读命令(RD)所相应的的读信号(PREAD)的时间周期(tRD)和半导体存储器的输出驱动器的传送时间(tDP)的总和。
6.如前述权利要求中任一个所述的方法,其中所述的读等待时间(L)由控制信号(LATINFO)来设定。
7.如前述权利要求中任一个所述的方法,其中读等待时间(L)组确定输出指针(OUTP<0>…<4>)的开始点和/或输入指针(INP<0>…<4>)的开始点。
8.如前述权利要求中任一个所述的方法,其中读等待时间(L)存储在模式存储器中,并且分别存储的读等待时间(L)用于定义在输入指针(INP<0>…<4>)和输出指针(OUTP<0>…<4>)之间的开始间隔。
9.如前述权利要求中任一个所述的方法,其中当在该DLL电路(2)中有重启时执行输入指针(INP<0>…<4>)和输出指针(OUTP<0>…<4>)的初始化。
10.如前述权利要求中任一个所述的方法,其中该DLL电路(2)的至少一个输出(43)在复位事件中中断。
11.如权利要求10所述的方法,其中同步地执行中断。
12.如前述权利要求中任一个所述的方法,其中由该DLL电路(2)产生的时钟信号(DLLCLK)的时钟周期数在所述DLL电路(2)复位后开始计数,初始化在时钟信号(DLLCLK)的第一个时钟周期后进行初始化,而该在复位后再次允许读访问的所述时钟信号(DLLCLK)的时钟周期数比由半导体存储器所预先设定的数要少。
13.如前述权利要求中任一个所述的方法,其中初始化仅仅在该DLL电路稳定后以及在执行对半导体存储器的读访问之前执行。
14.如前述权利要求中任一个所述的方法,其中固定的预定时间偏移量(Δt)通过分别由两个时钟信号(CLKRD、CLKDQ)之一所驱动的两个环形计数器(28、29)设定。
15.如前述权利要求中任一个所述的方法,其中选择读信号的数据宽度以便输出指针(OUTP<0>…<4>)能用来驱动一个输出驱动器。
16.一种用来设定和控制对半导体存储器的读访问的读等待时间(L)、特别适用于执行前述权利要求中的任一个所述的方法的读等待时间控制电路(10),其特征在于,在可以应用内部读信号(PREAD)的输入(12)和输出(36,13)之间具有等待时间FIFO(11),具有提供内部第一DLL时钟信号(CLKDQ)的时钟输入(6),具有至少一个在输入端连接到时钟输入(6)的用来提供至少一个输出指针(OUTP<0>…<4>)的第一计数器(29),具有至少一个延迟电路(3,4),其用来通过延迟第一DLL时钟信号(CLKDQ)产生一个内部第二DLL时钟信号(CLKRD),具有至少一个用来提供至少一个输入指针(INP<0>…<4>)的第二计数器(28),其在输入端通过延迟电路(3,4)连接到时钟输入,具有一个初始化电路(40,41,44),其执行第一和第二内部DLL时钟信号(CLKDP,CLKDQ)的同步。
17.如权利要求16所述的读等待时间控制电路,其中提供有至少一个等待时间设定装置(30),其可以通过等待时间控制信号(LATINFO)设定等待时间(L)。
18.如权利要求17所述的读等待时间控制电路,其中等待时间设定装置(30)安置在第一和/或第二计数器(28、29)和等待时间FIFO(11)的控制终端之间。
19.如权利要求16到18中的任一个所述的读等待时间控制电路,其中计数器(28、29)中的至少一个是设计为环形计数器(28、29)的。
20.如权利要求16到19中的任一个所述的读等待时间控制电路,其中所述初始化电路(40、41、44)具有一个用来同步关闭由DLL电路(2)所产生的时钟信号(DLLCLK)的电路(40)。
21.如权利要求16到20中的任一个所述的读等待时间控制电路,其中所述初始化电路(40、41、44)是以连接到DLL电路(2)的时钟输出(43)的下端的方式设置的。
22.如权利要求21所述的读等待时间控制电路,其中进一步在输入端提供有连接到复位输入(42)而在输出端连接到时钟输出(43)的计数器(41),其驱动用于同步关闭电路(40)的控制输入,而且计数器在给定复位信号(RESET)时,计算时钟信号(DLLCLK)的时钟周期,并且对于预定的计数器读取,输出用于中断时钟信号(DLLCLK)的控制信号(R1)给用于同步中断的电路(40)。
23.如权利要求16到22中的任一个所述的读等待时间控制电路,其中提供检测器电路(44),其以连接在用于同步断开的电路(40)的下端的方式安置并进一步产生复位信号(R2),该信号馈送到等待时间FIFO(11)的控制输入而使等待时间FIFO(11)复位。
24.一种半导体存储器,其特征在于它具有如权利要求16到23中的任一个所述的读等待时间控制电路。
25.如权利要求24的半导体存储器,其特征在于,所述半导体存储器是一个DDR存储器,特别是第2代和/或第3代的DDR存储器。
全文摘要
通过用于对半导体存储器读访问的基于FIFO的读等待时间控制电路(10)而设定和控制读等待时间(L)的方法,该方法包括步骤提供一个通用内部时钟信号(DLLCLK);由通用时钟信号(DLLCLK)产生一个内部第一时钟信号(CLKDQ)以及一个与第一时钟信号(CLKDQ)不同的内部第二时钟信号(CLKRD);为读出读数据(DQ)而从第一时钟信号(CLKDQ)产生一个输出指针(INP<0>…<4>);为读入读数据(DQ)而从第二时钟信号(CLKRD)产生一个输入指针(INP<0>…<4>);通过在输出指针(OUTP<0>…<4>)和输入指针(INP<0>…<4>)间定位一个所定义的、固定的预定时间偏移量(Δt)而初始化输入和输出指针。本发明进一步提供了一种用于执行该方法的相应的电路结构。
文档编号G11C11/4096GK1767056SQ200510081798
公开日2006年5月3日 申请日期2005年5月27日 优先权日2004年5月27日
发明者斯特凡·迪特里希, 托马斯·海因, 帕特里克·海涅, 彼得·施罗格迈尔 申请人:印芬龙科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1