一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

即时性能增强与Flash微控制器

来源:analog 发布时间:2024-02-19

摘要: 89C430/50 1时钟8051与Atmel和Philips 89C51RD2 6时钟微控制器的插入式替换比较。

超高速闪存微控制器(UHSFM)是5V, 1时钟8051集成闪存和SRAM。这些uhsfm插入到现有的8051应用程序中,并提供即时的速度提升。本应用笔记讨论了将现有8051应用程序移植到UHSFM系列可能需要的简单步骤。介绍了这样做的好处。

介绍

超高速微控制器(UHSM)是5V, 1时钟8051集成闪存和SRAM。这些uhsm插入到现有的8051应用程序中,并且几乎不需要付出任何努力,就能立即提高速度。在大多数情况下,uhsm与原始8051 100%兼容,因此通常不需要更改硬件或代码。目前有三种uhsm可用:DS89C430, DS89C440和DS89C450,分别具有16K, 32K或64K的闪存。本文描述了将原始8051应用程序移植到UHSM可能需要的简单步骤。介绍了使用超高频调制解调器的好处。

体系结构

如上所述,UHSM是一个单时钟周期8051,指令兼容原来的8051依赖于一个12时钟周期架构。在相同的时钟频率下,将每条指令的时钟数量减少到一个,可以使性能比原始8051提高12倍。可选的是,这还提供了在较低时钟频率下运行的能力,并在降低整体系统功耗的同时产生相同的性能。

为了获得更高的性能和降噪,UHSM还集成了一个时钟乘法器,允许外部晶体倍增两倍或四倍。例如,UHSM可以在现有的7.372MHz 8051设计中使用,并在内部运行时钟四倍的29.49 MHz。29.49MHz的板载时钟率不仅提高了性能,而且通过在微控制器内部保持这种高频隔离,外部噪声也保持在最低限度。这大大降低了电磁干扰。

uhsm包含几个额外的功能,使它们成为新设计的绝佳选择:

  • 具有自动递增/递减和切换选择的双数据指针

  • 应用内可编程Flash

  • 用于MOVX的1K字节SRAM

  • 电源管理模式:空闲模式、停止模式、除以1024模式

  • 两个串口

  • 看门狗定时器

  • 断电复位和断电预警中断

兼容性

代码

UHSM与8051指令兼容,在大多数情况下不需要更改代码。然而,基于代码的计时循环必须根据单周期指令计时进行重写和重新计算。为了进一步利用uhsm的性能增强,还需要对代码进行一些小的更改。一个例子是在计时器上使用除以4选项来允许更高的波特率。另一个例子是使用数据指针auto inc/dec选项来加速复制、清除和比较操作。

片上闪存消除了对外部代码存储器的需求,内置SRAM使应用程序消除了对外部数据SRAM的需求。

定时器/串行端口

UHSM可以在外部晶体上以除以12模式(原始8051)运行每个定时器,或从乘时钟(1,2或4)中以除以4模式运行。这允许现有的8051定时器和串行代码不加修改地运行,并提供更高波特率的选项,如果需要新的设计。CKCON寄存器位,TxM,管理12/4时钟选择。

硬件

因为UHSM是5V设计,所以它只会在5V系统中下降而不会改变。外部内存访问被默认设置为3个机器周期(12个系统时钟),但是可以通过CKCON寄存器通过使用拉伸周期来修改,以允许使用较慢的数据内存。

表演

很难找到一个任何两个人都能认同的合理的性能基准。在任何情况下,内存拷贝的速度、CRC生成和中断延迟可能是大多数设计人员感兴趣的,下面将对它们进行分析。作为奖励,SHA-1安全散列的性能被作为高级C基准纳入其中。SHA-1是内存和代码密集型的,与现代嵌入式应用程序非常相关。

