一种基于FPGA的总线复用型FLASH读写系统技术方案

技术编号:28977389 阅读:17 留言:0更新日期:2021-06-23 09:22
一种基于FPGA的总线复用型FLASH读写系统,FPGA读写模块、DSP模块、FLASH模块,FPGA读写模块管脚分别与DSP模块的EMIF总线、FLASH模块连接,FPGA读写模块接收DSP模块发送的指令并转换为FLASH模块输入信号,FLASH模块根据输入信号进行存储并供DSP模块读取,解决了现有技术无法用DSP的EMIF总线或其他通信总线控制,需要DSP软件控制管脚实现读写时序的问题,改进了读写效率。

【技术实现步骤摘要】
一种基于FPGA的总线复用型FLASH读写系统
本专利技术涉及一种基于FPGA的总线复用型FLASH读写系统,属于数据读写控制领域。
技术介绍
MICRO公司的MT29F系列FLASH采用数据总线与地址总线复用设计,无法用DSP的EMIF总线或其他通信总线控制,需要DSP软件控制管脚实现读写时序,且单次仅读写一个字节,读写效率低,占用机时长。
技术实现思路
本专利技术解决的技术问题是:针对目前现有技术中,无法用DSP的EMIF总线或其他通信总线控制,需要DSP软件控制管脚实现读写时序的问题,提出了一种基于FPGA的总线复用型FLASH读写系统。本专利技术解决上述技术问题是通过如下技术方案予以实现的:一种基于FPGA的总线复用型FLASH读写系统,包括FPGA读写模块、DSP模块、FLASH模块,FPGA读写模块管脚分别与DSP模块的EMIF总线、FLASH模块连接,FPGA读写模块接收DSP模块发送的指令并转换为FLASH模块输入信号,FLASH模块根据输入信号进行存储并供DSP模块读取。所述DSP模块包含EMIF总线,地址总线大于4位,数据总线为32位;所述FPGA读写模块点号大于100,内置的逻辑门电路大于1000门;所述FLASH模块为满足MT29F时序要求的型号。所述FPGA读写模块能够自动识别读指令、写指令,当DSP模块输入写指令时,具体流程如下:(1)接收DSP模块写入的写指令;(2)cs端口清零;(3)将写指令中16~23bit数据输入数据总线,将27bit数据写入CLE端口,将26bit数据写入ALE端口,将24bit数据写入we端口线;(4)于10ns后拉高we端口线,并于下一个10ns后清零CLE端口、ALE端口及数据总线;(5)将写指令的7~0bit数据输入数据总线,将11bit数据写入CLE端口,将10bit数据写入ALE端口,将8bit数据写入we端口线;(6)于10ns后拉高we端口线,并于下一个10ns后清零CLE端口、ALE端口及数据总线;(7)拉高cs端口;(8)终止流程。当DSP模块输入读指令时,具体流程如下:(1)接收DSP模块写入的读指令,并确定读指令操作数量;(2)判断当前FPGA读写模块的读取计数器数字是否不小于读指令操作数量,若不小于,则进入步骤(16),若小于,则将FPGA读写模块的读取计数器清零;(3)将re端口计数清零;(4)拉低cs端口和re端口;(5)10ns后将re端口置为1;(6)读取FLASH模块中数据总线内的数据,存入8位寄存器reg1中,使读取计数器加1;(7)10ns后将re端口拉低;(8)10ns后将re端口置为1,读取FLASH模块中数据总线内的数据,存入8位寄存器reg2中,使读取计数器加1;(9)10ns后将re端口拉低;(10)10ns后将re端口置为1,读取FLASH模块中数据总线内的数据,存入8位寄存器reg3中,使读取计数器加1;(11)10ns后将re端口拉低;(12)10ns后将re端口置为1,读取FLASH模块中数据总线内的数据,存入8位寄存器reg4中,使读取计数器加1;(13)cs端口拉高;(14)将寄存器reg1、reg2、reg3、reg4中的数据同时写入FPGA读写模块的读寄存器;(15)通过DSP模块读取读寄存器的数据,并返回步骤(2);(16)终止流程。根据FPGA读写模块的输入时钟周期调整we端口线、re端口信号低电平时间长度不小于10ns,写入数据至ALE端口、CLE端口的有效时间不低于20ns。本专利技术与现有技术相比的优点在于:本专利技术提供的一种基于FPGA的总线复用型FLASH读写系统,通过单次DSP写操作,可将2字节有效数据写入FLASH,同时可通过单次DSP读操作,可读取FLASH中4字节数据,针对现有技术关于MT29F系列FLASH读取设计的缺陷,提出了新的读写系统设计及流程设计,解决了无法用DSP的EMIF总线或其他通信总线控制,需要DSP软件控制管脚实现读写时序的问题,大大改进读写效率。附图说明图1为专利技术提供的FLASH读写系统读写流程示意图;图2为专利技术提供的FLASH读写系统结构示意图;具体实施方式一种基于FPGA的总线复用型FLASH读写系统,针对现有技术中,MT29F系列FLASH采用数据总线与地址总线复用设计,无法用DSP的EMIF总线或其他通信总线控制,需要DSP软件控制管脚实现读写时序的问题,通过包括FPGA读写模块、DSP模块、FLASH模块的读写系统结构,实现改进读写效率的目的,整体读写系统结构具体为:包括FPGA读写模块、DSP模块、FLASH模块,FPGA读写模块管脚分别与DSP模块的EMIF总线、FLASH模块连接,FPGA读写模块接收DSP模块发送的指令并转换为FLASH模块输入信号,FLASH模块根据输入信号进行存储并供DSP模块读取,其中:DSP模块包含EMIF总线,地址总线大于4位,数据总线为32位;FPGA读写模块点号大于100,内置的逻辑门电路大于1000门;FLASH模块为满足MT29F时序要求的型号。读写系统包括两种工作模式,分别为读模式、写模式,不同工作模式写整体工作流程不同,具体为:当DSP模块输入写指令时,具体流程如下:(1)接收DSP模块写入的写指令;(2)cs端口清零;(3)将写指令中16~23bit数据输入数据总线,将27bit数据写入CLE端口,将26bit数据写入ALE端口,将24bit数据写入we端口线;(4)于10ns后拉高we端口线,并于下一个10ns后清零CLE端口、ALE端口及数据总线;(5)将写指令的7~0bit数据输入数据总线,将11bit数据写入CLE端口,将10bit数据写入ALE端口,将8bit数据写入we端口线;(6)于10ns后拉高we端口线,并于下一个10ns后清零CLE端口、ALE端口及数据总线;(7)拉高cs端口;(8)终止流程。当DSP模块输入读指令时,具体流程如下:(1)接收DSP模块写入的读指令,并确定读指令操作数量;(2)判断当前FPGA读写模块的读取计数器数字是否不小于读指令操作数量,若不小于,则进入步骤(16),若小于,则将FPGA读写模块的读取计数器清零;(3)将re端口计数清零;(4)拉低cs端口和re端口;(5)10ns后将re端口置为1;(6)读取FLASH模块中数据总线内的数据,存入8位寄存器reg1中,使读取计数器加1;(7)10ns后将re端口拉低;(8)10ns后将re端口置为1,读取FLASH模块中数据总线内的数据,存入8位寄本文档来自技高网...

