CN101276637B - 寄存器读取机构 - Google Patents

寄存器读取机构 Download PDF

Info

Publication number
CN101276637B
CN101276637B CN2007101124302A CN200710112430A CN101276637B CN 101276637 B CN101276637 B CN 101276637B CN 2007101124302 A CN2007101124302 A CN 2007101124302A CN 200710112430 A CN200710112430 A CN 200710112430A CN 101276637 B CN101276637 B CN 101276637B
Authority
CN
China
Prior art keywords
register
group
data
registers
read
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2007101124302A
Other languages
English (en)
Other versions
CN101276637A (zh
Inventor
蒋逸波
吴雷
山岗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Montage Technology Kunshan Co Ltd
Original Assignee
LANQI SEMICONDUCTOR SHANGHAI CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LANQI SEMICONDUCTOR SHANGHAI CO Ltd filed Critical LANQI SEMICONDUCTOR SHANGHAI CO Ltd
Publication of CN101276637A publication Critical patent/CN101276637A/zh
Application granted granted Critical
Publication of CN101276637B publication Critical patent/CN101276637B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/1032Simple parity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

集成电路已扩展一组定制寄存器和用于控制寄存器的读取机构。一种电路包含第一组寄存器;第二组寄存器,其与所述第一组寄存器耦合,将通过定址到所述第一组中的一个或一个以上寄存器的一个或一个以上写入操作来对所述第二组寄存器进行写入;和读取控制器,其与所述第一和第二组寄存器耦合,所述读取控制器基于存储在所述第二组中的一个或一个以上寄存器中的数据选择性地输出存储在所述第一和第二组寄存器中的数据的一部分。

Description

寄存器读取机构
本申请案主张2007年3月29日申请的第60/908,895号美国临时专利申请案的优先权,所述临时专利申请案的揭示内容以引用的方式并入本文。
技术领域
本发明的至少某些实施例涉及对集成电路中的控制寄存器的读取访问。
背景技术
寄存器式双列直插存储器模块寄存器式DIMM(RDIMM)对双列直插存储器模块寄存器式DIMM(DIMM)上的地址和控制线进行缓冲以减少信号负载。可将SSTE32882寄存时钟驱动器设计为寄存器式缓冲器,以驱动用于DDR3(双倍数据速率3)RDIMM应用的地址和控制线。
联合电子装置工程协会(JEDEC)提供界定用于SSTE32882的许多可配置寄存器(控制字)的标准,例如“JEDEC standard(proposed),Definition of theSSTE32882 Registering Clock Driver with Parity for DDR3 RDIMMApplications”。控制字可用于优化用于不同应用的寄存时钟驱动器的操作。举例来说,基于寄存器的设定,寄存时钟驱动器可改变其例如计时、驱动强度和时滞等输出特性,以匹配不同的DIMM网络拓扑。
SSTE32882寄存时钟驱动器具有十六个控制字。控制字0到5的功能由JEDEC标准界定,且控制字8到15经保留以供未来使用。控制字6和7是厂商指定的。JEDEC标准界定了用于这些控制字的写入操作,但未提供用于控制字的读取操作。
发明内容
本文描述一种集成电路已扩展一组定制寄存器和用于控制寄存器的读取机构。
在此部分中概述某些实施例。
在本发明的一个实施例中,所述一种电路,其包含:第一组寄存器;第二组寄存器,其与所述第一组寄存器耦合,将通过定址到所述第一组中的一个或一个以上寄存器的一个或一个以上写入操作来对所述第二组寄存器进行写入;和读取控制器,其与所述第一和第二组寄存器耦合,所述读取控制器基于存储在所述第二组中的一个或一个以上寄存器中的数据选择性地输出存储在所述第一和第二组寄存器中的数据的一部分。
在本发明的一个实施例中,所述的电路,其中所述电路集成在芯片上。
在本发明的一个实施例中,所述的电路,其中所述电路包含集成在所述芯片上的寄存时钟驱动器。
在本发明的一个实施例中,所述的电路,其中所述寄存时钟驱动器是根据联合电子装置工程协会(JEDEC)标准。
在本发明的一个实施例中,所述的电路,其中所述寄存时钟驱动器是根据用于DDR3(双倍数据速率3)RDIMM(寄存器式双列直插存储器模块)应用的具有奇偶性的SSTE32882寄存时钟驱动器的联合电子装置工程协会(JEDEC)标准。
在本发明的一个实施例中,所述的电路,其进一步包含:逻辑块;和多路复用器,其与所述逻辑块、所述读取控制器和所述第二组寄存器耦合,所述多路复用器基于存储在所述第二组中的所述一个或一个以上寄存器中的数据来从所述逻辑块的输出和所述读取控制器的输出中进行选择以作为所述电路的输出。
在本发明的一个实施例中,所述的电路,其中所述逻辑块产生用以指示是否已发生奇偶性错误的输出,且当对所述第一组中的一个寄存器进行写入时所述读取控制器根据存储在所述第二组寄存器中的一者中的数据来从所述第一和第二组寄存器中的一者中读取一位。
在本发明的一个实施例中,所述的电路,其中由所述读取控制器读取的所述一位是来自所述第一组的正根据输入数据进行写入的寄存器。
在本发明的一个实施例中,所述的电路,其中在根据所述输入数据对所述寄存器进行写入之前由所述读取控制器读取所述一位。
在本发明的一个实施例中,所述的电路,其中当所述第二组中的寄存器的第一位处于第一状态时,所述多路复用器选择所述逻辑块的输出;当所述第二组中的所述寄存器的所述第一位处于第二状态时,所述多路复用器选择所述读取控制器的输出。
在本发明的一个实施例中,所述的电路,其中所述第一组寄存器包含:第一多个寄存器,用以根据标准来存储数据以控制所述电路的操作;和第二多个寄存器,用以存储厂商指定的数据以控制所述电路的操作。
在本发明的一个实施例中,所述的电路,其中所述用以存储厂商指定数据的第二多个寄存器包括第一寄存器和第二寄存器,所述第一寄存器存储用于从所述第二组选择一寄存器群组的数据,所述第二寄存器接收识别所述选定群组中的一个或一个以上位的第一数据,以及将被写入根据所述第一数据所识别的所述一个或一个以上位中的第二数据,响应于被写入的所述第二寄存器而将所述第二数据写入所述第二组中的所述选定的寄存器群组的所述一个或一个以上位中。
在本发明的一个实施例中,所述的电路,其中当所述第一位处于所述第二状态中时,在将所述第二数据写入所述经识别的一个或一个以上位之前,由所述读取控制器读取根据所述第一数据所识别的所述一个或一个以上位中所存储的数据,以便使所述多路复用器进行选择。
在本发明的一个实施例中,所述的电路,其中当所述第一位处于所述第二状态时,如果所述经识别的一个或一个以上位不包括所述第一位,便将根据所述第一数据所识别的所述一个或一个以上位中所存储的数据重新写回所述经识别的一个或一个以上位中;且当所述第一位处于所述第一状态时,将所述第二数据写入所述经识别的一个或一个以上位中。
在本发明的一个实施例中,所述的电路,其中所述第二组中的所述寄存器的一个或一个以上第二位存储识别所述第一组中的寄存器的一个或一个以上位的数据;当所述第一位处于所述第二状态时,在对所述第一组中的所述寄存器进行写入之前由所述读取控制器读取根据所述一个或一个以上第二位所识别的所述一个或一个以上位中所存储的数据,以便使所述多路复用器进行选择。
在本发明的一个实施例中,所述的电路,其中所述第二组中的所述寄存器的一个或一个以上第二位存储识别所述第一组中的寄存器的一个或一个以上位的数据;当所述第一位处于所述第二状态时,当所述电路接收输入以写入所述第一组中的所述寄存器中时,由所述读取控制器将存储在所述第一组中的所述寄存器中的数据重新写回所述第一组中的所述寄存器中。
在本发明的一个实施例中,所述一种集成电路,其包含:多个寄存器;和读取控制器,其与所述多个寄存器耦合,当所述电路接收输入以写入第一寄存器中时,所述读取控制器输出存储在所述多个寄存器中的第一寄存器中的数据的一部分,将根据存储在所述多个寄存器中的第二寄存器中的数据来选择所述部分。
在本发明的一个实施例中,所述的集成电路,其进一步包含:逻辑块;和多路复用器,其耦合到所述读取控制器和所述逻辑块;其中当所述第二寄存器的位处于第一状态时,所述多路复用器选择逻辑块;且当所述第二寄存器的所述位处于第二状态时,所述多路复用器选择所述读取控制器。
在本发明的一个实施例中,所述一种集成电路,其包含:第一组寄存器,其包括第一寄存器和第二寄存器;和第二组寄存器,其与所述第一组寄存器耦合,所述第二组中的一寄存器群组将由存储在所述第一寄存器中的数据识别,所述群组的一个或一个以上位将由存储在所述第二寄存器中的数据的一部分识别;其中响应于正被写入的所述第二寄存器,将写入所述第二寄存器中的数据的一部分进一步写入由存储在所述第一和第二寄存器中的数据识别的所述群组的所述一个或一个以上位中。
在本发明的一个实施例中,所述的集成电路,其进一步包含:逻辑块,其用以检查奇偶性错误;读取控制器,其用以当所述集成电路接收输入以写入所述第一组和第二组中的寄存器中时读出所述第一组和第二组中的所述寄存器的至少一部分;和多路复用器,其耦合到所述读取控制器和所述逻辑块;其中当所述第二组寄存器的位处于第一状态时,所述多路复用器选择所述逻辑块;且当所述第二组寄存器的所述位处于第二状态时,所述多路复用器选择所述读取控制器。
附图说明
在附图的图式中以实例方式且不加限制地来说明实施例,附图中相同的参考符号指示类似的元件。
图1说明具有一组控制寄存器的集成电路芯片。
图2说明根据一个实施例的具有扩展的定制寄存器的集成电路芯片。
图3说明根据一个实施例的具有用于控制寄存器的读取机构的集成电路芯片。
图4说明根据一个实施例的具有扩展的定制寄存器和用于控制寄存器的读取机构的集成电路芯片。
图5说明根据一个实施例的对控制寄存器和定制寄存器进行定址的方案。
具体实施方式
以下描述和图式是说明性的而不是限制性的。描述许多特定细节以提供彻底的理解。然而,在某些情况下,为避免混淆本发明而没有描述众所周知的或常规的细节。对本发明中一个实施例的参考不一定是对同一实施例的参考,且这种参考表示至少一个。
用于具有奇偶性的SSTE32882寄存时钟驱动器的JEDEC标准界定了对驱动器的寄存器的写入操作,但没有提供对寄存器的读取访问。
在一个实施例中,认识到对控制寄存器的读取操作可用于设计工程,尤其是在测试或调试装置时。因此,开发一种寄存时钟驱动器以包括在JEDEC标准限制内对读取操作的支持。通过读取机构,设计工程师可获得装置的操作状态以帮助在调试期间找出错误。
在一个实施例中,在用于DDR RDIMM应用的具有奇偶性的寄存时钟驱动器中提供一种寄存器读取机构。所述读取机构允许主机读出存储在根据用于SSTE32882寄存时钟驱动器的JEDEC标准而设计的寄存时钟驱动器的控制字寄存器中的数据。此机构实现了对时钟驱动器的状态监视而不用改变其现有的引脚输出。
在一个实施例中,厂商指定的寄存器(控制字)用于对扩展的定制寄存器进行定址,所述扩展定制寄存器可经配置以实现对寄存器(包括控制字和扩展的定制寄存器)的读取操作。
在一个实施例中,设计一种读取机构以使用写入命令来对待读取的相应寄存器进行定址,并使用SSTE32882寄存时钟驱动器的现有引脚来输出结果。可在不对SSTE32882寄存时钟驱动器的引脚配置作任何改变的情况下实施此读取机构。在一个实施例中,通过写入命令来触发对寄存时钟驱动器的寄存器的读取操作,以最小化对主机软件的修改。
由于JEDEC标准已严格界定SSTE32882的引脚输出,因此基于未添加额外引脚的当前现有输入和输出垫来实施所述读取机构。
在一个实施例中,当设定扩展的定制寄存器的一个位以启用读取操作时,用于奇偶性错误的输出引脚用于输出读取操作的结果。因此,在读取模式中通过现有的输出引脚可以每次一位地读取控制字和扩展的定制寄存器中的数据。
在一个实施例中,厂商指定的控制字6和7用于对多达128位的定制寄存器堆进行定址,所述寄存器堆可用于界定厂商指定的控制字,包括用于启用/禁用读取操作符的控制位和寄存器偏移位,以从待读取的控制字中选择一个位以便通过用于奇偶性错误的引脚进行输出。
在一个实施例中,在时钟驱动器内提供集成的温度传感器。通过使用寄存器读取机构,设计工程师可读出装置的当前温度。举例来说,当前温度可存储在用户寄存器堆中,且可通过用于奇偶性错误的输出引脚每次读出一位。
本文揭示的技术也可在其它集成电路中使用以提供经由写入操作的读取机构。
图1说明具有一组控制寄存器(19)的集成电路芯片(11)。集成电路芯片(11)具有逻辑块(17),其可响应于从引脚(13)接收到的输入而经由引脚(15)产生输出。集成电路芯片(11)接受写入命令以将控制字存储在寄存器(19)中。控制字可用于优化集成电路芯片(11)的操作以用于各种不同的应用。
举例来说,集成电路芯片(11)可为根据JEDEC标准的SSTE32882寄存时钟驱动器,其中逻辑块(17)产生奇偶性错误的指示符。
一个实施例通过用于控制寄存器(19)中的一个或一个以上寄存器的写入操作来扩展集成电路芯片(11),而不用改变输入/输出协议且不添加额外引脚。
图2说明根据一个实施例的具有扩展的定制寄存器的集成电路芯片。在图2中,使用间接的寄存器定址方案来扩展可用的寄存器,而不用改变用于控制字的解码方案。在图2中,使用控制寄存器(19)中的一个或一个以上寄存器来接收地址和数据值,以便写入扩展寄存器(21)中。
举例来说,响应于被定址到厂商指定寄存器的写入命令,写入厂商指定寄存器中的数据可用作输入数据和/或地址数据,以写入扩展的寄存器(21)中。在一个实施例中,另一厂商指定寄存器可用于存储输入数据和/或地址数据的一部分,以用于扩展寄存器的写入操作。
当寄存器(19)的n位用作地址数据且寄存器(19)的m位用作输入数据时,(n+m)位可用于写入扩展寄存器的m*2^n个位。
在一个实施例中,扩展寄存器用于存储用于启用读取操作的数据。或者,控制寄存器(19)也可用于存储用于启用读取操作的数据。
图3说明根据一个实施例的具有用于控制寄存器的读取机构的集成电路芯片。在图3中,重新使用用于逻辑块(17)的输出端口以发出从目标寄存器读取的数据,以避免添加新的垫。举例来说,控制寄存器(19)的一位(例如,厂商指定寄存器的一位)可用作read_enable位,其用于控制多路复用器(23)来选择逻辑块(17)的输出或读取控制器(25)的输出。
举例来说,在一个实施例中,当将read_enable位设定为1时,多路复用器(23)经配置以选择逻辑块(17);且当将read_enable位设定为0时,多路复用器(23)经配置以选择读取控制器(25)。
在一个实施例中,读取控制器(25)经配置以在写入命令被接收以写入寄存器时读取寄存器。在一个实施例中,在将输入数据写入寄存器之前,由读取控制器(25)读取数据。在另一实施例中,当设定read_enable位以启用读取操作时,不将输入数据写入寄存器。或者,当设定read_enable位以启用读取操作时,忽略输入数据并将从寄存器读取的数据重新写入寄存器。在一个实施例中,控制寄存器的一位可用于指示当设定read_enable位以启用读取操作时是否根据输入数据来写入控制寄存器。
在一个实施例中,控制寄存器比用于逻辑块(17)的输出宽度宽。存储在一个寄存器中的可被写入一个写入命令中的数据具有比逻辑块(17)的输出多的位。因此,一个或一个以上偏移位可用于从控制寄存器选择位的子集,以便通过用于逻辑块(17)的输出引脚进行输出。
举例来说,当逻辑块(17)产生单个位的输出(例如,奇偶性错误指示符)时,厂商指定寄存器中的一者可经配置以具有偏移位,以从控制字中选择所需的位,以便通过逻辑块(17)的输出引脚进行输出。
图4说明根据一个实施例的具有扩展定制寄存器和用于控制寄存器的读取机构的集成电路芯片。在图4中,控制寄存器(19)中的一者或一者以上用于定址数据并将其写入扩展寄存器(21)。扩展寄存器(21)的一部分用于促进读取操作。
举例来说,扩展寄存器(21)的一位用作read_enable位。当控制寄存器的宽度比逻辑块(17)的输出宽时,扩展寄存器(21)的一个或一个以上位可用作偏移位。
或者,可使用有限状态机(例如,计数器)来自动调节偏移。举例来说,在当前读取的寄存器不同于先前读取操作的寄存器时,计数器可经设定以指向控制字的第一位。在读取操作之后,计数器将具有指向控制字的下一位的值。因此,通过在启用读取操作时重复发送写入命令到同一寄存器,可循序读出控制字的不同位,而不必发送写入命令来更新偏移位。
图5说明根据一个实施例的对控制寄存器和定制寄存器进行定址的方案。在图5中,寄存器堆A(31)含有多个控制寄存器,包括用于控制字I和控制字J的寄存器(33和35)。寄存器堆B含有多个定制寄存器(43),包括“读取启用”位。
在一个实施例中,可经由集成电路芯片中接收到的写入命令直接写入寄存器堆A(31)中的寄存器。寄存器中的控制字I和J(33和35)是厂商指定的控制字,其可用于扩展寄存器堆A(31)。
在图5中,每一控制字具有4位。在其它实施例中,控制字可能具有更多或更少的位(例如,1位、2位、16位等)。在图5中,控制字的八位中的七位用作用于寄存器堆B(41)的地址数据,且控制字的八位中的一位用作输入数据,用于写入寄存器堆B(41)。
在一个实施例中,响应于接收到含有用于寄存器堆B(41)的输入数据的控制字I(35),对控制字I(33)和控制字J(35)进行组合以产生地址数据,用于从寄存器堆B(41)中选择一位,且将控制字J(35)中提供的数据写入所选定的位中。或者,可首先将控制字J(35)写入寄存器堆A(31);且响应于将控制字I(33)写入寄存器堆A(31)而将存储在控制字J(35)中的数据写入寄存器堆B(41)。
在一个实施例中,寄存器堆B(41)中的每一寄存器具有一位。寄存器堆B(41)中的寄存器(43)经分组以使得每一群组具有8个寄存器。控制字I(33)的四位用于从16个群组中选择一个群组;且控制字J(35)的三位可用于从选定群组的8个寄存器中选择一个寄存器。因此,控制字(33和35)可用于定址寄存器堆B(41)中的多达128个一位寄存器。
因此,举例来说,为对寄存器堆B(41)中的寄存器位进行编程,可将控制字I(33)首先写入寄存器堆A(31),以指定用于选择群组的数据,且接着,可将控制字J(35)写入寄存器堆A(31),以提供用于从由控制字I(33)中的数据识别的群组中选择目的地寄存器位的地址位。其使用两个写入命令来编程寄存器位。
在另一实例中,为编程特定寄存器群组中的所有位,可将控制字I(33)首先写入寄存器堆A(31),以指定用于选择群组的数据,且接着,可将控制字J(35)随后写入寄存器堆A(31)八次,以编程特定寄存器群组的八个位。其使用九个写入命令来编程寄存器群组。通过使用此方法,可使用144个写入命令来编程寄存器堆B(41)的128位。
或者,可针对输入数据分配控制字(33和35)中较多位,且控制字(33和35)的较少位可用于定址寄存器堆B(41)。举例来说,控制字(33和35)中的6位可用于定址多达64个两位寄存器,控制字(33和35)中的5位可用于定址多达32个三位寄存器,控制字(33和35)中的4位可用于定址多达16个四位寄存器,等等。
举例来说,可用80个写入指令编程64个两位寄存器,可用48个写入指令编程32个三位寄存器,且可用32个写入指令编程16个四位寄存器。
在图5中,寄存器堆B(41)包括一个“读取启用”位以指示集成电路芯片是否处于读取模式。当在读取模式中时,集成电路芯片使用读取控制器(例如,图4中的25)和多路复用器(例如,图4中的23)来输出从寄存器堆A(31)中由写入命令定址的寄存器读取的数据,此时写入命令不导致对寄存器堆B(41)的写入操作。
在一个实施例中,通过一位输出通道(例如,用于输出奇偶性错误的引脚)提供从读取操作获得的数据。因此,寄存器堆B(41)进一步配置有两个偏移位,以从自寄存器A读取的控制字中选择一位,以通过所述一位输出通道进行输出。
举例来说,在经由用于控制字(33和35)的写入命令来将“读取启用”位设定为读取模式并编程“偏移位0”和“偏移位1”之后,通过发送写入命令以写入四位寄存器可读取寄存器堆A(31)中的由寄存器堆B(41)中的“偏移位0”和“偏移位1”选择的四位寄存器的位。
在一个实施例中,当将“读取启用”位设定为读取模式时,定址到不同于控制字I和J(33和35)的寄存器的写入命令促使电路在将输入数据写入经定址的寄存器之前首先从寄存器读出数据。
在一个实施例中,偏移数据和“读取启用”位经配置在同一寄存器群组中。举例来说,为从寄存器堆A(31)中的寄存器读取位,第一写入命令用于写入控制字I(33),所述控制字具有用以选择寄存器堆B中包括“读取启用”位的寄存器群组的地址数据。接着,第二写入命令用于写入控制字J(35),所述控制字具有用以选择“偏移位0”的地址数据和用于“偏移位0”的相应数据。接着,第三写入命令用于写入控制字J(35),所述控制字具有用以选择“偏移位1”的地址数据和用于“偏移位1”的相应数据。接着,第四写入命令用于写入控制字J(35),所述控制字具有用以从选定的寄存器群组选择“读取启用”位的地址数据和用于将“读取启用”位设定到读取模式的输入数据。接着,第五写入命令用于写入待读取的控制字,这导致在将新数据写入寄存器之前,通过为奇偶性错误输出而设计的引脚读出由“偏移位0”和“偏移位1”指定的位。
或者,当将“读取启用”位设定到读取模式时,定址到不同于控制字I和J(33和35)的寄存器的写入命令促使电路从寄存器读出数据而不会将输入数据写入经定址的寄存器,或促使电路从寄存器读出数据并将来自寄存器的读取重新写回寄存器中,或促使电路读出由偏移数据识别的位并写入用于经识别位的输入数据而不写入寄存器的其它位。
或者,从寄存器读出完整的寄存器数据或寄存器的未由偏移数据选定的位中的数据,并写入寄存器堆B(41)中的预定义的位置,随后可每次一位地对其进行读出。
在一个实施例中,寄存器堆B(41)中的“位X”用于指示当将“读取启用”位设定到读取模式时是否根据输入数据来覆写寄存器。
在一个实施例中,响应于对寄存器堆A(31)中同一寄存器的每一写入命令,计数器以循环方式自动递增存储在“偏移位0”和“偏移位1”中的偏移量,以循环通过寄存器的每一位而读出寄存器的不同位。因此,可读取寄存器堆A(31)中的四位寄存器的不同位,而不需要使用对控制字I和J(33)的写入命令来更新寄存器堆B(41)中的偏移数据。
在一个实施例中,电路存储前一写入命令的地址以判断用于访问寄存器堆A(31)中的寄存器的写入命令的当前地址是否与前一者相同。在当前地址不同于前一者时,重设寄存器堆B中的偏移位以在将“读取启用”位设定到读取模式时读取寄存器中的第一位;在当前地址与前一者相同时,使寄存器堆B中的偏移位每次增加一,以在将“读取启用”位设定到读取模式时通过寄存器的随后位进行读取。
在一个实施例中,可在将“读取启用”位设定到读取模式时通过写入寄存器位来读取寄存器堆B中的每一寄存器位。
举例来说,为读取寄存器堆(41)中的“位X”,第一写入命令可用于设定控制字I(33)以选择含有“读取启用”位的寄存器群组;接着,第二写入命令可用于设定控制字J(33)以从选定群组中选择“读取启用”位并将“读取启用”位设定到读取模式;接着,第三写入命令可用于设定控制字I(33)以选择含有“位X”的寄存器群组;接着,第四写入命令可用于设定控制字J(33)以从选定群组中选择“位X”并提供用于“位X”的新数据,这促使电路在将新数据写入“位X”之前从“位X”输出旧数据。
或者,当将“读取启用”位设定在读取模式中时,如果经定址的位并非“读取启用”位,那么不将新数据写入寄存器堆中的经定址的位。
在一个实施例中,当控制字J(35)提供比通过输出通道可读出的位多的位时,经由一个或一个以上偏移位(例如,“偏移位0”和/或“偏移位1”)读取由控制字(33和35)定址的数据的一部分。类似地,计数器可用于自动设定偏移数据,以在控制字(33和35)提供的地址与前一者不同时读取经定址位的第一位,且在控制字(33和35)提供的地址与前一者相同时自动递增以读取随后的位。
因此,本发明的技术可用于通过使用厂商指定的控制字来扩展具有预定义通信协议的电路的功能性。在根据SSTE32882标准向寄存时钟驱动器添加读取操作之后,控制寄存器不仅可被写入,也可被读取以提供用于硅片调试的更好的可见性,而不需要任何额外的垫成本。此外,在一个实施例中,通过写入操作启用读取操作,使主机软件的修改最小化。
在前述说明书中,已参考本发明的具体示范性实施例对本发明进行了描述。显然,在不脱离本发明的如在所附权利要求书中所主张的更广泛的精神和范畴的情况下,可对本发明进行各种修改。因此,应认为说明书和图式是说明性的而不是限制性的。

Claims (18)

1.一种电路,其包含:
第一组寄存器;
第二组寄存器,其与所述第一组寄存器耦合,将通过定址到所述第一组中的一个或一个以上寄存器的一个或一个以上写入操作来对所述第二组寄存器进行写入;其中,用以从所述第二组中选择一个寄存器的地址存储在所述第一组的至少一个寄存器中;
读取控制器,其与所述第一和第二组寄存器耦合,所述读取控制器基于存储在所述第二组中的一个或一个以上寄存器中的数据选择性地输出存储在所述第一和第二组寄存器中的数据的一部分。
2.根据权利要求1所述的电路,其中所述电路集成在芯片上。
3.一种电路,其包括:
第一组寄存器;
第二组寄存器,其与所述第一组寄存器耦合,将通过定址到所述第一组中的一个或一个以上寄存器的一个或一个以上写入操作来对所述第二组寄存器进行写入;其中,用以从所述第二组中选择一个寄存器的地址存储在所述第一组的至少一个寄存器中;和
读取控制器,其与所述第一和第二组寄存器耦合,所述读取控制器基于存储在所述第二组中的一个或一个以上寄存器中的数据选择性地输出存储在所述第一和第二组寄存器中的数据的一部分。
其中,所述电路集成在芯片上;且
其中所述电路包含集成在所述芯片上的寄存时钟驱动器。
4.根据权利要求3所述的电路,其中所述寄存时钟驱动器是根据联合电子装置工程协会JEDEC标准。
5.根据权利要求3所述的电路,其中所述寄存时钟驱动器是根据用于双倍数据速率DDR3寄存器式双列直插存储器模块RDIMM应用的具有奇偶性的SSTE32882寄存时钟驱动器的联合电子装置工程协会JEDEC标准。
6.一种电路,其包含:
第一组寄存器;
第二组寄存器,其与所述第一组寄存器耦合,将通过定址到所述第一组中的一个或一个以上寄存器的一个或一个以上写入操作来对所述第二组寄存器进行写入;其中,用以从所述第二组中选择一个寄存器的地址存储在所述第一组的至少一个寄存器中;和
读取控制器,其与所述第一和第二组寄存器耦合,所述读取控制器基于存储在所述第二组中的一个或一个以上寄存器中的数据选择性地输出存储在所述第一和第二组寄存器中的数据的一部分;
逻辑块;其用以产生用以指示是否已发生奇偶性错误的输出;和
多路复用器,其与所述逻辑块、所述读取控制器和所述第二组寄存器耦合,所述多路复用器基于存储在所述第二组中的所述一个或一个以上寄存器中的数据来从所述逻辑块的输出和所述读取控制器的输出中进行选择以作为所述电路的输出。
7.根据权利要求6所述的电路,其中当对所述第一组中的一个寄存器进行写入时所述读取控制器根据存储在所述第二组寄存器中的一者中的数据来从所述第一和第二组寄存器中的一者中读取一位。
8.根据权利要求7所述的电路,其中由所述读取控制器读取的所述一位是来自所述第一组的正根据输入数据进行写入的寄存器。
9.根据权利要求8所述的电路,其中在根据所述输入数据对所述寄存器进行写入之前由所述读取控制器读取所述一位。
10.根据权利要求6所述的电路,其中当所述第二组中的寄存器的第一位处于第一状态时,所述多路复用器选择所述逻辑块的输出;当所述第二组中的所述寄存器的所述第一位处于第二状态时,所述多路复用器选择所述读取控制器的输出。
11.根据权利要求10所述的电路,其中所述第一组寄存器包含:
第一多个寄存器,用以根据标准来存储数据以控制所述电路的操作;和
第二多个寄存器,用以存储厂商指定的数据以控制所述电路的操作。
12.根据权利要求11所述的电路,其中所述用以存储厂商指定数据的第二多个寄存器包括第一寄存器和第二寄存器,所述第一寄存器存储用于从所述第二组选择一寄存器群组的数据,所述第二寄存器接收识别所述选定群组中的一个或一个以上位的第一数据,以及将被写入根据所述第一数据所识别的所述一个或一个以上位中的第二数据,响应于被写入的所述第二寄存器而将所述第二数据写入所述第二组中的所述选定的寄存器群组的所述一个或一个以上位中。
13.根据权利要求12所述的电路,其中当所述第一位处于所述第二状态中时,在将所述第二数据写入所述经识别的一个或一个以上位之前,由所述读取控制器读取根据所述第一数据所识别的所述一个或一个以上位中所存储的数据,以便使所述多路复用器进行选择。
14.根据权利要求12所述的电路,其中当所述第一位处于所述第二状态时,如果所述经识别的一个或一个以上位不包括所述第一位,便将根据所述第一数据所识别的所述一个或一个以上位中所存储的数据重新写回所述经识别的一个或一个以上位中;且当所述第一位处于所述第一状态时,将所述第二数据写入所述经识别的一个或一个以上位中。
15.根据权利要求11所述的电路,其中所述第二组中的所述寄存器的一个或一个以上第二位存储识别所述第一组中的寄存器的一个或一个以上位的数据;当所述第一位处于所述第二状态时,在对所述第一组中的所述寄存器进行写入之前由所述读取控制器读取根据所述一个或一个以上第二位所识别的所述一个或一个以上位中所存储的数据,以便使所述多路复用器进行选择。
16.根据权利要求11所述的电路,其中所述第二组中的所述寄存器的一个或一个以上第二位存储识别所述第一组中的寄存器的一个或一个以上位的数据;当所述第一位处于所述第二状态时,当所述电路接收输入以写入所述第一组中的所述寄存器中时,由所述读取控制器将存储在所述第一组中的所述寄存器中的数据重新写回所述第一组中的所述寄存器中。
17.一种集成电路,其包含:
第一组寄存器,其包括第一寄存器和第二寄存器;和
第二组寄存器,其与所述第一组寄存器耦合,所述第二组中的一寄存器群组将由存储在所述第一寄存器中的数据识别,所述群组的一个或一个以上位将由存储在所述第二寄存器中的数据的一部分识别;
其中响应于正被写入的所述第二寄存器,将写入所述第二寄存器中的数据的一部分进一步写入由存储在所述第一和第二寄存器中的数据识别的所述群组的所述一个或一个以上位中。
18.根据权利要求17所述的集成电路,其进一步包含:
逻辑块,其用以检查奇偶性错误;
读取控制器,其用以当所述集成电路接收输入以写入所述第一组和第二组中的寄存器中时读出所述第一组和第二组中的所述寄存器的至少一部分;和
多路复用器,其耦合到所述读取控制器和所述逻辑块;
其中当所述第二组寄存器的位处于第一状态时,所述多路复用器选择所述逻辑块;且
当所述第二组寄存器的所述位处于第二状态时,所述多路复用器选择所述读取控制器。
CN2007101124302A 2007-03-29 2007-06-21 寄存器读取机构 Active CN101276637B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US90889507P 2007-03-29 2007-03-29
US60/908,895 2007-03-29
US11/735,946 US7774661B2 (en) 2007-03-29 2007-04-16 Register read mechanism
US11/735,946 2007-04-16

Publications (2)

Publication Number Publication Date
CN101276637A CN101276637A (zh) 2008-10-01
CN101276637B true CN101276637B (zh) 2011-11-09

Family

ID=39796413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101124302A Active CN101276637B (zh) 2007-03-29 2007-06-21 寄存器读取机构

Country Status (4)

Country Link
US (1) US7774661B2 (zh)
CN (1) CN101276637B (zh)
TW (1) TW200839780A (zh)
WO (1) WO2008121147A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8938590B2 (en) * 2008-10-18 2015-01-20 Micron Technology, Inc. Indirect register access method and system
US8209521B2 (en) * 2008-10-18 2012-06-26 Micron Technology, Inc. Methods of indirect register access including automatic modification of a directly accessible address register
WO2013095606A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Apparatus and method for detecting identical elements within a vector register
CN104126166A (zh) * 2011-12-23 2014-10-29 英特尔公司 用于执行使用掩码的向量打包一元编码的系统、装置和方法
WO2013095668A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Systems, apparatuses, and methods for performing vector packed compression and repeat
WO2013095666A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Systems, apparatuses, and methods for performing vector packed unary decoding using masks
WO2013095634A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Systems, apparatuses, and methods for performing a horizontal partial sum in response to a single instruction
US9454507B2 (en) 2011-12-23 2016-09-27 Intel Corporation Systems, apparatuses, and methods for performing a conversion of a writemask register to a list of index values in a vector register
US20130332701A1 (en) * 2011-12-23 2013-12-12 Jayashankar Bharadwaj Apparatus and method for selecting elements of a vector computation
US20140059322A1 (en) * 2011-12-23 2014-02-27 Elmoustapha Ould-Ahmed-Vall Apparatus and method for broadcasting from a general purpose register to a vector register
CN104025022B (zh) * 2011-12-23 2017-09-19 英特尔公司 用于具有推测支持的向量化的装置和方法
TWI533135B (zh) * 2013-03-20 2016-05-11 聯發科技股份有限公司 記憶體存取方法、記憶體存取控制方法、記憶體裝置與記憶體控制器
US9734009B2 (en) * 2015-10-08 2017-08-15 Sandisk Technologies Llc Data encoding techniques for a device
US9946868B2 (en) * 2015-10-12 2018-04-17 Dresser, Inc. Device functionality control
US10802754B2 (en) * 2018-03-12 2020-10-13 Micron Technology, Inc. Hardware-based power management integrated circuit register file write protection
US10423218B1 (en) 2018-03-12 2019-09-24 Micron Technology, Inc. Power management integrated circuit with in situ non-volatile programmability
CN112732601B (zh) * 2018-08-28 2024-06-18 中科寒武纪科技股份有限公司 数据预处理方法、装置、计算机设备和存储介质
CN112685349B (zh) * 2019-09-26 2023-03-24 比亚迪半导体股份有限公司 可变位宽的位操作控制系统及方法
US20230315661A1 (en) * 2022-04-01 2023-10-05 Texas Instruments Incorporated Methods and apparatus to configure an integrated circuit using a direct memory access controller

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028151B2 (en) * 2002-08-21 2006-04-11 Fujitsu Limited Information processing device equipped with improved address queue register files for cache miss
CN1825468A (zh) * 2004-11-15 2006-08-30 因芬尼昂技术股份公司 半导体存储系统和在其中传输写入和读取数据信号的方法
CN1892890A (zh) * 2005-07-05 2007-01-10 三星电子株式会社 数据输入和数据输出控制装置和方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63314930A (ja) * 1987-06-18 1988-12-22 Toshiba Corp 多重化通信装置
JP2003022212A (ja) * 2001-07-05 2003-01-24 Alps Electric Co Ltd 双方向ram
US8065475B2 (en) * 2005-05-11 2011-11-22 Stec, Inc. Registered dual in-line memory module having an extended register feature set

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7028151B2 (en) * 2002-08-21 2006-04-11 Fujitsu Limited Information processing device equipped with improved address queue register files for cache miss
CN1825468A (zh) * 2004-11-15 2006-08-30 因芬尼昂技术股份公司 半导体存储系统和在其中传输写入和读取数据信号的方法
CN1892890A (zh) * 2005-07-05 2007-01-10 三星电子株式会社 数据输入和数据输出控制装置和方法

Also Published As

Publication number Publication date
WO2008121147A1 (en) 2008-10-09
US7774661B2 (en) 2010-08-10
US20080244369A1 (en) 2008-10-02
TW200839780A (en) 2008-10-01
CN101276637A (zh) 2008-10-01

Similar Documents

Publication Publication Date Title
CN101276637B (zh) 寄存器读取机构
CN101667453B (zh) 用以存取存储器的方法及系统
KR100630827B1 (ko) 동기형 반도체 기억장치 모듈 및 그 제어방법, 정보기기
US8880780B2 (en) Apparatus and method for using a page buffer of a memory device as a temporary cache
KR100375217B1 (ko) 전기적으로 재기입 가능한 불휘발성 메모리를 구비하는마이크로컨트롤러
CN103403803B (zh) 可以很容易在其中设定扩展功能的存储器系统
CN101828175B (zh) 用于同步串行接口nand的设定存取及修改的系统及方法
KR101441225B1 (ko) 혼합된 유형의 메모리 장치를 동작시키는 시스템 및 방법
CN100492334C (zh) 串行周边接口装置
US9063849B2 (en) Different types of memory integrated in one chip by using a novel protocol
CN101506895A (zh) 可扩缩的存储器系统
CN101180617A (zh) 用于易失性和非易失性存储器设备的存储器接口
JP2003233998A (ja) Nandフラッシュメモリ装置
CN107480081A (zh) 具有可中断指令序列的存储器及其操作方法
US20080259685A1 (en) Nonvolatile semiconductor memory device
US8243516B2 (en) Interface for NAND-type flash memory
US20080025095A1 (en) Flash memory device and program method thereof
CN101421705A (zh) 具有高储存容量的多媒体卡
CN113342717A (zh) 一种fifo读写控制方法及控制电路
US7478213B2 (en) Off-chip micro control and interface in a multichip integrated memory system
US7685343B2 (en) Data access method for serial bus
US7685333B2 (en) Method and system for communicating with memory devices utilizing selected timing parameters from a timing table
CN101432674A (zh) 内置集成电路寻址的方法及用于执行该方法的装置
CN110164394B (zh) 时序控制器及时序控制板
JP4083474B2 (ja) メモリ装置の制御方法およびそのプログラムならびに記録媒体

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MONTAGE SEMICONDUCTOR (SHANGHAI) CO., LTD.

Free format text: FORMER OWNER: MONTAGE TECHNOLOGY GROUP LTD.

Effective date: 20110322

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 200233 ROOM 406, VENTURE BUILDING, NO. 680, GUIPING ROAD, SHANGHAI TO: 200233 ROOM 802 + 803 + 805 + 807 + 809, BUILDING 33, NO. 680, GUIPING ROAD, SHANGHAI, CHINA

TA01 Transfer of patent application right

Effective date of registration: 20110322

Address after: 200233, No. 680, Guiping Road, 33, 802, 803, 805, 807, 809, Shanghai, China

Applicant after: Lanqi Semiconductor Shanghai Co.,Ltd.

Address before: 200233, room 406, building 680, Guiping Road, Shanghai

Applicant before: Acrospeed, Inc.

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MONTAGE TECHNOLOGY GROUP LTD.

Free format text: FORMER OWNER: MONTAGE SEMICONDUCTOR (SHANGHAI) CO., LTD.

Effective date: 20130314

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130314

Address after: 200233 room 406A, building 32, No. 680 Guiping Road, Shanghai, Xuhui District, China

Patentee after: Acrospeed, Inc.

Address before: 200233, No. 680, Guiping Road, 33, 802, 803, 805, 807, 809, Shanghai

Patentee before: Lanqi Semiconductor Shanghai Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20171031

Address after: 215300 No. 628 Xia Dong Street, Kunshan Development Zone, Jiangsu, Kunshan

Patentee after: Montage of Electronic Science and Technology (Kunshan) Co., Ltd.

Address before: 200233 room 406A, building 32, No. 680 Guiping Road, Shanghai, Xuhui District, China

Patentee before: Acrospeed, Inc.

TR01 Transfer of patent right