大容量闪存芯片与DSP接口设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
K9K2G08U0M 没 有 地 址 线 , 命 令 、地 址 和 数 据 信 息 均 是 通 过闪存的 I/O0- I/O7 传输, 另外, 虽然 K9K2G08U0M 的容量达到 了 256MB, 远远大于了 TMS320F2812 的存储区域 Zone2 的容量
技 1MB, 但由于访问 flash 的地址是通过 I/ O 口输 入 , 不 需 要 通 过 地址线寻址, 因此无需考虑采用页面技术解决逻辑存储空间与
3 对 FLASH 操作的 软件设计
本 系 统 的 DSP 编 程 采 用 了 C 语 言 , 首 先 定 义 了 三 个 变 量 FLASH_D, FLASH_A, FLASH_C 作 为 数 据 , 地 址 和 命 令 寄 存 器 用来对 FLASH 读写数据, 地址和命令。
#define FLASH_D 0x08fff0 #define FLASH_A 0x08fff2 #define FLASH_C 0x08fff1
术 物理空间的映射问题, 大大简化了 DSP 与 FLASH 的硬件接口。 由于 K9K2G08U0M 本身具有功能管 脚 较 少 的 优 点,因 此 跟
创 DSP 的连接也相对简单。DSP 和 FLASH 的工作电压均是 3.3V, 因此两者的引脚可以直接连接, 不需要进行电平转换。
新 K9K2G08U0M 的 ALE、CLE 分别由 DSP 的 A1 和 A0 控制。DSP
2 DSP 与 FLASH 的硬件 接口
TI 的 TMS320F2812 采用统一寻址方式, 扩展的外部存储器 K9K2G08U0M 既 可 以 作 为 程 序 存 储 器 , 也 可 以 作 为 数 据 存 储 器。具体接口如图 2 所示。
TMS320F2812 的 外 部 存 储 器 接 口 包 括:19 位 地 址 线 , 16 位 数据线, 3 个片选控制线及读写控制线。这 3 个片选线映射到 5 个 存 储 区 域 , Zone0, Zone1, Zone2, Zone6 和 Zone7, 其 中 Zone2 的 片 选 线 是 CS2, 存 储 区 域 是 :0x080000 - 0x0FFFFF, 512K*16 位。当对存储区域 Zone2 访问时, Zone2 的片选线 CS2 低有效。
到 更 大 容 量 而 无 需 更 改 外 部 连 接 。 因 此 , 本 文 讨 论 的 NAND
FLASH 存 储 器 在 单 片 机 应 用 系 统 中 的 硬 件 连 接 和 软 件 编 程 方
法具有较大的参考价值。
1 K9K2G08U0M 简介
电源电压为 2.7 - 3.6V, 读速度为 80ns; 具有指令/地址/ 数据复用的 I/ O 口; NAND FLASH 的 存 储 结 构 以 页 面 为 单 位,能 使 芯 片 的 读 取 速度更快。 由 2048 个 大 小 相 同 的 存 储 块 组 成 , 每 个 块 由 64 页 组成, 每页 2K 字节和 64 个空闲字节; 1.2 K9K2G08U0M 的引脚说明 图 1 为引脚功能图, 各引脚的功能如下: I/ O0~I/ O7 : 三态, 输入命令、地址和 数 据 以 及 读 操 作 时 输 出数据。当芯片没有被选中或不能输出时, I/ O 口处于高阻态。 CLE: 命令锁存使能。为高电平时, 命 令 通 过 I/O 口 线 在 WE 信号的上升沿被锁入命令寄存器。 ALE: 地 址 锁 存 端 , 在 WE 上 升 沿 且 ALE 为 高 电 平 时 , 地 址锁存。
的低 8 位数据线直接与闪存的 I/O0- I/O7 相连 , 实 现 命 令 、地 址 和数据的传输; DSP 的 通 用 I/O 口 IOA2 接 R/B, 监 测 存 储 器 的 工作状态, 当 R/ B 处于低电平时,表示有编程、擦除或随机读操 作 正 在 进 行 ; 操 作 完 成 后, R/ B 会 自 动 返 回 高 电 平 。DSP 的 W E 、R D 分别接 FLASH 的 W E 、R E , 控制读、写操作。CS2 接 闪存的片选线 CE。
对 FLASH 的 操 作 主 要 包 括 :按 页 读 操 作 , 页 编 程 , 缓 存 编 程, 块擦除, 读状态, 复位等。FLASH 芯片的读写有其特点, 读写 操作都要以扇区为单位进行, 擦除操作是以块为单位, 由于对 FLASH 写 数 据 时 , 位 数 据 只 能 由 1 变 为 0, 因 而 对 FLASH 进 行 写操作前必须把写单元所在块擦除; 因此写操作时, 所要擦除块
《P LC 技术应用 200 例》
邮局订阅号: 82-946 360 元 / 年 - 143 -
DS P 开 发 与 应 用
中 文 核 心 期 刊 《 微 计 算 机 信 息 》( 嵌 入 式 与 S OC )2007 年 第 23 卷 第 7-2 期
令 、地 址 和 数 据 进 行 锁 存 。 WP: 写 保 护 端,在 电 源 电 压 变 化 期 间 , 在 WP 为 低 电 平 时 ,
FLASH 存储器将数据线与地址线复用为 8 条 I/O 线, 另 外 还 分
别 提 供 了 命 令 控 制 信 号 线, 命 令 、地 址 和 数 据 信 息 均 通 过 8 条
图 1 K9K2G08U0M 引脚描述
I/O 线传输, 因此, NAND FLASH 存储器不会因为存储容量的增
加而增加引脚数目, 从而极大方便了系统设计和产品升级, 升级
Abstr act:K9K2G08U0M is the large capacity flash memory of SAMSUNG Electronics, offered in 256Mx8bit. In this paper, the fea-
tures and application of K9K2G08U0M is described. The hardware circuit and program operation method of interfacing FLASH with

