Ddr接收器读取重新同步的方法

文档序号:6778482阅读:148来源:国知局

专利名称::Ddr接收器读取重新同步的方法DDR接收器读取重新同步的方法駄领域本发明通常涉及读取数据。具体来说,本发明涉及执行一种读取操作,其中的数据根据外部数据选通信号由具有内部时钟信号的集成电路接背景駄现代计算机系统一般包括可以用来存储计算机系统所利用的数据的剤^S。计穀几系统中的其他體,例如,计算机处理器或者存储控制器,可以访问存储装置中存储的数据并且处理该数据或者将数据传送到计算机系统中的其他装置。通常通过将读取命令发给存储装置来访问存储在存储装置中的数据。針读取命令通常通过剤i^a的接口来发出。响应接收的读取命令,在经过某些时间之后,存储装置可以开始ffi31存储装置接口来传输由读取命令请求的。图1是描述用来通过存储装置接口传输数据的示范性信号的简图。所描述的信号包括访问存储装置的集成电路的内部时钟(CK,也称为系统时钟)、通过集成电路发给存储装置的^^令(COMMAND)、利用外部选通信号产生的外部选通信号(也称为DQS)以及由存储,呈现的M字节(DQ)。如图1所述,在时间to处可以将读取命令(READ)发给存储装置。随后,在时间tl处,由存储装置将DQS信号降低,表示存储驢已经接收到读取命令。在作为由列地址M(CAS)等待时间(CL)所指定的某一时间之后(如。接收来自存储體的数据,例如,在CL的最后时钟周期的开始。当数据存在在于DQ上,DQS信号可以被断言,标即将从DQ中读取的数据。在所描写的示例中,在时间ts处、在^之后的系统时钟周期的周期W的一半、最后时钟周期CL的开始換(夂数据。然而,根据用来制造存储體的过程、存储装置的温度、存储装置的操作时钟频率、存储装置和集成电路之间的传输时间的变化和计算机系统中的其他变化,断言DQS并且关于内部时钟CK(例如,相移)呈现的准确时间(作为由访问时间ke所指定)可以改变。因此,例如,在接收数据的访问时间期间,数据访问时间可以从零改变至嗟不多内部时钟CK的时钟周期W的1.5倍。由于t^的变化和存储装置和集成电路之间的传输时间,在读TO作期间,内部时钟信号CK可以与外部^1信号DQS不完全同步。为了成功地读取M,集成电路通常尝试将通过DQ/DQS读取的数据与内部时钟CK同步。同时,为了增加系统性能,可增加存储體的操作频率,从而>数据眼(dataeye)的大小。随着数据窗的大小减少,对于集成电路来说将变得难以使内部时钟CK和外部;1^1信号DQS之间的数据同步。因此,需要改进的方法和设备来将通过外部选通信号接收的数据与内部时钟信号同步。
发明内容本发明的实施例通常提供一种用于使用第二时钟信号读取通过第一时钟信号接收的数据的方法和设备。在一个实施例中,该方法包括根据第一时钟信号产生两个或两个以上脉冲,由其可以接收将要被读取的数据,禾'佣每个产生的脉冲来锁存在相应时间接收的数据,以及检测在其期间接收数据第一时间区域。该方法也包括利用检测的第一时间区域来确定在其期间可利用第二时钟信号读取数据的第二时间区域,以及在第二时间区域期间利用第二时钟信号读取数据。为了使上面叙述的本发明的特征能够被详细地理解,可以通过参考实施例,某些实施例已经在附图中示出,上面简要概述的本发明将被更详细描述。然而,需要注意,仅示出了本发明的典型实施例因而其并不限于此范围,对于本发明来说允许其他同样等效的实施例。图1是描述用过存储,接口传输数据的时序图。图3是鹏本发明的"^实施例IS^^^^据的示例过程的繊图。图5是根据本发明的""^实施例描述示例脉冲顿电路的结构图。图6是鹏本发明的"H^&I例鹏由脉冲顿^!8&产生的^IJ脉冲的时序图.图7是根据本发明的一个实施例描标例区職测电路的结构图。〖0018]图8是職本发明的^h^l例MJ2^例区^^测^r出信号的时序图。图9-ll是職本发明的"^实施例SS^于从:jfi^a中^t据的,Wf^^号的时序图。图12是目本发明的"^实施例4S^^I^模式的^i赎取W的结构图,图13是^g本发明的-^实施例^Mffl^Jl存由:j^^g接收的im具有四个脉沖的^^^g^^^号的时序图。在下面,将##本发明的实施例.然而,可以理解本发明并^RX限于具体^的实施例。而是,以下ME^元件的^组合,不论S^及不同的^1&例,ipr以被考棘^p实a^发明.鈔卜,本发明的各种实施例H^fe于先有餘的多馆点。然而,尽斜发明的鄉伊何以得萝J^5tf其他可能解决方案和/或优先于先有技术的优点,不论是否M51给定的实施例得到特定的优点均不限制本发明。从而,下面的方面、特征、实施例和优点仅仅是说明性的并且不认为是所附权利要求书中的元件或限制,在所附权利要求书中清楚地记载了权利要求。同样地,参考"本发明"并不会被认为是这里所公开的任何创造性的主题的概括并且不会被认为是对所附权利要求的元件或限帝U,除非其中明确地在权利要求中记载。示例系统图2是根据本发明的一个实施例描g例计算机系统200的结构图。如所述,计##1系统200可以包機成电路210和存储装置220。在一个实施例中,存储錢220可以为同步的、动态的、随机存取存储器(SDRAM)装置,诸如双倍数率(例如,DDR、DDR2、或甚至是更新的DDR)SDRAM装置。存^^g220包括控制电路222,例如其用来访问一个或多个存储阵列224。响应接收指定地址的访问命令(例如,读取命令),存储装置220可以例如利用I/O电路226将存储在存储阵列224中地址处的数据传输到集成电路。其中利用DDRSDRAM,通过数据总线DQ在M时钟信号DQS的上升沿和下降沿处传送来自存储装置220的数据。DQS信号fflil存储装置220所产生。在一个实施例中,集成电路210可以为存储控制器。可选地,集成电路210可以为处理器、图形处理器、网络业务分类器引擎或其他类型的集成电路。集成电路210可包括控制电路212和I/0电路216以及其他电路。集成电路212中的控制电路212被用来发出命令给存储装置220并且访问(例如,从中读取或写入到)存储装置220。其中集成电路210发送读取命令给存储装置220,集成电路210可以从存储装置220中例如利用集成电路210的I/O电路216中的读取电路218读取数据。下面参考图3更详细地描述根据本发明的一个实施例的读取操作。示例的M(^作图3是根据本发明实施例描述用于读取数据的示例过程300的流程图。在一个实施例中,读取操作方面可以通过读取电路216来执行。如所描述的,过程300在步骤302处开始,在步骤302发出读取命令。例如,集成电路的控制电路212可以确定需要来自存储装置220并且发出控制信号给I/O电路请求从剤線置220中读取数据。响应接收控制信号,1/0电路216可以发出具有源地址的读取命令给存储装置220。在步骤304处,降低所接收的外部舰信号DQS,例如响应接收读取命令由存储装置220来降低。然后,步骤306处,当存储體220在麵总线DQ上为读取命令方爐数据时,例如fflil存储装置可以提升外部i^I信号DQS。在步骤308处,响应检测外部选通信号DQS的上升沿,产生多个脉冲,并且在步骤310处,产生的脉冲可以被用来锁存在第一组锁存器中的DQ上呈现的数据。例如,产生的脉冲的总的数量足以锁存DQ上呈现的读取的每个字节。在一个实施例中,第一组锁存器在外部时钟域中保持锁存的繊(例如,在由用来产生DQS的夕卜部时钟信号或利用外部时钟信号产生的其他信号控制的电路中)。从而,例如,M31读取电路218可成功地将从存^^置220接收的数据锁存在由外部舰信号或利用外部选通信号产生的信号所控制的锁存器中。同样,如下面更详细的描述,所接收的数据的一部分可被串fi^也接收并被并行地呈现给系统时钟域。通过并行地将数据的一部分呈现给系统时钟域,内部时钟信号用来将呈现的数据从外部舰域同步到内部时钟域他称为系统时钟域)。在步骤312处,第一组锁存器中的M可以被传送到第二组锁存器中。在一个实施例中,第一组锁存器包括利用外部选通信号从外部时钟域接收的数据并且第二组锁存器包括具有内部时钟信号的内部时钟域中的数据。通过提供多组锁存器,可以M利用内部时钟信号来将经由外部itffi信号接收的繊与内部时钟信号进行同步以选择锁存器组中铺的一组。在步骤314处,识别接收,的区域。例如,识别的区域可以是时间区域,在其期间DQS信号的上升沿被检测。于是,在步骤316处,对应于识别区域的来自第一和第二组锁存器中一组的数据可被选择并且在步骤318处可利用内部时钟信号锁存所选择的数据。从而,通过第一和第二组锁存器中存储的所接收的数据,在内部时钟信号分开的时间区域(例如,第一时间区域和第二时间区域)期间接收的数据被呈现给内部时钟域。时间区域中的一个可以被识别作为在其期间断言DQS信号的区域,表示识别区域包括从存储體中接收的有效娜。然后,可利用内部时钟信号锁存在识别区域中接收的数据,从而成功地将利用外部选通信号接收的与内部时钟数据同步。因此,在一个实施例中,可以禾,锁存器娜获并保持禾,外部舰信号在外部时钟区域中从存储装置220接收的信号,直到将要利用内部时钟信号与内部时钟区域同步。示例的激鹏图4是根据本发明一个实施例描述示例读取电路218的结构图。如所述,逻辑上(例如,不需要物理上)将读取电路分成通过分界线440所分隔开的外部:i^l信号(DQS)域和内部(系统)时钟域。读取电路218包括脉冲生成器402和区,测器404。读取电路218还包括多个锁存器(每个锁存器一次锁存8位,例如字节锁存)410、412、414、420、424、430、434和选择电路422、432,其可用来锁存DQS域中的f^^f专送锁存的数据到系统时钟域以利用内部时钟信号所读取,如下面所述。锁存器410、412、414可接收由脉冲生成电路402产生的脉冲,从而使读取数据被锁存并在外部选通信号(DQS)域和内部系统时钟信号(SysClk)域之间的分界线440处并^i也呈现。为了延iK接收的读取i^(例如,为了按延迟方式呈现所接收的读取数据给系统时钟域中的电路),由锁存器412、414呈现的f^可以M延迟锁存器(FFesl、FFosl)420、430进行锁存。然后,选择电路422、432选择第一锁存器412、414的输出(Dled、DLo)或者第二延iS锁存器420、430的输出(Dlddaye、DLdelayo)来4顿时钟信号SysClk由锁存器424、434迸行锁存。由区域检测电路404产生的延ifiit择信号SelDday可以用择由锁存器424、434锁存的读取数据(未延迟的读取■DLed、Dlo,或者延迟的读取Dldelaye、DLdelayo)。脉冲生成电路402和区嫩测电路404的实施例将在下面进行更详细的描述。示例脉冲M鹏图5是根据本发明的一个实施例描述的示例示例脉冲生成电路402的结构图。如所描述的,脉冲生成电路402可产生LTe、LTo和DQSstert信号。LTe信号被用来锁存用DQS时钟信号接收的偶数数据字节(例如,DQO、DQ2等)。相似地,LTo信号可以用来锁存用DQS时钟信号接收的奇数字节(例如,DQ1、DQ3等)。其中提供数据的存^^置为DDR-SDRAM,DQS时钟信号的每个上升沿提供偶数数据字节以及DQS时钟信号的每个下降沿提供奇数数据字节。DQSstart信号可表示何时最初接收DQS时钟信号并且可用来利用区:^t测器电路404确定DQS时钟信号落在哪个时钟区域内。例如,当检测DQS时钟信号的第一上升沿时,DQSstart信号可被断言并保持断言,同时禾,DQS时钟信号接收数据。在本发明的一个实施例中,利用延&电路502、AND门504、和NOR门506来产生脉冲信号LTe和LTo。例如,DQS时钟信号可以通过延迟电路502来产生延迟的DQS时钟信号,DQSd。根据所希望的读取和电路的操作特性可以选择任何合适的延迟。在一个实施例中,延迟电路502可延匠DQS时钟信号四分之一的DQS时钟信号周期tCK。然后,DQSd时钟信号施加到AND门504的一1^俞入,同时DQS时钟信号被输入到AND门504的另一^f俞入。AND门504的输出为LTe信号。相f(i也,DQSd时钟信号被施加到NOR门506的一,入,同时DQS时钟{言号被输^^合NOR门506的另一4i俞入。AND门504的输出为LTo信号。脉冲生成电路402也被用来产生表示何时检测到DQS时钟信号的第一上升沿的信号(DQSstart)。例如,DQS信号被施加到锁存器508(FF0)的时钟输入并且高逻辑电平(二进制T)被施加到锁存器508的输入。在使用锁存器508之前,复位信号!鹏加到锁存器508,使得锁存器输出低逻辑电平d制f)。当检测到DQS时钟信号的上升沿时,锁存器508锁存高逻辑电平,使得DQSstart信号从'0'转变为并且在数据传送期间保持该值。在随后传送数据之前(例如,在结束当前读取命令之后),锁存器508被再次复位。图6是根据本发明的一个实施例描述由脉冲生成电路产生的示例脉冲的时序图。如所描述的,当DQS时钟信号和DQSd信号都被断言时(例如,在DQS时钟信号的上升沿之后的四分之一周期,时间WVt6等),通过AND门504产生LTe脉冲。相似地,当DQS时钟信号和DQSd信号都被斷氐时(例如,在DQS时钟信号的上升沿之后四分;tH周期,时间Wt^等),ffiilNOR门506产生LTo脉冲。同样,当在时间、处首先检测到DQS信号的上升沿时,DQSstart信号可以被断言并且可以保持断言数据传送的持续时间。示例区撇测鹏图7是根据本发明的一个实施例描述示例的区:^t测电路404的结构图。如所描述的,一系列锁存器702、704、706接收表示何时区嫩测电路404开始检查其中接收针对读取命令的数据的区域的信号(CHKstart)(例如,开始检查如DQSstart信号所表示的DQS的第一上升沿)。在一个实施例中,iMS制电路212断言CHKstart信号。例如,在已经发送读取命令给存储装置220之后的指定时间处断言CHKstart信号(例如,在响应由存储装置220接收的读取命令降低DQS时钟信号之后的给定时间处)。降低DQS信号之后,通过确定最小数目的系统时钟周期选择指定的时间,在其期间接收读取数据。例如,表示存储體220的访问时间的CAS等待时间(CL)可被用来确定系统时钟周期的最小数目,在其之后CHKstart信号可被断言。例如,特定时间为CL的最后时钟周期的开始。在断言CHKstart信号之后,在反相系统时钟SysC歸的上升沿上由第一锁存器702锁存CHKstart信号值。由第一锁存器输出的信号(CHKtAC05)表示在第一区域tAC05,在其期间区域检测电路404可检查来确定根据读取命令的数据是否被接收。然后,系统时钟信号SysClk的下一个上升沿{妙万断言的CHKtAC05信号由第二锁存器704锁存。从而,系统时钟周期一半之后,CHKtAC10信号由第二锁存器704断言,表示第二区域tAC10,在其期间区:^t测电路404可检查来确定根据读取命令的数据是否被接收。然后,另一t半时钟周期之后,在SysCM的下一个上升沿处,断言的CHKtAClO信号由第三锁存器706锁存。当第三锁存器706锁存所断言的CHKtAClO信号时,CHKtAC15信号可以被断言,表示第三区域tAC15,在其期间区嫩测电路404可检查来确定根据读取命令的数据是否被接收。提供一系列锁存器702、704、706的输出被提供作为时钟输入到区嫩测器404中的第二组锁存器712、714、716。输入到第二组锁存器712、714、716中的每一个的数据为DQSstart信号。从而,在系统时钟信号(tAC05、tAC10、tAC15)的每个相应区域期间,表示当前系统时钟区域的信号(CHKtAC05、CHKtAClO、CHKtAC15)使第二组锁存器712、714、716锁存DQSstart信号。如果在tAC05期间断言DQSstart信号,那么锁存器712的输出b0将被断言。如果在tAC10期间断言DQSstart信号,那么锁存器714的输出bl将被断言并且将降低锁存器712的输出b0。最后,如果在tAC15期间断言DQSstart信号,那么锁存器716的输出b2将被断言同时将降低锁存器712、714的输出b0、bl。从而,输出bO、bl、b2的组合将表示在时间区域tAC05、tAC10、tAC15,在其期间接收DQS信号的第一上升沿。^H贞存器702、704、706、712、714、716也具有复位输入,该复位输入可以被用来在^^数据访问之前之间复位每^H贞存器。第二组锁存器712、714、716的输出b0、bl、b2输入到判定控制电路720。基于输入bO、bl、b2的组合,判定控制电路720产生同步控制信号,该同步控制信号表示何时锁存读取数据并且读取数据将从哪个锁存器中锁存。例如,在两组或两组以上锁存器中延迟接收的读取数据,为将要被锁存的读取提供两个或两个以上时间,从而利用系统时钟为后获提供对数据的更好的定位。在一个实施例中,M51提供在其处锁存读取M的两个或两个以上时间,可以c^a外部选通信号DQS和内部时钟信号SysClk之间的同步,例如,i!31允许内部时钟信号SysClk用来锁存从具有相应较短数据读取窗口的较决外部M信号所接收的读取数据。图8是根据本发明一个实施例描标例的同步信号的时序图。如所描述的,在时间t^处发出读取命令。在之后的某一时间(tl),陶氐外部M信号DQS,标该读取命令已经被存储装置220接收。然后,在时间t2,断言CHKstart信号,表示区嫩测电路404开始检查读取数据的接收(例如,通过检查外部iiil信号DQS的下一个上升沿)。如上所述,在关于存储驢220的CL(如在CL的最后时钟周期的开始)的值的某一预定时间断言CHKstart信号。可选地,可以选择其他预定时间。在时间tg,断言的CHKstart信号由锁存器702进行锁存,从而断言CHKtAC05信号。然后,在时间t4,所断言的CHKtAC05信号可以由锁存器704进行锁存,从而断言CHKtAClO信号。然后,在时间所断言的CHKtAClO信号可以由锁存器706进行锁存,从而断言CHKtAC15信号。如上所述,可以在CHKstart信号断言之后的某一时间tAC处接收外部选通信号DQS的第一上升沿。从而,在CHKstart信号断言之后的时间tAC内断言DQSstart信号(例如,在时间tg处,如图8所述)。下面将参考图9-11来描述利用读取电路218(包括区:1S^测电路404和脉冲检测电路402)来执行读取。在本发明的一个实施例中,同步信号包括延迟选择信号SelDelay^和读取使能信号RDena。MiSi择信号SelDelay表示包括读取j言号的延迟形式的一组锁存器,从其中将输入读取数据。例如,如果向着系统时钟周期的开始接收读取M(例如,如果断言b0,或者如果断言b2而不断言b0和bl,如区域tAC05或者tAC15),选择用于输入读取数据的另外的延迟量(例如,使得SelDday^,从而ililit择电路422、432选择锁存器420、430的输出并且将输出施加到锁存器424、434以及也如由图9和11中虚线所描述的),从而允许读取数据在系统时钟信号SysClk的随后的上升沿上输入。然而,如果向着系统时钟周期的结束时接收读取数据(例如,如果如区域tAC10中断言bl而不断言b0),则较少的5SE量(例如,延迟量少于关于较大的延迟量)可被选择(例如,使得SelDela"O,从而fflilit择电路422、423选择锁存器412、414的输出并且将输出施加会舒贞存器424、434以及如由图10中虚线所描述的,下面将迸行描述)。例如,基于所希望的延迟量,来自第一组锁存器412、414或者第二组锁存器420、430的数据将被输入至嚇入锁存器中。在一个实施例中,读取使能信号RDena表示在其期间利用内部时钟信号SysClk来输入读取数据(例如,所锁存的)的时钟周期。例如,当断言CHKstart信号时,启动计数器并开始计数SysClk的内部时钟周期。RDena信号表示计数器的值,在此期间利用内部时钟信号锁存读取数据。例如,如果在检测到外部舰信号DQS的第一上升沿之后(例如,如果断言bO或bl),则读取数据最初在一个时钟周期内接收,夷,么RDena信号表示在两个系统时钟周期之后锁存的读取数据(例如,允许外部时钟信号用于锁存读取数据并用内部系统时钟呈现将要读取的读取数据)。相似地,如果在检测到外部选通信号DQS的第一上升沿之后(例如,如果断言b2,而不断言bl和bO)的两个时钟周期内最初接收读取数据,那么RDena信号表示在三个系统时钟周期之后锁存读取。表l描述了由判定控制电路404使用的判定规则来产生如禾,输入b0、bl、b2所描述的同步信号。表l:用于判定控制,的判定规则<table>tableseeoriginaldocumentpage18</column></row><table>示例ITO^图9-11是根据本发明的一个实施例描述用于从存储装置接收的数据的示例传送信号的时序图。图9是描述示例的传输的时序图,其中在tAC05期间接收数据。如戶;描述的,在时间V断言CHKstart信号并且计数器在一开^i十数。然后,在时间V例如,断言DQS时钟信号并且在数据总线DQ上方爐数据的第一字节(DQ0)。从而,在tAC05区域期间,在时间^和t2之间开始接收DQS时钟信号。如上所述,当接收DQS信号时,脉冲生成电路402开始产生脉冲。第一脉冲可被产生,用于在时间^开始的偶数锁存信号LTe并且可由读取电路218的锁存器410所使用(如图4所述)来锁存数据的第一字节(DLe=DQ0)。产生用于在时间t3开始奇数锁存4言号LTo的第二脉冲。可由锁存器414使用第二脉冲信号来锁存数据的第二字节(DLo=DQl)并且该第二脉冲信号也由锁存器412使用来锁存DLe的值(DQO),使得由锁存器412输出数据的第一字节(DLed^QO)。从而,时间、处,最初串行接收的接收数据的前两个字节DQO和DQ1可在外部逸通(DQS)域和系统时钟域(之间的分界线440由图4中虚线所描述)处并行地呈现并且利用反相系统时钟信号SysC歸的上升沿由延迟锁存器420、430进行锁存,从而提供由系统时钟信号随后边缘所捕获的接收的更好的定位。关于图7的,描述,区J^测电路404检测在时间周期tAC05期间接收DQS的第一上升沿,作为响应,在两个时钟周期之后断言读取使能信号RDena以及断言延,择信号(SdDda"l)。当断言延,择信号时,选择电路422、432呈现延迟的读取数据(DLdelays和DLddayo).给输入锁存器424、434。然后,在时间^处的系统时钟信号SysClk的下一个上升沿上由输入锁存器424、434锁存延迟的读取数据并且该延迟的读取数据作为偶数和奇数有效M信号Dvalide、Dvalido来输出。断言的读取使能信号RDena表示在集成电路装置210中可由其他电路使用输入锁存器424、434中的锁存DvaJide、Dvalido。例如,在寄存器(例如,移位寄存器)中积累数据,直到完成读取,并且然后被存储或者例如由通过控制电路212使用来执行操作。随后接收的数据可以相似的方式利用由脉冲生成电路402产生的脉冲锁存、传输到延迟锁存器420、430并由输入锁存器424、434锁存。从而,例如,在时间、处,第三和第四数据字节DQ2、DQ3可由延迟锁存器420、430进行锁存并且在时间、处由输入锁存器424、434根据延迟锁存器420、430的输出锁存数据字节DQ2、DQ3。从而,如上所述,经由外部M信号DQS接收的数据由第一组锁存器410、412、414进行锁存并且并行呈现于内部时钟域和外部时钟域的分界线440处。在分界线440中呈现的数据由第二组锁存器420、430进行锁存。取决于其中接收数据的时间域,来自第一或第二组锁存器的数据可以由输入锁存器424、434进行锁存。例如,关于图9所述,如果在用于接收的数据的最小开始时间的一半时钟周期内接收数据(例如,在当断言CHKstart信号时的一半时钟周期内),于是,来自第二组锁存器420、430的被锁存并且在最小开始时间之后在第二时间周期中读取。图10是描述其中在tAC10期间接收数据的示例的数据传送的时序图。如所述,在时间、处,断言CHKstart信号并且并且计数驗一处开始计数。然后,在时间、,例如,断言DQS时钟信号并且在数据总线DQ上方爐数据的第一字节(DQO)。从而,在tAC10区域期间,开始接收DQS时钟信号。当接收DQS信号时,脉冲生成电路402开始产生脉冲。在时间^开始产生第一脉冲LTe并且由读取电路218的锁存器410使用该第一脉冲LTe(如图4中所述)来锁存的第一字节(DLe=DQO)。在时间t3开始产生第二脉冲LTo。所产生的脉冲被用来锁存如上所述的所接收的数据DQ0-DQ1。从而,在时间t4处,接收数据的前两个字节DQO和DQ1可并4ft也呈现于外部时钟域和系统时钟域之间的分界线440处(如图4中虚线所描述的)。关于图7的上述的描述,区,测电路404可^^测在时间周期tAC10期间接收的DQS的第一上升沿,作为响应,在两个时钟周期之后断言读取使能信号RDena并且降低延繊择信号(SelDelay=0)。当断言延,择信号时,选择电路422、432呈现未延迟的读取数据(DLed和DLo)给输入锁存器424、434。如上所述,由于在SysClk周期的第二半周期期间接收读取数据,选择未延迟的数据,从而允许在系统时钟信号SysClk的下一个上升沿处输入未延迟的数据。从而,在时间t4处由输入锁存器424、434锁存未延迟的读取数据并且作为奇数和偶数的有效信号Dvalide、Dvalido进行输出。断言的读取使能信号RDena表示在如上面描述的集成电路装置210中由其他电路{^^输入锁存器424、434中的锁存f^Dvalide、DvaJido。随后的数据也如上面所述的被输入。从而,如关于图10所述的,如果在用于接收数据的最小开始时间的半个时钟周期和整个时钟周期之间接收数据(例如,在当断言CHKstart信号时的一半到一个周期内),那么,根据第一组锁存器412、414将数据锁存并且在最小开始时间之后的第二时钟周期中读取该。图11是描述其中在tAC15期间接收数据的示例的数据传送的时序图。如所述的,在时间to处,断言CHKstart信号并且计数器在一处开^i十数。然后,在时间V例如,断言DQS时钟信号并且在i^总线DQ上方爐魏的第一字节(DQ0)。从而,在tAC15区域期间,开始接收DQS时钟信号。如上所述,当接收DQS信号时,脉冲生成电路402开始产生脉冲。第一脉冲可被产生用于在时间t2开始的偶数锁存信号LTe并且fflil读取电路218的锁存器410所使用(如图4所述)来锁存数据的第一字节(DLe-DQO)。第二脉冲可产生用于在时间b开始的奇数锁存信号LTo。由锁存器414使用第二脉冲信号来锁存数据的第二字节(DLo=DQl)并且该第二脉冲信号也由锁存器412使用来锁存DLe的值(DQO),使得由锁存器412输出数据的第一字节(DLed=DQ0)。从而,时间^处,接收数据的前两个字节DQO和DQ1在外部时钟域和系统时钟域之间的分界线440(由图4中虚线所描述)处并^ite现并且利用反相系统时钟信号SysC歸的上升沿由延迟锁存器420、430进行锁存。关于图7的上述的描述,区i^测电路404检测在时间周期tAC15期间接收DQS的第一上升沿,作为响应,在三个时钟周期之后断言读取使能信号RDena并且断言延ifi^择信号(SelDelay^1)。在三个时钟周期之后断言读取使能信号RDena来允许用于在时钟周期之间的分界线处并行呈现的读取数据的时间,并且延,择信号SelDelay可被断言来允许读取的延迟形式来利用内部时钟信号SysClk的随后的上升时钟^iS行锁存。从而,当断言EiHi^择信号时,选择电路422、432呈现蹈助勺读取数据(DLdelays和DLdelayo)给输入锁存器424、434。然后,在时间{5处的系统时钟信号SysClk的下一个上升沿上由输入锁存器424、434锁存延迟的读取数据并且该延迟的读取数据作为偶数和奇数有效M信号Dvalide、Dvalido来输出。断言的读取使能信号RDena表示在如上所述的集成电路装置210中由其他电路使用输入锁存器424、434中的锁存数据Dvalide、Dvalido。以如上所述的相似方式也可以锁存随后接收的数据。从而,如关于图11的描述,如果在用于接收的数据最小开始时间之后大于一个时钟周期(例如,断言CHKstart信号之后大于一个时钟周期)接收数据,那么从第二组锁存器420、430中锁存数据并且在最小开始时间之后的第三时钟周期中读取。其他織例在本发明的一个实施例中,读取电路218具有多个同步模式。例如,一个同步模式如上面所述的进行实现,在内部时钟域和外部时钟域之间的分界线440^bM现两个字节数据。也提供了第二同步模式,从而允许并行呈现的多个数据被锁存(例如,与第一模式中的相比较),并且随后输入到系统时钟域。同样,该实施例提供大于两个模式并且如果需要,模式中任意一个(例如,仅第二模式)也可以與虫提供。图12是根据本发明一个实施例描述提供多个同步模式的示例的读取电路1200的结构图。在本发明的实施例中,例如,通过发出命令给控制电路212(例如,通过执行软件命令,或者经由集成电路装置210的外部妾口通过接收并解^^令)选择同步模式。例如,发出命令给控制电路212,其设置或者清除控制寄存器中的比特。如果设置比特,那么禾,第二同步模式。如果清除比特,那么禾佣第一同步模式。在本发明一个实施例中,修改模式选择信号(Mode_2p4p)来选择一种同步模式。例如,如果降低信号Mode一2p4p,可利用第一同步模式(关于图4所描述的)。如果断言信号Mode一2p4p,可利用第二同步模式,下面将进行描述。其中利用第一同步模式,如关于图4所述操作读取电路1200,使得读取电路1200中的特定电路1240在第一同步模式中不被使用(例如,用来操作电路1240的控制信号在第一同步模式中不被发出,但是可在第二同步模式中发出控制信号给电路)。同样,在一个实施例中,读取电路1200被设计来仅在单个模式中进行操作(例如,第二同步模式),使得总是4顿用于第二同步模式的电路1240。如所述,读取电路1200包括脉冲生成电路1202和域检测电路1204。同样,读取电路1200包括第一组锁存器1210、1212、1214和1220、1222、1224、1226,其接i(tt自DQ数据总线的数据并且用由脉冲生成电路1202产生的脉冲锁存所接收的。在第二模式中,其中四^l及存器1210、1212、1214、1226开始接收来自DQ的读取数据,脉冲生成电路可产生四个锁存信号(LT0、LT1、LT2、LT3)以锁存所接收的数据。如所描述的,第一组锁存器1210、1212、1214和1220、1222、1224、1226可接收并且呈现在外部时钟域和内部时钟(SysClk)域之间的分界线440嫩圣过串行麵输入DQ接收的,的四个字节。iM:接收娜的四个字节(或者更多,取决于f吏用的锁存器的数量)并在第一组锁存器1210、1212、1214和1220、1222、1224、1226中保存所接收的数据,例如,可保持所接收的数据,直到利用内部系统时钟SysClk锁存数据并且从而该数据被传送给系统时钟域。在一个实施例中,其中第一组锁存器1210、1212、1214和1220、1222、1224、1226包括保存全部系统时钟周期所接收的锁存器,系统时钟被用来直接锁存来自这些锁存器的读取数据(例如,而不需要由区域检测电路1204的延迟或者未延迟娜的选择)。从而,在第二同步模式中,区嫩测电路1204降低用于所接收数据的SelDelay的信号,因为在第一组锁存器1210、1212、1214和1220、1222、1224、1226中保持接收的数据,直到检测到系统时钟信号SysClk的另一个上升沿,而无需进一步延迟所接收的数据(例如,利用关于图4所述的第二组锁存器)。其中使用第一同步模式,如关于图7所描M5i区嫩测电路1204可选择选择信号SelDelay。在锁存器1220、1222、1224、1226中接收到读取繊之后,禾,系统时钟{言号SysClk的随后上升沿通过输入锁存器1230、1232、1234、1236锁存读取类娥。当区微测电路1204断言读取使能信号RDena时。从输入锁存器可将接收的数据传送到如寄存器中,允许保持读取数据来随后被输入输入锁存器1230、1232、1234、1236中并且从其中读取,直到完成读取操作。在第二同步模式中,区域检测电路确定何时以关于图7和表1所述的第一同步模式相似的方式断言读取使能信号RDena。例如,如果在tAC05或者tAC10区域期间检测DQS信号的第一上升沿,那么在计数达到3之后(例如,在断言CHKstart信号之后三个SysClk周期)可断言读取使能信号RDena。如果在tAC15区娜间检测到dqs信号的第一上升沿,那么在计^j&iij4(例如,在断言CHKstart信号:tJS四个Sysak周期)可断言RDena,图13是根据本发明一个实施例描^M的^lg^m信号的时序图,具有四个脉冲用于以第二同步模式(Mbde—2p4p=,l,)锁存从#^1!接收的数据。如m的,在时间1o处,言CHKstart信号并且计数器在l^f始计数。然后,例如,在时间t,处可断言DQS时IWt号并且Wg繊DQ上^SW的第—字节(DQ0).从而,在tAC15区鄉间开始接收DQS时,帽号。锁#^1220、1222、1224。从而,,卜部i^M信号DQS串ffife^收的ilM^的四个接收字节^m餅部时W^繊时钟(SysCIk),司的分微440^bSm。然后,利用时间、、tp和tw处^生的脉冲将l^接收的^gii入锁,1210、1212、1214、1226内。〖0079]由于tAC15区鄉间接收DQS信号,始J^沿,在计微4^,时间、处,以第二同步^^作的区糊!l鹏1204可以断言读敢使能信号RDena。如JJf^,区^1鹏1204也碟二同步麟中将的延迟^#信号^£低畅(SeIDela"'O,).从而,在时间1^处,SysOk的上升沿鹏来将来自锁存器1220、1222、1224、1226的接收的igWg的前四个字入到11入锁^1230、1232、1234、1236中并且可断言^H使能信号RDena,允W入锁織1230、1232、1234、1236中的麟被读鹏且如预述的由其他tl^所使用'〖0080]从而,如上所述,在第二同步模式中,禾,由脉冲生成电路产生的脉冲,在第一组锁存器1210、1212、1214和1220、1222、1224、1226中锁存串行接收的数据的四个字节。在数据并行地呈现于外部时钟域和内部时钟域之间的分界线440^t后,利用内部时钟信号SysClk的下一个上升沿将输入到输入锁存器1230、1232、1234、1236中。区域检测电路可确定在其期间接收DQS时钟信号的第一上升沿的区域,并且作为响应,断言表示何时从输入锁存器1230、1232、1234、1236中读取数据的读取使能^言号RDena。尽管关于在tAC15周期期间开始接收的数据进行了描述,相似地禾,读取电路1200,其中在另一个周期期间接收数据(例如,如所希望的tAC10、tAC05、或者另一个周期)。尽管关于两个同步模式进行了上述描述,但可利用另外模式,例如,使得另夕卜数据可以被接收并且在外部时钟域禾呐部时钟域之间的分界线440处并衍也呈现,允许接收的数据来利用内部时钟信号被随后锁定。同样,在某些情况中,读取电路仅利用单个模式,其中另外的数据被串《fi:也接收并并行(例如,四个、8个字节,16个字节等等)呈现。尽管关于集成电路描述了读取串行来自存储装置的数据,对于在任何鄉装置之间传输的任何类娥可禾拥本发明实施例。此外,本发明的实施例也在单^内{顿,例如,其使用多个内部时钟信号和相应的时钟域。其中在单个装置内禾拥本发明实施例,外部i^il信号为接收数据的时钟域外部的时钟信号,并且内部时钟信号为接收数据的时钟域内的时钟信号。当前述内容针对本发明实施例时,可以设计本发明的其他和另外实施例而不偏离其基本范围,并且由所附的权利要求确定其中的范围。权利要求1.一种用于读取数据方法,包括根据第一时钟信号产生两个或两个以上脉冲,由其接收将要被读取的数据;利用每个产生的脉冲来锁存在相应时间处接收的数据;检测在其期间接收数据的第一时间区域;利用检测的第一时间区域来确定第二时间区域,在该第二时间区域期间可利用第二时钟信号读取数据;以及在第二时间区域期间利用第二时钟信号读取数据。2.如权利要求l所述的方法,进一步包括.-禾产生的脉冲将读入第一组锁存器内;将来自第一组锁存器的传送到第二组锁存器;禾,检测的第一时间区^择来自第一组锁存器和第二组锁存器中的一组的数据;利用第二时钟信号,将魏输入到来自第一组锁存器禾瞎二组锁存器中所选择的一组的输入锁存器;以及在第二时间区域期间读取来自输入锁存器的数据。3.如禾又利要求2所述的方法,其中所述读入第一组锁存器内的在第一组锁存器中每一个的输入处被串行地接收并被并行地呈现在第一组锁存器输出处。4.如权利要求l所述的方法,进一步包括接收模式i^择^言号;如果所述模式选择信号对应于第一模式,贝J产生两个脉冲,使得两组串行接收的数据被锁存并通过第一组锁存器并fi^也呈现;以及如果所述模式选择信号对应于第二模式,贝IJ产生四个脉冲,使得四组串行接收的数据被锁存并通过第一组锁存器并^i也呈现。5.如权利要求1所述的方法,其中检测在其期间接收数据的第一时间区域的步骤包括发出用于数据的读取^^令;在发出读取命令之后的预定时间处,断言表示用来检查的初始时间的检查信号;产生在用来检查数据的初始时间处开始的多个信号;以及确定是否在多个产生的信号中的两个之间的时间区域中接收数据,其中多个信号中的两个之间的时间区域对应于第一时间区域。6.—种集成电路,包括控制电路,其配置用于发出读取^^令;读取电路,其配置用于根据外部itil信号产生两个或两个以上脉冲;锁存在每个产生的脉冲对应的时间处接收的数据;检测在其期间接收娜的第一时间区域;禾,检测的第一时间区^^确定第二时间区域,在第二时间区域期间可利用内部时钟信号读取数据;以及在第二时间区域期间利用内部时钟信号读取数据。7.如权利要求6所述的集成电路,其中所述读取电路进一步被配置用于禾,*产生的脉冲将读入第一组锁存器内;将来自第一组锁存器的传送到第二组锁存器;利用检测的第一时间区ttit择来自第一组锁存器和第二组锁存器中的一组的数据;利用第二时钟信号,将输入至睞自第一组锁存器和第二组锁存器中所选择的一组的输入锁存器;以及在第二时间区域期间读取来自输入锁存器的数据。8.如丰又利要求7所述的集成电路,其中所述读入第一组锁存器内的数据在第一组锁存器中每一个的输入处被串《fi也接收并被并衍也呈现在第一组锁存器输出处。9.如权利要求6所述的集成电路,其中读取电路进一步被配置用于接收模式选择信号;如果所述模式选择信号对应于第一模式,贝IJ产生两个脉冲,使得两组串行接收的数据被锁存并通过第一组锁存器并衍也呈现;以及如果所述模式选择信号对应于第二模式,则产生四个脉冲,使得四组串行接收的数据被锁存并通过第一组锁存器并4Ti也呈现。10.如权利要求6所述的集成电路,其中所述读取电路进一步被配置用于:检测表示用于检查数据的初时时间的断言的检查信号,其中在发出读取命令之后在预定时间处由控制电路断言所断言的检查信号;在用于检测数据的初时时间处产生开始多个信号;以及确定是否在多个产生的信号中的两个之间的时间区域中接收数据,其中多个信号中的两个之间的时间区自应于第一时间区域。11.一种系统,包括存{置,包括配置用于产生数据时钟信号并且响应接收读取命令而利用所述数据时钟信号串行传输繊的电路;集成电路,包括时钟电路,配置用于产生内部时钟信号;控制电路,配置用于将读取命令发出给存储装置;读取电路,配置用于根据所述类鄉时钟信号产生两个或两个以上脉冲;锁存在每个产生的脉冲对应的时间处接收的串行传输;;检测在其期间接收第一组串行传输数据的第一时间区域;利用检测的第一时间区域确定第二时间区域,在第二时间区域期间可利用内部时钟信号读取串行传输的数据;以及在第二时间区域期间利用内部时钟信号读取串行传输繊。12.如权利要求ll所述的系统,其中所述读取电路进一步被配置用于禾,^产生的脉冲将串行传输的数据读入第一组锁存器内;将来自第一组锁存器的串行传输的数据传送到第二组锁存器;利用检测的第一时间区^择来自第一组锁存器和第二组锁存器中的一组的串行传输数据;禾'佣第二时钟信号,将串行传输娜输入至睐自第一组锁存器和第二组锁存器中选择的一组的输入锁存器;以及在第二时间区域期间读tt自输入锁存器的串行传输数据。13.如权利要求12所述的系统,其中所述读取电路被配置用于在第一组锁存器的每一个的输入处将串行传输数据读入第一组锁存器内并且在第一组锁存器的输出处并衍也呈现串行传输数据。14.如权利要求ll所述的系统,其中所述读取电路进一步被配置用于接收来自控制电路的模式选择信号;如果所述模式选择信号对应于第一模式,贝lj产生两个脉冲,使得两组串行接收的数据被锁存并通过第一组锁存器并衍也呈现;以及如果所述模式选择信号对应于第二模式,贝IJ产生四个脉冲,使得四组串行接收的数据被锁存并通过第一组锁存器并4fi也呈现。15.如权利要求ll所述的系统,其中所述读取电路进一步被配置用于检测表示用于检查串行传输数据的初时时间的断言的检查信号,其中在发出读取命令之后在预定时间处由控制电路断言所断言的检查信号;产生在用于检查串行传输数据的初时时间处开始的多个信号;以及确定是否在多个产生的信号中的两个之间的时间区域中接收串行传输的数据,其中多个信号中的两个之间的时间区域对应于第一时间区域。16.如权利要求11所述的系统,其中所述集成电路是存储控制器,并且其中所述存^1^置为双{率(DDR)同步动态、随机存取存储器(SDRAM)装置,其中所述DDRSDRAM體被配置用于在数据时钟信号的上升沿上传输第一组并在时钟信号的下降沿上传输第二组。17.—种集成电路装置,包括控制电路,配置用于将读取命令发出给其他装置;读取电路,包括脉冲生成电路,配置来产生脉冲;第一多个锁存器,配置来利用由脉冲生成电路产生的脉冲锁存用于读取命令的读取;第二多个锁存器,配置来锁存读取数据,其中由第一多个锁存器输出锁存的读取数棍区il^t测电路,配置用于检测在其期间接收读取繊的时间区域;以及响应检测的时间区域,选择第一多个锁存器和第二多个锁存器中的一个;以及第三多个锁存器,配置用于从第一多个锁存器和第二多^#、存器中选择的一,入读取。18.如权利要求17所述的集成电路装置,其中所述第一多个锁存器串行接收读取数据并且并行地将读取呈现给第二多个锁存器。19.如权利要求17所述的集成电路装置,其中所述读取电路进一步包括选择电路,配置用于从区fe微测电路接收选择信号,其中所繊择信号表示第一多^fl存器和第二多^l贞存器中所选择一个;接收由第一多个锁存器和第二多个锁存器并行输出的读取数据;以及响应接收的选择信号,将来自第一多W贞存器禾嘴二多^I贞存器中所选择一个的读取呈现给第三多^^存器的输入。20.如权利要求17所述的集成电路装置,其中所述区ilS^测电路被配置用于检测表示用于检查串行传输数据的初始时间的断言的检查信号,其中在发出读取命令之后在预定时间处由控制电路断言所断言的检查信号;产生在用于检测串行传输的初始时间处开始的多个信号;以及确定在多个产生的信号中的两个之间的时间区域中是否接收串行传输的数据,其中多个信号中的两个之间的时间区綱应于所检测的时间区域。21.—种集成电路,包括用于控制的部件,配置来发出读取命令;用于读取的部件,配置用于根据外部i^l信号产生两个或两个以上脉冲;锁存在^t产生的脉冲对应的时间处接收的数据;检测在其期间接收繊的第一时间区域;禾拥检测的第一时间区域来确定第二时间区域,在该第二时间区域期间可利用内部时钟信号读取数据;以及在第二时间区域期间利用内部时钟信号读取数据。22.如权禾腰求21所述的集成电路,其中所述用于读取的部件进一步配置用于禾,旨产生的脉冲将读入用于锁存的第一部件内;将来自用于锁存的第一部件的娜传送至,于锁存的第二部件;禾,检测的第一时间区域皿择来自用于锁存的第一部件和用于锁存的第二部件中的一个的;禾IJ用第二时钟信号,将输入到来自用于锁存的第一部件和用于锁存的第二部件中选择的一个的用于输入的部件;以及在第二时间区域期间读取来自用于输入的部件的。23.如权利要求22所述的集成电路,其中所述读入用于锁存的第一部件内的在用于锁存的第一部件的每一个的输入处被串行接收并且在用于锁存的第一部件的输出处并4Ti也呈现。24.如木又利要求21所述的集成电路,其中所述用于读取的部件进一步被配置用于接收模式选择信号;如果所述模式选择信号对应于第一模式,贝IJ产生两个脉冲,使得两组串行接收的数据被锁存并通过用于锁存的第一部件并衍也呈现;以及如果所述模式选择信号对应于第二模式,则产生四个脉冲,使得四组串行接收的数据被锁存并通过用于锁存的第一部件并衍也呈现。25.如权利要求21所述的集成电路,其中所述用于读取的部件进一步被配置用于检测表示用于检查数据的初始时间的断言的检查信号,其中在发出读取命令之后在预定的时间处由用于控制的部件断言所断言的检查信号;产生在用于检测数据的初始时间处开始的多个信号;以及确定在多个产生的信号中的两个之间的时间区域中是否接收数据,其中多个信号中的两个之间的时间区域对应于第一时间区域。26.—种用于读取数据的方法,包括根据第一时钟{言号产生两个或两个以上脉冲,由其接收将要被读取的数据;禾1」用^产生的脉冲将读入第一组锁存器内;将来自第一组锁存器的織传想嗨二组锁存器;检测在其期间接收的第一时间区敏禾(J用检测的第一时间区:ll^择来自第一组锁存器和第二组锁存器中的一组,从中在第二时间区域期间禾拥第二时钟信号输入;利用第二时钟信号,将娜输入到来自第一组锁存器和第二组锁存器中选择的一组的输入锁存器;以及在第二时间区域期间读取来自输入锁存器的数据。27.如权禾傻求26所述的方法,其中所述读入第一组锁存器内的娜在第一组锁存器中每一个的输入处被串行地接收并被并行iikM现在第一组锁存器输出处。28.如权利要求26所述的方法,进一步包括接收模式选择Y言号;如果所述模式选择信号对应于第一模式,贝lj产生两个脉冲,使得两组串行接收的数据被锁存并通过第一组锁存器并碎fi也呈恥以及如果所述模式选择信号对应于第二模式,贝U产生四个脉冲,使得四组串行接收的数据被锁存并通过第一组锁存器并4fi也呈现。29.如权利要求26所述的方法,其中检测在其期间接收数据的第一时间区域的步骤包括发出用于数据的读取命令;在发出读取命令之后的预定时间处,断言表示用来检查数据的初始时间的检查信号;产生在用来检查数据的初始时间处开始的多个数据;以及确定在多个产生的信号中的两个之间的时间区域中是否接收数据,其中多个数据中的两个之间的时间区域对应于第一时间区域。全文摘要本发明的实施例提供一种用于读取数据的方法。该方法包括根据第一时钟信号产生两个或两个以上脉冲,由其接收将要被读取的数据,利用每个产生的脉冲来锁存在相应时间处接收的锁存数据,以及检测在其期间接收数据的第一时间区域。该方法还包括利用检测的第一时间区域来确定第二时间区域,在其期间可利用第二时钟信号读取数据并且利用在第二时间区域期间的第二时钟信号读取数据。文档编号G11C7/22GK101101786SQ20071010536公开日2008年1月9日申请日期2007年4月4日优先权日2006年4月4日发明者R·-S·考申请人:奇梦达股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1