首页 / 专利库 / 信号处理 / 信号 / 一种统计nand flash busy时间的装置和方法

一种统计nand flash busy时间的装置和方法

阅读:216发布:2023-03-22

专利汇可以提供一种统计nand flash busy时间的装置和方法专利检索,专利查询,专利分析的服务。并且本 发明 公开一种统计nand flash busy时间的装置和方法,所述装置包括命令检测模 块 ,用于检测nand flash的操作命令,当有新的命令传输至命令检测模块时,输出flush 信号 ,用于清空FIFO中的内容;同步处理模块,对flash引脚输出的R_Bn信号使用工作时钟进行 采样 和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;计时模块,用于统计syn_r_bn信号为低电平时的时钟上升沿个数,并在syn_r_bn为高电平时,将统计结果写入FIFO;FIFO,用于存储计时模块的统计结果。本发明提高统计时间的精确度,并且计时结果随命令不断刷新,无需 软件 干预。,下面是一种统计nand flash busy时间的装置和方法专利的具体信息内容。

1.一种统计nand flash busy时间的装置,其特征在于:包括
命令检测模,用于检测nand flash的操作命令,当有新的命令传输至命令检测模块时,输出flush信号,用于清空FIFO中的内容;
同步处理模块,对flash引脚输出的R_Bn信号使用工作时钟进行采样和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;
计时模块,用于统计syn_r_bn信号为低电平时的时钟上升沿个数,并在syn_r_bn为高电平时,将统计结果写入FIFO;
FIFO,用于存储计时模块的统计结果,同时输出FIFO内部状态。
2.根据权利要求1所述的统计nand flash busy时间的装置,其特征在于:命令检测模块根据FIFO内部状态决定flush信号是否有效,若FIFO内部不为空,则命令检测模块输出有效的flush信号,清空FIFO内容,否则无效flush信号,不对FIFO操作。
3.根据权利要求1所述的统计nand flash busy时间的装置,其特征在于:当syn_r_bn为低电平时,使能计时模块,开始计时,当时钟上升沿个数不为0时,高有效timer_cnt_vld信号,当syn_r_bn变为高电平且timer_cnt_vld为高电平时,高有效push信号,将有效的计时结果即时钟上升沿个数写入FIFO,下一时刻,计时模块被高电平syb_r_bn清零,计时模块统计的时钟上升沿个数变为0,同时timer_cnt_vld变为低电平。
4.根据权利要求3所述的统计nand flash busy时间的装置,其特征在于: syn_r_bn信号一路直接连接至计时模块的清零端,另一路经过一个非连接至计时模块的使能端。
5.根据权利要求3所述的统计nand flash busy时间的装置,其特征在于:FIFO前连接有一个与门,与门的输入端分别连接syn_r_bn信号和timer_cnt_vld信号,与门的输出端输出push信号至FIFO。
6.一种统计nand flash busy时间的方法,其特征在于:包括以下步骤:
S01)、同步处理模块对外部输入的异步R/B_n信号使用工作时钟进行采样和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;
S02)、命令检测模块检测到有效的输入信号New_cmd,该信号表明一次新的命令需要向flash发送,同时该模块检测到FIFO模块输出的状态表明fifo内部不为空,则命令检测模输出有效的flush信号,清空FIFO内容;否则无效flush信号,不对FIFO操作;
S03)、计数模块对syn_r_bn信号低电平时间进行统计,输出有效的时钟上升沿个数,nand flash busy时间为时钟上升沿个数乘以时钟周期,当syn_r_bn为低电平时,使能计时模块,开始计时,当时钟上升沿个数不为0时,高有效timer_cnt_vld信号;当syn_r_bn变为高电平且timer_cnt_vld为高电平时,高有效push信号,将有效的计时结果即时钟上升沿个数写入FIFO;下一时刻,计时模块被高电平syn_r_bn清零,即计时模块统计的时钟上升沿个数变为0,同时timer_cnt_vld变为低电平;
S04)、FIFO存储计时值,外部CPU根据查看需求读取FIFO内存储的计时值,外部CPU若不读取计时值,则在下次新命令执行时,冲掉FIFO中的内容。
7.根据权利要求1所述的统计nand flash busy时间的方法,其特征在于:一次命令执行过程中,syn_r_bn信号有多个低电平,则计时模块被使能多次,记录多次busy时间,每次记录时钟上升沿个数都从0开始统计。

说明书全文

一种统计nand flash busy时间的装置和方法

技术领域

[0001] 本发明涉及一种统计nand flash busy时间的装置和方法,属于nand flash特性测试技术领域。

背景技术

[0002] NAND flash在工作时,会有两种状态,ready 和busy(准备和忙碌)。在flash ready状态下,可以向flash发送命令,flash在接收到相应命令后会进入busy状态。busy时间的长短不仅能反映出当前操作是否正确执行,还能反映出flash的老化特性等。在NAND flash特性测试中,统计命令之后的busy时间具有重要意义。
[0003] 现在统计nand flash busy时间的方法是:使用软件通过不断向flash发送状态查询命令而获得。该方法占用软件大量时间且获得到的busy时间误差大,微秒级别误差。

