CN112860004B - 系统和操作系统的方法 - Google Patents
系统和操作系统的方法 Download PDFInfo
- Publication number
- CN112860004B CN112860004B CN202010435473.XA CN202010435473A CN112860004B CN 112860004 B CN112860004 B CN 112860004B CN 202010435473 A CN202010435473 A CN 202010435473A CN 112860004 B CN112860004 B CN 112860004B
- Authority
- CN
- China
- Prior art keywords
- mode
- clock
- data
- module
- processing circuit
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000012545 processing Methods 0.000 claims abstract description 136
- 230000008859 change Effects 0.000 claims abstract description 62
- 230000008569 process Effects 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 abstract description 9
- 230000015654 memory Effects 0.000 description 122
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 description 49
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 45
- 238000010586 diagram Methods 0.000 description 30
- 238000001514 detection method Methods 0.000 description 21
- 238000012937 correction Methods 0.000 description 17
- 239000000872 buffer Substances 0.000 description 14
- 239000010410 layer Substances 0.000 description 9
- 238000012508 change request Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 230000003936 working memory Effects 0.000 description 7
- 238000007667 floating Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012212 insulator Substances 0.000 description 1
- 239000002346 layers by function Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
本公开的实施例涉及一种系统和操作该系统的方法。根据指示是否改变第一时钟或第二时钟的请求来改变数据处理电路的操作模式。根据数据处理电路的操作模式来处理在系统内部从第一模块传输到第二模块的数据。因此,当系统中包括的模块中的一个模块的时钟改变时,模块可以快速地切换到该模块可以向系统中包括的另一模块传输数据/从系统中包括的另一模块接收数据的状态,并且可以优化系统中包括的模块之间的数据传输/接收性能。
Description
相关申请的交叉引用
本申请要求于2019年11月12日提交的韩国专利申请号10-2019-0143900的优先权,其通过引用全部而并入本文,以出于在本文中阐述全部的目的。
技术领域
本公开的实施例涉及一种系统和操作系统的方法。
背景技术
已经开发了各种系统来实施例如计算机、智能电话和平板电脑的电子装置的功能。例如,这样的系统包括被配置为存储数据的存储器系统,诸如硬盘驱动器(HDD)和固态驱动器(SSD)。另一示例性系统是被配置为基于各种有线/无线协议(例如,蓝牙、以太网和Wi-Fi)与外部装置进行通信的通信系统。
这样的系统可以在其中包括多个模块,并且各个模块可以彼此交换数据。用于各个模块的操作的时钟可以相同或不同,并且可以随着时间变化。
发明内容
本公开的实施例可以提供一种系统和操作系统的方法,其中,当系统中包括的模块中的一个模块的时钟改变时,相应的模块可以快速地切换到该模块可以向系统中包括的另一模块传输数据/从系统中包括的另一模块接收数据的状态。
另外,本公开的实施例可以提供一种系统和操作系统的方法,其中,可以优化关于系统中包括的模块之间的数据传输/接收的性能。
在一方面,本公开的实施例可以提供一种系统,该系统包括第一模块、第二模块、总线、数据处理电路和控制器。
第一模块可以根据第一时钟进行操作,并且第二模块可以根据第二时钟进行操作。
总线可以连接到第一模块和第二模块。
数据处理电路可以基于该数据处理电路的操作模式来处理从第一模块传输的源数据,并将所处理的源数据提供到第二模块。具体地,当操作模式为第一模式时,数据处理电路可以将源数据从与第一时钟相对应改变为与第二时钟相对应,并且当操作模式为第二模式时,数据处理电路可以向第二模块提供未改变的源数据。
数据处理电路可以包括多路器,该多路器被配置为输出以下中的一个:i)第一信号,该第一信号指示未改变的源数据;以及ii)第二信号,该第二信号指示通过将源数据从与第一时钟相对应改变为与第二时钟相对应而获得的结果数据。
数据处理电路可以包括桥接电路,该桥接电路被配置为生成结果数据。
控制器可以根据请求来控制数据处理电路,以将操作模式改变为第一模式或第二模式。
该请求可以指示将改变第一时钟和第二时钟中的至少一个。
在接收到请求之后,当总线处于空闲状态时,控制器可以将数据处理电路的操作模式改变为第一模式或第二模式。
当该请求指示将第一时钟和第二时钟的值改变为相同时,控制器可以将数据处理电路的操作模式改变为第二模式。在将第一时钟和第二时钟改变为相同之后,控制器可以将数据处理电路的操作模式改变为第二模式。
另一方面,当该请求指示将第一时钟和第二时钟的值改变为不同时,控制器可以将数据处理电路的操作模式改变为第一模式。在将第一时钟和第二时钟改变为不同之前,控制器可以将数据处理电路的操作模式改变为第一模式。
当传输关于请求的确认信号时,控制器可以将数据处理电路的操作模式改变为第一模式或第二模式。
在另一方面,本公开的实施例可以提供一种操作系统的方法,该系统包括分别根据第一时钟和第二时钟进行操作的第一模块和第二模块。
该操作系统的方法可以包括以下步骤:接收指示是否改变第一时钟或第二时钟的请求。
该操作系统的方法可以包括以下步骤:根据请求,将数据处理电路的操作模式改变为第一模式或第二模式。
该操作系统的方法可以包括:基于操作模式来处理从第一模块传输的源数据,以提供到第二模块。具体地,处理源数据可以包括:当操作模式为第一模式时,将源数据从与第一时钟相对应改变为与第二时钟相对应;当操作模式为第二模式时,向第二模块提供未改变的源数据。
改变操作模式的步骤可以包括以下步骤:确认连接到第一模块和第二模块的总线是否处于空闲状态。
改变操作模式的步骤可以包括以下步骤:当总线处于空闲状态时,将操作模式改变为第一模式或第二模式。
处理源数据可以输出以下中的一个:i)第一信号,该第一信号指示未改变的源数据;以及ii)第二信号,该第二信号指示通过将源数据从与第一时钟相对应改变为与第二时钟相对应而获得的结果数据。
改变操作模式的步骤可以包括:当请求指示改变第一时钟和第二时钟中的至少一个,使得第一时钟和第二时钟相同时,将操作模式改变为第二模式。在将第一时钟和第二时钟改变为相同之后,可以将数据处理电路的操作模式改变为第二模式。
改变操作模式的步骤可以包括:当请求指示将第一时钟和第二时钟改变为不同时,将操作模式改变为第一模式。在改变第一时钟和第二时钟中的至少一个,使得第一时钟和第二时钟不同之前,可以将数据处理电路的操作模式改变为第一模式。
在另一方面,本公开的实施例可以提供一种系统,该系统包括:第一模块和第二模块,该第一模块和第二模块被配置为分别根据第一时钟和第二时钟进行操作;以及信号处理电路。
信号处理电路可以通过总线从第一模块接收信号。当总线处于空闲状态时,信号处理电路可以改变自身以将所接收的信号处理为对应于第一时钟和第二时钟中的一个。信号处理电路可以通过总线将所处理的信号提供到第二模块。
在另一方面,本公开的实施例可以提供一种系统,该系统包括:被配置为根据第一频率的时钟进行操作的模块;以及信号处理电路。
在总线处于空闲状态时,信号处理电路可以改变自身以将信号处理为对应于第一频率的时钟和第二频率的另一时钟中的一个。信号处理电路可以通过总线将所处理的信号提供到模块。
根据本公开的实施例,当系统中包括的模块中的一个模块的时钟改变时,相应的模块可以快速地切换到该模块可以向系统中包括的另一模块传输数据/从系统中包括的另一模块接收数据的状态。
此外,根据本公开的实施例,可以优化关于系统中包括的模块之间的数据传输/接收性能。
附图说明
从以下结合附图的详细描述中,本公开的上述和其他方面、特征和优点将变得更加明显,其中:
图1是示意性地示出根据本公开的实施例的存储器系统的配置的示图;
图2是示意性地示出根据本公开的实施例的存储器装置的框图;
图3是示意性地示出根据本公开的实施例的存储器装置的各个存储块的示图;
图4是示出根据本公开的实施例的存储器装置的字线和位线的结构的示图;
图5是示意性地示出根据本公开的实施例的系统的配置的示图;
图6是示出参照图5所述的数据处理电路的示例性操作的流程图;
图7是示出参照图5所述的控制器的示例性操作的流程图;
图8是示出根据本公开的实施例的在系统中检查空闲状态的示例性操作的示图;
图9是示出根据本公开的实施例的在系统中数据处理电路根据操作模式的示例性操作的示图;
图10是示出根据本公开的实施例的在系统中数据处理电路根据操作模式的另一示例性操作的示图;
图11是示出根据本公开的实施例的在系统中控制器控制数据处理电路的操作模式的示例性操作的流程图;
图12是示出根据本公开的实施例的系统的状态随着时间的示例性变化的示图;
图13是示出图12中传输关于请求的确认信号的时间的示图;
图14是示出根据本公开的实施例的系统的状态随着时间的另一示例性变化的示图;
图15是示出图14中传输关于请求的确认信号的时间的示图;
图16是示出根据本公开的实施例的操作系统的方法的示图;
图17是示出根据本公开的实施例的改变数据处理电路的操作模式的方法的示图;以及
图18是示出根据本公开的实施例的计算系统的配置的示图。
具体实施方式
在下文中,参照附图详细描述了本公开的实施例。在整个说明书中,对“一个实施例”、“另一实施例”等的引用不一定仅针对一个实施例,并且对任何这样的短语的不同引用不一定针对相同的实施例。
图1是示意性示出根据本公开的实施例的存储器系统100的配置的示图。
参照图1,存储器系统100可以包括存储器装置110、存储器控制器120等,该存储器装置110被配置为存储数据,该存储器控制器120被配置为控制存储器装置110。
存储器装置110包括多个存储块,并且响应于存储器控制器120的控制而操作。存储器装置110的操作可以包括例如读取操作、编程操作(也称为“写入操作”)、擦除操作等。
存储器装置110可以包括存储器单元阵列,该存储器单元阵列包括被配置为存储数据的多个存储器单元(也简称为“单元”)。存储器单元阵列可以存在于存储块中。
存储器装置110可以被实施为诸如以下的各种类型中的任意一种:双倍数据速率同步动态随机存取存储器(DDR SDRAM)、低功耗双倍数据速率4(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功耗DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、3D NAND闪速存储器、NOR闪速存储器、电阻式随机存取存储器(RRAM)、相变存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)或自旋转移力矩随机存取存储器(STT-RAM)。
存储器装置110可以以三维阵列结构来实施。本公开的实施例不仅适用于具有由导电浮栅构成的电荷存储层的闪速存储器装置,而且适用于具有由绝缘膜构成的电荷存储层的电荷撷取闪存(CTF)。
存储器装置110被配置为从存储器控制器120接收命令、地址等,并且访问存储器单元阵列内部的由地址选择的区域。即,存储器装置110可以关于由地址选择的区域来执行与命令相对应的操作。
例如,存储器装置110可以执行编程操作、读取操作、擦除操作等。在编程操作期间,存储器装置110可以将数据编程在由地址选择的区域中。在读取操作期间,存储器装置110可以从由地址选择的区域中读取数据。在擦除操作期间,存储器装置110可以擦除由地址选择的区域中存储的数据。
存储器控制器120可以控制关于存储器装置110的写入(编程)操作、读取操作、擦除操作和后台操作。后台操作可以包括例如垃圾收集(GC)操作、损耗均衡(WL)操作和/或坏块管理(BBM)操作。
存储器控制器120可以在主机(HOST)的请求下控制存储器装置110的操作。可选地,即使在缺少主机的请求的情况下,存储器控制器120也可以控制存储器装置110的操作。
存储器控制器120和主机可以是分开的装置。然而,如果需要,则存储器控制器120和主机可以被集成到单个装置中并且被实施为单个装置。在下面的描述中,通过示例的方式假设存储器控制器120和主机是分开的装置。
参照图1,存储器控制器120可以包括存储器接口122、控制电路123、主机接口121等。
主机接口121被配置为提供用于与主机通信的接口。
当从主机接收命令时,控制电路123可以执行通过主机接口121接收命令并且处理所接收的命令的操作。
存储器接口122连接到存储器装置110,并且被配置为提供用于与存储器装置110通信的接口。即,存储器接口122可以被配置为响应于控制电路123的控制,提供存储器装置110与存储器控制器120之间的接口。
控制电路123被配置为控制存储器控制器120的全部操作,从而控制存储器装置110的操作。为此,控制电路123可以包括例如处理器124和/或工作存储器124,并且如果需要,控制电路123可以进一步包括错误检测和校正电路(ECC电路)126。
处理器124可以控制存储器控制器120的全部操作并且可以执行逻辑运算。处理器124可以通过主机接口121与主机通信,并且可以通过存储器接口122与存储器装置110通信。
处理器124可以执行闪存转换层(FTL)的功能。处理器124可以通过FTL将由主机提供的逻辑块地址(LBA)转换为物理块地址(PBA)。FTL可以接收LBA并且通过使用映射表将LBA转换为PBA。
根据映射单元,FTL可以根据各种方法中的任意一种来映射地址。典型的地址映射方法包括页面映射方法、块映射方法和混合映射方法。
处理器124被配置为对从主机接收的数据进行随机化。例如,处理器124可以通过使用随机化种子来对从主机接收的数据进行随机化。将随机化数据作为待存储的数据提供到存储器装置110,并且编程在存储器单元阵列中。
处理器124被配置为在读取操作期间对从存储器装置110接收的数据进行去随机化。例如,处理器124可以通过使用去随机化种子来对从存储器装置110接收的数据进行去随机化。去随机化数据可以输出到主机。
处理器124可以运行固件以控制存储器控制器120的操作。换句话说,处理器124可以控制存储器控制器120的全部操作,并且可以运行(驱动)在启动期间加载到工作存储器125中的固件,以执行逻辑运算。
固件可以是在存储器系统100内部运行的程序,并且可以包括各种功能层。
例如,固件可以包括闪存转换层(FTL)、主机接口层(HIL)和/或闪存接口层(FIL),其中闪存转换层(FTL)被配置为在主机向存储器系统100请求的逻辑地址与存储器装置110的物理地址之间进行转换,主机接口层(HIL)被配置为解释主机请求存储器系统100(存储装置)遵循的命令并将命令传递到FTL,闪存接口层(FIL)被配置为将由FTL发出的命令传递到存储器装置110。
固件可以例如存储在存储器装置110中,然后加载到工作存储器125中。
工作存储器125可以存储驱动存储器控制器120所需的固件、程序代码、命令或数据。例如,作为易失性存储器的工作存储器125可以包括静态RAM(SRAM)、动态RAM(DRAM)和/或同步DRAM(SDRAM)。
错误检测和校正电路126可以被配置为通过使用错误校正码来检测目标数据中的错误位,并且对检测到的错误位进行校正。例如,目标数据可以是工作存储器125中存储的数据或从存储器装置110中检索的数据。
错误检测和校正电路126可以被实施为通过使用错误校正码来对数据进行解码。错误检测和校正电路126可以通过各种代码解码器中的一种或多种来实现。例如,可以使用被配置为执行非系统代码解码的解码器或被配置为执行系统代码解码的解码器。
例如,错误检测和校正电路126可以关于各条读取数据逐个区段地检测错误位。即,每条读取数据可以包括多个区段。区段可以是指小于页面的数据单位,其中页面是闪速存储器的读取单位。构成每条读取数据的区段可以经由地址彼此对应。
错误检测和校正电路126可以计算位错误率(BER)并且确定每个区段是否是可校正的。例如,如果BER高于参考值,则错误检测和校正电路126可以确定相应的区段是不可校正的(或已失败)。另一方面,如果BER低于参考值,则错误检测和校正电路126可以确定相应的区段是可校正的(或已通过)。
错误检测和校正电路126可以针对所有条读取数据连续地执行错误检测和校正操作。如果读取数据中包括的区段是可校正的,则错误检测和校正电路126可以省略关于下一条读取数据的相应区段的错误检测和校正操作。在以这种方式针对所有条读取数据完成了错误检测和校正操作之后,错误检测和校正电路126可以确定存在一个或多个不可校正的区段。错误检测和校正电路126可以将关于被认为不可校正的区段的信息(例如,地址信息)传递到处理器124。
总线127可以被配置为在存储器控制器120的组件121、122、124、125和126之间提供通道。例如,总线127可以包括用于传递各种控制信号和命令的控制总线以及用于传递各种数据的数据总线。
存储器控制器120和上述组件121、122、124、125和126仅是示例。可以省略存储器控制器120的上述组件121、122、124、125和126中的一些,或者可以将存储器控制器120的上述组件121、122、124、125和126中的一些整合为一个组件。如果需要,可以将一个或多个附加组件添加到存储器控制器120中。
下文中,参照图2更详细地描述了存储器装置110。
图2是示意性地示出根据本公开的实施例的存储器装置110的框图。
参照图2,存储器装置110可以包括存储器单元阵列210、地址解码器220、读取和写入电路230、控制逻辑240、电压生成电路250等。
存储器单元阵列210可以包括多个存储块BLK1-BLKz(z是等于或大于2的自然数)。
在多个存储块BLK1-BLKz中,可以布置多条字线WL和多条位线BL,并且可以在其中布置多个存储器单元MC。
多个存储块BLK1-BLKz可以通过多条字线WL连接到地址解码器220。多个存储块BLK1-BLKz可以通过多条位线BL连接到读取和写入电路230。
多个存储块BLK1-BLKz中的每一个可以包括多个存储器单元。例如,多个存储器单元可以是非易失性存储器单元,并且可以包括具有垂直沟道结构的非易失性存储器单元。
存储器单元阵列210可以被配置为具有二维结构的存储器单元阵列,并且如果需要,可以被配置为具有三维结构的存储器单元阵列。
存储器单元阵列210中包括的多个存储器单元中的每一个可以存储至少一位数据。例如,存储器单元阵列210中包括的多个存储器单元中的每一个可以是被配置为存储一位数据的单层单元(SLC)、被配置为存储两位数据的多层单元(MLC)、被配置为存储三位数据的三层单元(TLC)、或被配置为存储四位数据的四层单元(QLC)。作为另一示例,存储器单元阵列210可以包括每个被配置为存储至少五位数据的多个存储器单元。
参照图2,地址解码器220、读取和写入电路230、控制逻辑240、电压生成电路250等可以一起操作为被配置为驱动存储器单元阵列210的外围电路。
地址解码器220可以通过多条字线WL连接到存储器单元阵列210。
地址解码器220可以被配置为响应于控制逻辑240的控制而进行操作。
地址解码器220可以通过存储器装置110内部的输入/输出缓冲器来接收地址。地址解码器220可以被配置为对所接收地址中的块地址进行解码。地址解码器220可以根据解码后的块地址选择至少一个存储块。
地址解码器220可以从电压生成电路250接收读取电压Vread和通过电压Vpass。
在读取操作期间的读取电压施加操作的情况下,地址解码器220可以将读取电压Vread施加到所选择存储块内部的所选择字线WL,并且可以将通过电压Vpass施加到其余的未选择字线WL。
在编程验证操作期间,地址解码器220可以将由电压生成电路250生成的验证电压施加到所选择存储块内部的所选择字线WL,并且可以将通过电压Vpass施加到其余的未选择字线WL。
地址解码器220可以被配置为对所接收地址中的列地址进行解码。地址解码器220可以将解码后的列地址传输到读取和写入电路230。
可以逐个页面地执行存储器装置110的读取操作和编程操作。请求读取操作和编程操作时所接收的地址可以包括块地址、行地址和/或列地址。
地址解码器220可以根据块地址和行地址选择一个存储块和一条字线。列地址可以由地址解码器220进行解码,并提供到读取和写入电路230。
地址解码器220可以包括块解码器、行解码器、列解码器和/或地址缓冲器。
读取和写入电路230可以包括多个页面缓冲器PB。读取和写入电路230可以在存储器单元阵列210的读取操作期间作为“读取电路”来操作,并且可以在存储器单元阵列210的写入操作期间作为“写入电路”来操作。
上述读取和写入电路230也称为包括多个页面缓冲器PB的页面缓冲器电路或者称为数据寄存器电路。读取和写入电路230可以包括以数据处理功能使用的数据缓冲器,并且如果需要,可以进一步包括以高速缓存功能使用的高速缓存缓冲器。
多个页面缓冲器PB可以通过多条位线BL连接到存储器单元阵列210。在读取操作和编程验证操作期间,多个页面缓冲器PB可以连续地向连接到存储器单元的位线BL供应感测电流,以感测存储器单元的阈值电压Vth,可以通过感测节点来感测流动电流量根据相应存储器单元的编程状态的变化,并且可以将其锁存为感测数据。
读取和写入电路230可以响应于从控制逻辑240输出的页面缓冲器控制信号而操作。
在读取操作期间,读取和写入电路230感测存储器单元中的数据、临时存储检索到的数据,并将数据DATA输出到存储器装置110的输入/输出缓冲器。作为另一实施例,除了页面缓冲器PB或页面电阻器之外,读取和写入电路230还可以包括列选择电路等。
控制逻辑240可以连接到地址解码器220、读取和写入电路230、电压生成电路250等。控制逻辑240可以通过存储器装置110的输入/输出缓冲器来接收命令CMD和控制信号CTRL。
控制逻辑240可以被配置为响应于控制信号CTRL而控制存储器装置110的全部操作。控制逻辑240可以输出用于调整多个页面缓冲器PB的感测节点的预充电电势电平的控制信号。
控制逻辑240可以控制读取和写入电路230,以执行存储器单元阵列210的读取操作。响应于从控制逻辑240输出的电压生成电路控制信号,电压生成电路250可以生成在读取操作期间使用的读取电压Vread和通过电压Vpass。
图3是示意性地示出根据本公开的实施例的存储器装置110的各个存储块BLK的示图。
参照图3,存储器装置110中包括的存储块BLK可以包括例如以相交方向设置的多个页面PG和多个串STR。
多个页面PG对应于多条字线WL,并且多个串STR对应于多条位线BL。
存储块BLK可以具有被设置为彼此相交的多条字线WL和多条位线BL。例如,多条字线WL中的每一条可以在行方向上设置,多条位线BL中的每一条可以在列方向上设置。作为另一示例,多条字线WL中的每一条可以在列方向上设置,并且多条位线BL中的每一条可以在行方向上设置。
多条字线WL和多条位线BL可以彼此相交,从而限定多个存储器单元MC。每个存储器单元MC可以具有设置在其中的晶体管TR。
例如,设置在每个存储器单元MC中的晶体管TR可以包括漏极、源极、栅极等。晶体管TR的漏极(或源极)可以直接连接到相应的位线BL,或者可以经由另一晶体管TR连接到相应的位线BL。晶体管TR的源极(或漏极)可以直接连接到源极线(其可以是地),或者可以经由另一晶体管TR连接到源极线。晶体管TR的栅极可以包括由绝缘体围绕的浮置栅极(FG)和从字线WL施加栅极电压的控制栅极(CG)。
多个存储块BLK1-BLKz中的每一个可以具有另外设置在第一最外侧字线外部的第一选择线(也称为源极选择线或漏极选择线),并且可以具有另外设置在第二最外侧字线外部的第二选择线(也称为漏极选择线或源极选择线),其中第一最外侧字线更靠近读取和写入电路230。
如果需要,可以在第一最外侧字线和第一选择线之间另外设置至少一条虚设字线。另外,可以在第二最外侧字线和第二选择线之间另外设置至少一条虚设字线。
当具有如图3所示的存储块结构时,可以逐个页面地执行读取操作和编程操作(写入操作),并且可以针对每个存储块执行擦除操作。
图4是示出根据本公开的实施例的存储器装置110的字线WL和位线BL的结构的示图。
参照图4,存储器装置110包括存储器单元MC集中的内核区域以及与内核区域不同的辅助区域,并且辅助区域支持存储器单元阵列210的操作。
内核区域可以包括页面PG和串STR。内核区域具有被设置为彼此相交的多条字线WL1-WL9和多条位线BL。
多条字线WL1-WL9可以连接到行解码器410,并且多条位线BL可以连接到列解码器420。对应于读取和写入电路230的数据寄存器430可以存在于多条位线BL和列解码器420之间。
多条字线WL1-WL9对应于多个页面PG。
例如,如图4所示,多条字线WL1-WL9中的每一条可以对应于一个页面PG。可选地,当多条字线WL1-WL9中的每一条较大时,多条字线WL1-WL9中的每一条可以对应于多个(例如,两个或四个)页面PG。页面PG用作与进行编程操作和读取操作有关的最小单位,并且在编程操作和读取操作期间,相同页面PG中的所有存储器单元MC可以同时执行操作。
在多条位线BL中,奇数位线BL和偶数位线BL可以被区分开并且相应地连接到列解码器420。
为了访问存储器单元MC,地址经过输入/输出端,然后通过行解码器410和列解码器420进入内核区域,然后可以指定目标存储器单元。如本文所使用的,指定目标存储器单元是指访问在连接到行解码器410的字线WL1-WL9和连接到列解码器420的位线BL之间的相交处的存储器单元MC中的一个,以将数据编程在该存储器单元中或从该存储器单元中读取编程数据。
第一方向(例如,X轴方向)上的页面PG通过被称为字线WL的公共使用线进行分组,第二方向(例如,Y轴方向)上的串STR通过被称为位线BL的公共线进行分组(连接)。如本文所使用的,被公共地分组表示,它们通过相同的材料而在结构上连接,并且在施加电压期间同时向它们施加相同的电压。显然,由于在施加电压进程期间发生电压降,因此施加到串联连接的存储器单元MC中的一个存储器单元MC的电压可能与施加到串联连接的存储器单元MC中的另一存储器单元MC的电压略微不同。
由存储器装置110处理的所有数据经由数据寄存器430来编程和读取。如果数据寄存器430的数据处理变慢,则所有其他区域需要等待直到数据寄存器430完成数据处理。另外,基于数据寄存器430的性能劣化,存储器装置110的整体性能也可能劣化。
参照图4中的示例,多个晶体管TR1-TR9可以存在于一个串STR中,同时连接到多条字线WL1-WL9。多个晶体管TR1-TR9存在的区域对应于存储器单元MC。如上所述,多个晶体管TR1-TR9包括控制栅极CG和浮置栅极FG。
多条字线WL1-WL9包括两条最外侧字线WL1和WL9。第一选择线DSL可以另外设置在第一最外侧字线WL1的外部,并且第二选择线SSL可以另外设置在第二最外侧字线WL9的外部,其中在信号路径方面,第一最外侧字线WL1更靠近数据寄存器430。
由第一选择线DSL控制以导通/关断的第一选择晶体管D-TR具有连接到第一选择线DSL的栅电极,但是不包括浮置栅极FG。由第二选择线SSL控制以导通/关断的第二选择晶体管S-TR具有连接到第二选择线SSL的栅电极,但是不包括浮置栅极FG。
第一选择晶体管D-TR起到开关的作用,以导通或关断相应的串STR和数据寄存器430之间的连接。第二选择晶体管S-TR起到开关的作用,以导通或关断相应的串STR和源极线SL之间的连接。即,第一选择晶体管D-TR和第二选择晶体管S-TR位于相应的串STR的两端,并且起到网守的作用,以连接和断开信号。
在编程操作期间,存储器系统100利用电子填充位线BL中的待编程的目标存储器单元MC。因此,存储器系统100向第一选择晶体管D-TR的栅电极施加导通电压Vcc,从而使第一选择晶体管D-TR导通,并向第二选择晶体管S-TR的栅电极施加关断电压(例如,0V),从而使第二选择晶体管S-TR关断。
在读取操作或验证操作期间,存储器系统100使第一选择晶体管D-TR和第二选择晶体管S-TR都导通。因此,电流可以经过相应的串STR和漏极而流到与地相对应的源极线SL,从而可以测量位线BL的电压电平。然而,在读取操作期间,在第一选择晶体管D-TR和第二选择晶体管S-TR之间可能存在导通-关断定时的时间差。
在擦除操作期间,存储器系统100可以通过源极线SL向衬底供应电压(例如,+20V)。在擦除操作期间,存储器系统100使第一选择晶体管D-TR和第二选择晶体管S-TR都浮置,从而产生无限电阻。所得到的结构去除了第一选择晶体管D-TR和第二选择晶体管S-TR的作用,并且仅通过浮置栅极FG和衬底之间的电势差的方法而使电子操作。
图5是示出根据本公开的实施例的系统10的示意性配置的示图。
系统10可以包括第一模块MODULE_1和第二模块MODULE_2。第一模块MODULE_1可以以第一时钟CLK_1操作,第二模块MODULE_2可以以第二时钟CLK_2操作。第一模块MODULE_1和第二模块MODULE_2中的每一个可以是系统10中包括的多个模块(例如,处理器/存储器)中的一个。
第一时钟CLK_1和第二时钟CLK_2可以相同或不同。如本文所使用的,相同的时钟以相同的频率操作,即每个时钟以300MHz或每个时钟以600MHz操作,而不同的时钟以不同的频率操作,例如一个以300MHz操作,而另一个以600MHz操作。
第一时钟CLK_1和第二时钟CLK_2可以由设置在系统10内部或外部的时钟生成电路生成。
第一时钟CLK_1和第二时钟CLK_2可以基于预先配置的参考时钟值而操作。例如,第一时钟CLK_1和第二时钟CLK_2的操作频率可以对应于参考时钟值的1/(2n)(其中,n是整数)。例如,如果参考时钟值为600MHz,则第一时钟CLK_1可以为600/(21)=300MHz,并且第二时钟CLK_2可以为600/(22)=150MHz。
系统10可以包括连接到第一模块MODULE_1和第二模块MODULE_2的总线(BUS)。总线可以直接地布线并且连接到第一模块MODULE_1和第二模块MODULE_2,或者可以经由另一模块而连接到第一模块MODULE_1和第二模块MODULE_2。
总线可以提供用于第一模块MODULE_1和第二模块MODULE_2之间的数据传输/接收的通道。总线可以具有与第一时钟CLK_1和第二时钟CLK_2不同的时钟。
可以基于各种技术来实施总线。例如,可以基于高级微控制器总线架构(AMBA)协议、高级系统总线(ASB)或高级外围总线(APB),来将总线实施为高级高性能总线(AHB)。
系统10可以包括数据处理电路DATA_PROC_CIR,数据处理电路DATA_PROC_CIR被配置为基于操作模式OP_MODE处理从第一模块MODULE_1提供并且待传输到第二模块MODULE_2的源数据SRC_DATA。操作模式OP_MODE可以是第一模式MODE_1或第二模式MODE_2。
数据处理电路DATA_PROC_CIR可以直接从第一模块MODULE_1接收源数据SRC_DATA(①),或者可以经由总线BUS从第一模块MODULE_1接收源数据SRC_DATA(②)。
数据处理电路DATA_PROC_CIR可以将未改变的源数据SRC_DATA和作为处理源数据SRC_DATA的结果的结果数据RES_DATA之中的一个传输到第二模块MODULE_2。数据处理电路DATA_PROC_CIR可以将结果数据RES_DATA直接传输到第二模块MODULE_2(③),或者可以经由总线将结果数据RES_DATA传输到第二模块MODULE_2(④)。
稍后参照图6描述数据处理电路DATA_PROC_CIR的详细操作方法。
系统10可以包括控制器CTRL,该控制器CTRL被配置为控制数据处理电路DATA_PROC_CIR以根据请求来将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1或第二模式MODE_2,这参照图11进行描述。
系统10可以是参照图1至图4描述的存储器系统100。例如,系统10的第一模块MODULE_1可以是存储器系统100的处理器124,并且例如,第二模块MODULE_2可以是存储器系统100的工作存储器125。系统10的总线可以是存储器系统100的总线127。
在下文中,描述系统10中包括的组件的详细操作。
图6是示出参照图5描述的数据处理电路DATA_PROC_CIR的示例性操作的流程图。
假设数据处理电路DATA_PROC_CIR处理从第一模块MODULE_1提供的源数据SRC_DATA,以将结果数据RES_DATA提供到第二模块MODULE_2。假设第一模块MODULE_1根据第一时钟CLK_1进行操作,因此源数据SRC_DATA对应于第一时钟CLK_1。假设第二模块MODULE_2根据第二时钟CLK_2进行操作,因此结果数据RES_DATA对应于第二时钟CLK_2。
首先,数据处理电路DATA_PROC_CIR可以确定数据处理电路DATA_PROC_CIR的操作模式OP_MODE(S610)。
如果操作模式OP_MODE为第一模式MODE_1(在S620中为“是”),则数据处理电路DATA_PROC_CIR可以将最初与第一时钟CLK_1相对应的源数据SRC_DATA改变为与第二时钟CLK_2相对应(S630)。
如本文所使用的,将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应表示,尽管由源数据SRC_DATA指示的信息没变,但是指示源数据SRC_DATA的信号的波形改变了,使得系统10的第二模块MODULE_2可以与第二时钟CLK_2同步地处理结果数据RES_DATA或改变后的源数据SRC_DATA。
另一方面,如果操作模式OP_MODE不是第一模式MODE_1,即,如果操作模式OP_MODE为第二模式MODE_2(在S620中为“否”),则数据处理电路DATA_PROC_CIR可以将未改变的源数据SRC_DATA传输(即,将源数据SRC_DATA旁通)到第二模块MODULE_2(S640)。
如本文所使用的,传输未改变的源数据SRC_DATA表示,在没有将源数据SRC_DATA改变为与第二时钟CLK_2相对应的情况下输出该源数据SRC_DATA。即,指示源数据SRC_DATA的信号的波形没有改变。
图7是示出参照图5描述的控制器CTRL的示例性操作的流程图。
控制器CTRL检查总线(BUS)的状态(S710)并且确定总线是否处于空闲状态(S720)。如本文所使用的,总线处于空闲状态表示当前没有数据通过总线传输。
如果总线处于空闲状态(在S720中为“是”),则控制器CTRL将数据处理电路DATA_PROC_CIR的操作模式OP_MODE从第一模式MODE_1改变为第二模式MODE_2,反之亦然(S730)。
另一方面,如果总线未处于空闲状态(在S720中为“否”),则控制器CTRL再次返回到步骤S710,并检查总线的状态。
下面描述当总线处于空闲状态时,控制器CTRL改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE的原因。
改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE表示,也可以将从数据处理电路DATA_PROC_CIR输出的结果数据RES_DATA改变为对应于与原始时钟不同的时钟(例如,具有与第一时钟CLK_1不同频率的第二时钟CLK_2)。
如果当总线未处于空闲状态时,即在通过总线将源数据SRC-DATA从第一模块MODULE_1传输到第二模块MODULE_2时,控制器CTRL改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE,则可能会发生以下问题。
具体地,在改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE之前和之后,结果数据RES_DATA所对应的时钟可能存在差异。如果第二模块MODULE_2没有识别出这种时钟差异,则当第二模块MODULE_2处理在改变操作模式OP_MODE之后传输的结果数据RES_DATA时,可能会发生错误。
因此,为了防止这种问题,控制器CTRL在总线处于空闲状态时改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE。
图8是示出根据本公开的实施例的在系统10中检查空闲状态的示例性操作的示图。
系统10可以包括检查器IDLE_CHECKER,该检查器IDLE_CHECKER被配置为基于从总线提供的、指示总线状态的信号来输出指示总线是否处于空闲状态的信号。
例如,指示总线状态的信号可以指示系统10中包括的每个模块当前是否正在输出数据。
作为另一示例,指示总线BUS状态的信号可以指示系统10中包括的每个模块当前是否就绪以输出数据。
如果系统10中的每个模块当前没有正在输出任何数据并且没有就绪以输出数据,则检查器IDLE_CHECKER可以输出指示总线处于空闲状态的信息。
控制器CTRL根据从检查器IDLE_CHECKER输出的信号来确定总线是否处于空闲状态,并且如果总线处于空闲状态,则将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1或第二模式MODE_2。
控制器CTRL如参照图8所述的通过使用检查器IDLE_CHECKER来检查空闲状态的原因如下。
在不使用检查器IDLE_CHECKER的情况下,为了使系统10确保总线处于空闲状态,系统10首先需要确保系统10中包括的模块之中的CPU处于空闲状态并因此没有执行任何操作处理。另外,在确认CPU处于空闲状态之后,关于系统10中的每个模块,系统10需要确保这些模块没有正在输出任何数据并且没有就绪以输出数据。仅当完成这些检查之后,系统10才能确保总线处于空闲状态。
如果系统10将消息传输到系统10的所有模块并且从它们接收响应,则系统10将花费较长的时间来确保总线处于空闲状态。
因此,如果通过使用诸如检查器IDLE_CHECKER的硬件电路来接收指示总线状态的信号以立即确定总线是否处于空闲状态,则有利地减少了系统10确认总线处于空闲状态所需的时间。
因此,当系统10中的模块中的一个模块的时钟改变时,确认总线处于空闲状态,从而使模块切换到能够相对于系统10中的另一模块传输/接收数据的状态所需的时间减少。因此,模块可以快速地切换到数据传输/接收状态,并且因此与系统10中的另一模块进行通信。
在下文中,详细描述当数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变时数据处理电路DATA_PROC_CIR的操作,以及用于支持上述操作的数据处理电路DATA_PROC_CIR的结构。
数据处理电路DATA_PROC_CIR可以包括多路器MUX。
多路器MUX可以输出i)第一信号SIG_1,该第一信号SIG_1指示未改变的源数据SRC_DATA或者ii)第二信号SIG_2,该第二信号SIG_2指示通过将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应而获得的结果数据RES_DATA。
通过输入到多路器MUX的选择信号SEL_SIG来确定该多路器MUX是选择第一信号SIG_1还是第二信号SIG_2。选择信号SEL_SIG可以由检查器IDLE_CHECKER生成。
数据处理电路DATA_PROC_CIR可以包括桥接电路BRIDGE_CIR,该桥接电路BRIDGE_CIR被配置为生成指示结果数据RES_DATA的信号,该结果数据RES_DATA通过将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应而获得。
例如,桥接电路BRIDGE_CIR可以将源数据SRC_DATA存储在该桥接电路BRIDGE_CIR内部的寄存器中。
此后,桥接电路BRIDGE_CIR可以基于第二时钟CLK_2和寄存器中存储的源数据SRC_DATA来生成指示结果数据RES_DATA的信号。
数据处理电路DATA_PROC_CIR通过使用多路器MUX选择第一信号SIG_1或第二信号SIG_2并且输出所选择信号的原因如下。
如果数据处理电路DATA_PROC_CIR总是输出通过将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应而获得的结果数据RES_DATA,则以第二时钟CLK_2进行操作的第二模块MODULE_2可以总是从数据处理电路DATA_PROC_CIR接收结果数据RES_DATA,而没有错误。
然而,如果第一时钟CLK_1和第二时钟CLK_2具有相同的操作频率,则源数据SRC_DATA和结果数据RES_DATA变得相同,并且第二模块MODULE_2可以相应地接收直接输入第二模块MODULE_2中的源数据SRC_DATA。在这种情况下,数据处理电路DATA_PROC_CIR需要花费时间来将源数据SRC_DATA转换为结果数据RES_DATA,从而劣化了关于系统10中包括的模块之间的数据传输/接收的性能。
另一方面,如果第一时钟CLK_1和第二时钟CLK_2具有不同的操作频率,并且如果第二模块MODULE_2直接接收源数据SRC_DATA,则当第二模块MODULE_2接收源数据SRC_DATA时可能发生错误。
因此,为了优化系统中包括的模块之间的数据传输/接收的性能,需要从以下中适当地选择一个信号:i)第一信号SIG_1,该第一信号SIG_1指示未改变的源数据SRC_DATA;ii)第二信号SIG_2,该第二信号SIG_2指示通过将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应而获得的结果数据RES_DATA。为此,数据处理电路DATA_PROC_CIR可以使用多路器MUX。
在下文中,参照图9和图10来区分并描述数据处理电路DATA_PROC_CIR根据不同操作模式的操作。
图9是示出根据本公开的实施例的数据处理电路DATA_PROC_CIR根据系统10中的操作模式OP_MODE的示例性操作的示图。
图9示出数据处理电路DATA_PROC_CIR的操作模式OP_MODE为第一模式MODE_1的情况。
参照图9,当数据处理电路DATA_PROC_CIR的操作模式OP_MODE为第一模式MODE_1时,多路器MUX选择第二信号SIG_2,然后输出第二信号SIG_2。为此,将指示操作模式OP_MODE为第一模式MODE_1的选择信号SEL_SIG输入到多路器MUX。
图10是示出根据本公开的实施例的数据处理电路DATA_PROC_CIR根据系统10中的操作模式OP_MODE的另一示例性操作的示图。
图10示出数据处理电路DATA_PROC_CIR的操作模式OP_MODE为第二模式MODE_2的情况。
参照图10,当数据处理电路DATA_PROC_CIR的操作模式OP_MODE为第二模式MODE_2时,多路器MUX选择第一信号SIG_1,然后输出第一信号SIG_1。为此,将指示操作模式OP_MODE为第二模式MODE_2的选择信号SEL_SIG输入到多路器MUX。
这样,数据处理电路DATA_PROC_CIR针对每个操作模式OP_MODE输出不同的信号。在下文中,描述控制器CTRL控制操作模式OP_MODE的这种改变的操作。
图11是示出根据本公开的实施例的控制器CTRL控制系统10中的数据处理电路DATA_PROC_CIR的操作模式OP_MODE的示例性操作的流程图。
首先,控制器CTRL可以检查指示是否改变第一时钟CLK_1或第二时钟CLK_2的请求(S1110)。例如,请求可以是配置格式的消息,或特定信号模式(例如,从低到高或从高到低)。
请求可以由系统10内部的模块中的一个模块(例如,处理器124)生成。
在步骤S1110之后,控制器CTRL确定该请求是否指示将第一时钟CLK_1和/或第二时钟CLK_2改变为相同(S1120)。
如果该请求指示将第一时钟CLK_1和/或第二时钟CLK_2改变为相同(在S1120中为“是”),则控制器CTRL可以将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第二模式MODE_2(S1130)。
另一方面,如果该请求指示将第一时钟CLK_1和第二时钟CLK_2保持不变,或者改变至少一个时钟以使时钟以不同的操作频率进行操作(在S1120中为“否”),则控制器CTRL可以将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1(S1140)。
在下文中,参照图12和图13描述了当在步骤S1130中控制器CTRL将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第二模式MODE_2时,系统10内部的状态随着时间的示例性变化。
图12是示出根据本公开的实施例的系统10的状态随着时间的示例性变化的示图。
参照图12,系统10的控制器CTRL可以感测模式检测信号MODE_DETECT的改变,该模式检测信号MODE_DETECT指示控制器CTRL检测数据处理电路DATA_PROC_CIR的操作模式OP_MODE(①)。在模式检测信号MODE_DETECT从“低”变为“高”之后,控制器CTRL可以将数据处理电路DATA_PROC_CIR的操作模式从第一模式MODE_1改变为第二模式MODE_2。
在感测模式检测信号MODE_DETECT的改变之后,控制器CTRL可以感测时钟改变请求信号CLK_CHANGE_REQ的生成(②)。在图12中,已经生成了指示将第一时钟CLK_1和第二时钟CLK_2中的一个改变为相同的时钟改变请求信号CLK_CHANGE_REQ。
时钟改变请求信号CLK_CHANGE_REQ可以由系统10中的模块中的一个模块(例如,处理器124)生成。
针对时钟改变请求信号CLK_CHANGE_REQ,控制器CTRL可以感测指示完成了时钟改变的时钟改变确认信号CLK_CHANGE_ACK的生成(③)。时钟改变确认信号CLK_CHANGE_ACK可以由系统10内部的被配置为生成第一时钟CLK_1和第二时钟CLK_2的模块(例如,时钟生成电路)生成。
在生成了时钟改变确认信号CLK_CHANGE_ACK之后,控制器CTRL可以确认第一时钟CLK_1和第二时钟CLK_2中的一个或两者已经被改变为相同。
在图12中,在生成了时钟改变确认信号CLK_CHANGE_ACK之后,请求信号REQ被改变,这指示第一时钟CLK_1和/或第二时钟CLK_2已经被改变为相同。在图12中,请求信号REQ从“高”变为“低”以指示这种结果。
在感测以上描述的请求信号REQ的改变之后,控制器CTRL可以检测总线空闲信号BUS_IDLE,该总线空闲信号BUS_IDLE指示系统10中包括的总线是否处于空闲状态(④)。在图12中,“高”总线空闲信号BUS_IDLE表示总线处于空闲状态。
在检测总线空闲信号BUS_IDLE之后,控制器CTRL可以控制数据处理电路DATA_PROC_CIR以将操作模式OP_MODE从第一模式MODE_1改变为第二模式MODE_2。即,在第一时钟CLK_1和第二时钟CLK_2中的一个或两者已经被改变为相同之后,控制器CTRL可以控制数据处理电路DATA_PROC_CIR以将操作模式OP_MODE改变为第二模式MODE_2。
这是为了以下目的:防止如果在改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE时,第一时钟CLK_1和第二时钟CLK_2具有不同的操作频率,则将错误地选择与通过数据处理电路DATA_PROC_CIR输出的数据相对应的时钟。即,这是为了以下目的:确保在数据处理电路DATA_PROC_CIR的操作模式OP_MODE被改变为第二模式MODE_2时,第一时钟CLK_1和第二时钟CLK_2具有相同的操作频率,从而确保无论第二模块MODULE_2选择哪个时钟,都可以无错误地接收通过数据处理电路DATA_PROC_CIR输出的数据。
图13是示出图12中的传输关于请求的确认信号的时间的示图。
参照图13,当通过控制器CTRL将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第二模式MODE_2时,控制器CTRL可以生成关于上述请求信号REQ的确认信号REQ_ACK(⑤)。控制器CTRL可以在传输关于请求信号REQ的确认信号REQ_ACK时,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE从第一模式MODE_1改变为第二模式MODE_2。
在下文中,参照图14和图15描述在步骤S1140中的当控制器CTRL将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1时,系统10随着时间的示例性状态变化。
图14是示出根据本公开的实施例的系统10的状态随着时间的另一示例性变化的示图。
参照图14,系统10的控制器CTRL可以感测模式检测信号MODE_DETECT的改变,该模式检测信号MODE_DETECT指示控制器CTRL检测数据处理电路DATA_PROC_CIR的操作模式OP_MODE。在模式检测信号MODE_DETECT从“低”变为“高”之后,控制器CTRL可以将数据处理电路DATA_PROC_CIR的操作模式OP_MODE从第二模式MODE_2改变为第一模式MODE_1。
在图14中,在改变了模式检测信号MODE_DETECT之后,生成请求信号REQ(①)。该请求信号REQ用作改变第一时钟CLK_1和第二时钟CLK_2中的一个或两者以使它们不同的指令。在图14中,当请求信号REQ从“低”变为“高”时,指令被断言。在图14中,响应于请求信号,第一时钟CLK_1被改变为具有比第二时钟CLK_2更高的频率。
在感测上述请求信号REQ的生成时,控制器CTRL可以检测总线空闲信号BUS_IDLE,该总线空闲信号BUS_IDLE指示系统10中包括的总线是否处于空闲状态(②)。在图14中,“高”总线空闲信号BUS_IDLE表示总线处于空闲状态。
在检测总线空闲信号BUS_IDLE之后,控制器CTRL可以控制数据处理电路DATA_PROC_CIR,以将数据处理电路DATA_PROC_CIR的操作模式OP_MODE从第二模式MODE_2改变为第一模式MODE_1。
在将操作模式OP_MODE改变为第一模式MODE_1之后,控制器CTRL可以感测时钟改变请求信号CLK_CHANGE_REQ的生成(④)。在图14中,已经生成了指示将第一时钟CLK_1和第二时钟CLK_2中的一个或两者改变为不同的时钟改变请求信号CLK_CHANGE_REQ。
时钟改变请求信号CLK_CHANGE_REQ可以由系统10中包括的模块中的一个模块(例如,处理器124)生成。
针对时钟改变请求信号CLK_CHANGE_REQ,控制器CTRL可以感测指示完成了时钟改变的时钟改变确认信号CLK_CHANGE_ACK的生成(⑤)。时钟改变确认信号CLK_CHANGE_ACK可以由系统10内部的被配置为生成第一时钟CLK_1和第二时钟CLK_2的模块(例如,时钟生成电路)生成。
控制器CTRL可以控制数据处理电路DATA_PROC_CIR,以在第一时钟CLK_1和第二时钟CLK_2不同之前,将操作模式OP_MODE改变为第一模式MODE_1。
如参照图12所述,这是为了以下目的:确保在数据处理电路DATA_PROC_CIR的操作模式OP_MODE被改变时第一时钟CLK_1和第二时钟CLK_2具有相同的操作频率,从而确保无论第二模块MODULE_2选择哪个时钟,都可以无错误地接收通过数据处理电路DATA_PROC_CIR输出的数据。
图15是示出图14中的传输关于请求的确认信号的时间的示图。
参照图15,当通过控制器CTRL将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1时,控制器CTRL可以生成关于上述请求信号REQ的确认信号REQ_ACK(③)。控制器CTRL可以在传输关于请求信号REQ的确认信号REQ_ACK时,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE从第二模式MODE_2改变为第一模式MODE_1。
图16是示出根据本公开的实施例的操作系统10的方法的示图。
操作系统10的方法可以包括从诸如处理器124的模块接收请求,该请求指示是否改变第一时钟CLK_1或第二时钟CLK_2(S1610)。该请求可以指示将第一时钟CLK_1和第二时钟CLK_2中的一个改变为相同,或者可以指示将第一时钟CLK_1和第二时钟CLK_2中的一个改变为不同。
该操作系统10的方法可以包括以下步骤:根据在步骤S1610中接收的请求,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1或第二模式MODE_2(S1620)。
该操作系统10的方法可以包括以下步骤:基于步骤S1620中的操作模式,处理从第一模块MODULE_1传输的源数据,以提供到第二模块MODULE_2(S1630)。
数据处理电路DATA_PROC_CIR可以处理从根据第一时钟CLK_1进行操作的第一模块MODULE_1向根据第二时钟CLK_2进行操作的第二模块MODULE_2传输的源数据SRC_DATA。
如果操作模式OP_MODE为第一模式MODE_1,则数据处理电路DATA_PROC_CIR可以将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应。
另一方面,如果操作模式OP_MODE为第二模式MODE_2,则数据处理电路DATA_PROC_CIR可以将未改变的源数据SRC_DATA传输到第二模块MODULE_2。
图17是示出根据本公开的实施例的改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE的方法的示图。
改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE的方法可以包括确认连接到第一模块MODULE_1和第二模块MODULE_2的总线是否处于空闲状态(S1710)。
改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE的方法可以包括当总线BUS处于空闲状态时,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1或第二模式MODE_2(S1720)。
数据处理电路DATA_PROC_CIR可以输出i)第一信号SIG_1,该第一信号SIG_1指示未改变的源数据SRC_DATA,或者ii)第二信号SIG_2,该第二信号SIG_2指示通过将源数据SRC_DATA从与第一时钟CLK_1相对应改变为与第二时钟CLK_2相对应而获得的结果数据RES_DATA。
当确定请求指示将第一时钟CLK_1和第二时钟CLK_2中的一个改变为不同时,控制器CTRL可以将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1。可以在将第一时钟CLK_1和/或第二时钟CLK_2改变为不同之前,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1。
当确定请求指示将第一时钟CLK_1和第二时钟CLK_2中的一个或两者改变为相同时,控制器CTRL可以将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第二模式MODE_2。可以在将第一时钟CLK_1和第二时钟CLK_2改变为相同之后,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第二模式MODE_2。
当控制器CTRL根据请求控制数据处理电路DATA_PROC_CIR,以改变数据处理电路DATA_PROC_CIR的操作模式OP_MODE时,控制器CTRL可以在传输关于请求的确认信号时,将数据处理电路DATA_PROC_CIR的操作模式OP_MODE改变为第一模式MODE_1或第二模式MODE_2。
图18是示出根据本公开的实施例的计算系统1800的配置的示图。
参照图18,计算系统1800可以包括:系统10,该系统10电连接到计算系统1800;CPU1810,该CPU 1810被配置为控制计算系统1800的全部操作;RAM 1820,该RAM 1820被配置为存储与计算系统1800的操作有关的数据和信息;用户接口/用户体验(UI/UX)模块1830,该用户接口/用户体验(UI/UX)模块1830被配置为向用户提供用户环境;通信模块1840,该通信模块1840被配置为以有线和/或无线方式与外部装置通信;电源管理模块1850,该电源管理模块1850被配置为管理计算系统1800使用的电力;等等。
计算系统1800可以是个人计算机(PC)、移动终端(例如,智能手机或平板电脑)或各种其他种类电子装置中的任意一种。
计算系统1800可以进一步包括用于供应动态电压的电池、应用芯片组、图形相关模块、相机图像处理器(CIS)和DRAM。对于本领域技术人员显而易见的是,计算系统1800可以进一步包括其他组件。
系统10可以是例如参照图1至图4所述的存储器系统100。
存储器系统100可以是被配置为将数据存储在磁盘中的装置,诸如硬盘驱动器(HDD),或者是被配置为将数据存储在非易失性存储器中的装置,诸如固态驱动器(SSD)、通用闪存(UFS)装置和嵌入式MMC(eMMC)装置。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器、相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)和/或铁电RAM(FRAM)。此外,存储器系统100可以被实施为各种类型的存储器装置中的任意一种并且被安装在各种电子装置中的任意一种的内部。
尽管已经示出和描述了本发明的实施例,但是本领域技术人员将理解,可以在不脱离本公开的范围和精神的情况下进行各种修改和改变。进一步地,本文公开的实施例不旨在限制本发明;相反,它们旨在解释本发明。本发明包括落入权利要求以及其等同方案的范围内的所有修改和改变。
Claims (15)
1.一种系统,包括:
第一模块,所述第一模块根据第一时钟操作;
第二模块,所述第二模块根据第二时钟操作;
总线,所述总线连接到所述第一模块和所述第二模块;
数据处理电路,所述数据处理电路基于所述数据处理电路的操作模式来处理从所述第一模块传输的源数据并且将所处理的源数据提供到所述第二模块;以及
控制器,所述控制器控制所述数据处理电路,以根据指示是否改变所述第一时钟或所述第二时钟的请求来将所述操作模式改变为第一模式或第二模式,
其中所述数据处理电路进一步当所述操作模式为所述第一模式时,将所述源数据从与所述第一时钟相对应改变为与所述第二时钟相对应,并且当所述操作模式为所述第二模式时,向所述第二模块提供未改变的所述源数据,
其中在接收到所述请求之后,当所述总线处于空闲状态时,所述控制器将所述数据处理电路的所述操作模式改变为所述第一模式或所述第二模式。
2.根据权利要求1所述的系统,其中所述数据处理电路包括多路器,所述多路器输出以下中的一个:i)第一信号,所述第一信号指示未改变的所述源数据,以及ii)第二信号,所述第二信号指示通过将所述源数据从与所述第一时钟相对应改变为与所述第二时钟相对应而获得的结果数据。
3.根据权利要求2所述的系统,其中所述数据处理电路包括桥接电路,所述桥接电路生成所述结果数据。
4.根据权利要求1所述的系统,其中当所述请求指示改变所述第一时钟和所述第二时钟中的至少一个,使得所述第一时钟和第二时钟相同时,所述控制器将所述数据处理电路的所述操作模式改变为所述第二模式。
5.根据权利要求4所述的系统,其中在将所述第一时钟和所述第二时钟改变为相同之后,所述控制器将所述数据处理电路的所述操作模式改变为所述第二模式。
6.根据权利要求1所述的系统,其中当所述请求指示将所述第一时钟和所述第二时钟改变为不同时,所述控制器将所述数据处理电路的所述操作模式改变为所述第一模式。
7.根据权利要求6所述的系统,其中在改变所述第一时钟和所述第二时钟中的至少一个,使得所述第一时钟和所述第二时钟不同之前,所述控制器将所述数据处理电路的所述操作模式改变为所述第一模式。
8.根据权利要求1所述的系统,其中当传输关于所述请求的确认信号时,所述控制器将所述数据处理电路的所述操作模式改变为所述第一模式或所述第二模式。
9.一种操作系统的方法,所述系统包括第一模块和第二模块,所述第一模块和所述第二模块分别根据第一时钟和第二时钟操作,所述方法包括:
接收指示是否改变所述第一时钟或所述第二时钟的请求;
根据所述请求将数据处理电路的操作模式改变为第一模式或第二模式;并且
基于操作模式,处理从所述第一模块传输的源数据以提供到所述第二模块,
其中处理所述源数据包括:
当所述操作模式为所述第一模式时,将所述源数据从与所述第一时钟相对应改变为与所述第二时钟相对应;以及
当所述操作模式为所述第二模式时,向所述第二模块提供未改变的所述源数据,
其中改变所述操作模式包括:
确认连接到所述第一模块和所述第二模块的总线是否处于空闲状态;以及
当所述总线处于所述空闲状态时,将所述操作模式改变为所述第一模式或所述第二模式。
10.根据权利要求9所述的方法,其中处理所述源数据进一步包括输出以下中的一个:i)第一信号,所述第一信号指示未改变的所述源数据;以及ii)第二信号,所述第二信号指示通过将所述源数据从与所述第一时钟相对应改变为与所述第二时钟相对应而获得的结果数据。
11.根据权利要求9所述的方法,其中改变所述操作模式包括:当所述请求指示改变所述第一时钟和所述第二时钟中的至少一个,使得所述第一时钟和所述第二时钟相同时,将所述操作模式改变为所述第二模式。
12.根据权利要求11所述的方法,其中在将所述第一时钟和所述第二时钟改变为相同之后,将所述数据处理电路的所述操作模式改变为所述第二模式。
13.根据权利要求9所述的方法,其中改变所述操作模式包括:当所述请求指示将所述第一时钟和所述第二时钟改变为不同时,将所述操作模式改变为所述第一模式。
14.根据权利要求13所述的方法,其中在改变所述第一时钟和所述第二时钟中的至少一个,使得所述第一时钟和所述第二时钟不同之前,将所述数据处理电路的所述操作模式改变为所述第一模式。
15.根据权利要求9所述的方法,其中当传输关于所述请求的确认信号时,改变所述操作模式。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190143900A KR20210057297A (ko) | 2019-11-12 | 2019-11-12 | 시스템 및 시스템의 동작 방법 |
KR10-2019-0143900 | 2019-11-12 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112860004A CN112860004A (zh) | 2021-05-28 |
CN112860004B true CN112860004B (zh) | 2024-03-05 |
Family
ID=75846808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010435473.XA Active CN112860004B (zh) | 2019-11-12 | 2020-05-21 | 系统和操作系统的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11334505B2 (zh) |
KR (1) | KR20210057297A (zh) |
CN (1) | CN112860004B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149726A (zh) * | 2006-09-20 | 2008-03-26 | 英特尔公司 | 用于可管理性引擎背景的控制器链路 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW362178B (en) | 1997-01-30 | 1999-06-21 | Nxp Bv | Electronic apparatus |
US7352836B1 (en) * | 2001-08-22 | 2008-04-01 | Nortel Networks Limited | System and method of cross-clock domain rate matching |
JP3638271B2 (ja) * | 2002-07-23 | 2005-04-13 | 沖電気工業株式会社 | 情報処理装置 |
US7907625B1 (en) * | 2008-08-04 | 2011-03-15 | Integrated Device Technology, Inc. | Power reduction technique for buffered crossbar switch |
JP5570619B2 (ja) * | 2010-02-23 | 2014-08-13 | ラムバス・インコーポレーテッド | 異なるメモリ種類にアクセスする異なる速度での時分割多重化 |
KR20130070251A (ko) | 2011-12-19 | 2013-06-27 | 에스케이하이닉스 주식회사 | 브릿지 칩셋 및 그것을 포함하는 데이터 저장 시스템 |
GB2513529A (en) * | 2012-11-15 | 2014-11-05 | Ibm | System and method of low latency data tranfer between clock domains operated in various synchronization modes |
-
2019
- 2019-11-12 KR KR1020190143900A patent/KR20210057297A/ko not_active Application Discontinuation
-
2020
- 2020-04-30 US US16/862,649 patent/US11334505B2/en active Active
- 2020-05-21 CN CN202010435473.XA patent/CN112860004B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101149726A (zh) * | 2006-09-20 | 2008-03-26 | 英特尔公司 | 用于可管理性引擎背景的控制器链路 |
Also Published As
Publication number | Publication date |
---|---|
CN112860004A (zh) | 2021-05-28 |
KR20210057297A (ko) | 2021-05-21 |
US20210141750A1 (en) | 2021-05-13 |
US11334505B2 (en) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112860178B (zh) | 存储器装置、存储器控制器、存储器系统及其操作方法 | |
CN110197692B (zh) | 存储器系统及其操作方法 | |
CN110556152B (zh) | 存储器装置、其操作方法以及包括其的存储器系统 | |
TW201919069A (zh) | 記憶體系統及其操作方法 | |
US20230333932A1 (en) | Memory system and operating method thereof | |
CN113010093B (zh) | 存储器系统以及存储器控制器 | |
US10803960B2 (en) | Memory device and operation method thereof | |
CN113806254A (zh) | 存储器系统、存储器控制器及存储器系统的操作方法 | |
CN110349615B (zh) | 控制器、其操作方法及包括控制器的存储器系统 | |
CN112925476B (zh) | 存储器系统、存储器控制器及其操作方法 | |
CN115952115A (zh) | 基于融合链表控制同步操作的存储器控制器及其操作方法 | |
CN116136738A (zh) | 使用外部装置执行后台操作的存储器系统及其操作方法 | |
CN112860004B (zh) | 系统和操作系统的方法 | |
CN112447234A (zh) | 存储器控制器及其操作方法 | |
US11880599B2 (en) | Memory system and operating method of the memory system inputting an additional read enable toggle signal to output status information of memory device | |
US20230006673A1 (en) | Memory system and memory controller | |
US11500771B2 (en) | Memory system, memory controller, and method of operating memory system | |
US11404137B1 (en) | Memory system and operating method of memory system | |
US11507323B2 (en) | Memory device and operating method thereof | |
CN111916142B (zh) | 存储器控制器以及操作存储器控制器的方法 | |
CN113764027A (zh) | 存储器系统、存储器控制器以及存储器系统的操作方法 | |
KR20230097349A (ko) | 컨트롤러 및 컨트롤러의 동작 방법 | |
CN114077385A (zh) | 存储器系统、存储器控制器以及操作存储器系统的方法 | |
JP2023076806A (ja) | 半導体装置内の信号干渉を減らすための装置及び方法 | |
CN115757217A (zh) | 确定目标状态读取检查时段的存储器系统及其操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |