CN114528239A - 一种NAND Flash读DQS采样方法 - Google Patents

一种NAND Flash读DQS采样方法 Download PDF

Info

Publication number
CN114528239A
CN114528239A CN202210034310.XA CN202210034310A CN114528239A CN 114528239 A CN114528239 A CN 114528239A CN 202210034310 A CN202210034310 A CN 202210034310A CN 114528239 A CN114528239 A CN 114528239A
Authority
CN
China
Prior art keywords
dqs
phase shift
clk
phy
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.)
Pending
Application number
CN202210034310.XA
Other languages
English (en)
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.)
Shandong Sinochip Semiconductors Co Ltd
Original Assignee
Shandong Sinochip Semiconductors 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 Shandong Sinochip Semiconductors Co Ltd filed Critical Shandong Sinochip Semiconductors Co Ltd
Priority to CN202210034310.XA priority Critical patent/CN114528239A/zh
Publication of CN114528239A publication Critical patent/CN114528239A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明公开一种NAND Flash读DQS采样方法,本方法将DQS看作数据信号,使用与其频率相同的NAND Flash PHY时钟clk_phy实现读DQS的采样,节省了时钟资源,其中,clk_phy需要经过时钟管理单元MMCM进行相移,以达到最佳采样位置。本方法并介绍了读DQS相移控制逻辑及训练方法,该方法灵活快捷准确,并可随着NAND Flash型号及使用工况的不同选择最佳的读DQS采样位置,避免亚稳态的发生。

Description

