CN118819385A - Data receiving method - Google Patents
Data receiving method Download PDFInfo
- Publication number
- CN118819385A CN118819385A CN202310436252.8A CN202310436252A CN118819385A CN 118819385 A CN118819385 A CN 118819385A CN 202310436252 A CN202310436252 A CN 202310436252A CN 118819385 A CN118819385 A CN 118819385A
- Authority
- CN
- China
- Prior art keywords
- sampling
- electronic device
- data
- flash memory
- values
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/076—Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Read Only Memory (AREA)
Abstract
一种数据接收方法,使用在一第一电子装置以及一第二电子装置上,包含:步骤a以一计数器产生多个计数值;步骤b以该第一电子装置接收储存在该第二电子装置中的对准数据;步骤c以该第一电子装置中的一取样器对该对准数据取样来产生多个取样值;步骤d根据该些取样值以及该些计数值决定该取样器的一取样点和一取样周期;以及步骤e使该取样器以该取样点以及该取样周期来取样该第二电子装置所传送的其他数据。
A data receiving method is used on a first electronic device and a second electronic device, comprising: step a of generating a plurality of count values using a counter; step b of receiving alignment data stored in the second electronic device using the first electronic device; step c of sampling the alignment data using a sampler in the first electronic device to generate a plurality of sampling values; step d of determining a sampling point and a sampling period of the sampler based on the sampling values and the count values; and step e of causing the sampler to sample other data transmitted by the second electronic device using the sampling point and the sampling period.
Description
技术领域Technical Field
本发明有关于数据接收方法,特别有关于可自动设定时钟信号频率以补偿信号延迟的数据接收方法。The invention relates to a data receiving method, and more particularly to a data receiving method capable of automatically setting a clock signal frequency to compensate for a signal delay.
背景技术Background Art
现代技术中,闪存是常见的一种元件。然而,数据请求指令以及数据在传送时,可能会因为各种因素而被延迟,使得电路设计受限且难以设定较佳的取样时钟信号。Flash memory is a common component in modern technology. However, data request instructions and data transmission may be delayed due to various factors, which limits circuit design and makes it difficult to set a better sampling clock signal.
因此,需要一种新颖的数据接收方法来改善此问题。Therefore, a novel data receiving method is needed to improve this problem.
发明内容Summary of the invention
本发明一目的为提供一种可补偿信号延迟的数据接收方法。An object of the present invention is to provide a data receiving method capable of compensating for signal delay.
本发明一实施例披露一种数据接收方法,使用在一第一电子装置以及一第二电子装置上,包含:(a)以一计数器产生多个计数值;(b)以该第一电子装置接收储存在该第二电子装置中的对准数据;(c)以该第一电子装置中的一取样器对该对准数据取样来产生多个取样值;(d)根据该些取样值以及该些计数值决定该取样器的一取样点和一取样周期;以及(e)使该取样器以该取样点以及该取样周期来取样该第二电子装置所传送的其他数据。One embodiment of the present invention discloses a data receiving method for use in a first electronic device and a second electronic device, comprising: (a) generating a plurality of count values using a counter; (b) receiving alignment data stored in the second electronic device using the first electronic device; (c) sampling the alignment data using a sampler in the first electronic device to generate a plurality of sampling values; (d) determining a sampling point and a sampling period of the sampler based on the sampling values and the count values; and (e) enabling the sampler to sample other data transmitted by the second electronic device using the sampling point and the sampling period.
根据前述实施例,无论闪存控制器和闪存之间的延迟状况如何,都可以借由设定较佳的取样点和取样周期来补偿信号延迟,因此可以较准确的接收数据。According to the aforementioned embodiment, no matter what the delay condition between the flash memory controller and the flash memory is, the signal delay can be compensated by setting a better sampling point and sampling period, so that data can be received more accurately.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
图1示出了根据本发明一实施例的闪存控制器和闪存的方框图。FIG. 1 shows a block diagram of a flash memory controller and a flash memory according to an embodiment of the present invention.
图2示出了根据本发明一实施例的闪存控制器之详细结构的方框图。FIG. 2 is a block diagram showing a detailed structure of a flash memory controller according to an embodiment of the present invention.
图3以及图4示出了根据本发明不同实施例的闪存控制器的动作示意图。FIG. 3 and FIG. 4 are schematic diagrams showing the operation of a flash memory controller according to different embodiments of the present invention.
图5示出了根据本发明一实施例的数据接收方法的流程图。FIG. 5 shows a flow chart of a data receiving method according to an embodiment of the present invention.
具体实施方式DETAILED DESCRIPTION
以下将以多个实施例来描述本发明的内容,还请留意,以下描述中的“第一”、“第二”以及类似描述仅用来定义不同的元件、参数、数据、信号或步骤,并非用以限定其次序。举例来说,第一装置和第二装置可为具有相同结构但为不同的装置。The present invention will be described below with multiple embodiments. Please note that the "first", "second" and similar descriptions in the following description are only used to define different elements, parameters, data, signals or steps, and are not used to limit their order. For example, the first device and the second device may have the same structure but are different devices.
图1示出了根据本发明一实施例的闪存控制器和闪存的方框图。还请留意,图1所示的元件数量以及配置方式仅用以说明,并非用以限定本发明的范围。在图1的实施例中,当闪存控制器101欲从闪存103接收数据时,闪存控制器101会先发出一数据请求指令给闪存103,然后闪存103会回应数据请求指令传送数据给闪存控制器101。接收到数据后,闪存控制器101会对数据进行取样。然而,数据请求指令的传送以及数据的传送可能有被延迟的问题,因此会造成取样上的困难。FIG. 1 shows a block diagram of a flash memory controller and a flash memory according to an embodiment of the present invention. Please also note that the number of components and the configuration shown in FIG. 1 are for illustration only and are not intended to limit the scope of the present invention. In the embodiment of FIG. 1 , when the flash memory controller 101 wants to receive data from the flash memory 103, the flash memory controller 101 will first issue a data request instruction to the flash memory 103, and then the flash memory 103 will respond to the data request instruction and transmit the data to the flash memory controller 101. After receiving the data, the flash memory controller 101 will sample the data. However, the transmission of the data request instruction and the transmission of the data may be delayed, which may cause difficulties in sampling.
以图1为例,在一实施例中,闪存控制器101位于一IC(Integrated Circuit,集成电路)105中,而IC 105更包含逻辑电路LC_1、LC_2、LC_3、LC_4以及连接垫Pd_1、Pd_2。逻辑电路LC_1、LC_2、LC_3、LC_4分别串接于连接垫Pd_1和闪存控制器101间,以及串接于连接垫Pd_2和闪存101控制器间,因此会造成延迟D_1、D_2、D_3、D_6、D_7、D_8。此外,连接垫Pd_1、Pd_2以及闪存103间也会分别造成延迟D_4、D_5,且闪存105本身也会造成延迟。前述的延迟可能会因为电路的布局、逻辑电路的数量或是闪存本身结构的差异有所不同,如此会使闪存控制器101在取样时,难以选择用来取样的取样时钟信号的频率。即使在IC出厂前对整体延迟量进行了计算而设定了取样时钟信号的频率,此整体延迟量也是固定而不能变动的,如此在往后延迟量因为电路老化或其他因素发生变动或想更动闪存101时,会造成许多不便。因此,本发明在以下实施例中提供了一补偿机制来自动侦测延迟量并相对应设定较适当的取样点和取样周期,也就是设定取样时钟信号的频率。Taking FIG. 1 as an example, in one embodiment, the flash memory controller 101 is located in an IC (Integrated Circuit) 105, and the IC 105 further includes logic circuits LC_1, LC_2, LC_3, LC_4 and connection pads Pd_1 and Pd_2. The logic circuits LC_1, LC_2, LC_3, and LC_4 are connected in series between the connection pad Pd_1 and the flash memory controller 101, and between the connection pad Pd_2 and the flash memory 101 controller, respectively, thus causing delays D_1, D_2, D_3, D_6, D_7, and D_8. In addition, delays D_4 and D_5 are caused between the connection pads Pd_1, Pd_2 and the flash memory 103, respectively, and the flash memory 105 itself also causes delays. The aforementioned delays may vary due to differences in the layout of the circuit, the number of logic circuits, or the structure of the flash memory itself, which may make it difficult for the flash memory controller 101 to select the frequency of the sampling clock signal used for sampling when sampling. Even if the overall delay is calculated and the sampling clock signal frequency is set before the IC leaves the factory, the overall delay is fixed and cannot be changed. This will cause a lot of inconvenience when the delay changes due to circuit aging or other factors or when the flash memory 101 is to be changed. Therefore, the present invention provides a compensation mechanism in the following embodiments to automatically detect the delay and set a more appropriate sampling point and sampling period accordingly, that is, to set the sampling clock signal frequency.
图2示出了根据本发明一实施例的闪存控制器之详细结构的方框图。如图2所示,闪存控制器101包含了一取样器201、一判断器203以及一计数器205。取样器201、判断器203或计数器205可借由在闪存控制器101中写入程式来实施,但也可以是独立的电路。此外,判断器203或计数器205也可设置在闪存控制器101外,而不限定设置在闪存控制器101内。FIG2 is a block diagram showing a detailed structure of a flash memory controller according to an embodiment of the present invention. As shown in FIG2 , the flash memory controller 101 includes a sampler 201, a judger 203, and a counter 205. The sampler 201, the judger 203, or the counter 205 can be implemented by writing a program in the flash memory controller 101, but can also be an independent circuit. In addition, the judger 203 or the counter 205 can also be set outside the flash memory controller 101, and is not limited to being set inside the flash memory controller 101.
在图2的实施例中,闪存103储存有对准数据AD。在一实施例中,对准数据AD为N比特数据,且储存在闪存103的最初始N比特中,N为大于或等于2的正整数。举例来说,若对准数据AD为8比特数据,则会储存在闪存103的第1比特至第8比特中。欲进行取样时钟信号的设定时,会让计数器205持续的产生多个计数值CV_1、CV_2…。闪存控制器101会接收对准数据AD,然后取样器201会取样对准数据取样AD来产生多个取样值SV_1、SV_2…。判断器203会根据取样值SV_1、SV_2…以及计数值CV_1、CV_2…决定取样器201的一取样点和一取样周期,也就是决定取样时钟信号开始取样的取样时间和取样频率。在决定了取样点和取样周期后,使取样器201以判断器203所决定的取样点以及取样周期来取样闪存控制器101接下来所传送的其他数据。然而,对准数据AD不限于储存在闪存103的最初始N比特,其也可以其他方式储存在闪存103中。举例来说,对准数据AD可以周期性的储存在闪存103中,例如12至19比特、24比特至31比特。只要闪存控制器101事先取得对准数据AD储存的位置或可判断其接收到对准数据AD,闪存控制器101便可正常运作。In the embodiment of FIG. 2 , the flash memory 103 stores alignment data AD. In one embodiment, the alignment data AD is N-bit data and is stored in the initial N bits of the flash memory 103, where N is a positive integer greater than or equal to 2. For example, if the alignment data AD is 8-bit data, it will be stored in the 1st bit to the 8th bit of the flash memory 103. When the sampling clock signal is to be set, the counter 205 will continuously generate a plurality of count values CV_1, CV_2…. The flash memory controller 101 will receive the alignment data AD, and then the sampler 201 will sample the alignment data AD to generate a plurality of sampling values SV_1, SV_2…. The determiner 203 will determine a sampling point and a sampling cycle of the sampler 201 according to the sampling values SV_1, SV_2… and the count values CV_1, CV_2…, that is, determine the sampling time and sampling frequency at which the sampling clock signal starts sampling. After the sampling point and the sampling period are determined, the sampler 201 samples the other data subsequently transmitted by the flash memory controller 101 at the sampling point and the sampling period determined by the determiner 203. However, the alignment data AD is not limited to being stored in the initial N bits of the flash memory 103, and it can also be stored in the flash memory 103 in other ways. For example, the alignment data AD can be stored in the flash memory 103 periodically, such as 12 to 19 bits, 24 bits to 31 bits. As long as the flash memory controller 101 obtains the location where the alignment data AD is stored in advance or can determine that it has received the alignment data AD, the flash memory controller 101 can operate normally.
以下将说明如何根据取样值SV_1、SV_2…以及计数值CV_1、CV_2来决定取样点和取样周期。然请留意,以下说明仅为举例,并非用以限定本发明的范围。图3以及图4示出了根据本发明不同实施例的闪存控制器的动作示意图。在图3的实施例中,信号CLK_C为闪存控制器101所使用的时钟信号,而信号CLK_F为闪存控制器101所使用的时钟信号。在图3的实施例中,信号CLK_C的频率为信号CLK_F的五倍,但并非用以限定本发明。信号CLK_C在图3的实施例中作为取样时钟信号。The following will explain how to determine the sampling point and sampling period based on the sampling values SV_1, SV_2... and the counting values CV_1, CV_2. However, please note that the following description is only for example and is not intended to limit the scope of the present invention. Figures 3 and 4 show schematic diagrams of the operation of a flash memory controller according to different embodiments of the present invention. In the embodiment of Figure 3, the signal CLK_C is the clock signal used by the flash memory controller 101, and the signal CLK_F is the clock signal used by the flash memory controller 101. In the embodiment of Figure 3, the frequency of the signal CLK_C is five times that of the signal CLK_F, but it is not intended to limit the present invention. The signal CLK_C is used as a sampling clock signal in the embodiment of Figure 3.
在图3的实施例中,对准数据AD为具不同逻辑值的8比特数据01010101。闪存控制器101发出数据接收指令给闪存103时或发出数据接收指令后,计数器205会开始计数。其中,在计数值为0至31时,由于闪存控制器101尚未收到任何数据,因此取样值为0或是为其他没有意义的值。而在计数器数到27时,闪存控制器101开始收到对准数据AD。在计数值为27到31时,取样器201会取样到对准数据AD的第1个比特0,但因为在图3的例子中未收到任何数据时也是取样到0,因此无法判断是否接收到对准数据AD。计数值为32到36时,取样器201取样到对准数据AD中的第2个比特1,计数值为37到41时,取样器201取样到对准数据AD中的第3个比特0。根据这样的分布,可以可辨识的第一组连续相同取样值的中间时间点为取样点,然后根据这取样点以及下一组连续相同取样值的中间时间点计算出取样周期。以图3的实施例为例,计数值为32到36时,得到可辨识的第一组连续取样值1,其中间时间点为计数值为34时。因此可以计数值为34时的时间点作为取样点。而计数值为37到41时,得到第二组连续取样值0,其中间时间点为39时,因此可以取样点和计数值为39时的时间点计算出取样周期。在图3的例子中,由于计数值34和计数值39间相差5个信号CLK_C的时间周期,因此计算出的取样周期为5个信号CLK_C的时间周期。In the embodiment of FIG. 3 , the alignment data AD is 8-bit data 01010101 with different logic values. When the flash memory controller 101 issues a data receiving instruction to the flash memory 103 or after the data receiving instruction is issued, the counter 205 starts counting. When the count value is 0 to 31, since the flash memory controller 101 has not received any data, the sampled value is 0 or other meaningless values. When the counter counts to 27, the flash memory controller 101 starts to receive the alignment data AD. When the count value is 27 to 31, the sampler 201 samples the first bit 0 of the alignment data AD, but because 0 is also sampled when no data is received in the example of FIG. 3 , it is impossible to determine whether the alignment data AD is received. When the count value is 32 to 36, the sampler 201 samples the second bit 1 in the alignment data AD, and when the count value is 37 to 41, the sampler 201 samples the third bit 0 in the alignment data AD. According to such distribution, the middle time point of the first group of consecutive identical sampled values that can be identified is the sampling point, and then the sampling period is calculated based on this sampling point and the middle time point of the next group of consecutive identical sampled values. Taking the embodiment of FIG. 3 as an example, when the count value is 32 to 36, the first group of consecutive sampled values 1 that can be identified is obtained, and the middle time point is when the count value is 34. Therefore, the time point when the count value is 34 can be used as the sampling point. When the count value is 37 to 41, the second group of consecutive sampled values 0 is obtained, and the middle time point is 39. Therefore, the sampling period can be calculated from the sampling point and the time point when the count value is 39. In the example of FIG. 3, since the count value 34 and the count value 39 differ by 5 time periods of the signal CLK_C, the calculated sampling period is 5 time periods of the signal CLK_C.
图3的实施例中,连续相同取样值的个数为奇数(5个),然而图3所示的例子也可以运用在连续相同取样值的个数为偶数的状况。在图4的例子中,在计数值为0至31时,由于闪存控制器101尚未收到任何数据,因此取样值为0或是为其他没有意义的值。而在计数器数到28时,闪存控制器101开始收到对准数据AD。在计数值为28到31时,取样到对准数据AD的第1个比特0,但因为在图4的例子中未收到任何数据时也是取样到0,因此无法判断是否接收到对准数据AD。计数值为32到35时,取样器201取样到对准数据AD中的第2个比特1,计数值为36到39时,取样器201取样到对准数据AD中的第3个比特0。根据这样的分布,可跟图3一样,以可辨识的第一组连续相同取样值的中间时间点为取样点,然后根据此取样点以及下一组连续相同取样值的中间时间点计算出取样周期。In the embodiment of FIG. 3 , the number of consecutive identical sample values is an odd number (5), but the example shown in FIG. 3 can also be applied to the case where the number of consecutive identical sample values is an even number. In the example of FIG. 4 , when the count value is 0 to 31, since the flash memory controller 101 has not received any data, the sample value is 0 or other meaningless values. When the counter counts to 28, the flash memory controller 101 begins to receive the alignment data AD. When the count value is 28 to 31, the first bit 0 of the alignment data AD is sampled, but because 0 is also sampled when no data is received in the example of FIG. 4 , it is impossible to determine whether the alignment data AD is received. When the count value is 32 to 35, the sampler 201 samples the second bit 1 in the alignment data AD, and when the count value is 36 to 39, the sampler 201 samples the third bit 0 in the alignment data AD. According to such distribution, as in FIG. 3 , the middle time point of the first identifiable group of consecutive identical sampling values is used as the sampling point, and then the sampling period is calculated based on this sampling point and the middle time point of the next group of consecutive identical sampling values.
然而,在图4的实施例中,因为连续取样值的个数为偶数个(4个),因此中间时间点会有两个时间点。在这样的情况下,可取中间时间点的任一个来计算取样点和取样周期。详细来说,以图3的实施例为例,计数值为32到35时,得到第一组连续取样值1,其中间时间点为计数值为33或34时。因此可以计数值为33或34时的时间点作为取样点。而计数值为36到39时,得到第二组连续取样值0,其中间时间点是计数值为37或38时,因此可以取样点和计数值为37或38时的时间点计算出取样周期。在一实施例中,若测得连续取样值的个数为偶数个,闪存控制器101可以调整计数器的速度,使得连续取样值的个数为奇数个时再来决定取样点和取样周期。However, in the embodiment of FIG. 4 , because the number of continuous sampling values is an even number (4), there are two time points in the middle time point. In such a case, any one of the middle time points can be used to calculate the sampling point and the sampling period. Specifically, taking the embodiment of FIG. 3 as an example, when the count value is 32 to 35, the first group of continuous sampling values 1 is obtained, and the middle time point is when the count value is 33 or 34. Therefore, the time point when the count value is 33 or 34 can be used as the sampling point. When the count value is 36 to 39, the second group of continuous sampling values 0 is obtained, and the middle time point is when the count value is 37 or 38, so the sampling point and the time point when the count value is 37 or 38 can be used to calculate the sampling period. In one embodiment, if the number of continuous sampling values measured is an even number, the flash memory controller 101 can adjust the speed of the counter so that the sampling point and the sampling period are determined when the number of continuous sampling values is an odd number.
图3和图4的例子可简示如下:若取样值包含具有一第一逻辑值的连续多个第一取样值(如图3中的计数值为32到36时的取样值1)以及具有一第二逻辑值的连续多个第二取样值(如图3中的计数值为37到41时的取样值0),则会根据至少一中间第一取样值的第一取样时间决定取样点,并根据第一取样时间以及至少一中间第二取样值的第二取样时间的一时间差异决定取样周期。中间第一取样值为第一取样值中,取样时间在中间的第一取样值。中间第二取样值为第二取样值中,取样时间在中间的第二取样值。在图3的例子中,中间第一取样值为计数值为34时的取样值1,中间第二取样值为计数值为39时的取样值0。在图4的例子中,中间第一取样值为计数值为33或34时的取样值1,中间第二取样值为计数值为37或38时的取样值0。The examples of FIG. 3 and FIG. 4 can be briefly illustrated as follows: if the sampled values include a plurality of consecutive first sampled values having a first logic value (such as the sampled value 1 when the count value is 32 to 36 in FIG. 3) and a plurality of consecutive second sampled values having a second logic value (such as the sampled value 0 when the count value is 37 to 41 in FIG. 3), the sampling point is determined according to the first sampling time of at least one intermediate first sampled value, and the sampling period is determined according to a time difference between the first sampling time and the second sampling time of at least one intermediate second sampled value. The intermediate first sampled value is a first sampled value with a sampling time in the middle among the first sampled values. The intermediate second sampled value is a second sampled value with a sampling time in the middle among the second sampled values. In the example of FIG. 3, the intermediate first sampled value is the sampled value 1 when the count value is 34, and the intermediate second sampled value is the sampled value 0 when the count value is 39. In the example of FIG. 4, the intermediate first sampled value is the sampled value 1 when the count value is 33 or 34, and the intermediate second sampled value is the sampled value 0 when the count value is 37 or 38.
前述设定取样时钟信号的动作,可在闪存控制器101从未启动变成启动且未执行闪存103的任何存取动作前自动被闪存控制器101执行。如前所述,闪存控制器101可设置在一IC 105中。在这种情况下,当IC 105从未接电(未接收到电能)变成接电(接收到电能)时,闪存控制器101会从未启动变成启动,并自动执行前述设定取样时钟信号的动作。在另一实施例中,闪存控制器101以及闪存103均位于一电子系统中。此电子系统可以是任何形态的电子装置,例如电脑、手机、或是穿戴装置等。在这种情况下,前述设定取样时钟信号的动作可在电子系统从未开机变成开机后且未执行对闪存103的任何存取动作前自动被执行。然而,前述设定取样时钟信号的动作也可以周期性的或非周期性的自动被执行,以确保数据存取的准确性。或者,也可以在闪存控制器101接收到一测试指令后,才由闪存控制器101自动的执行设定取样时钟信号的动作。The aforementioned action of setting the sampling clock signal can be automatically performed by the flash memory controller 101 before the flash memory controller 101 changes from being unpowered to being powered on and before any access action to the flash memory 103 is performed. As mentioned above, the flash memory controller 101 can be set in an IC 105. In this case, when the IC 105 changes from being unpowered (not receiving power) to being powered on (receiving power), the flash memory controller 101 changes from being unpowered to being powered on and automatically performs the aforementioned action of setting the sampling clock signal. In another embodiment, the flash memory controller 101 and the flash memory 103 are both located in an electronic system. The electronic system can be any form of electronic device, such as a computer, a mobile phone, or a wearable device. In this case, the aforementioned action of setting the sampling clock signal can be automatically performed after the electronic system changes from being unpowered to being powered on and before any access action to the flash memory 103 is performed. However, the aforementioned action of setting the sampling clock signal can also be automatically performed periodically or non-periodically to ensure the accuracy of data access. Alternatively, the flash memory controller 101 can also automatically perform the action of setting the sampling clock signal after the flash memory controller 101 receives a test instruction.
前述实施例虽然以闪存控制器101以及闪存103,但也可以其他电子装置来取代。因此,根据前述实施例可得到图5所述的数据接收方法,其包含以下步骤。Although the above embodiment uses the flash memory controller 101 and the flash memory 103, they can also be replaced by other electronic devices. Therefore, according to the above embodiment, the data receiving method shown in FIG. 5 can be obtained, which includes the following steps.
图5包含以下步骤:Figure 5 contains the following steps:
步骤501Step 501
以一计数器产生多个计数值(例如图2的计数器205)。A counter is used to generate a plurality of count values (eg, the counter 205 in FIG. 2 ).
步骤503Step 503
以一第一电子装置(例如闪存控制器101)接收储存在一第二电子装置(例如闪存103)中的对准数据(例如对准数据AD)。第一电子装置可视为一数据接收装置,而第二电子装置可视为一目标装置。A first electronic device (eg, flash memory controller 101) receives alignment data (eg, alignment data AD) stored in a second electronic device (eg, flash memory 103). The first electronic device can be regarded as a data receiving device, and the second electronic device can be regarded as a target device.
步骤505Step 505
以第一电子装置中的一取样器(例如取样器201)取样对准数据来产生多个取样值。A sampler (eg, sampler 201 ) in the first electronic device samples the alignment data to generate a plurality of sample values.
步骤507Step 507
根据取样值以及计数值决定取样器的一取样点和一取样周期。A sampling point and a sampling period of the sampler are determined according to the sampling value and the counting value.
步骤509Step 509
使取样器以取样点以及取样周期来取样第二电子装置所传送的其他数据。The sampler is enabled to sample other data transmitted by the second electronic device using a sampling point and a sampling period.
根据前述实施例,无论闪存控制器和闪存之间的延迟状况如何,都可以借由设定较佳的取样点和取样周期来补偿信号延迟,因此可以较准确的接收数据。According to the aforementioned embodiment, no matter what the delay condition between the flash memory controller and the flash memory is, the signal delay can be compensated by setting a better sampling point and sampling period, so that data can be received more accurately.
以上所述仅为本发明之较佳实施例,凡依本发明申请专利范围所做之均等变化与修饰,皆应属本发明之涵盖范围。The above description is only a preferred embodiment of the present invention. All equivalent changes and modifications made according to the scope of the patent application of the present invention should fall within the scope of the present invention.
【符号说明】【Explanation of symbols】
101 闪存控制器101 Flash Memory Controller
103 闪存103 Flash memory
105IC105IC
201 取样器201 Sampler
203 判断器203 Judgement
205 计数器205 Counter
AD 对准数据AD Alignment Data
CLK_C、CLK_F信号CLK_C, CLK_F signals
CV_1、CV_2计数值CV_1, CV_2 count values
D_1、D_2、D_3、D_4、D_5、D_6、D_7、D_8延迟D_1, D_2, D_3, D_4, D_5, D_6, D_7, D_8 delay
LC_1、LC_2、LC_3、LC_4逻辑电路LC_1, LC_2, LC_3, LC_4 logic circuit
Pd_1、Pd_2连接垫Pd_1, Pd_2 connection pads
SV_1、SV_2取样值。SV_1, SV_2 sampling values.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310436252.8A CN118819385A (en) | 2023-04-21 | 2023-04-21 | Data receiving method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310436252.8A CN118819385A (en) | 2023-04-21 | 2023-04-21 | Data receiving method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118819385A true CN118819385A (en) | 2024-10-22 |
Family
ID=93065828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310436252.8A Pending CN118819385A (en) | 2023-04-21 | 2023-04-21 | Data receiving method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118819385A (en) |
-
2023
- 2023-04-21 CN CN202310436252.8A patent/CN118819385A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6894933B2 (en) | Buffer amplifier architecture for semiconductor memory circuits | |
US7816960B2 (en) | Circuit device and method of measuring clock jitter | |
US7246274B2 (en) | Method and apparatus for estimating random jitter (RJ) and deterministic jitter (DJ) from bit error rate (BER) | |
CN108197045B (en) | Memory controller and memory system for receiving differential data strobe signal | |
KR101921971B1 (en) | Duty cycle based timing margining for i/o ac timing | |
US7853837B2 (en) | Memory controller and method for operating a memory controller having an integrated bit error rate circuit | |
US8589717B1 (en) | Serial peripheral interface | |
US20010009385A1 (en) | Delay device having a delay lock loop and method of calibration thereof | |
JP2001352350A (en) | Measurement system and method by statistic eye-diagram of continuous bit stream | |
JP2760284B2 (en) | Semiconductor integrated circuit device | |
EP3283971B1 (en) | Control circuits for generating output enable signals, and related systems and methods | |
CN111863048A (en) | Determination circuit, method, memory and electronic device for memory reference voltage | |
US8395946B2 (en) | Data access apparatus and associated method for accessing data using internally generated clocks | |
TWI857557B (en) | Data receiving method | |
CN118819385A (en) | Data receiving method | |
CN117407335A (en) | QSPI controller, chip and data reading method | |
CN117110707A (en) | SOC integrated chip, frequency measurement circuit and frequency measurement method | |
US5548285A (en) | Circuit and method of indicating data hold-time | |
JP2010198328A (en) | System and control method of synchronous data transfer | |
WO2020043012A1 (en) | Signal skew measurement method, apparatus, medium, and electronic device | |
TW202303410A (en) | Automatic threshold adjustment for usb power delivery to work with cables out of specification | |
US7280419B1 (en) | Latency counter having frequency detector and latency counting method thereof | |
US20070028010A1 (en) | Peripheral device utilization monitoring | |
CN100510766C (en) | Test circuit for input-to output speed measurement | |
WO2001096893A1 (en) | Apparatus for controlling semiconductor chip characteristics |
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 |