CN103116551A - 应用于CLB总线的NorFLASH存储接口模块 - Google Patents

应用于CLB总线的NorFLASH存储接口模块 Download PDF

Info

Publication number
CN103116551A
CN103116551A CN2013100393241A CN201310039324A CN103116551A CN 103116551 A CN103116551 A CN 103116551A CN 2013100393241 A CN2013100393241 A CN 2013100393241A CN 201310039324 A CN201310039324 A CN 201310039324A CN 103116551 A CN103116551 A CN 103116551A
Authority
CN
China
Prior art keywords
norflash
write
address
bad
configuration
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.)
Granted
Application number
CN2013100393241A
Other languages
English (en)
Other versions
CN103116551B (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.)
CCore Technology Suzhou Co Ltd
Original Assignee
CCore Technology Suzhou 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 CCore Technology Suzhou Co Ltd filed Critical CCore Technology Suzhou Co Ltd
Priority to CN201310039324.1A priority Critical patent/CN103116551B/zh
Publication of CN103116551A publication Critical patent/CN103116551A/zh
Application granted granted Critical
Publication of CN103116551B publication Critical patent/CN103116551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明提供一种应用于CLB总线的NorFLASH存储接口模块,一NorFlash存储器通过此NorFLASH存储接口模块经由CLB总线与CPU处理器进行通信,所述NorFLASH存储接口模块进一步包括上电检测电路,地址译码电路,坏块替换电路,写控制电路以及配置寄存器组和用来显示上次操作状态的状态寄存器组;所述NorFlash存储器内具有一信息块,此信息块记载NorFlash存储器内坏块单元的地址、数目、替换单元的地址和替换单元替换坏块功能使能信息,所述上电检测电路内具有一用于存储来自所述信息块内坏块信息的坏块寄存器。本发明NorFLASH存储接口模块更大程度的提高NorFLASH的利用率;可以在芯片上直接运行代码,稳定性出色,传输速率高,耗费CPU资源小。

Description