在本文的设计中采用的是 TI 的 TMS320F2812 和 三 星 的 闪 存 K9K2G08U0M。K9K2G080M 是三星公司的大容量闪存芯片,

它的单片容量高达 256MB, 属于 NAND FLASH 结构。传统存储
器结构及引脚信号定义方式难以解决存储容量增加的矛盾, 即
存储容量的增加使得 系统的连线复杂并且可 靠 性 降 低 。NAND
分析所包括的基本概念是, 一个语音抽样能够用过去若干个语 音抽样的线性组合来逼近。通过使实际语音抽样和线性预测抽 样 之 间 差 值 的 平 方 和(在 一 个 有 限 间 隔 上)达 到 最 小 值 , 能 够 决 定唯一的一组预测器系 数 (预测器系数是线性组合中所用的加 权 系 数 )。
赵言涛: 硕士研究生
图 2 DSP 与闪存接口 CE: 片选端, 用于控制芯片的选择。当芯片忙时, CE 为高 电平而被忽略, 此时芯片不能回到备用状态。 RE: 读使能端。在 RE 的下降沿,输出数据有效, 并且它还可 以对内部数据地址进行累加。 WE: 写 使 能 端,通 过 该 端 口 可 以 在 WE 脉 冲 的 上 升 沿 将 指
(下转第 154 页)
- 144 - 360元 / 年 邮局订阅号: 82-946
《现场总线技术应用 200 例》
DS P 开 发 与 应 用
中 文 核 心 期 刊 《 微 计 算 机 信 息 》( 嵌 入 式 与 S OC )2007 年 第 23 卷 第 7-2 期
能恰当地反映这种特征。 线性预测分析法是最有效的语音分析技术之一。线性顶测
因 为 K9K2G08U0M 的 ALE、CLE 分 别 由 DSP 的 A1 和 A0 控制, 所以当向命令 寄 存 器 FLASH_C 写 数 据 的 时 候 , 访 问 的 是 DSP 的 存 储 区 域 Zone2, 此 时 Zone2 的 片 选 线 低 有 效 , FLASH 被选中, 地址线 A0 变高, 而引脚 CLE 高电平有效, 此时写到 FLASH_C 的数据 ( FLASH 命令) 通过 I/O 写到闪存。同理, 向 FLASH_A和 FLASH_D 写可分别实现向 FLASH 写 地 址 和 数 据 。 这样设计时, 通过简单的写三个存储器即可分别实现命令, 地 址和数据锁存, 符合操作时序。
TMS320F2812 are provided.
Key wor ds:Inter face,FLASH,TMS320F2812