发明内容

[0004] 本发明要解决的技术问题是提供一种统计nand flash busy时间的装置和方法,提高统计时间的精确度,并且计时结果随命令不断刷新,无需软件干预。
[0005] 为了解决所述技术问题,本发明采用的技术方案是:一种统计nand flash busy时间的装置,包括命令检测模,用于检测nand flash的操作命令,当有新的命令传输至命令检测模块时,输出flush信号,用于清空FIFO中的内容;
同步处理模块,对flash引脚输出的R_Bn信号使用工作时钟进行采样和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;
计时模块,用于统计syn_r_bn信号为低电平时的时钟上升沿个数,并在syn_r_bn为高电平时,将统计结果写入FIFO;
FIFO,用于存储计时模块的统计结果,同时输出FIFO内部状态。
[0006] 进一步的,命令检测模块根据FIFO内部状态决定flush信号是否有效,若FIFO内部不为空,则命令检测模块输出有效的flush信号,清空FIFO内容,否则无效flush信号,不对FIFO操作。
[0007] 进一步的,当syn_r_bn为低电平时,使能计时模块,开始计时,当时钟上升沿个数不为0时,高有效timer_cnt_vld信号,当syn_r_bn变为高电平且timer_cnt_vld为高电平时,高有效push信号,将有效的计时结果即时钟上升沿个数写入FIFO,下一时刻,计时模块被高电平syb_r_bn清零,计时模块统计的时钟上升沿个数变为0,同时timer_cnt_vld变为低电平。
[0008] 进一步的,syn_r_bn信号一路直接连接至计时模块的清零端,另一路经过一个非连接至计时模块的使能端。
[0009] 进一步的,FIFO前连接有一个与门,与门的输入端分别连接syn_r_bn信号和timer_cnt_vld信号,与门的输出端输出push信号至FIFO。
[0010] 本发明还公开了一种统计nand flash busy时间的方法,包括以下步骤:S01)、同步处理模块对外部输入的异步R/B_n信号使用工作时钟进行采样和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;
S02)、命令检测模块检测到有效的输入信号New_cmd,该信号表明一次新的命令需要向flash发送,同时该模块检测到FIFO模块输出的状态表明fifo内部不为空,则命令检测模输出有效的flush信号,清空FIFO内容;否则无效flush信号,不对FIFO操作;
S03)、计数模块对syn_r_bn信号低电平时间进行统计,输出有效的时钟上升沿个数,nand flash busy时间为时钟上升沿个数乘以时钟周期,当syn_r_bn为低电平时,使能计时模块,开始计时,当时钟上升沿个数不为0时,高有效timer_cnt_vld信号;当syn_r_bn变为高电平且timer_cnt_vld为高电平时,高有效push信号,将有效的计时结果即时钟上升沿个数写入FIFO;下一时刻,计时模块被高电平syn_r_bn清零,即计时模块统计的时钟上升沿个数变为0,同时timer_cnt_vld变为低电平;
S04)、FIFO存储计时值,外部CPU根据查看需求读取FIFO内存储的计时值,外部CPU若不读取计时值,则在下次新命令执行时,冲掉FIFO中的内容。
[0011] 进一步的,一次命令执行过程中,syn_r_bn信号有多个低电平,则计时模块被使能多次,记录多次busy时间,每次记录时钟上升沿个数都从0开始统计。
[0012] 本发明的有益效果:本发明通过计时模块自动获取记录NAND flash busy时间,不增加软件开销且误差在一个采样时钟周期内,纳秒级别,非常精准。且本装置在每条新命令之前会对上次结果进行判断,如果上次结果有残留会清空结果,无需软件干预,计时结果会随命令不断刷新,保证每次记录的值均为当前命令所产生的busy时间值。同一条命令执行过程中,计时模块被使能多次,记录多次busy时间,每次记录时钟上升沿个数都从0开始统计,实时记录nand flash命令的busy时间。附图说明
[0013] 图1为R_Bn信号在一条命令执行过程中的波形图;图2为对R_Bn信号进行同步处理的示意图;
图3为实施例所述装置的架构图;
图中:clock为工作时钟,timer为计时模块,Timer_cnt为时钟上升沿个数。

具体实施方式

