写状态操作代码是b0000 0001,它首先列出MSB。使用写状态操作设置状态寄存器块保护位。写状态操作不影响其他位。因此,可以实现此操作来保护某些内存扇区,如表9到表13所示。在设置块保护位之后,受保护的内存扇区被视为只读内存。您必须在写状态操作之前执行写启用操作,以便设备将状态寄存器的写启用锁存器位设置为1。写入状态操作是通过将nCS信号压低来实现的,然后将写入状态操作代码和ASDI引脚上状态寄存器的一个数据字节移位。图10显示了write status操作的指令序列。在锁定了数据字节的第8位之后,必须将nc驱动到较高的位置,否则不会执行写状态操作。在nCS信号高速驱动后,设备立即启动自定时写状态循环。所有EPCS设备的自定时写状态周期通常需要5 ms,并且保证小于15 ms。有关更多信息,请参阅第29页表16中的tWS值。您必须解释这种延迟,以确保状态寄存器是用所需的块保护位编写的。或者,您可以在自计时写状态循环进行时执行读状态操作,从而检查状态寄存器中的正在写位。在自计时写状态周期中,正在进行的写位为1,完成时为0?擦除扇区操作代码是b1101 1000,它首先列出了MSB。该操作允许您通过将扇区内的所有位设置为1或0xFF来擦除EPCS设备中的某个扇区。如果希望将未使用的扇区作为应用程序中的通用内存访问,则此操作非常有用。必须在擦除扇区操作之前执行写启用操作,以便将状态寄存器中的写启用锁存器位设置为1。您可以实现擦除扇区操作,首先驱动nCS信号低,然后在擦除扇区操作代码中移动,然后在ASDI pin上选择扇区的三个地址字节。用于擦除扇区操作的三个地址字节可以是指定扇区内的任何地址。有关扇区地址范围的更多信息,请参阅第7页的表3到第12页的表7。在第八比特的擦除扇区操作代码已锁定后,驱动nCS信号高。当nCS信号被驱动到高电平后,设备立即启动自动定时擦除扇区周期。有关自动定时擦除扇区周期时间的详细信息,请参阅第29页表16中的tES值。在访问内存内容之前,必须考虑到这种延迟。或者,您可以在自计时擦除扇区周期进行时执行读状态操作来检查状态寄存器中的写进程位。在自动定时擦除扇区周期中,写入进度位设置为1,完成时设置为0。状态寄存器中的写启用锁存器位在擦除周期完成之前重置为0。
?在AS配置中,FPGA作为配置流中的配置主程序,为EPCS设备提供时钟。FPGA利用图2和图3所示的nCSO信号将nCS信号拉低,实现EPCS设备。然后,FPGA使用ASDO信号将指令和地址发送到EPCS设备。EPCS设备通过将配置数据发送到位于DCLK下降边缘的FPGA DATA0引脚来响应指令。数据被锁定到FPGA的下一个DCLK信号的下降边缘。
1 FPGA进入配置模式前,确保EPCS设备VCC就绪。如果VCC还没有准备好,您必须保持nCONFIG低,直到EPCS设备的所有电源轨道都准备好。
FPGA在AS模式下控制配置过程中的nSTATUS和con_done引脚。如果con_done信号在配置结束时没有变高,或者如果信号变高太早,FPGA将其nSTATUS引脚脉冲变低以启动重新配置。如果配置成功,FPGA释放con_done引脚,允许外部10-k电阻将con_done信号拉高。FPGA初始化在con_done引脚变高之后开始。初始化后,FPGA进入用户模式。
有关将FPGAs配置为配置模式或其他配置模式的更多信息,请参阅适当的设备手册中的配置章节