在进入嵌入计算行业 30 年之际, 英特尔推出四核处理器
嵌入睿智™尽现精彩
英特尔®续写嵌入式的历史
通向Clovertown之路
More...
前 30 年的回顾和后 30 年的展望
针对行业服务器应用,优化双核处理技术
英特尔历经 30 年风雨,凭借开放标准构建模块,全面推动嵌入式创新
用于内置、通讯和存储用途的四核英特尔® XEON® 处理器 5300 系列
More...
为有需要的专业人士迅速提供医疗和健康信息
车载信息娱乐(IVI)魅力无限
在产品的整个生命周期中为其提供保护
多核虚拟化技术支持增强的性能与较低的成本
多核软件调试向传统方法提出挑战
More...
英特尔®嵌入式部门助力凌华科技打造融合应用平台网络通讯主板
英特尔处理器构建新一代高性能UTM硬件平台
英特尔®至强®助力华为3Com 出击 IP 存储市场
英特尔穗彩科技合力打造"双显"彩票投注机
More...
构筑卓越网络长城
多核处理器助力基于ATCA 的家庭用户系统
RadiSys 嵌入式解决方案
嵌入式电脑之大趋势
More...
英特尔® P4 级 PC/104单板电脑104-1711CLDN
RadiSys COM Express
DesignWare® USB IP 解决方案
RTX
Windows® Embedded CE 6.0
More...
Extension Media
Chip Design
EE Catalog
Tech Guide Online
Embedded Intel® Solutions
 
:: HOME ::
  针对英特尔® 串行闪存(S33)优化系统内生产编程

作者:Data I/O


简介
串行内存设备凭借高性能和低成本特性, 在电子设计领域占据主流地位。采用串行 内存的产品还具备系统内可编程(ISP)的 优势,能够将编程和测试集成到单一生产 阶段,并在制造进程中更改代码。但是, 为了充分利用这些能力,我们必须对 PCB 设计环节进行全面把握。制造包含串行内 存设备的产品虽然看似容易,但实际情形 却并非如此。参考一些简单的指南记录可 确保一次性制造成功。

本文主要介绍基于英特尔® 串行闪存 (S33)设备和 Data I/O ImageWriter 的 PCB 设计指南及示范场景。

从 PCB 设计开始
如果您没有在 PCB 设计中考虑编程问题,那么生产出的 主板设备可能很难或者无法进行系统内编程。不过值得庆 幸的是,对于串行内存设备而言,一些指南可以帮助您在 PCB 上设计出用于编程的制造设备。
  • 指南 1:针对编程引脚访问的设计
    PCB 设计必须能够对设备制造商指定的编程引脚进行充 分的访问。编程引脚至少应具有多个测试点,这样才能 在测试夹具中进行轻松访问。SPI 串行内存设备至少拥有 4 个编程引脚:数据输入(Data In)、数据输出(Data Out)、时钟(Clock)和芯片选择(Chip Select)。
  • 指南 2:为串行内存设备提供动力
    主板的适当层面和串行内存设备上必须具备 Vcc。其它板 上电路也起着非常重要的作用。在一些情况下,主板可在 ISP 操作过程中采取部分供电形式,但前提是这种设计必须 支持。
  • 指南 3:针对争用的设计
    确保系统内编程设备能够对要编程的设备进行自由电气访 问,这点非常重要。在大多数设计中,串行内存设备大多 与处理器或其它逻辑设备连接。这样一来,串行内存与其 它处理器或设备间有可能会争用共享 I/O 线缆。例如,如 果直接将一个重置生成器与其它处理器或设备进行连接, 并且在编程过程中不进行隔离,那么通常会出现问题。此 外,还存在一些其它潜在的争用问题,包括:占用太多用于 ISP 设备驱动程序电流的指示灯;造成潜在的慢边缘的电容 器;或产生冲突信号的逆变器。上述许多问题都可以通过 添加系列电阻器和缓冲器来解决。最完美的 PCB 设计解决 方案应该能够确保 I/O 引脚具备高阻抗(高-Z)能力。
英特尔® 串行闪存(S33)和 ImageWriter
英特尔引入了一系列高密度、高性能串行闪存设备,如果 充分发挥它们的功效,可以轻松提高工作效率。借助优化 的 Data I/O ImageWriter 的 ISP 流程和英特尔® S33 串行 内存设备,可大幅提高您的内存吞吐率。

初始数据设置
针对编程方面,设计行业存在的基本挑战是:验证唯一数 据是否在合适的时间、正确的位置进行编程。只有高质量 的流程才能得出可控的一致结果。

ImageWriter 借助分离动态数据与静态数据来实施双内存 架构。这种分离能够一次性设置静态数据,并可验证校验 和或 CRC32 结果在不变化的数据扇区的正确性。在制造 前,IW 工具(包含在 ImageWriter 中的软件)可用于将 任何类型的格式化或原始二进制数据文件下载到静态内存 中。

