写入FRAM的零时钟周期延迟
一个典型的EEPROM需要5毫秒的写周期时间,以将其页面数据转移到非易失性EEPROM内。当需要写入几千字节的数据时,会导致写入时间较长。相比之下的FRAM不会使这种写操作变慢;所有写操作按总线速率 进行,并非基于存储器延迟。下面两个实例和图1说明写延迟的影响。
实例1:
需要2毫秒将256字节的页面数据通过1MHz 1C总线从控制器传输到EEPROM页面内。然后需要5毫秒将数据写入到EEPROM内。具有密度为1Mbit和页面大小为256个字节的1MHz EEPROM需要28毫秒来备份1Kb数据(4x2ms+4x5ms)。
然而使用FRAM时,只要8毫秒(4x2ms)便可以将1Kb数据写入到FRAM中。(这时测量数据从控制器传输到EEPROM缓冲区中所需的总时间。)对于EEPROM,需要3.584秒(512x2ms+512x5ms)传输整个1Mbit数据,但对于FRAM,只需要大约1.024秒(512x2ms)。
图1.写入到EEPROM和FRAM中的流程
实例2:
需要100us将256字节的页面数据通过20MHzSPI总线从控制器传输到EEPROM页面中,然后需要5ms将一页的数据传输到EEPROM。具有密度为1Mbit和页面大小为256个字节的20MHzSPIEEPROM需要20.4ms来备份上述的两个实例显示了零时钟周期写入FRAM中的延迟提高非易失性写入性能优于EEPROM。
EEPROM支持不同的页面大小,在这种情况下的EEPROM中的较低页面大小需要更多页面写操作和更多写周期时间。因此造成额外的写延迟。因为FRAM不是分页的存储器,所以将给定的数据集写入到它时所需的时间不会随存储器的密度而变化。
1Kb的数据(4x100us+4x5ms)。对于FRAM,只需要400us(4x100us)将1Kb的数据写入到FRAM中。(这时间等于数据从SPI控制器传输到EEPROM缓冲区中所需的总时间)。对于EEPROM,需要2.611秒(512x100us+512x5ms)传输整个1Mbit数据,但对于FRAM,只需要大约51.1毫秒(512×100us)。