达拉斯半导体DS89C430超高速微控制器是一款每机器周期1时钟的器件。DS89C430可直接替代旧的8051架构设计。但是,必须评估内存接口时序。本应用笔记介绍了使用DS89C430微控制器时支持的五种总线模式。
介绍
超高速闪存微控制器系列,包括DS89C430和DS89C450,集成了独特的每机器1时钟周期内核以及不同数量的闪存和内部MOVX SRAM。虽然这使得设计一个没有外部存储器组件的完整系统成为可能,但某些应用可能需要通过高速外部存储器总线访问额外的程序和/或数据存储器。该系列中的器件支持多种内存访问模式,允许使用最慢(因此最便宜)的内存器件以最快的速度运行。
任何内存系统的设计都依赖于任意数量的常识规则。始终保持高速地址线短,以尽量减少传输线效应。通过最小化加载次数和/或使用缓冲区,使任何内存信号保持低负载。始终在微控制器、解复用锁存器和存储设备上使用足够的去耦;在使用超高速微控制器进行设计时,这一点尤其重要。
这些规格假设指定信号的容性负载大致相等。但是,如果任何信号连接到额外的负载,则应在关键路径分析中使用额外的裕量,并选择适当的存储器速度。对于其他非常规器件,在设计评估中确认其他重要的时序参数(例如写入激活前的数据设置)可能是明智的。缓冲器可用于最大程度地减少总线负载过重的影响。
本应用笔记有助于系统架构师选择正确的存储器类型和速度,以满足其设计标准。本文讨论了各种外部存储器寻址模式的设计建议和时序考虑因素。本应用笔记中的计算基于编写时的最佳数据。请查看相应的数据手册,了解任何器件的最新信息。
总线模式
当与外部存储器接口时,架构师必须选择五种支持的总线模式之一,每种模式都会对外部存储器时序产生重大影响。每种总线模式使用连接到P0和P2的内存信号的不同配置。各种新模式(页面模式)允许外部存储器接口以不同的速度运行,几乎所有模式都比标准8051存储器接口方案更快。速度改进主要是通过重新排列微控制器的外部总线结构来实现的,使得地址LSB和数据总线与存储器器件具有直接(即,不通过锁存器)连接。这意味着,保存在 '373 锁存器中的地址 MSB 仅在地址跨 256 字节边界转换时才需要更新。一旦 MSB 被锁定,内存访问将以最快的速度(页面点击)执行。在边界交叉(页面未命中)期间更新地址锁存器时,寻呼模式会产生 2 个周期的损失,但在其他方面比传统的 8051 架构运行得更快。
大多数应用程序将使用非页面模式(为了与传统 8051 兼容)或页面模式 1,1 周期(为了尽可能快的速度)。这些总线通常在完成的应用程序中硬连线,不会动态变化。总线模式如下:
非页面模式
页面模式 1(1 周期)
页面模式 1(2 周期)
页面模式 1(4 周期)
页面模式 2
请注意,页面模式操作是通过软件启用的。这意味着为了利用任何页面模式,必须首先从内部闪存开始执行并启用页面模式操作。这是因为微控制器在任何重置后默认为非页面模式。
非页面模式
图 1 显示了传统的 8051 内存接口方案,也称为非页面模式。微控制器的端口 2 显示地址的 A15-A8,而端口 0 显示 A7-0 或数据 D7-D0,具体取决于正在执行内存周期的哪个部分。这是微控制器复位后的默认模式。在本例中,程序中和数据存储器设备都包含在系统中。该系列的成员通过多路复用总线与外部存储器接口,以减少引脚数。因此,需要具有最小传播延迟的外部锁存器(如74ACQ373或74ACQ573)来解复用存储器的地址和/或数据信号。锁存器的内容在每个存储器周期都会发生变化,因此必须仔细选择类型和逻辑系列,因为其传播延迟位于外部存储器接口的关键时序路径中。
图1.非页面模式内存接口。
该模式下的外部存储器时序几乎与DS4C87的每机器周期520时钟相同。在此模式下,没有页面遗漏或点击。无论拉伸周期设置如何,内部闪存或SRAM访问都需要一个系统时钟周期,外部MOVC或代码提取需要四个系统时钟周期。外部 MOVX 操作至少需要四个系统时钟周期。
页面模式 1(1 周期)
这是最快的外部寻址模式。在这种模式下,内部代码获取只需一个时钟周期。由于地址MSB被锁存,允许数据和地址LSB直接连接到存储设备,因此可以提高速度。在页面未命中期间插入一个额外的周期,以便有时间使用新地址 MSB 更新闩锁。此模式的 2 周期和 4 周期版本类似于页面模式 1(1 周期),不同之处在于扩展了外部存储器操作以适应速度较慢的设备。本文档中有关选择程序和数据存储器访问速度的部分假定页面命中周期,因为它比页面未命中周期更快且更关键。页面命中次数的计时计算也适用于页面未命中。
图2.页面模式 1 内存接口。
页面模式 2
这种外部寻址模式将地址MSB和数据多路复用在P2上,并将地址的LSB放在P0上。此总线配置仅提高外部代码获取的速度,因此外部 MOVX 访问的时间与非页面模式相同。
图3.页面模式 2 内存接口。
选择程序存储器访问速度
该微控制器设计用于连接典型的程序存储器技术,如EPROM、闪存或SRAM。在选择存储器件时,必须考虑下面讨论的几个关键的交流时序特性。特定器件的选择通常是一个迭代过程,需要兼顾成本、可用性和存储器的时序参数,这些参数由微控制器的工作频率决定。下表将存储设备时序规格与其微控制器对应项相关联。表中使用的系统时钟频率是外部时钟频率乘以任何晶体乘法因子,即启用10倍乘法器的2MHz外部时钟频率将具有20MHz的系统时钟频率。所有时序都是常见频率的示例;其他频率的精确值可以使用数据手册中给出的公式计算。页面模式的计时假定页面命中,这是时间最关键的序列。通常,存储器时序参数必须小于相应的微控制器值才合适。
1. 从有效地址访问内存的时间。在微控制器中,这通常是阿维夫,在存储设备中它是行政协调会或 t机 管 局.此参数表示存储设备解码 16 位地址并将数据放在数据总线上所需的时间。根据模式的不同,关键时序取决于端口 0 或端口 2。对于非寻页模式,D7-0和A7-0在端口0上的多路复用意味着必须将锁存器的传播延迟添加到公式中。这要求存储器比相应的微控制器时序规格略快。
表 1.t阿维夫计时
System Clock (MHz) | tCLCL (ns) | Non-Page tAVIV* | Page Mode 1 (1-cycle) tAVIV2 | Page Mode 1 (2-cycle) tAVIV2 | tAVIV2 | Page Mode 2 tAVIV2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 68.91 | 10.30 | 25.45 | 55.76 | 23.45 |
25 | 40.00 | 98.00 | 20.00 | 40.00 | 80.00 | 38.00 |
11.0592 | 90.42 | 249.27 | 70.42 | 115.63 | 206.06 | 113.63 |
5 | 200.00 | 578.00 | 180.00 | 280.00 | 480.00 | 278.00 |
*减去地址锁存器的传播延迟以获得准确的t行政协调会对于内存设备。
2. 从输出启用内存的访问时间有效。在微控制器中,这通常是普利夫,在存储设备中它是OE.此参数表示芯片从禁用状态激活其输出所需的时间。在大多数存储器配置中,/PSEN信号用作外部程序存储器器件的输出使能信号。在芯片使能激活之前,必须存在有效地址,此参数才有效。
表 2.t普利夫计时
System Clock (MHz) | tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 40.61 | 10.30 | 10.30 | 40.61 | 10.30 |
25 | 40.00 | 60.00 | 20.00 | 20.00 | 60.00 | 20.00 |
11.0592 | 90.42 | 160.84 | 70.42 | 72.42 | 160.84 | 70.42 |
5 | 200.00 | 380.00 | 180.00 | 180.00 | 380.00 | 180.00 |
3. 数据浮点(总线释放)时间。此参数表示输出使能信号取消置位后内存设备继续驱动总线的时间量。此参数在非寻呼模式和寻呼模式 2 中很重要,因为在每个周期内,总线必须在数据和地址之间切换。这可能是高系统时钟速度下的关键参数,设计人员应确保东风始终小于微控制器参数 tPXIZ.
表 3.tPXIZ计时
System Clock (MHz) | tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 25.30 | N/A | N/A | N/A | 25.30 |
25 | 40.00 | 35.00 | N/A | N/A | N/A | 35.00 |
11.0592 | 90.42 | 85.42 | N/A | N/A | N/A | 85.42 |
5 | 200.00 | 195.00 | N/A | N/A | N/A | 195.00 |
存储设备的信号时序因设备类型而异。内存器件时序的典型采样如下所示。
表 4.对各种内存技术的关键内存时序参数进行采样
K6R1008C1C (SRAM) | -10 | -15 | -20 |
tACC | 10 | 15 | 20 |
tOE | 5 | 7 | 9 |
tOHZ / tDF | 5 | 7 | 9 |
M27C1001-35 (EPROM) | -35 | -45 | -60 |
tACC | 35 | 45 | 60 |
tOE | 25 | 25 | 30 |
tOHZ / tDF | 25 | 25 | 30 |
AM29F010B-45(闪存) | -45 | -70 | -90 |
tACC | 45 | 70 | 90 |
tOE | 25 | 30 | 35 |
tOHZ / tDF | 10 | 15 | 20 |
将这些设备与上面显示的时间进行比较,可以选择合适的存储设备。作为一般经验法则,来自有效地址的访问时间通常是关键时序参数,但建议系统设计人员验证所有存储器时序参数。下图显示了存储设备的相对访问速度。一般来说,SRAM需要以33MHz的频率运行外部代码,但低于25MHz的EPROM或闪存技术就可以了。
图4.内存类型的访问时间的表示。
使用总线模式提高系统性能
尽管寻呼模式 1, 1 周期是最快的外部寻址模式,但在某些情况下,利用其他寻呼模式之一可以提高整体系统速度。这些情况涉及在同一设计中使用内部和外部程序存储器。假设系统设计人员希望使用页面模式 1、1 周期总线以最大速度运行微控制器,但使用非易失性(闪存 EPROM)存储器。一项调查将显示,EPROM的最快访问时间为35ns,这将限制最大系统时钟速度为25MHz。
另一种方法是对软件进行分段,并将最需要时间的部分降级到内部存储器中。然后使用较慢的总线模式之一(如页面模式 1、2 周期或 4 周期)连接到外部存储器。然后,微控制器可以以其最大系统时钟频率运行;内部代码执行将全速进行,不经常发生的外部访问将以稍慢的速度执行。这允许系统同时以最快的速度运行内部和外部代码。
选择数据存储器访问速度
数据存储器接口类似于程序存储器接口,不同之处在于使用/RD和/WR信号。下表将存储设备时序规格与其微控制器对应项相关联。表中使用的系统时钟频率是外部时钟频率乘以任何晶体乘法器因子,例如,启用10倍乘法器的2MHz外部时钟频率将具有20MHz的系统时钟频率。所有时序都是常见频率的示例;其他频率的精确值可以使用数据手册中给出的公式计算。
拉伸周期功能允许微控制器自动延长或拉伸外部数据存储器 (MOVX) 访问,以适应较慢的外部存储器和外设。当微控制器用于升级速度较慢的传统基于 8051 的系统时,这一点尤其重要。此外,还有各种存储器映射外设,如LCD显示器或UART,它们的速度不够快,无法跟上微控制器的步伐。无论拉伸周期设置如何,内部 MOVX 和 MOVC 操作始终以 1 时钟周期执行。
此设备系列的所有成员默认对 MOVX 指令使用一个拉伸循环。为了获得最大速度,应用软件可以写入某些特殊功能寄存器 (SFR) 位,并使 MOVX 指令以零拉伸周期运行。拉伸周期在相应的数据手册和超高速闪存微控制器用户指南中有更详细的介绍。下表假定拉伸值为零,允许外部数据存储器以最快的速度运行。
1. 从有效地址访问内存的MOVX时间。在微控制器中,这通常是tAVDV,而在存储设备中,它通常是行政协调会.此参数表示存储设备解码 16 位地址并将数据放在数据总线上所需的有限时间。根据模式的不同,关键时序取决于端口 0 或端口 2。对于非寻页模式,D7-0和A7-0在端口0上的多路复用意味着必须将锁存器的传播延迟添加到公式中。这要求 tAVDV 略小于 t行政协调会.
表 6.tAVDVx计时
System Clock (MHz) | tCLCL (ns) | Non-Page tAVDV* | Page Mode 1 (1-cycle) tAVDV2 | Page Mode 1 (2-cycle) tAVDV2 | Page Mode 1 (4-cycle) tAVDV2 | Page Mode 2 tAVDV0 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 70.91 | 10.30 | 25.45 | 86.06 | 70.91 |
25 | 40.00 | 100.00 | 20.00 | 40.00 | 120.00 | 100.00 |
11.0592 | 90.42 | 251.27 | 70.42 | 115.63 | 296.48 | 251.27 |
5 | 200.00 | 580.00 | 180.00 | 280.00 | 680.00 | 580.00 |
*减去地址锁存器的传播延迟以获得准确的t行政协调会对于内存设备。
2. 从输出启用内存的访问时间有效。在微控制器中,这通常是RLDV,在存储设备中它是OE.此参数表示存储设备从禁用状态激活其输出所需的时间。在MOVX操作中,/RD信号用作外部程序存储器器件的输出使能信号。在芯片使能激活之前,必须存在有效地址,此参数才有效。
表 7.tRLDV计时
System Clock (MHz) | tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 42.61 | 12.30 | 12.30 | 42.61 | 42.61 |
25 | 40.00 | 62.00 | 22.00 | 22.00 | 62.00 | 62.00 |
11.0592 | 90.42 | 162.84 | 72.42 | 72.42 | 162.84 | 162.84 |
5 | 200.00 | 382.00 | 182.00 | 182.00 | 382.00 | 382.00 |
3. /RD和/WR脉冲宽度。此参数表示置位/RD和/WR选通的时间量。在微控制器中,这通常是RLRH或 t哇��.此参数很重要,因为SRAM对这些参数具有最低规格,必须在高速下保证。
表 8.tRLRH/ 吨哇��计时
System Clock (MHz) | tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 55.61 | 25.30 | 25.30 | 55.61 | 55.61 |
25 | 40.00 | 75.00 | 35.00 | 35.00 | 75.00 | 75.00 |
11.0592 | 90.42 | 175.84 | 85.42 | 85.42 | 175.84 | 175.84 |
5 | 200.00 | 395.00 | 195.00 | 195.00 | 395.00 | 395.00 |
4.数据浮动(总线释放)时间。此参数表示输出使能信号取消置位后内存设备继续驱动总线的时间量。此参数在非寻呼模式和寻呼模式 2 中很重要,因为在每个周期内,总线必须在数据和地址之间切换。这可能是高系统时钟速度下的关键参数,设计人员应确保东风始终小于微控制器参数 tPXIZ.
表 9.t热疗计时
System Clock (MHz) | tCLCL (ns) | Non-Page | Page Mode 1 (1-cycle) | Page Mode 1 (2-cycle) | Page Mode 1 (4-cycle) | Page Mode 2 |
430/50 | 430/50 | 430/50 | 430/50 | 430/50 | ||
33 | 30.30 | 25.30 | N/A | N/A | N/A | 25.30 |
25 | 40.00 | 35.00 | N/A | N/A | N/A | 35.00 |
11.0592 | 90.42 | 85.42 | N/A | N/A | N/A | 85.42 |
5 | 200.00 | 195.00 | N/A | N/A | N/A | 195.00 |
由于程序存储器和数据存储器访问具有相似的时序(未选择拉伸周期时),因此表5提供了页面模式(1周期)和常见微控制器频率的非页面模式的各种系统时钟频率所需的MOVX存储器访问时序的便捷摘要。这是选择数据存储设备的良好起点。