基于SPI总线FLASH时序控制的FPGA实现
2016-06-29薛宏亮合肥工业大学仪器科学与光电工程学院安徽合肥230009
薛宏亮 合肥工业大学仪器科学与光电工程学院 安徽合肥 230009
基于SPI总线FLASH时序控制的FPGA实现
薛宏亮 合肥工业大学仪器科学与光电工程学院 安徽合肥 230009
【文章摘要】
FLASH存储器又称为闪存,它集合了RAM和ROM的长处,不仅可以快速地读写数据,又可以使数据在掉电时不会丢失。所以,近年来,FLASH存储器在嵌入式系统中扮演着越来越重要的角色,而以FPGA作为控制核心的FLASH存储系统也受到了越来越广泛地应用。本文介绍了一种SPI接口FLASH时序控制器的设计过程,并用Verilog硬件描述语言实现整个时序控制功能,将其嵌入到FPGA的设计之中。在Modelsim中对设计进行仿真验证,结果正确可靠,具有普遍的适用性。
【关键词】
SPI总线FLASH ;时序控制;FPGA

图1 FLASH数据读取时序图

图2 页编程命令时序图

图3 FLASH读写模块框图

图4 FLASH控制时序仿真
0 引言
FLASH存储器作为一类新型存储器,因具有功耗低、速度快、容量大、成本低和非易失性等优点在各种嵌入式系统中得到越来越广泛地应用。随着技术的发展和需求的提高,数据的处理日益向着高速化的趋势发展,此时,通过普通的处理器来读取FLASH中的数据已经达不到要求。而利用FPGA控制FLASH存储器的读取可以达到较高的处理速度,所以在高速数据处理领域,利用FPGA实现FLASH存储系统控制的工程应用相当广泛。本文以winbond公司的SPI接口FLAH芯片W25Q128BV和Altera公司的Cyclone系列FPGA芯片EP4CE6F17C8为例,用Verilog硬件描述语言实现了以SPI总线协议为基础的FLASH读取控制时序,实现了FPGA和FLASH存储器的接口操作。
1 SPI总线协议和W25Q128BV芯片介绍
1.1SPI总线协议
SPI(Serial Peripheral Interface)是一种高速的、全双工、同步的通信总线。……
