FPGA实现的Flash编程器在EDA/PLD中的应用

0 下载量 76 浏览量 更新于2024-08-30 收藏 102KB PDF 举报
"EDA/PLD中的Flash编程器的FPGA实现" 在电子设计自动化(EDA)和可编程逻辑器件(PLD)领域,Flash编程器的实现是一个关键环节,特别是在需要对Flash存储器进行编程和数据加载的场景中。本文由吴豫和孟宪元在清华大学电子工程系的研究中提出,探讨了如何利用现场可编程门阵列(FPGA)来实现Flash编程器的功能。 1. Flash存储器的优势与应用 Flash存储器,作为一种非易失性存储技术,因其高集成度、低成本和便捷性而在各种设备中得到广泛应用,包括通信设备、办公设备、家用电器和医疗设备。其非易失性意味着即使在电源断开后,仍能保留数据,同时支持在线更新数据参数,使其成为灵活的只读存储器(ROM)替代品。 2. FPGA在Flash编程中的作用 在现代数字电路系统设计中,大容量数据存储的需求日益增长。由于Flash的高容量、快速存取、小巧体积和低功耗,它成为了首选的存储解决方案。特别是在实时信号处理系统中,需要使用Flash存储坐标变换数据作为查找表。对于新推出的Flash芯片如SST39SF010/020,由于缺乏现成的编程器,需要自研以满足设计需求,同时考虑经济性和实用性。FPGA因其可编程性强、能灵活生成逻辑控制,成为实现Flash编程器的理想选择。该型号Flash使用5V供电,并能在指令控制下自动生成所需的擦除电压Vpp,完成数据写入和芯片擦除等功能。 3. Flash的性能参数和操作时序 以SST39SF010/020为例,其容量为1/2Mbit(×8),具有以下特点: - 单一5.0V电压即可进行读写操作。 - 高数据保留可靠性,超过100年的数据保持能力。 - 快速的擦除和字节编程功能,扇区擦除、片擦除、字节编程和片重写的时间分别约为7ms、15ms、20微秒和3ms。 - 内部生成Vpp编程电压,简化读写时序。 - 兼容TTL电平的I/O接口。 4. FPGA实现的Flash编程器操作 通过FPGA,可以生成并控制Flash编程所需的各种命令,包括地址线(A0到Ams)、数据线(DQ0到DQ7)的管理以及与Flash的交互时序。FPGA能够灵活配置,生成擦除、编程和读取等操作的控制信号,确保与Flash芯片的正确通信,从而实现完整的编程器功能。 利用FPGA实现Flash编程器是解决大容量数据存储问题的有效途径,特别是在需要定制和快速响应的新颖应用中。通过FPGA的设计灵活性,不仅可以满足特定Flash芯片的编程需求,还能实现高效、可靠的编程过程。