在有些智能仪器中,需要实时存储大量的采样数据,以提供 历 史 数 据 查 询 。 这 需 要 采 用 大 容 量 、低 功 耗 、可 以 快 速 重 复 擦 写

的非易失性存储器,因此选择闪存作为数据存储介质, 即使系统 掉电, 而所采集到的数据仍能长时间的保持, 不丢失。
您的论文得到两院院士关注 பைடு நூலகம்章编号:1008- 0570(2007)07- 2- 0143- 02
DS P 开 发 与 应 用
大容量闪存芯片与 DS P 接口设计
Th e De s ig n o f In te rfa ce Te ch n o lo g y o f La rg e Ca p a city Fla s h K9K2G08U0M& TMS 320F2812
可产生写/ 擦除保护。 R/ B : 就绪/ 忙输出, R/ B 的输出能够显示芯片的状态。R/
B 处于低电平时,表示有编程、擦除或随机读操作正在进行。操 作完成后, R/ B 会自动返回高电平。
的数据必须事先保存, 然后再对该块进行擦除, 并把数据写到指 定单元, 最后把其余部分恢复过来。因此 FLASH 芯片的写操作 比较复杂, 需要开辟一定的缓冲区对要擦除的块进行保存。
图 3 页编程时序
图 4 页编程流程 下 面 仅 以 页 编 程 为 例 简 要 介 绍 对 FLASH 的 操 作 过 程 , 页 编 程 时 序 如 图 3, 图 4 为 其 流 程 框 图 , 函 数 为 void page _ program( ) ; 页编程时,首先写页编程命令 80H, 可将数据写入到 FLASH 缓冲区, 然后顺序输入待编程存储器的地址共 5 字节, 2 字节 Column Address 和 3 字 节 Row Address,以 及 待 写 入 的 数 据 。 页 编 程 命 令 10H 用 于 实 现 数 据 从 缓 冲 区 到 FLASH 的 编 程 操 作 。 待 R/ B 变为高后, 系统将读状态寄存器, 以判断写操作是否成 功。写命令时,CLE 要有效;写入地址时,ALE 要有效;写入数据时, CLE、ALE 都必须无效。I/ O0~I/ O7 上的命令、地址、数据通常是 在 WE 的上升沿锁存的。I/ O0 等于 0 表示页编程成功, 否则页 编程错误。 void page_program_flash() { unsigned char *Flash_E; unsigned char temp; unsigned int i; Flash_E=FLASH_C; *Flash_E=0x80; Flash_E=FLASH_A; *Flash_E=coladdr1; *Flash_E=coladdr2; *Flash_E=rowaddr1; *Flash_E=rowaddr2; *Flash_E=rowaddr3; Flash_E=FLASH_D; for(i=0;i<2048;i++) { *Flash_E=i; }
(湖南大学)赵 言 涛 刘 铮 彭 永 进 资 道 周
ZHAO YANTAO LIU ZHENG P ENG YONGJ IN ZI DAOZHOU
摘要:K9K2G08U0M 是 三 星 公 司 的 大 容 量 闪 存 芯 片 ,它 的 单 片 容 量 高 达 256MB。文 中 介 绍 了 K9K2G08U0M 的 特 性 和 使 用 方 法 , 重 点 说 明 了 与 TI 的 TMS320F2812 的 硬 件 接 口 和 软 件 编 程 。 关键词:接口; 闪存; TMS320F2812 中图分类号:TP333.5 文献标识码:A
相关文档
最新文档