同时,在每次编程操作前,随着接受编程的 PCB 的变化而 变化的定制数据,都会被下载并存储到 ImageWriter 的动 态内存中。

扇区和擦除考虑
编程过程中首要考虑的问题是您的目标设备是否已经擦 除。如果您要对非空白状态的扇区进行重新编程(所有位 置 0xFF),那么您需要确保编程流将会擦除该设备的相应 扇区。另一方面,如果您确信设备为 100% 空白,则可以 忽略擦除步骤(通常为 10-40 秒),节省宝贵时间。

英特尔® S33 设备支持两种擦除操作:芯片擦除,全面擦除 所有扇区;扇区擦除,一次擦除一个独立扇区。如果只需执行部分编程,而且时间有限,则扇区擦除比芯片擦除更 合适。ImageWriter 设备对象“芯片擦除”与闪存阵列容 量相同,通过调用程序法和发送要擦除的扇区内的地址参 数进行工作。同样,内存开始(Memory Start)参数可以 是任何有效值。对于 ImageWriter,一个程序命令只能擦除 一个扇区,如果要擦除多个扇区,就要发送与需要擦除的 扇区数目相同的程序命令。

部分数据编程
如果需要编入设备的数据量小于设备总容量,则可以借助 部分块容量操作来节省时间。设备中开始地址可以是任意 有效地址,即使该地址超出页面边界也没关系。

为了优化验证,编程完成后,可仅对部分编程的块进行检 查;亦或对整个设备进行验证,确保剩余数据设置的排序 正确。如果编程过程中使用了多种配置,则 ImageWriter 的静态内存中会存储多个验证映像。

交错程序和验证步骤有助于尽可能快地检测到进程中存在 的编程错误。如果在编程之后执行所有验证步骤时,设备 均通过了验证,则可得到相同的最终结果。但是,如果设 备未通过验证,则会延长总的处理时间。在 IW 工具中设置 编程流程时需注意这一点。

ImageWriter 支持对多数设备对象上的大部分编程操作 进行每字节分解。也就是说,您可以对设备中邻近内存 块中任意地址的数据进行编程。出色的处理灵活性,是 ImageWriter 使用模型最强大的功能之一。如果对象块限 制被“锁定”,则您尝试在部分对象容量中进行编程时, 将收到“Error 0813: No partial block limits can be set on this object”的提示。通常,配置或 ID 类设备对象具有锁 定块限制功能,而闪存或设备的其它“主阵列”扇区却没 有这些功能。

OTP 特殊数据编程
OTP 区域通常通过支持不可变的串行化及独特的数据编 程,增强系统设计的安全性,从而利用唯一标识符提供的 跟踪能力实现防欺诈保护。

S33 串行闪存包含 2 个 8 字节、30 个 16 字节、1 个 10 字 节可独立锁定的 OTP(一次性编程)区域,以及只读 64 位 唯一出厂设备标识符。一旦可访问的客户扇区编程完毕, 每一扇区均可单独锁定,以防重复编程。这些区域包含在 一个与主阵列相分离的地址空间内,并可被 ImageWriter 用作“Flash OTP”设备对象。

这些增强的安全性需求以及动态数据的固有特性,深受 ISP 欢迎。OTP 扇区的编程可与静态主内存扇区归入相同的流 程,并可在尽可能接近制造流程末尾时完成。ImageWriter 可通过静态数据与动态数据相分离的双内存架构,提供快 速可靠的定制数据编程。

OTP 扇区的编程可通过 IW 流程中的“Flash OTP”对象来 实现。该对象块限制为“锁定”状态。如果您尝试对 OTP 中部分扇区对象进行编程,将会收到一条错误讯息。也就 是说,您必须使用与整个 OTP 内存映射相匹配的映像文 件,其对于您不想设置的任何保护寄存器均包含覆盖 0xFF 值。英特尔保留区域(包含 64 位唯一出厂设备标识符)可 供加载,但不会对验证操作产生任何影响。

如欲了解有关 ImageWriter 的更多信息,请阅读 ImageWriter 集成指南或访问 ISP 网页:http://www.dataio.com/isp

如欲了解有关英特尔® 串行闪存(S33)的更多信息,请访 问英特尔网站: http://developer.intel.com/design/flcomp/prodbref/s33.htm

  达特电子(上海)有限公司
Data I/O (Shanghai) Electronics Co., Ltd
上海市浦东大道 138 号
永华大厦 25 楼 A 座 200120
电话 021.5882.7686
传真 021.5882.5053
www.dataio.com.cn

 


 
 
Copyright © 2007 Extension Media, Inc. All rights reserved.