一种NAND Flash读DQS采样方法
技术领域
本发明涉及DDR内存数据读写技术领域,具体是一种NAND FLASH 读DQS采样方法。
背景技术
目前,NAND Flash接口协议有2种:ONFI和Toggle协议。为提升数据传输速率,两者均使用DDR方式,即在DQS的上升沿和下降沿进行数据传输。而进行NAND Flash读操作时,DQS由NAND Flash返回,与NAND Flash PHY时钟为异步关系,即相位关系不确定,因此实现读DQS的正确采样成为一个问题。根据奈奎斯特采样定律,采样频率必须大于被采样信号最高频率的两倍,因此,若要实现读DQS的正确采样并将其完全恢复出来,一般来说,NANDFlash PHY时钟频率需大于DQS频率的两倍。但是,在FPGA中,时钟资源有限,且相对于ASIC,FPGA原型验证时钟频率较低。
发明内容
本发明要解决的技术问题是一种NAND Flash读DQS采样方法,将DQS看作数据信号,使用与其频率相同的NAND Flash PHY时钟clk_phy即可实现读DQS的采样,节省时钟资源。
为了解决所述技术问题,本发明采用的技术方案是:一种NAND Flash读DQS采样方法,本方法将DQS看作数据信号,使用与其频率相同的NAND Flash PHY时钟clk_phy实现读DQS的采样,其中,clk_phy需要经过时钟管理单元MMCM进行相移,以达到最佳采样位置。
进一步的,clk_phy进行相移的过程为:对clk_phy进行训练,在训练过程中,相移值shift_val从0一直增大到最大值,同时进行读操作,记录下每个shift_val值对应的dqs_underrun的值,dqs_underrun的值标志着读DQS在读过程中没有被clk_phy正确采样,这样会形成一个数据眼图,其中1表示眼图闭合,表示使用当前相移值,clk_phy上升沿无法采样到正确的读DQS,0表示眼图打开,表示使用当前相移值,clk_phy上升沿可以采样到正确的读DQS,将dqs_underrun为0时的shift_val中间值作为最终的clk_phy相移值,产生最终的读时钟clk_rd,即可准确的用clk_rd采样到读DQS。
进一步的,通过相移状态控制机进行clk_phy训练,相移状态控制机共有6种状态:空闲状态、复位状态、计算状态、请求相移状态、等待相移状态和响应状态,相移状态控制机默认为空闲状态,当接收到相移调节信号为1时,进入复位状态,若此时复位信号有效,则保持在复位状态,若无效则进入相移计算状态,相移计算状态的转移条件受两个信号控制:相移锁定信号和相移计数值,相移锁定信号为1表示计算状态能稳定输出,相移控制状态机将接收到的相移初始值shift_val赋值给相移计数值,在相移请求状态时对输入时钟clk_phy进行相移,相移值shift_val从0一直增大到最大值,等待相移状态等待相移完成,相移完成后进入响应状态,最后进入空闲状态。
进一步的,本方法的实施步骤为:
S01)、读DQS进入IDDR,使用clk_rd进行采样,输出q0和q1,其中q0为在clk_phy上升沿采样的读DQS电平,标记为dqs_valid,q1为在clk_phy下降沿采样到的读DQS电平,本方法中仅使用到q0;
S02)、定义dfi_dqs_underrun,它标志着读DQS在读过程中没有被clk_rd正确采样,判断条件为dqs_valid为0且PHY接收到的DFI接口读数据使能信号dfi_rddata_en为1;
S03)、clk_phy经过时钟管理单元MMCM后产生读时钟clk_rd,并对clk_rd进行训练,使其产生合适的相移;
S04)、将DQS看作数据信号,使用与其频率相同的读时钟clk_rd实现读DQS的采样。
进一步的,本方法用于FPGA原型验证领域,将DQS看作数据信号,即在其进入FPGA后,使用FPGA接口上的输入DDR采样单元IDDR,转换为电平信号,与读数据一同进入FIFO,使用与其频率相同的NAND Flash PHY时钟clk_phy即可实现读DQS的采样。
本发明的有益效果:本发明将读DQS看作数据信号,使用同频的clk_phy即可将读DQS进行正确采样,节省了时钟资源。
本发明介绍了在FPGA原型验证领域的NAND FLash读DQS采样方法,并介绍了读DQS相移控制逻辑及训练方法,该方法灵活快捷准确,并可随着NAND Flash型号及使用工况的不同选择最佳的读DQS采样位置,避免亚稳态的发生。
附图说明
图1为本方法的系统架构图;
图2为相移控制状态机的示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的说明。
实施例1
本实施例公开一种NAND Flash读DQS采样方法,本方法将DQS看作数据信号,使用与其频率相同的NAND Flash PHY时钟clk_phy实现读DQS的采样,其中,clk_phy需要经过时钟管理单元MMCM进行相移,以达到最佳采样位置。
clk_phy进行相移的过程为:对clk_phy进行训练,在训练过程中,相移值shift_val从0一直增大到最大值,同时进行读操作,记录下每个shift_val值对应的dqs_underrun的值,dqs_underrun的值标志着读DQS在读过程中没有被clk_phy正确采样,这样会形成一个数据眼图,其中1表示眼图闭合,表示使用当前相移值,clk_phy上升沿无法采样到正确的读DQS,0表示眼图打开,表示使用当前相移值,clk_phy上升沿可以采样到正确的读DQS,将dqs_underrun为0时的shift_val中间值作为最终的clk_phy相移值,产生最终的读时钟clk_rd,即可准确的用clk_rd采样到读DQS。
本实施例中,通过相移状态控制机进行clk_phy训练,如图2所示,相移状态控制机共有6种状态:空闲状态、复位状态、计算状态、请求相移状态、等待相移状态和响应状态,相移状态控制机默认为空闲状态,当接收到相移调节信号为1时,进入复位状态,若此时复位信号有效,则保持在复位状态,若无效则进入相移计算状态,相移计算状态的转移条件受两个信号控制:相移锁定信号和相移计数值,相移锁定信号为1表示计算状态能稳定输出,相移控制状态机将接收到的相移初始值shift_val赋值给相移计数值,在相移请求状态时对输入时钟clk_phy进行相移,相移值shift_val从0一直增大到最大值,等待相移状态等待相移完成,相移完成后进入响应状态,最后进入空闲状态。
本方法的实施步骤为:
S01)、读DQS进入IDDR,使用clk_rd进行采样,输出q0和q1,其中q0为在clk_phy上升沿采样的读DQS电平,标记为dqs_valid,q1为在clk_phy下降沿采样到的读DQS电平,本方法中仅使用到q0;
S02)、定义dfi_dqs_underrun,它标志着读DQS在读过程中没有被clk_rd正确采样,判断条件为dqs_valid为0且PHY接收到的DFI接口读数据使能信号dfi_rddata_en为1;
S03)、clk_phy经过时钟管理单元MMCM后产生读时钟clk_rd,并对clk_rd进行训练,使其产生合适的相移;
S04)、将DQS看作数据信号,使用与其频率相同的读时钟clk_rd实现读DQS的采样。
实施例2
本实施例涉及一种NAND Flash读DQS采样方法,用于FPGA原型验证领域,如图1所示,在进行NAND Flash读操作时,NAND Flash返回DQS和DQ至NAND Flash PHY,其中DQ在DQS跳变沿进行变化。由于读DQS和NAND Flash PHY 时钟clk_phy时钟频率一致,但为异步时钟关系,即读DQS和clk_phy相位关系不固定,因此用clk_phy采样读DQS容易产生亚稳态现象,因此需要对clk_phy时钟域进行训练,经过MMCM产生合适的相移并固定,生成时钟clk_rd,用clk_rd实现对读DQS的正确采样。最终转化为标准的DDR PHY Interface(DFI)接口信号。
对clk_phy时钟域进行训练与实施例1相同,此处不再累述。
以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改机和替换,属于本发明的保护范围。