应用于CLB总线的NorFLASH存储接口模块
技术领域
本发明涉及一种应用于SOC芯片的内置NorFLASH存储接口模块,具体涉及一种应用于CLB总线的NorFLASH存储接口模块。
背景技术
NorFLASH可以在芯片上直接运行代码,稳定性出色,传输速率高这很适合用于嵌入式系统作为NorFLASH ROM。目前,NorFLASH已在SOC芯片(System on Chip,称为系统级芯片,也有称片上系统)中广泛应用。恰当的接口设计对于NorFLASH在SOC芯片上的应用至关重要。在进行读写NorFLASH操作时,需要对其上的诸多的控制信号进行相应的控制,如果直接将NorFLASH控制信号用寄存器控制实现,则会耗费很多的CPU资源,操作步骤繁琐,且需根据不同的操作更换其步骤,需要耗费大量的软件资源,且软件维护比较复杂。因此如何提供一种高利用率,且可直接运行代码,稳定性、传输速率高的NorFlash存储接口模块,成为本领域技术人员努力的方向。
发明内容
本发明目的是提供一种应用于CLB总线的NorFLASH存储接口模块,该NorFLASH存储接口模块更大程度的提高NorFLASH的利用率;可以在芯片上直接运行代码,稳定性出色,传输速率高,很适合用于嵌入式系统作为NorFLASH ROM的优势,解决NorFLASH端口控制信号多,而直接用寄存器控制实现会耗费很多的CPU资源且操作步骤繁琐的问题;操作简单,耗费CPU资源小,便于软件开发。
为达到上述目的,本发明采用的技术方案是:一种应用于CLB总线的NorFLASH存储接口模块,一NorFlash存储器通过此NorFLASH存储接口模块经由CLB总线与CPU处理器进行通信;所述NorFLASH存储接口模块进一步包括上电检测电路,地址译码电路,坏块替换电路,写控制电路以及配置寄存器组和用来显示上次操作状态的状态寄存器组;
所述NorFlash存储器内具有一信息块,此信息块记载NorFlash存储器内坏块单元的地址、数目、替换单元的地址和替换单元替换坏块功能使能位信息,此使能位有效标识NorFlash存储器内存在坏块,所述上电检测电路内具有一用于存储来自所述信息块内坏块信息的坏块寄存器; 
所述上电检测电路在上电复位时,其读取所述NorFlash存储器内信息块内信息,对NorFlash存储器是否存在坏块进行检测,上电检测电路会将坏块信息保存至其坏块寄存器中,以供坏块替换电路读取;
所述坏块替换电路用于对坏块地址的重新映射,当上电检测电路检测到坏块存在,且通过地址译码电路检测到CPU处理器正在对NorFlash存储器进行访问时,该坏块替换电路将启动,接收来自地址译码电路的访问原地址和来自上电检测电路中坏块寄存器的坏块信息,当坏块信息中的使能位无效时,则访问原地址透明经过坏块替换电路传输给所述NorFlash存储器;否则,比较访问原地址是否在坏块信息范围内,如果在,则将坏块单元对应的替换单元地址传输给所述NorFlash存储器,从而将CPU处理器对NorFlash存储器中坏块单元的读写访问转换成对NorFlash存储器中坏块单元相应的替换单元的读写访问,否则,访问原地址透明经过坏块替换电路传输给所述NorFlash存储器;
所述地址译码电路是用来生成读写匹配信号并判断访问类型是读操作或者写操作和访问原地址信号,当CPU处理器对任意地址进行读/写访问时,被访问的访问地址通过CLB总线经NorFLASH存储接口模块中地址译码电路生成访问原地址信号和读写控制信号;
所述写控制电路由写操作控制状态机组成,此写操作控制状态机包括空闲状态、写准备状态、编程启动状态、擦除状态、编程状态以及写清除状态;所述空闲状态,表示写操作还未开始,或者编程/擦除结束时状态机的所处状态,在空闲状态时不会对NorFlash存储器端口的信号进行任何操作;所述写准备状态,表示写操作已经开始,且这次写操作是有效的;所述编程启动状态,表示CPU发出编程命令,且命令被接收;所述擦除状态,表示CPU发出擦除命令,且命令被接收,NorFlash存储器将会或正在进行擦除操作;所述编程状态,表示正在进行编程操作;所述清除状态,表示编程/擦除操作已完成,即需要等待的为保证下次操作能正确执行的恢复时间;
所述配置寄存器组由时序配置寄存器和命令寄存器组成,所述时序配置寄存器用于读/写时序配置以及计数器配置,读/写时序配置即NorFlash存储器读控制信号的时序配置, NorFlash存储器输出值的读取时间配置以及写操作分频信息的配置。读控制信号的时序配置保证了接口能够输出正确地读访问控制信号;读取时间配置是指NorFlash存储器的读取时间是可控的,可根据系统频率以及NorFlash存储器自身的读取时间进行动态的配置;写操作分频信息的配置是指写控制电路输入时钟的分频配置。计数器配置是配置NorFlash存储器写操作所需的等待周期数。
上述技术方案中的进一步改进方案如下:
1. 上述方案中,所述写控制电路还包括地址自增状态机和低功耗状态机,所述地址自增状态机,表示当NorFLASH只支持单字节编程时,如需要半字/字编程,NorFLASH地址可以根据编程的字节数自增;所述低功耗状态机,表示NorFlash存储器正处于低功耗状态。
2. 上述方案中,所述读取时间配置是指NorFlash存储器的读取时间是可控的,可根据系统频率以及NorFlash存储器自身的读取时间进行动态的配置。
3. 上述方案中,所述NorFlash存储器的写操作等时间可以根据系统频率,写操作分频信息和计数器配置进行动态调整。
4. 上述方案中,所述状态寄存器组包括写操作完成标志和访问错误标志组成,其中,写操作完成标志是指当NorFLASH编程或擦除完成时,NorFLASH接口会自动产生标志,当中断使能打开,此标志可以产生操作完成中断;访问错误标志是指当CPU对不可访问的NorFLASH地址进行读写操作或者写操作宽度不符合要求时,NorFLASH接口会产生访问错误标志,且对NorFLASH不会有任何操作。
由于上述技术方案运用,本发明与现有技术相比具有下列优点和效果:
1. 本发明NorFLASH存储接口模块,通过对地址的重新映射,将CPU对坏块的读写访问转换成对NorFLASH中的替换单元的读写访问,从而更大程度的提高NorFLASH的利用率。当上电检测电路检测到坏块存在,且通过地址译码电路检测到CPU正在对坏块地址进行访问,那么坏块替换电路将会自动启动,对地址进行重新映射。
2. 本发明NorFLASH存储接口模块,接口具有坏块替换,可选择支持字/半字/单字节编程和进入低功耗,读写操作步骤简单,易于软件开发的优点,尤其是编程和擦除操作,在CPU对其进行相应的配置后,可以在不耗费CPU资源的前提下,通过中断处理来完成。该接口通用性较强,可以广泛应用于嵌入式SOC芯片领域。
附图说明
附图1为应用本发明内容的嵌入式SOC芯片结构示意图;
附图2为本发明中的读操作示意图;
附图3为本发明中的写操作示意图;
附图4为本发明中的坏块替换操作示意图;
附图5为本发明中的上电检测电路操作示意图;
附图6为本发明中的写控制状态机示意图;
附图7为实施例NorFLASH接口工作示意图。
以上附图中:1、CPU处理器;2、CLB总线;3、NorFLASH存储接口模块;4、NorFlash存储器;41、信息块;5、上电检测电路;51、坏块寄存器;6、地址译码电路;7、坏块替换电路;8、写控制电路;9、配置寄存器组;91、时序配置寄存器;92、命令寄存器;10、状态寄存器组。
具体实施方式
下面结合附图及实施例对本发明作进一步描述:
实施例:一种应用于CLB总线的NorFLASH存储接口模块,一NorFlash存储器4通过此NorFLASH存储接口模块3经由CLB总线2与CPU处理器1进行通信,所述NorFLASH存储接口模块3进一步包括上电检测电路5,地址译码电路6,坏块替换电路7,写控制电路8以及配置寄存器组9和用来显示上次操作状态的状态寄存器组10;
所述NorFlash存储器4内具有一信息块41,此信息块41记载NorFlash存储器4内坏块单元的地址、数目、替换单元的地址和替换单元替换坏块功能使能位信息,此使能位有效标识NorFlash存储器4内存在坏块,所述上电检测电路5内具有一用于存储来自所述信息块41内坏块信息的坏块寄存器51; 
所述上电检测电路5在上电复位时,其读取所述NorFlash存储器4内信息块41内信息,对NorFlash存储器4是否存在坏块进行检测,如果存在坏块,上电检测电路5会将坏块信息保存至其坏块寄存器51中,以供坏块替换电路7读取;
所述坏块替换电路7用于对坏块地址的重新映射,当上电检测电路5检测到坏块存在,且通过地址译码电路6检测到CPU处理器1正在对NorFlash存储器4进行访问时,该坏块替换电路7将启动,接收来自地址译码电路6的访问原地址和来自上电检测电路5中坏块寄存器51的坏块信息,当坏块信息中的使能位无效时,则访问原地址透明经过坏块替换电路7传输给所述NorFlash存储器4;否则,比较访问原地址是否在坏块信息范围内,如果在,则将坏块单元对应的替换单元地址传输给所述NorFlash存储器4,从而将CPU处理器1对NorFlash存储器4中坏块单元的读写访问转换成对NorFlash存储器4中坏块单元相应的替换单元的读写访问,否则,访问原地址透明经过坏块替换电路7传输给所述NorFlash存储器4;
所述地址译码电路6是用来生成读写匹配信号并判断访问类型是读操作或者写操作和访问原地址信号,当CPU处理器1对任意地址进行读/写访问时,被访问的访问地址通过CLB总线2经NorFLASH存储接口模块中地址译码电路6生成访问原地址信号和读写控制信号;
所述写控制电路8由写操作控制状态机组成,此写操作控制状态机包括空闲状态、写准备状态、编程启动状态、擦除状态、编程状态以及写清除状态;所述空闲状态,表示写操作还未开始,或者编程/擦除结束时状态机的所处状态,在空闲状态时不会对NorFlash存储器端口的信号进行任何操作;所述写准备状态,表示写操作已经开始,且这次写操作是有效的;所述编程启动状态,表示CPU发出编程命令,且命令被接收;所述擦除状态,表示CPU发出擦除命令,且命令被接收,NorFlash存储器将会或正在进行擦除操作;所述编程状态,表示正在进行编程操作;所述清除状态,表示编程/擦除操作已完成,即需要等待的为保证下次操作能正确执行的恢复时间;
所述配置寄存器组9由时序配置寄存器91和命令寄存器92组成,所述时序配置寄存器91用于读/写时序配置以及计数器配置,读/写时序配置即NorFlash存储器4读控制信号的时序配置, NorFlash存储器4输出值的读取时间配置以及写操作分频信息的配置。读控制信号的时序配置保证了接口能够输出正确地读访问控制信号;读取时间配置是指NorFlash存储器4的读取时间是可控的,可根据系统频率以及NorFlash存储器4自身的读取时间进行动态的配置;写操作分频信息的配置是指写控制电路输入时钟的分频配置。计数器配置是配置NorFlash存储器4写操作所需的等待周期数。
上述写控制电路8还包括地址自增状态机和低功耗状态机,所述地址自增状态机,表示当NorFLASH只支持单字节编程时,如需要半字/字编程,NorFLASH地址可以根据编程的字节数自增;所述低功耗状态机,表示NorFlash存储器正处于低功耗状态。
上述读取时间配置是指NorFlash存储器4的读取时间是可控的,可根据系统频率以及NorFlash存储器自身的读取时间进行动态的配置。
上述NorFlash存储器4的写操作的等待时间可以根据系统频率,写操作分频信息和计数器配置进行动态调整。
上述状态寄存器组10包括写操作完成标志和访问错误标志组成,其中,写操作完成标志是指当NorFlash存储器4编程或擦除完成时,NorFLASH接口会自动产生标志,当中断使能打开,此标志可以产生操作完成中断;访问错误标志是指当CPU处理器1对不可访问的NorFlash存储器4地址进行读写操作或者写操作宽度不符合要求时,NorFLASH接口会产生访问错误标志,且对NorFlash存储器4不会有任何操作。
以上内容进一步阐释如下。
图1为应用本发明内容的嵌入式SOC芯片结构示意图,在嵌入式SOC芯片中包含有一种基于CLB总线支持坏块替换的内置NorFLASH接口电路。该NorFLASH接口电路包括上电检测电路,地址译码电路,坏块替换电路,写控制电路以及配置和状态寄存器组。下面分别对其进行描述:
1. 上电检测电路
上电检测电路是指在上电复位时,CPU通过读取NorFLASH的信息块对NorFLASH是否存在坏块进行检测,NorFLASH是否存在坏块的信息是在NorFLASH测试时写入NorFLASH信息块的。坏块信息包括有多少坏块存在,用哪个替换单元替换和坏块替换功能是否使能。
2. 地址译码电路
地址译码电路是用来生成读写匹配信号的电路。NorFLASH经由和NorFLASH接口通过CLB总线和CPU通信。当CPU对任意地址进行读/写访问时,被访问的地址通过CLB总线经NorFLASH接口地址译码器译码后,会自动判断读/写地址是否匹配被分配的NorFLASH地址,以确定CPU是否正在对NorFLASH进行访问。
3. 坏块替换电路
坏块替换电路是指在NorFLASH存在坏块时,通过对地址的重新映射,将CPU对坏块的读写访问转换成对NorFLASH中的替换单元的读写访问,从而更大程度的提高NorFLASH的利用率。当上电检测电路检测到坏块存在,且通过地址译码电路检测到CPU正在对坏块地址进行访问,那么坏块替换电路将会自动启动,对地址进行重新映射。
4. 写控制电路
写控制电路由写操作控制状态机构成。当CPU经CLB总线对NorFLASH进行写访问时,如果该写访问被支持,即编程的宽度是NorFLASH允许的或者没有其他写操作正在进行,此次写操作有效,该状态机会自动启动,并等待接收CPU的命令(编程或者擦除),然后根据命令完成此次的写操作完成此次的写操作;如果该写访问不被支持,会返回访问错标志,并结束此次写操作,且该写状态机不会启动。所述状态机由六到八个状态组成,这六个状态分别为空闲状态,写准备状态,编程启动状态,擦除状态,编程状态以及写清除状态组成,如果NorFLASH只支持单字节编程,那么还有一个第七状态地址自增状态。如果NorFLASH可以在没有操作时进入低功耗,状态机还存在一个第八状态低功耗状态。其中:
空闲状态,表示写操作还未开始,或者编程/擦除结束时状态机的所处状态,在空闲状态时不会对NorFLASH端口的信号进行任何操作;
写准备状态,表示写操作已经开始,且这次写操作是有效的;
编程启动状态,表示CPU发出编程命令,且命令被接收;
擦除状态,表示CPU发出擦除命令,且命令被接收,NorFLASH将会或正在进行擦除操作;
编程状态,表示正在进行编程操作;
清除状态,表示编程/擦除操作已完成,即需要等待的为保证下次操作能正确执行的恢复时间;
地址自增状态,表示当NorFLASH只支持单字节编程时,如需要半字/字编程,NorFLASH地址可以根据编程的字节数自增。
低功耗状态,表示NorFLASH正处于低功耗状态。
5. 配置和状态寄存器组
配置和状态寄存器组由配置寄存器组和状态寄存器组成,配置寄存器组由时序配置寄存器和命令寄存器组成,其中:
时序配置寄存器用于读/写时序配置以及计数器配置。读/写时序配置即NorFLASH读控制信号的时序配置, NorFLASH输出值的读取时间配置以及写操作分频信息的配置。读控制信号的时序配置保证了接口能够输出正确地读访问控制信号;读取时间配置是指NorFLASH的读取时间是可控的,可根据系统频率以及NorFLASH自身的读取时间进行动态的配置;写操作分频信息的配置是指写控制电路输入时钟的分频配置。计数器配置是配置NorFLASH写操作所需的等待周期数。NorFLASH的写操作等时间可以根据系统频率,写操作分频信息和计数器配置进行动态调整,以适应于不同的应用。
状态寄存器包括写操作完成标志和访问错误标志组成。
本发明中,NorFLASH经由NorFLASH接口通过CLB总线和CPU通信。CPU对NorFLASH进行读/写访问时,地址经CLB总线通过地址译码电路进行译码后,地址译码电路判断是否为有效的读/写操作,如有效生成读写选中信号,无效则退出操作,返回操作错误标志,并根据是否存在坏块和该地址是否处于坏块内决定是否启动坏块替换电路。如进行的是读操作,该接口电路会根据配置寄存器对读时序的配置,自动生成读控制信号,从而读取相应地址上的值,并经CLB总线供CPU读取。如进行的是写操作,该接口电路会根据配置寄存器对分频和计数器的配置,自动启动写控制电路中的写控制状态机,在接收到CPU的写操作命令后,执行相应操作,并在写操作结束之后,产生操作完成中断请求,中间的过程无需CPU参与,很大的提高了CPU的效率。
图2为应用本发明内容的读操作示意图,NorFLASH接口的地址译码电路在匹配到有CPU对NorFLASH进行操作时,会自动启动。首先判断是何种操作,如果是读操作,那么读操作是否有效。如果读访问有效,地址译码电路会根据配置寄存器对读时序的配置,自动生成读控制信号,读取数据后返回给CPU。CPU读取时间也可以动态配置,可根据不同的Norflash可读取时间以及系统频率进行动态调整。如果读访问无效,会直接结束本次操作,并会产生访问错操作标志到状态寄存器,NorFLASH也不会有任何动作。CPU可以通过访问状态寄存器查询状态。
图3为应用本发明内容的写操作示意图,NorFLASH接口的地址译码电路在匹配到有CPU对NorFLASH进行操作时,会自动启动。首先判断是何种操作,如果是写操作,那么写操作是否有效。如果写操作有效,译码电路会产生一个写启动信号。该接口电路会根据配置寄存器对分频和计数器的配置,自动启动写控制电路中的写控制状态机,在接收到CPU的写操作命令后,判断是何种命令后,根据命令进行操作,直到操作完成。完成操作后NorFLASH接口会产生一个完成操作中断,CPU可以完全不参与写控制电路收到命令后的运行过程,提高了CPU的工作效率。
图4为应用本发明内容的坏块替换操作示意图,NorFLASH接口的地址译码电路在匹配到有CPU对NorFLASH进行操作时,会自动启动。如果改NorFLASH存在坏块,且访问地址位于坏块中,那么通过坏块替换电路匹配到替换单元,替换单元的数目因NorFLASH不同而不同。通过替换电路,NorFLASH接口将CPU对坏块地址的访问切换到替换单元的访问,之后的操作和普通的读写访问相同,且对于软件开发人员,访问坏块和访问好块的操作完全相同,减少了软件开发的复杂性,且NorFLASH坏块用替换单元代替的方法提高了NorFLASH的利用率,继而节约了芯片的成本。
图5为应用本发明内容的上电检测操作示意图。如图所示,芯片上电时,通过对NorFLASH信息块的访问,获取到坏块信息,具体为有多少坏块存在,用哪个替换单元替换和坏块替换功能是否使能信息。
图6为应用本发明内容的写控制状态机示意图,如图所示,改写控制状态机分为六到八个状态,其中的六个状态是空闲状态,写准备状态,编程启动状态,擦除状态,编程状态以及写清除状态组成。还有两个可选状态,如果NorFLASH只支持单字节编程,那么还有一个第七状态地址自增状态。如果NorFLASH可以在没有操作时进入低功耗,状态机还存在一个第八状态低功耗状态。第一状态是空闲状态;当写访问有效时,进入第二状态写准备状态,在写准备状态中等待CPU发出写操作命令,如果是编程命令进入第三状态,如果是擦除命令则进入第四状态;进入第三状态后,等待足够的编程准备时间,进入第五状态编程状态;进入第四状态后,开始擦除操作,当擦除操作完成之后,进入第六状态清除状态;进入第五状态后,如果是NorFLASH只支持单字节编程,而进行的是半字/字编程,状态机会进入第七状态地址自增状态;进入地址自增状态后,地址会根据自加一,然后再进入第五状态编程状态,如果是字编程,还有再重复两次地址自增状态到编程状态的过程,编程状态全部完成后,会进入第六状态清除状态;进入清除状态后,状态机会清除所有的写操作控制信号,以保证和下次读/写操作之间的间隔时间满足NorFLASH的要求,等待足够的时间后,会返回到第一状态空闲状态。状态机在空闲状态时,如果等待的时间满足NorFLASH进入低功耗时序要求,即NorFLASH在此时间内没有任何操作,进入第八状态低功耗状态;进入低功耗状态后,如果需要进行读写操作,退出低功耗,返回到第一状态空闲状态。
图7为应用本发明内容的实施例NorFLASH接口读写工作示意图。图中描述了CPU对NorFLASH进行读写访问时,NorFLASH接口工作流程。CPU经CLB总线,通过NorFLASH接口和NorFLASH通信。当CPU访问NorFLASH时,译码器自动启动对地址进行译码,首先判断是读访问还是写访问。现将读写访问的两种流程描述如下:
1. 读访问
译码电路会先判断是否为有效的读访问,然后根据上电检测电路获取的坏块信息判断是否有坏块,坏块替换功能有没有使能,以及当前的访问地址是否处于坏块中。根据上述判断的结果分以下三种情况进行处理:
第一种,有效的读访问且访问地址不在坏块区域,NorFLASH接口生成NorFLASH读所需的读控制信号,并将返回的读数据经CLB总线传输至CPU读取。
第二种,有效的读访问地址处于坏块中,则坏块替换电路启动,并将对坏块地址的访问切换到对替换单元的访问,NorFLASH接口生成NorFLASH读所需的读控制信号,并将返回的读数据经CLB总线传输至CPU读取。坏块的读控制信号和好块的读控制信号是共用的,坏块替换单元只对地址进行重新映射。
第三种,无效的读访问,则会返回错误标志,且操作会自动结束,对NorFLASH没有任何影响。
2. 写访问
译码电路会先判断是否为有效的写访问,然后根据上电检测电路获取的坏块信息判断是否有坏块,坏块替换功能有没有使能,以及当前的访问地址是否处于坏块中。根据上述判断的结果分以下三种情况进行处理:
第一种,有效的写访问且访问地址不在坏块区域, NorFLASH接口会生成写启动信号并等待CPU发出编程/擦除命令。在接收到命令后会自动根据当前的命令进行相应的操作,写操作完成后会产生写操作结束中断请求CPU处理,从而完成本次写操作。
第二种,写访问地址处于坏块中,则坏块替换电路启动,并将对坏块地址的访问切换到对替换单元的访问,NorFLASH接口会生成写启动信号并等待CPU发出编程/擦除命令。在接收到命令后会自动根据当前的命令进行相应的操作,写操作完成后会产生写操作结束中断请求CPU处理,从而完成本次写操作。即坏块的写控制信号以及写状态机与好块的读控制信号以及写状态机是共用的,坏块替换单元只对地址进行重新映射。
第三种,无效的写访问,则会返回错误标志,且操作会自动结束,对NorFLASH没有任何影响。
根据上述操作步骤,NorFLASH接口可以完成CPU经CLB总线和NorFLASH的通信。坏块的替换操作完全无需软件工程师的参与,写操作过程只有地址译码过程和发送命令过程需要CPU的参与,提高了CPU运行的效率,也节省了软件工程师的软件开发时间,简化了软件操作步骤,运行速度相对更快。且可兼容较多的NorFLASH,能够广泛应用于嵌入式SOC芯片领域。
上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。

Claims (7)

1.一种应用于CLB总线的NorFLASH存储接口模块, 一NorFlash存储器(4)通过此NorFLASH存储接口模块(3)经由CLB总线(2)与CPU处理器(1)进行通信;其特征在于:所述NorFLASH存储接口模块(3)进一步包括上电检测电路(5),地址译码电路(6),坏块替换电路(7),写控制电路(8)以及配置寄存器组(9)和用来显示上次操作状态的状态寄存器组(10);
所述NorFlash存储器(4)内具有一信息块(41),此信息块(41)记载NorFlash存储器(4)内坏块单元的地址、数目、替换单元的地址和替换单元替换坏块功能使能位信息,此使能位有效标识NorFlash存储器(4)内是否存在坏块,所述上电检测电路(5)内具有一用于存储来自所述信息块(41)内坏块信息的坏块寄存器(51); 
所述上电检测电路(5)在上电复位时,其读取所述NorFlash存储器(4)内信息块(41)内信息,对NorFlash存储器(4)是否存在坏块进行检测,上电检测电路(5)会将坏块信息保存至其坏块寄存器(51)中,以供坏块替换电路(7)读取;
所述坏块替换电路(7)用于对坏块地址的重新映射,当上电检测电路(5)检测到坏块存在,且通过地址译码电路(6)检测到CPU处理器(1)正在对NorFlash存储器(4)进行访问时,该坏块替换电路(7)将启动,接收来自地址译码电路(6)的访问原地址和来自上电检测电路(5)中坏块寄存器(51)的坏块信息,当坏块信息中的使能位无效时,则访问原地址透明经过坏块替换电路(7)传输给所述NorFlash存储器(4);否则,比较访问原地址是否在坏块信息范围内,如果在,则将坏块单元对应的替换单元地址传输给所述NorFlash存储器(4),从而将CPU处理器(1)对NorFlash存储器(4)中坏块单元的读写访问转换成对NorFlash存储器(4)中坏块单元相应的替换单元的读写访问,否则,访问原地址透明经过坏块替换电路(7)传输给所述NorFlash存储器(4);
所述地址译码电路(6)是用来生成读写匹配信号并判断访问类型是读操作或者写操作和访问原地址信号,当CPU处理器(1)对任意地址进行读/写访问时,被访问的访问地址通过CLB总线(2)经NorFLASH存储接口模块中地址译码电路(6)生成访问原地址信号和读写控制信号;
所述写控制电路(8)由写操作控制状态机组成,此写操作控制状态机包括空闲状态、写准备状态、编程启动状态、擦除状态、编程状态以及写清除状态;所述空闲状态,表示写操作还未开始,或者编程/擦除结束时状态机的所处状态,在空闲状态时不会对NorFlash存储器端口的信号进行任何操作;所述写准备状态,表示写操作已经开始,且这次写操作是有效的;所述编程启动状态,表示CPU发出编程命令,且命令被接收;所述擦除状态,表示CPU发出擦除命令,且命令被接收,NorFlash存储器将会或正在进行擦除操作;所述编程状态,表示正在进行编程操作;所述清除状态,表示编程/擦除操作已完成,即需要等待的为保证下次操作能正确执行的恢复时间;
所述配置寄存器组(9)由时序配置寄存器(91)和命令寄存器(92)组成,所述时序配置寄存器(91)用于读/写时序配置以及计数器配置,读/写时序配置即NorFlash存储器(4)读控制信号的时序配置,NorFlash存储器(4)输出值的读取时间配置以及写操作分频信息的配置。
2.读控制信号的时序配置保证了接口能够输出正确地读访问控制信号;读取时间配置是指NorFlash存储器(4)的读取时间是可控的,可根据系统频率以及NorFlash存储器(4)自身的读取时间进行动态的配置;写操作分频信息的配置是指写控制电路输入时钟的分频配置。
3.计数器配置是配置NorFlash存储器(4)写操作所需的等待周期数。
4.根据权利要求1所述的NorFLASH存储接口模块,其特征在于:所述写控制电路(8)还包括地址自增状态机和低功耗状态机,所述地址自增状态机,表示当NorFLASH只支持单字节编程时,如需要半字/字编程,NorFLASH地址可以根据编程的字节数自增;所述低功耗状态机,表示NorFlash存储器正处于低功耗状态。
5.根据权利要求1所述的NorFLASH存储接口模块,其特征在于:所述读取时间配置是指NorFlash存储器(4)的读取时间是可控的,可根据系统频率以及NorFlash存储器自身的读取时间进行动态的配置。
6.根据权利要求1所述的NorFLASH存储接口模块,其特征在于: 所述NorFlash存储器(4)的写操作的等待时间可以根据系统频率,写操作分频信息和计数器配置进行动态调整。
7.根据权利要求1所述的NorFLASH存储接口模块,其特征在于: 所述状态寄存器组(10)包括写操作完成标志和访问错误标志组成,其中,写操作完成标志是指当NorFlash存储器(4)编程或擦除完成时,NorFLASH接口会自动产生标志,当中断使能打开,此标志可以产生操作完成中断;访问错误标志是指当CPU处理器(1)对不可访问的NorFlash存储器(4)地址进行读写操作或者写操作宽度不符合要求时,NorFLASH接口会产生访问错误标志,且对NorFlash存储器(4)不会有任何操作。
CN201310039324.1A 2013-01-31 2013-01-31 应用于CLB总线的NorFLASH存储接口模块 Active CN103116551B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310039324.1A CN103116551B (zh) 2013-01-31 2013-01-31 应用于CLB总线的NorFLASH存储接口模块

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310039324.1A CN103116551B (zh) 2013-01-31 2013-01-31 应用于CLB总线的NorFLASH存储接口模块