[0014] 下面结合附图和具体实施例对本发明作进一步的说明。
[0015] 实施例1NAND flash的ready/busy状态可向flash发送命令查看或根据flash输出的引脚R_Bn查看。
[0016] 本实施例所述装置通过采样R_Bn引脚电平来判断flash当前状态。如果电平值为1,则表明flash在ready状态,否则flash在busy状态。flash在执行一条命令的过程中,可能会在两种状态下切换多次,因此一条命令可能对应多个busy时间。需要将中间每次busy时间都存储下来。
[0017] 图1为一条nand flash 命令执行过程中R_Bn信号的波形图,一条NAND 命令对应有多段busy时间,需要单独统计每一段时间长度。
[0018] 外部R_Bn信号与模块工作时钟为异步关系,如果不进行同步处理,则会导致亚稳态出现。亚稳态即时序电路在时钟上升沿时进行采样,如果此时被采样信号出现跳变,则采样结果不可预知,可能为0或1,如图2R_Bn_d1信号所示。如果该信号R_Bn_d1继续向下级多路传播,则会导致电路出现未知错误。处理方式为对R_Bn_d1信号再进行一次采样,得到syn_r_bn信号,syn_r_bn信号与工作时钟clock同步,避过R_Bn_d1的亚稳态。
[0019] 如图3所示,本实施例所述装置包括:命令检测模块,用于检测nand flash的操作命令,当有新的命令传输至命令检测模块时,输出flush信号,用于清空FIFO中的内容;
同步处理模块,对flash引脚输出的R_Bn信号使用工作时钟进行采样和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;
计时模块,用于统计syn_r_bn信号为低电平时的时钟上升沿个数,并在syn_r_bn为高电平时,将统计结果写入FIFO;
FIFO,用于存储计时模块的统计结果,同时输出FIFO内部状态(空或满)。
[0020] 本实施例中,命令检测模块根据FIFO内部状态决定flush信号是否有效,若FIFO内部不为空,则命令检测模块输出有效的flush信号,清空FIFO内容,否则无效flush信号,不对FIFO操作。
[0021] 当syn_r_bn为低电平时,使能计时模块,开始计时,当时钟上升沿个数不为0时,高有效timer_cnt_vld信号,当syn_r_bn变为高电平且timer_cnt_vld为高电平时,高有效push信号,将有效的计时结果即时钟上升沿个数写入FIFO,下一时刻,计时模块被高电平syb_r_bn清零,计时模块统计的时钟上升沿个数变为0,同时timer_cnt_vld变为低电平。
[0022] 计时模块的使能与清零通过syn_r_bn信号实现,具体的,syn_r_bn信号一路直接连接至计时模块的清零端,另一路经过一个非门连接至计时模块的使能端。
[0023] Push信号的有效性由syn_r_bn信号和timer_cnt_vld信号共同决定,具体的,FIFO前连接有一个与门,与门的输入端分别连接syn_r_bn信号和timer_cnt_vld信号,与门的输出端输出push信号至FIFO。
[0024] 本实施例所述装置能够自动获取记录NAND flash busy时间不增加软件开销且误差在一个采样时钟周期内,纳秒级别,非常精准。且本装置在每条新命令之前会对上次结果进行判断,如果上次结果有残留会清空结果,无需软件干预,计时结果会随命令不断刷新。
[0025] 实施例2本实施例公开一种统计nand flash busy时间的方法,本方法包括以下步骤:
S01)、同步处理模块对外部输入的异步R/B_n信号使用工作时钟进行采样和延迟,输出经过同步处理的syn_r_bn信号,该信号与工作时钟同步;
S02)、命令检测模块检测到有效的输入信号New_cmd,该信号表明一次新的命令需要向flash发送,同时该模块检测到FIFO模块输出的状态表明fifo内部不为空,则命令检测模输出有效的flush信号,清空FIFO内容;否则无效flush信号,不对FIFO操作;
S03)、计数模块对syn_r_bn信号低电平时间进行统计,输出有效的时钟上升沿个数,nand flash busy时间为时钟上升沿个数乘以时钟周期,当syn_r_bn为低电平时,使能计时模块,开始计时,当时钟上升沿个数不为0时,高有效timer_cnt_vld信号;当syn_r_bn变为高电平且timer_cnt_vld为高电平时,高有效push信号,将有效的计时结果即时钟上升沿个数写入FIFO;下一时刻,计时模块被高电平syn_r_bn清零,即计时模块统计的时钟上升沿个数变为0,同时timer_cnt_vld变为低电平;这样保证每次计时值在syn_r_bn为高电平时写入FIFO一次,syn_r_bn为低电平时又重新从0开始计时。
[0026] S04)、FIFO存储计时值,外部CPU根据查看需求读取FIFO内存储的计时值,外部CPU若不读取计时值,则在下次新命令执行时,冲掉FIFO中的内容。
[0027] 外部读取至FIFO为空时,表明当前记录的Timer_cnt均被有效读取;如果不需要查看,则不读取FIFO,FIFO状态非空,则在下次新命令执行时,FIFO内容被冲掉,不会被累积。
[0028] 本实施例中,一次命令执行过程中,syn_r_bn信号有多个低电平,则计时模块被使能多次,记录多次busy时间,每次记录时钟上升沿个数都从0开始统计。
[0029] 以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改进和替换,属于本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