Claims (5)

1.一种NAND Flash读DQS采样方法,其特征在于:本方法将DQS看作数据信号,使用与其频率相同的NAND Flash PHY时钟clk_phy实现读DQS的采样,其中,clk_phy需要经过时钟管理单元MMCM进行相移,以达到最佳采样位置。
2.根据权利要求1所述的NAND Flash读DQS采样方法,其特征在于:clk_phy进行相移的过程为:对clk_phy进行训练,在训练过程中,相移值shift_val从0一直增大到最大值,同时进行读操作,记录下每个shift_val值对应的dqs_underrun的值,dqs_underrun的值标志着读DQS在读过程中没有被clk_phy正确采样,这样会形成一个数据眼图,其中1表示眼图闭合,表示使用当前相移值,clk_phy上升沿无法采样到正确的读DQS,0表示眼图打开,表示使用当前相移值,clk_phy上升沿可以采样到正确的读DQS,将dqs_underrun为0时的shift_val中间值作为最终的clk_phy相移值,产生最终的读时钟clk_rd,即可准确的用clk_rd采样到读DQS。
3.根据权利要求2所述的NAND Flash读DQS采样方法,其特征在于:通过相移状态控制机进行clk_phy训练,相移状态控制机共有6种状态:空闲状态、复位状态、计算状态、请求相移状态、等待相移状态和响应状态,相移状态控制机默认为空闲状态,当接收到相移调节信号为1时,进入复位状态,若此时复位信号有效,则保持在复位状态,若无效则进入相移计算状态,相移计算状态的转移条件受两个信号控制:相移锁定信号和相移计数值,相移锁定信号为1表示计算状态能稳定输出,相移控制状态机将接收到的相移初始值shift_val赋值给相移计数值,在相移请求状态时对输入时钟clk_phy进行相移,相移值shift_val从0一直增大到最大值,等待相依状态等待相移完成,相移完成后进入响应状态,最后进入空闲状态。
4.根据权利要求1所述的NAND Flash读DQS采样方法,其特征在于:本方法的实施步骤为:
S01)、读DQS进入IDDR,使用clk_rd进行采样,输出q0和q1,其中q0为在clk_phy上升沿采样的读DQS电平,标记为dqs_valid,q1为在clk_phy下降沿采样到的读DQS电平,本方法中仅使用到q0;
S02)、定义dfi_dqs_underrun,它标志着读DQS在读过程中没有被clk_rd正确采样,判断条件为dqs_valid为0且PHY接收到的DFI接口读数据使能信号dfi_rddata_en为1;
S03)、clk_phy经过时钟管理单元MMCM后产生读时钟clk_rd,并对clk_rd进行训练,使其产生合适的相移;
S04)、将DQS看作数据信号,使用与其频率相同的读时钟clk_rd实现读DQS的采样。
5.根据权利要求1所述的NAND Flash读DQS采样方法,其特征在于:本方法用于FPGA原型验证领域,将DQS看作数据信号,即在其进入FPGA后,使用FPGA接口上的输入DDR采样单元IDDR,转换为电平信号,与读数据一同进入FIFO,使用与其频率相同的NAND Flash PHY时钟clk_phy即可实现读DQS的采样。
CN202210034310.XA 2022-01-13 2022-01-13 一种NAND Flash读DQS采样方法 Pending CN114528239A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210034310.XA CN114528239A (zh) 2022-01-13 2022-01-13 一种NAND Flash读DQS采样方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210034310.XA CN114528239A (zh) 2022-01-13 2022-01-13 一种NAND Flash读DQS采样方法