Publications (2)

Publication Number Publication Date
CN103116551A true CN103116551A (zh) 2013-05-22
CN103116551B CN103116551B (zh) 2016-05-04

Family

ID=48414931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310039324.1A Active CN103116551B (zh) 2013-01-31 2013-01-31 应用于CLB总线的NorFLASH存储接口模块

Country Status (1)

Country Link
CN (1) CN103116551B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354652A (zh) * 2015-07-15 2017-01-25 上海华虹集成电路有限责任公司 非易失性存储器读写控制电路及方法
CN106802870A (zh) * 2016-12-29 2017-06-06 杭州朔天科技有限公司 一种高效的嵌入式系统芯片Nor‑Flash控制器及控制方法
CN109727626A (zh) * 2017-10-30 2019-05-07 新唐科技股份有限公司 半导体装置及其闪存的存取周期的自动调节方法
CN110806997A (zh) * 2019-10-16 2020-02-18 广东高云半导体科技股份有限公司 一种片上系统以及存储器
WO2020051921A1 (en) * 2018-09-15 2020-03-19 Intel Corporation Runtime cell row replacement in a memory
CN112231178A (zh) * 2020-11-03 2021-01-15 中国航空工业集团公司西安航空计算技术研究所 一种适用于机载高安全计算机的加电时间计时系统
CN113836059A (zh) * 2021-11-26 2021-12-24 广州智慧城市发展研究院 一种应用于eeprom存储器的控制系统
WO2021259351A1 (zh) * 2020-06-24 2021-12-30 华为技术有限公司 一种复位系统、数据处理系统以及相关设备
CN114036096A (zh) * 2021-11-04 2022-02-11 珠海一微半导体股份有限公司 一种基于总线接口的读控制器
CN114327627A (zh) * 2021-12-15 2022-04-12 中国船舶重工集团公司第七0九研究所 一种实模式下基于gpu传统io配置显示分辨率的方法
CN114328311A (zh) * 2021-12-15 2022-04-12 珠海一微半导体股份有限公司 一种存储控制器架构、数据处理电路及数据处理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101556571A (zh) * 2009-04-08 2009-10-14 苏州国芯科技有限公司 实现clb总线与从属模块之间高低速切换的桥接器
CN101894084A (zh) * 2010-04-13 2010-11-24 苏州国芯科技有限公司 一种clb总线内用于写操作的装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101556571A (zh) * 2009-04-08 2009-10-14 苏州国芯科技有限公司 实现clb总线与从属模块之间高低速切换的桥接器
CN101894084A (zh) * 2010-04-13 2010-11-24 苏州国芯科技有限公司 一种clb总线内用于写操作的装置

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354652A (zh) * 2015-07-15 2017-01-25 上海华虹集成电路有限责任公司 非易失性存储器读写控制电路及方法
CN106802870A (zh) * 2016-12-29 2017-06-06 杭州朔天科技有限公司 一种高效的嵌入式系统芯片Nor‑Flash控制器及控制方法
CN109727626B (zh) * 2017-10-30 2021-09-17 新唐科技股份有限公司 半导体装置及其闪存的存取周期的自动调节方法
CN109727626A (zh) * 2017-10-30 2019-05-07 新唐科技股份有限公司 半导体装置及其闪存的存取周期的自动调节方法
WO2020051921A1 (en) * 2018-09-15 2020-03-19 Intel Corporation Runtime cell row replacement in a memory
US11481294B2 (en) 2018-09-15 2022-10-25 Intel Corporation Runtime cell row replacement in a memory
CN110806997A (zh) * 2019-10-16 2020-02-18 广东高云半导体科技股份有限公司 一种片上系统以及存储器
WO2021259351A1 (zh) * 2020-06-24 2021-12-30 华为技术有限公司 一种复位系统、数据处理系统以及相关设备
CN112231178A (zh) * 2020-11-03 2021-01-15 中国航空工业集团公司西安航空计算技术研究所 一种适用于机载高安全计算机的加电时间计时系统
CN112231178B (zh) * 2020-11-03 2023-11-24 中国航空工业集团公司西安航空计算技术研究所 一种适用于机载高安全计算机的加电时间计时系统
CN114036096A (zh) * 2021-11-04 2022-02-11 珠海一微半导体股份有限公司 一种基于总线接口的读控制器
CN114036096B (zh) * 2021-11-04 2024-05-03 珠海一微半导体股份有限公司 一种基于总线接口的读控制器
CN113836059A (zh) * 2021-11-26 2021-12-24 广州智慧城市发展研究院 一种应用于eeprom存储器的控制系统
CN114327627A (zh) * 2021-12-15 2022-04-12 中国船舶重工集团公司第七0九研究所 一种实模式下基于gpu传统io配置显示分辨率的方法
CN114328311A (zh) * 2021-12-15 2022-04-12 珠海一微半导体股份有限公司 一种存储控制器架构、数据处理电路及数据处理方法

