实例说明写入FRAM的零时钟周期延迟的影响

2023-10-12 00:30

本文主要是介绍实例说明写入FRAM的零时钟周期延迟的影响,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写入FRAM的零时钟周期延迟

一个典型的EEPROM需要5毫秒的写周期时间,以将其页面数据转移到非易失性EEPROM内。当需要写入几千字节的数据时,会导致写入时间较长。相比之下的FRAM不会使这种写操作变慢;所有写操作按总线速率 进行,并非基于存储器延迟。下面两个实例和图1说明写延迟的影响。

实例1:
需要2毫秒将256字节的页面数据通过1MHz 1C总线从控制器传输到EEPROM页面内。然后需要5毫秒将数据写入到EEPROM内。具有密度为1Mbit和页面大小为256个字节的1MHzCEEPROM需要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)。

这篇关于实例说明写入FRAM的零时钟周期延迟的影响的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/191931

相关文章

C#实现将XML数据自动化地写入Excel文件

《C#实现将XML数据自动化地写入Excel文件》在现代企业级应用中,数据处理与报表生成是核心环节,本文将深入探讨如何利用C#和一款优秀的库,将XML数据自动化地写入Excel文件,有需要的小伙伴可以... 目录理解XML数据结构与Excel的对应关系引入高效工具:使用Spire.XLS for .NETC

Springboot的配置文件及其优先级说明

《Springboot的配置文件及其优先级说明》文章介绍了SpringBoot的配置文件,包括application.properties和application.yml的使用,以及它们的优先级,还讨... 目录配置文件内置配置文件yml与properties的比较优先级比较外置配置文件springboot

java中4种API参数传递方式统一说明

《java中4种API参数传递方式统一说明》在Java中,我们可以使用不同的方式来传递参数给方法或函数,:本文主要介绍java中4种API参数传递方式的相关资料,文中通过代码介绍的非常详细,需要的... 目录1. 概述2. 参数传递方式分类2.1 Query Parameters(查询参数)2.2 Path

Nginx服务器部署详细代码实例

《Nginx服务器部署详细代码实例》Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,:本文主要介绍Nginx服务器部署的相关资料,文中通过代码... 目录Nginx 服务器SSL/TLS 配置动态脚本反向代理总结Nginx 服务器Nginx是一个‌高性

使用Python将PDF表格自动提取并写入Word文档表格

《使用Python将PDF表格自动提取并写入Word文档表格》在实际办公与数据处理场景中,PDF文件里的表格往往无法直接复制到Word中,本文将介绍如何使用Python从PDF文件中提取表格数据,并将... 目录引言1. 加载 PDF 文件并准备 Word 文档2. 提取 PDF 表格并创建 Word 表格

Linux内核定时器使用及说明

《Linux内核定时器使用及说明》文章详细介绍了Linux内核定时器的特性、核心数据结构、时间相关转换函数以及操作API,通过示例展示了如何编写和使用定时器,包括按键消抖的应用... 目录1.linux内核定时器特征2.Linux内核定时器核心数据结构3.Linux内核时间相关转换函数4.Linux内核定时

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

JAVA线程的周期及调度机制详解

《JAVA线程的周期及调度机制详解》Java线程的生命周期包括NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING和TERMINATED,线程调度依赖操作系统,采用抢占... 目录Java线程的生命周期线程状态转换示例代码JAVA线程调度机制优先级设置示例注意事项JAVA线程

Java之ServerSocket使用及说明

《Java之ServerSocket使用及说明》本文介绍了Java中ServerSocket类的使用方法,包括创建ServerSocket对象、绑定端口、监听连接请求、接受连接、关闭连接等常用方法,还... 目录前言常用方法使用案例1.实现TCP2.实现UDP总结前言Java中的ServerSocket

Java Exception与RuntimeException使用及说明

《JavaException与RuntimeException使用及说明》:本文主要介绍JavaException与RuntimeException使用及说明,具有很好的参考价值,希望对大家有所... 目录简介ExceptionRuntimeException自定义异常选择继承Exception(受检异常)