Publications (1)

Publication Number Publication Date
CN114528239A true CN114528239A (zh) 2022-05-24

Family

ID=81621599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210034310.XA Pending CN114528239A (zh) 2022-01-13 2022-01-13 一种NAND Flash读DQS采样方法

Country Status (1)

Country Link
CN (1) CN114528239A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116580743A (zh) * 2023-04-26 2023-08-11 珠海妙存科技有限公司 一种内存读采样电路及其延时调节方法及读采样装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116580743A (zh) * 2023-04-26 2023-08-11 珠海妙存科技有限公司 一种内存读采样电路及其延时调节方法及读采样装置
CN116580743B (zh) * 2023-04-26 2024-01-23 珠海妙存科技有限公司 一种内存读采样电路及其延时调节方法及读采样装置

Similar Documents

Publication Publication Date Title
CN111367495B (zh) 一种异步先入先出的数据缓存控制器
US8441888B2 (en) Write command and write data timing circuit and methods for timing the same
US10572406B2 (en) Memory controller for receiving differential data strobe signals and application processor having the memory controller
CN106104698B (zh) 用于产生具有可编程延迟的动态随机存取存储器(dram)命令的存储器物理层接口逻辑
US20090034346A1 (en) Memory read control circuit
US8154931B2 (en) Circuits, devices, systems, and methods of operation for capturing data signals
US20060259669A1 (en) Latency insensitive FIFO signaling protocol
US9892771B2 (en) Memory controller with dynamic core-transfer latency
CN105159853A (zh) 基于fpga的dfi标准ddr3控制器
CN114528239A (zh) 一种NAND Flash读DQS采样方法
US9106458B2 (en) Method for detecting phase and phase detecting system
US7224638B1 (en) Reliability clock domain crossing
CN111240244B (zh) 一种适用于fpga的可编程脉冲产生装置、电路及方法
CN112712829A (zh) 一种跨时钟域的寄存器读写电路及方法
TWI466114B (zh) 記憶體控制電路以及記憶體控制方法
KR100598010B1 (ko) 클럭 분배기, 클럭 분배기를 포함한 시스템, 클럭 분배방법 및 클럭 분배를 이용한 데이터 읽기 및 쓰기 방법
CN116580743A (zh) 一种内存读采样电路及其延时调节方法及读采样装置
US7877667B2 (en) Semiconductor memory
EP2466414B1 (en) Quad-data rate controller and realization method thereof
US8320204B2 (en) Memory interface control circuit
EP2735927A2 (en) Data processing apparatus and method in PLC system
CN100373325C (zh) 不确定长度的讯息的调整方法与装置
CN107368440B (zh) 一种同位控制猝发总线的控制方法
JP7316459B2 (ja) デュアル基準電圧発生器、等化回路及びメモリ
US6605970B1 (en) Method and apparatus for crossing from an unstable to a stable clock domain in a memory device

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