Also Published As

Publication number Publication date
CN103116551B (zh) 2016-05-04

Similar Documents

Publication Publication Date Title
CN103116551B (zh) 应用于CLB总线的NorFLASH存储接口模块
CN103235760B (zh) 基于CLB总线的高利用率NorFLASH存储接口芯片
CN104520932B (zh) 闪存存储器控制器
CN102193885B (zh) 支持虚拟信道的非挥发性存储器控制器
CN101946237B (zh) 存储器电路中可调的流水线
JP6092649B2 (ja) 演算装置、アレイ型演算装置およびその制御方法、情報処理システム
CN105843749B (zh) 一种基于FPGA的NAND Flash容错方法
CN102999453B (zh) 用于系统芯片集成的通用非易失性存储器控制装置
JP2009205698A5 (zh)
CN103810112A (zh) 一种非易失性内存系统及其管理方法
CN101344870B (zh) 一种复用性强的fifo控制模块及其管理内存的方法
CN101436171B (zh) 模块化通信控制系统
CN102135927A (zh) 一种基于nand flash的系统引导方法和装置
US20090228624A1 (en) Derivative logical output
CN102332311A (zh) 一种基于fpga的nand flash器件单粒子效应测试方法
CN101233575A (zh) 存储器的控制方法、存储系统
CN103902013A (zh) 存储器控制装置及方法
CN115687228B (zh) 一种基于PCIe总线的星载固态存储系统及方法
CN105373338A (zh) 一种flash的控制方法和控制器
US20080155287A1 (en) Power saving in NAND flash memory
CN203084718U (zh) 一种现场可编程门阵列
CN100499557C (zh) 一种寻址控制器件及使用该器件进行寻址的方法
CN100395742C (zh) 可快速地于不同储存装置间传输数据的计算机系统
CN101539785B (zh) 集成闪存存储单元的主板
CN114281751B (zh) 芯片系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room C2031, Suzhou Pioneer Park, 209 Zhuyuan Road, Suzhou High-tech Zone, Jiangsu Province

Patentee after: Suzhou Guoxin Technology Co., Ltd.

Address before: Room C2031, Suzhou Pioneer Park, 209 Zhuyuan Road, Suzhou High-tech Zone, Jiangsu Province

Patentee before: C*Core Technology (Suzhou) Co., Ltd.