logo资料库

1.3.Cyclone-IV-器件中的存储器模块.pdf

第1页 / 共18页
第2页 / 共18页
第3页 / 共18页
第4页 / 共18页
第5页 / 共18页
第6页 / 共18页
第7页 / 共18页
第8页 / 共18页
资料共18页,剩余部分请下载后查看
3. Cyclone IV器件中的存储器模块
概述
控制信号
奇偶校验位支持
字节使能支持
Packed模式支持
地址时钟使能支持
混合位宽支持
异步清零
存储器模式
单端口模式
简单双端口模式
真双端口模式
移位寄存器模式
ROM模式
FIFO缓冲器模式
时钟模式
独立时钟模式
输入或输出时钟模式
读或写时钟模式
单时钟模式
设计考量
Read-During-Write操作
相同端口Read-During-Write模式
混合端口Read-During-Write模式
冲突解决
上电条件与存储器初始化
功耗管理
文档修订历史
November 2011 CYIV-51003-1.1 CYIV-51003-1.1 概述 3. Cyclone IV 器件中的存储器模块 Cyclone® IV 器件具有嵌入式存储器结构,满足了 Altera® Cyclone IV 器件设计对片上 存储器的需求。嵌入式存储器结构由一列列 M9K 存储器模块组成,通过对这些 M9K 存 储器模块进行配置,可以实现各种存储器功能,例如:RAM、移位寄存器、 ROM 以及 FIFO 缓冲器。 本应用笔记包含以下几部分内容: ■ “ 存储器模式 ”( 第 3-7 页 ) ■ “ 时钟模式 ”( 第 3-14 页 ) ■ “ 设计考量 ”( 第 3-15 页 ) M9K 存储器模块支持以下特性: ■ 每模块 8,192 个存储器位 ( 包括奇偶校验位,每模块共 9,216 位 ) ■ 用于每一个端口的独立读使能 (rden) 与写使能 (wren) 信号 ■ Packed 模式,该模式下 M9K 存储器模块被分成两个 4.5 K 单端口 RAM ■ 可变端口配置 ■ 单端口与简单双端口模式,支持所有端口宽度 ■ 真双端口 ( 一个读和一个写,两个读,或者两个写 ) 操作 ■ 字节使能,实现写入期间的数据输入屏蔽 ■ 用于每一个端口 ( 端口 A 和 B) 的时钟使能控制信号 ■ 初始化文件,在 RAM 和 ROM 模式下预加载存储器中的数据 © 2011 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or service described herein except as expressly agreed to in writing by Altera. Altera customers are advised to obtain the latest version of device specifications before relying on any published information and before placing orders for products or services. ISO 9001:2008 Registered Cyclone IV 器件手册, 卷 1 2011 年 11 月 Subscribe
3–2 第 3 章 :Cyclone IV 器件中的存储器模块 概述 表 3-1 列出了 M9K 存储器所支持的特性。 表 3-1. M9K 存储器特性汇总 特性 配置 ( 深度 × 宽度 ) 奇偶校验位 字节使能 Packed 模式 地址时钟使能 单端口模式 简单双端口模式 真双端口模式 嵌入式移位寄存器模式 (注释 1) ROM 模式 FIFO 缓冲器 (注释 1) 简单双端口混合位宽支持 真双端口混合位宽支持 (注释 2) 存储器初始化文件 (.mif) 混合时钟模式 上电条件 寄存器异步清零 锁存器异步清零 读或写操作触发 相同端口 read-during-write 混合端口 read-during-write 表 3-1 注释: M9K 模块 8192 × 1 4096 × 2 2048 × 4 1024 × 8 1024 × 9 512 × 16 512 × 18 256 × 32 256 × 36 v v v v v v v v v v v v v v 输出端清零 仅限读地址寄存器和输出寄存器 仅限输出锁存器 读写:时钟上升沿 输出端设置为 Old Data 或者 New Data 输出端设置为 Old Data 或者 Don’t Care (1) 需要外部逻辑单元 (LE) 的 FIFO 缓冲器和嵌入式移位寄存器,以实现控制逻辑。 (2) ×32 和 ×36 的位宽模式不可用。 f 要了解关于 Cyclone IV 器件的 M9K 存储器模块数量的详细信息,请参考Cyclone IV器件 手册第 1 卷中的 Cyclone IV器件系列概述章节。 Cyclone IV 器件手册, 卷 1 Altera 公司 2011 年 11 月
第 3 章 :Cyclone IV 器件中的存储器模块 概述 控制信号 3–3 时钟使能控制信号对进入输入与输出寄存器的时钟以及整个 M9K 存储器模块进行控制。 该信号将时钟禁用,使 M9K 存储器模块侦测不到任何的时钟边沿,从而不会执行任何 操作。 rden 与 wren 控制信号控制 M9K 存储器模块的每一个端口上的读写操作。当不需要操作 时,您可以分别将 rden 或者 wren 信号禁用,从而降低功耗。 奇偶校验位支持 通过奇偶校验位以及内部逻辑资源,用于错误检测的奇偶校验检查是可以实现的。 Cyclone IV 器件 M9K 存储器模块支持每一个存储字节含有一个奇偶校验位,您可以将 该位用作奇偶校验位或者额外的数据位。实际上,该位不执行奇偶校验功能。 字节使能支持 Cyclone IV 器件 M9K 存储器模块支持字节使能,该功能屏蔽了输入数据,这样仅写入 数据中的指定字节。未被写入的字节保留之前写入的值。 wren 信号以及字节使能 (byteena) 信号一起控制 RAM 模块的写操作。 byteena 信号默认为高电平 ( 使能的 ), 这种情况下写操作仅由 wren 信号来控制。 byteena 寄存器的清零端口是不存在的。当 写端口具有 ×16, ×18, ×32, 或者 ×36 位数据位宽时,M9K 模块将支持字节使能。 字节使能以独热码的形式运行,并且 byteena 的最低位对应于数据总线的最低字节。 例如,若 byteena = 01,并且在 ×18 模式下使用一个 RAM 模块,则 data[8..0] 被使 能,而 data[17..9] 被禁用。同样地,若 byteena = 11, 则 data[8..0] 以及 data[17..9] 均被使能。字节使能为高电平有效。 表 3-2 列出了字节选择。 表 3-2. Cyclone IV 器件 M9K 模块的 byteena 模块 (注释 1) byteena[3.. 0] [0] = 1 [1] = 1 [2] = 1 [3] = 1 受影响的字节 datain ×16 datain ×18 datain ×32 datain ×36 [7..0] [15..8] — — [8..0] [17..9] — — [7..0] [15..8] [23..16] [31..24] [8..0] [17..9] [26..18] [35..27] 表 3-2 注释: (1) 可能存在字节使能的任意组合。 Altera 公司 2011 年 11 月                                     Cyclone IV 器件手册,                                                         卷 1
3–4 第 3 章 :Cyclone IV 器件中的存储器模块 概述 图 3-1 显示了 wren 和 byteena 信号是如何控制 RAM 操作的。 图 3-1. Cyclone IV 器件 byteena 功能波形图 (注释 1) inclock wren rden address an a0 a1 a2 a0 a1 a2 data XXXX ABCD byteena XX 10 01 11 XXXX XX contents at a0 FFFF contents at a1 FFFF ABFF FFCD contents at a2 q (asynch) 图 3-1 注释: FFFF ABCD doutn ABFF FFCD ABCD ABFF FFCD ABCD (1) 对于这一功能波形,选择 New Data 模式。 当一个 byteena 位在写周期中被置低时,存储器中的旧数据会出现在相应的数据字节 输出端。当一个 byteena 位在写周期中被置位时,相应的数据字节输出取决于 Quartus® II 中所选择的设置。 该设置既可以是在相应位置上新写入的数据,也可以 是原有的旧数据。 1 当单独的M9K存储器模块的PortA以及PortB数据位宽是8位或者9位的倍数时,字节使能 仅适用于真双端口 (True Dual-Port) 存储器配置。 Packed 模式支持 Cyclone IV 器件 M9K 存储器模块支持 packed 模式。在下列条件下,您可以在单一模块 中实现两个单端口存储器模块: ■ 每一个独立模块的容量均小于或等于 M9K 模块容量的一半。每一个独立模块的最大 数据宽度为 18 位宽。 ■ 每一个单端口存储器模块均被配置成单时钟模式。要了解关于 packed 模式支持的详 细信息,请参考第 3-8 页的 “ 单端口模式 ” 和第 3-15 页的 “ 单时钟模式 ”。 Cyclone IV 器件手册, 卷 1 Altera 公司 2011 年 11 月
第 3 章 :Cyclone IV 器件中的存储器模块 概述 地址时钟使能支持 3–5 Cyclone IV 器件 M9K 存储器模块支持低电平有效地址时钟使能,只要 addressstall 信号为高电平 (addressstall = '1'),低电平有效地址时钟使能就会保持之前的地址 值。 当在双端口模式下配置 M9K 存储器模块时,每个端口都有各自独立的地址时钟使 能。 图 3-2 显示了地址时钟使能结构图。通过使用多路复用器,地址寄存器的输出将送回 至它的输入端。多路复用器输出是由地址时钟使能 (addressstall) 信号选择的。 图 3-2. Cyclone IV 器件地址时钟使能结构图 address[0] address[0] register address[0] address[N] register address[N] address[N] addressstall clock 地址时钟使能通常在高速缓存错失期间用于增进高速缓存存储器应用的有效性。地址 时钟使能的默认值为低电平。 Altera 公司 2011 年 11 月                                     Cyclone IV 器件手册,                                                         卷 1
3–6 第 3 章 :Cyclone IV 器件中的存储器模块 概述 图 3-3 和图 3-4 分别显示了读写周期过程中的地址时钟使能波形。 图 3-3. Cyclone IV 器件地址时钟使能在读周期中的波形图 inclock rdaddress a0 a1 a2 a3 a4 a5 a6 rden addressstall latched address (inside memory) an a0 a1 a4 a5 q (synch) doutn-1 doutn dout0 dout1 dout1 dout1 dout4 q (asynch) doutn dout0 dout1 dout1 dout1 dout4 dout5 图 3-4. Cyclone IV 器件地址时钟使能在写周期中的波形图 inclock wraddress data wren a0 00 a1 01 a2 02 a3 03 a4 04 a5 05 a6 06 addressstall latched address (inside memory) an a0 contents at a0 XX a1 00 contents at a1 XX 01 02 contents at a2 contents at a3 contents at a4 contents at a5 XX XX XX XX a5 a4 03 04 05 混合位宽支持 M9K 存储器模块支持混合数据位宽。当使用简单双端口、真双端口、或者 FIFO 模式 时,混合位宽支持实现了读写不同的数据位宽到 M9K 存储器模块。要了解关于每一个 存储器模式所支持的不同位宽的详细信息,请参考第 3-7 页的 “ 存储器模式 ”。 Cyclone IV 器件手册, 卷 1 Altera 公司 2011 年 11 月
第 3 章 :Cyclone IV 器件中的存储器模块 存储器模式 异步清零 3–7 Cyclone IV 器件仅支持读地址寄存器、输出寄存器以及输出锁存器的异步清零操作, 输入寄存器 ( 除了读地址寄存器 ) 不支持异步清零。当对输出寄存器进行异步清零操 作时,异步清零信号即刻对输出寄存器清零,效果立马可见。如果您的 RAM 不使用输 出寄存器,那么通过使用输出锁存器异步清零特性,您仍然能够对 RAM 输出端进行清 零。 1 在读操作过程中,对读地址寄存器置位异步清零有可能会导致存储数据的损坏。 图 3-5 显示了异步清零特性的功能波形。 图 3-5. 输出锁存器异步清零波形图 clk aclr aclr at latch q a1 a2 a0 a1 1 通过使用 Quartus II RAM MegaWizard ™ Plug-In Manager,您可以有选择地使能每个逻 辑存储器的异步清零功能。 f 要了解更多信息,请参考 RAM Megafunction User Guide。 通过三种方式可以对 M9K 模块中的寄存器进行复位: ■ 器件上电 ■ 将 aclr 信号仅用于输出寄存器 ■ 使用 DEV_CLRn 选项来进行全器件复位 存储器模式 Cyclone IV 器件 M9K 存储器模块使您能够在多种操作模式下实现完全同步 SRAM 存储 器。Cyclone IV 器件 M9K 存储器模块不支持异步 ( 未寄存的 ) 存储器输入。 M9K 存储器模块支持下列模式: ■ 单端口 ■ 简单双端口 ■ 真双端口 ■ 移位寄存器 ■ ROM ■ FIFO Altera 公司 2011 年 11 月                                     Cyclone IV 器件手册,                                                         卷 1
3–8 第 3 章 :Cyclone IV 器件中的存储器模块 存储器模式 1 M9K 存储器模块输入寄存器上建立及保持时间的违规将可能导致存储器数据的损坏,这 种情况会发生在读写操作期间。 单端口模式 单端口模式支持从单一地址上的异时读写操作。图 3-6 显示了 Cyclone IV 器件 M9K 存 储器模块的单端口存储器配置。 图 3-6. 单端口存储器 (注释 1), (注释 2) data[ ] address[ ] wren byteena[] addressstall inclock inclocken rden aclr q[] outclock outclocken 图 3-6 注释: (1) 您可以在单一 M9K 模块上实现两个单端口存储器模块。 (2) 欲了解更多信息,请参考第 3-4 页的 “Packed 模式支持 ”。 写操作期间,RAM 输出行为是可以配置的。如果在写操作期间激活 rden 信号,则 RAM 输出端会显示相应地址上正在写入的新数据,或者原有的旧数据。 如果在 rden 信号未 激活的情况下执行写操作,那么 RAM 输出端将保留它们在最近的 rden 信号有效期间所 保持的值。 要选择所需的行为,需要在 Quartus II 的 RAM MegaWizard Plug-In Manager 中,将 Read-During-Write 选项设置成 New Data 或者 Old Data。欲了解关于 read-during- write 模式的详细信息,请参考第 3-15 页的 “Read- During- Write 操作 ”。 单端口模式下,M9K 模块的端口位宽配置如下所示: ■ 8192 × 1 ■ 4096 × 2 ■ 2048 × 4 ■ 1024 × 8 ■ 1024 × 9 ■ 512 × 16 ■ 512 × 18 ■ 256 × 32 ■ 256 × 36 Cyclone IV 器件手册, 卷 1 Altera 公司 2011 年 11 月
分享到:
收藏