本节中的竞争性性能数字将被标记为“12时钟”、“6时钟”或“1时钟”,指的是每个数字背后的8051架构。飞利浦P89C51RD2和Atmel AT89C51RD2用于12和6时钟性能数字,因为它们可以在12或6时钟模式下运行,并且是5V闪存微控制器。对于1时钟数字,使用DS89C440。请注意,6时钟微控制器的速度正好是12时钟微控制器的两倍。在UHSM的情况下,即使每台机器的时钟周期已经减少到一个,但并不是所有的操作码都可以在一个周期内执行(例如DIV AB需要10个周期)。

Memcopy

表1给出一个使用两个数据指针的标准8051复制循环的时钟分解。UHSM比12时钟8051快9倍,比6时钟8051快4.5倍。

表1。显示超高频同步时钟周期优势的Memcopy例程

代码12-Clock6钟1-Clock
MOVX, @DPTR24122
公司焦度24121
公司DPS1263.
MOVX @DPTR,24122
公司焦度24121
公司DPS1263.
djz0,循环24124
总时钟周期1447216


表2显示了使用UHSM的自动增量和自动切换特性的优化memcopy实现的结果。具有优化memcopy例程的UHSM比12时钟8051快18倍,比6时钟8051快9倍。

表2。优化Memcopy例行时钟周期。

代码1-Clock
MOVX, @DPTR2
MOVX @DPTR,2
djz0,循环4
总时钟周期8


CRC16

CRC的使用在许多嵌入式应用程序中是重要的,用于验证数据完整性。中附录1表5中的CRC16示例DS19xx iButton标准手册1是一个优化的实现。当在12时钟8051上运行时,UHSM的速度超过12倍;与6时钟8051相比,它快了6倍多。

中断延迟

中断延迟可以用两种方式来描述:直到中断被服务的时间延迟,以及完全服务中断向量的时间。

因为中断矢量只能发生在指令之间,所以最长的操作码加上调用时间就是最坏情况下的延迟。在本文评估的8051上,DIV AB是最长的指令,因此最坏情况下的“延迟到向量”将是DIV AB加上隐式的矢量LCALL。8051内核插入LCALL指令来强制执行转换为中断向量例程。在这个例子中,UHSM比12时钟8051快5.5倍,比6时钟8051快2.7倍。看到表3

我们将使用一个简单的中断服务例程来比较UHSM与原始8051的“返回之前的延迟”。执行时间是指从第一个中断向量指令到RETI完成之间所花费的时间。在这个例子中,UHSM比12时钟8051快7.2倍,比6时钟8051快3.6倍。看到表4

表3。中断向量的最坏情况延迟

代码12-Clock6钟1-Clock
DIV AB482410
隐含LCALL24123.
总时钟周期723613


表4:中断服务例程示例

代码12-Clock6钟1-Clock
CPL P1.11262
RETI24123.
总时钟周期36185


C示例:SHA-1安全哈希

安全功能的使用在嵌入式系统中非常普遍,散列SHA-1就是目前广泛使用的安全功能。安全哈希算法很容易在C中编码。对于本例,使用Keil C编译器版本7.5构建跨每个被比较的微控制器的实现。对于所有平台,选择了编译器选项来使用双数据指针、内部内存、8级优化和速度优化。所有微型机在11.0592MHz下运行。UHSM比12时钟8051快11倍,比6时钟8051快5.5倍。表5列出了一个块SHA-1运行的结果。

表5所示。显示UHSM优势的SHA1结果

代码12-Clock6钟1-Clock
SHA-1单块
(哈希/秒)在11.0592MHz
3.196.4135.59
SHA-1单块
(哈希/秒)在33MHz
9.5219.13106.20


结论

使用像DS89C4X0系列这样的超高频调制解调器,设计人员可以替换现有的8051设计,更新旧设计,或者创建原始8051无法实现的新设计。UHSM允许软件和硬件的灵活性,因为它不需要更改工具、源代码或硬件环境。可以根据需要使用高级功能,即使不使用这些功能,也可以实现速度的巨大提升。对于基于8051微控制器的系统来说,UHSM是最简单的升级途径,对于需要标准8051无法提供的处理能力的新应用,应该考虑使用UHSM。

1 DS19xx iButton标准手册。

声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: