一种支持AHB协议的NorFlash存储控制器制造技术

技术编号:35486773 阅读:19 留言:0更新日期:2022-11-05 16:40
一种支持AHB协议的NorFlash存储控制器,FPGA模块及NorFlash存储器,所述FPGA模块由AHB总线协议转换模块AHB_MUX、AHB从设备配置模块AHB_SLAVE、NorFlash存储器顶层控制模块AHB_FLASH_TOP、NorFlash存储器页写控制模块AHB_PAGE_WRITE、NorFlash存储器数据读取控制模块FLASH_READ及SPI驱动模块SPI_MASTER构成。该支持AHB协议的NorFlash存储控制器使用可靠性高,且完全兼容于当前主流嵌入式CPU的信息存储需求。信息存储需求。信息存储需求。

【技术实现步骤摘要】
一种支持AHB协议的NorFlash存储控制器


[0001]本专利技术涉及数字逻辑电路领域,具体涉及一种支持AHB协议的NorFlash存储控制器。

技术介绍

[0002]当前,随着现代微电子技术的高速发展,高速存储技术日渐成熟。由于NorFlash存储器具备灵活性高、体积小、性能高、功耗低、易于维护等优势,加之良好的非易失性,使其在近年来在国内外的工业控制、智能家电、可穿戴智能设备、移动终端等领域得到了广泛的应用。
[0003]AHB( Advanced High

performance Bus )总线规范是ARM公司AMBA总线规范的一部分,已被大多数SoC设计采用。AHB常用于高性能、高时钟频率的系统结构,典型的应用如ARM核与系统内部的高速RAM、NorFlash、DMA的连接。
[0004]传统的基于AHB总线的NorFlash存储控制器逻辑较为复杂,不具备高速读写能力,同时其容错功能较为低下,实践应用可靠性较低。

技术实现思路

[0005]本专利技术为了克服以上技术的不足,提供了一种使用可靠性高的支持AHB协议的NorFlash存储控制器。
[0006]本专利技术克服其技术问题所采用的技术方案是:一种支持AHB协议的NorFlash存储控制器,包括:FPGA模块及NorFlash存储器,所述FPGA模块由AHB总线协议转换模块AHB_MUX、AHB从设备配置模块AHB_SLAVE、NorFlash存储器顶层控制模块AHB_FLASH_TOP、NorFlash存储器页写控制模块AHB_PAGE_WRITE、NorFlash存储器数据读取控制模块FLASH_READ及SPI驱动模块SPI_MASTER构成;CPU发送读写指令到AHB总线,AHB总线协议转换模块AHB_MUX将接收的CPU读写指令进行解析,获得读写地址和需要写入的数据,将解析的结果发送至NorFlash存储器顶层控制模块AHB_FLASH_TOP,HB从设备配置模块AHB_SLAVE根据AHB协议要求发送从设备配置信息至NorFlash存储器顶层控制模块AHB_FLASH_TOP;NorFlash存储器顶层控制模块AHB_FLASH_TOP根据CPU指令,将读写请求、读写地址、页写数据分别发送至NorFlash存储器页写控制模块AHB_PAGE_WRITE及NorFlash存储器数据读取控制模块FLASH_READ;NorFlash存储器页写控制模块AHB_PAGE_WRITE接收到写指令、写地址、写数据后,依序将写指令、写使能、写入地址以及写入数据流发送至SPI驱动模块SPI_MASTER,SPI驱动模块SPI_MASTER按照SPI协议生成NorFlash驱动时钟,并将从NorFlash存储器页写控制模块AHB_PAGE_WRITE接收到的写指令、写使能、写入地址以及写入数据流依照时序按低位到高位顺序发送至NorFlash数据线,由NorFlash存储器对信息进行存储;
NorFlash存储器数据读取控制模块FLASH_READ接收到读指令、读地址、读数据后,依序将度指令、读使能、读地址以及读数据流发送至SPI驱动模块SPI_MASTER并等待接收由SPI驱动模块SPI_MASTER读取的NorFlash存储数据流,SPI驱动模块SPI_MASTER按照SPI协议生成NorFlash驱动时钟,并将从NorFlash存储器数据读取控制模块FLASH_READ接收到的读指令、读使能、读地址以及读数据流,依照时序按低位到高位顺序发送至NorFlash数据线,由NorFlash存储器对信息进行处理,并读取相应存储页面的数据。
[0007]进一步的,NorFlash存储器顶层控制模块AHB_FLASH_TOP的状态机包含四个状态,分别为:RD_IDLE、FLASH_READ、FLASH_WRITE、FLASH_RW_END,初始状态为RD_IDLE,当AHB总线协议转换模块AHB_MUX的读写请求到来时,NorFlash存储器顶层控制模块AHB_FLASH_TOP响应请求,将状态跳转至FLASH_READ或FLASH_WRITE,NorFlash存储器顶层控制模块AHB_FLASH_TOP发送地址并开始对读写数据计数,当计满256个Byte时,状态跳转回RD_IDLE状态并重新发送读写请求,进行新一轮读写状态跳转,直到完成所有数据读写任务,完成要求的数据量读写后,状态机由FLASH_READ或FLASH_WRITE跳转至FLASH_RW_END,完成一次读写任务。
[0008]进一步的,NorFlash存储器页写控制模块AHB_PAGE_WRITE的状态机包含五个状态,分别为:WR_IDLE、SEND_WR_EN、SEND_WR_CMD、SEND_WR_ADDR、WR_DATA,初始状态为WR_IDLE,当NorFlash存储器顶层控制模块AHB_FLASH_TOP的页写开始信号到来时,状态跳转至SEND_WR_EN,NorFlash存储器页写控制模块AHB_PAGE_WRITE向SPI驱动模块SPI_MASTER发生写使能信号,当SPI驱动模块SPI_MASTER接收写使能信号后,状态跳转至SEND_WR_CMD,NorFlash存储器页写控制模块AHB_PAGE_WRITE发送指定页写操作指令胡状态一次跳转至SEND_WR_ADDR和WR_DATA,NorFlash存储器页写控制模块AHB_PAGE_WRITE依次向SPI驱动模块SPI_MASTER发送3Byte页写地址并以Byte为单位发送页写数据,当数据全部写入NorFlash存储器后,状态跳转至WR_IDLE并等待NorFlash存储器顶层控制模块AHB_FLASH_TOP下发下一次写任务。
[0009]进一步的,NorFlash存储器数据读取控制模块FLASH_READ的状态机包含四个状态,分别为:RD_IDLE、SEND_RD_CMD、SEND_RD_ADDR、RD_DATA,初始状态为RD_IDLE,当NorFlash存储器顶层控制模块AHB_FLASH_TOP的读信号到来时,状态跳转至SEND_RD_CMD,NorFlash存储器数据读取控制模块FLASH_READ向SPI驱动模块SPI_MASTER发送读指令,确认SPI驱动模块SPI_MASTER接收读指令信号后,状态跳转至SEND_RD_ADDR,NorFlash存储器数据读取控制模块FLASH_READ连续向SPI驱动模块SPI_MASTER发送3Byte读取地址,确认SPI驱动模块SPI_MASTER接收到后,状态跳转至RD_DATA,NorFlash存储器数据读取控制模块FLASH_READ开始读取数据,当数据全部读取完成后,状态跳转至RD_IDLE,等待NorFlash存储器顶层控制模块AHB_FLASH_TOP下发下一次读取任务。
[0010]优选的,上述FPGA模块采用型号为XCZU9EG

FFVB1156型FPGA芯片构成,所述NorFl本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种支持AHB协议的NorFlash存储控制器,其特征在于,包括:FPGA模块及NorFlash存储器,所述FPGA模块由AHB总线协议转换模块AHB_MUX、AHB从设备配置模块AHB_SLAVE、NorFlash存储器顶层控制模块AHB_FLASH_TOP、NorFlash存储器页写控制模块AHB_PAGE_WRITE、NorFlash存储器数据读取控制模块FLASH_READ及SPI驱动模块SPI_MASTER构成;CPU发送读写指令到AHB总线,AHB总线协议转换模块AHB_MUX将接收的CPU读写指令进行解析,获得读写地址和需要写入的数据,将解析的结果发送至NorFlash存储器顶层控制模块AHB_FLASH_TOP,HB从设备配置模块AHB_SLAVE根据AHB协议要求发送从设备配置信息至NorFlash存储器顶层控制模块AHB_FLASH_TOP;NorFlash存储器顶层控制模块AHB_FLASH_TOP根据CPU指令,将读写请求、读写地址、页写数据分别发送至NorFlash存储器页写控制模块AHB_PAGE_WRITE及NorFlash存储器数据读取控制模块FLASH_READ;NorFlash存储器页写控制模块AHB_PAGE_WRITE接收到写指令、写地址、写数据后,依序将写指令、写使能、写入地址以及写入数据流发送至SPI驱动模块SPI_MASTER,SPI驱动模块SPI_MASTER按照SPI协议生成NorFlash驱动时钟,并将从NorFlash存储器页写控制模块AHB_PAGE_WRITE接收到的写指令、写使能、写入地址以及写入数据流依照时序按低位到高位顺序发送至NorFlash数据线,由NorFlash存储器对信息进行存储;NorFlash存储器数据读取控制模块FLASH_READ接收到读指令、读地址、读数据后,依序将度指令、读使能、读地址以及读数据流发送至SPI驱动模块SPI_MASTER并等待接收由SPI驱动模块SPI_MASTER读取的NorFlash存储数据流,SPI驱动模块SPI_MASTER按照SPI协议生成NorFlash驱动时钟,并将从NorFlash存储器数据读取控制模块FLASH_READ接收到的读指令、读使能、读地址以及读数据流,依照时序按低位到高位顺序发送至NorFlash数据线,由NorFlash存储器对信息进行处理,并读取相应存储页面的数据。2.根据权利要求1所述的支持AHB协议的NorFlash存储控制器,其特征在于:NorFlash存储器顶层控制模块AHB_FLASH_TOP的状态机包含四个状态,分别为:RD_IDLE、FLASH_READ、FLASH_WRITE、FLASH_RW_END,初始状态为RD_IDLE,当AHB总线协议转换模块AHB_MUX的读写请求到来时,NorFlash存储器顶层控制模块AHB_FLASH_TOP响应请求,将状态跳转至FLASH_READ或FLASH_WRITE,NorFlash存储器顶层控制模块AHB_FLASH_TOP发送地址并开始对读写...

【专利技术属性】
技术研发人员:王雄儒赵鑫鑫姜凯李锐
申请(专利权)人:山东浪潮科学研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1