【技术保护点】
1.一种基于FPGA的总线复用型FLASH读写系统,其特征在于:包括FPGA读写模块、DSP模块、FLASH模块,FPGA读写模块管脚分别与DSP模块的EMIF总线、FLASH模块连接,FPGA读写模块接收DSP模块发送的指令并转换为FLASH模块输入信号,FLASH模块根据输入信号进行存储并供DSP模块读取。/n

【技术特征摘要】
1.一种基于FPGA的总线复用型FLASH读写系统,其特征在于:包括FPGA读写模块、DSP模块、FLASH模块,FPGA读写模块管脚分别与DSP模块的EMIF总线、FLASH模块连接,FPGA读写模块接收DSP模块发送的指令并转换为FLASH模块输入信号,FLASH模块根据输入信号进行存储并供DSP模块读取。


2.根据权利要求1所述的一种基于FPGA的总线复用型FLASH读写系统,其特征在于:
所述DSP模块包含EMIF总线,地址总线大于4位,数据总线为32位;
所述FPGA读写模块点号大于100,内置的逻辑门电路大于1000门;
所述FLASH模块为满足MT29F时序要求的型号。


3.根据权利要求1所述的一种基于FPGA的总线复用型FLASH读写系统,其特征在于:
所述FPGA读写模块能够自动识别读指令、写指令,当DSP模块输入写指令时,具体流程如下:
(1)接收DSP模块写入的写指令;
(2)cs端口清零;
(3)将写指令中16~23bit数据输入数据总线,将27bit数据写入CLE端口,将26bit数据写入ALE端口,将24bit数据写入we端口线;
(4)于10ns后拉高we端口线,并于下一个10ns后清零CLE端口、ALE端口及数据总线;
(5)将写指令的7~0bit数据输入数据总线,将11bit数据写入CLE端口,将10bit数据写入ALE端口,将8bit数据写入we端口线;
(6)于10ns后拉高we端口线,并于下一个10ns后清零CLE端口、ALE端口及数据总线;
(7)拉高cs端口;
(8)终止流程。


4.根据权利要求3所述的一种基于FP...

【专利技术属性】
技术研发人员:李少玮白明明李雪
申请(专利权)人:北京遥测技术研究所航天长征火箭技术有限公司
类型:发明
国别省市:北京;11

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

1