位置:51电子网 » 技术资料 » 接口电路

基于TMS320C54x的便携存储设备设计

发布时间:2008/5/28 0:00:00 访问次数:534

摘 要:本文介绍了一种以tms320c54x为核心的移动存储终端,终端中使用nand flash作为存储器件。讨论了tms320c54x对nand flash的编程以及接口设计。
关键词:dsp;nand;flash

引言
移动存储终端包括手机、掌上电脑、pda和数码相机等手持设备及各种信息家电。在这类产品中既要结合存储功能,又需要具备一定的信号处理能力,因此基于dsp芯片的设计方案成为这些产品的主流方案。同时,为了降低产品成本,采用具有较高容量/价格比的nand flash存储芯片也成为移动存储设备的首选。本文介绍在基于tms320c54x的移动存储设备中,nand flash的设计和应用。

系统构成
本系统以tms320c5409作为核心芯片,完成控制和信号处理功能。使用两块内存芯片:intel公司的4mb flash芯片28f004b3存放系统的启动代码,采用samsung公司的nand flash芯片作为用户数据的存储芯片。
tms320c5409
tms320c5409是一款定点dsp芯片,其主要应用是无线等通信系统。它的主要特点包括:(1)运算速度快。(2)具有优化的cpu结构。(3)具有低功耗方式。(4)具有较多的智能外设。除了标准的串行口和时分复用(tdm)串行口外,还提供了自动缓冲串行口bsp和与外部处理器通信的hpi(host port interface)接口。bsp可提供2k字数据缓冲的读写能力,从而可以降低处理器的额外开销,即使在idle方式下,bsp也可以全速工作。hpi可以与外部标准的微处理器直接接口。同时,还具有i/o口等控制信号。
nand flash
在移动存储设备中,由于nand的存储容量大,因此得到了广泛的应用。本系统采用samsung公司的nand flash芯片k9f5608u0m-ycb0进行存储。该芯片存储容量为32mb,其中主数据区为32mb,辅助数据区为1mb,工作电压为2.7~3.6v,i/o端口宽度为8位。
nand flash芯片的内存按页和块的结构组织,其中每个数据页内有528个字节,前512个字节为主数据存储器,存放用户数据,后16个字节为辅助数据存储器,存放ecc代码,坏块信息和文件系统代码。每个数据块包含32个页,一片k9f5608u0m包括2048个块。
nand flash芯片内有一个容量为528字节的静态寄存器,称为页寄存器,用来在数据存取时作为缓冲区使用。编程数据和读取的数据可以在寄存器和存储阵列中按528个字节的顺序递增访问。当对芯片的某一页进行读写时,其数据首先被转移到该寄存器中,通过这个寄存器和其它芯片进行数据交换,片内的读写操作由片内的处理器自动完成。
nand flash的接口引脚分为三类:数据引脚、控制引脚和状态引脚。其中数据接口高度复用,既用作地址总线,又用作数据总线和命令输入接口。本系统采用的芯片有8个i/o数据引脚(i/o1~i/o8),用来输入/输出地址、数据和命令。控制nand flash的控制引脚有5个,其中cle和ale分别为命令锁存使能引脚和地址锁存使能引脚,用来选择i/o端口输入的是命令还是地址。/ce、/re和/we分别为片选信号,读使能信号和写使能信号。状态引脚r/b表示设备的状态,当数据写入、编程和随机读取时,r/b处于高电平,表明芯片正忙,否则输出低电平。

系统连接及配置
tms320c5409具有16根数据总线和23根地址总线,可以对memory和i/o口进行扩展。由于nand flash的存储速度较慢,因此使用i/o空间对其进行访问。cle和ale 分别由地址线a1和a0控制,nand flash对应的映射地址如表1所示。
dsp采用xf作为nand flash的片选信号。状态输出信号r/b与bio相连,作为dsp对nand flash的状态监控。dsp与nand flash的连接关系如图1所示。
由于nand flash中的程序无法直接运行,因此需要将程序代码存储在其它芯片中。系统采用intel flash芯片28f004b3作为boot区域使用,按照扩展memory对其进行访问。连接关系也如图1所示。
系统启动时,c5409芯片的boot流程将flash芯片28f004b3中的可执行代码搬移到片内ram中,然后在dsp片内运行程序。上电后自动进入读模式状态,利用xf作为控制引脚对nand flash进行片选,可以根据系统的各种请求读写用户数据。

读写控制的实现
nand flash主要用于大块的数据存储,因此数据读写都是基于页的。在程序中,由于nand flash的宽度为8 bit,因此dsp进行读写时只利用c5409数据线的低8bit。对于nand flash而言,通常只处理其主数据区的512个字节,辅助数据区不使用。在以文件为基础的存储产品中我们需要对辅助数据区进行处理。同时由于nand flash允许芯片中存在坏块,因此在读写时需要绕过。
本系统使用nand flash的基本操作有以下三种:读一页数据,写一页数据,块擦除。在这几种方式下,每次的地址配置,其页内地址a0~a7均为0,a9~a24选定所在的页。
dsp读数据时,首先置低xf,对nand flash进行片选,然后向i/o端口0x0001发送read命令,配置完read命令后,向i/o端口0x0002发送地址信号,对地址进行选定。此后从i/o端口0x0000连续进行512个字节的读操作,完成对整个页的读取。最后拉高xf。
dsp写入nand flash的操作也以页为基本单位,首先置低xf片选nand flash,然后

摘 要:本文介绍了一种以tms320c54x为核心的移动存储终端,终端中使用nand flash作为存储器件。讨论了tms320c54x对nand flash的编程以及接口设计。
关键词:dsp;nand;flash

引言
移动存储终端包括手机、掌上电脑、pda和数码相机等手持设备及各种信息家电。在这类产品中既要结合存储功能,又需要具备一定的信号处理能力,因此基于dsp芯片的设计方案成为这些产品的主流方案。同时,为了降低产品成本,采用具有较高容量/价格比的nand flash存储芯片也成为移动存储设备的首选。本文介绍在基于tms320c54x的移动存储设备中,nand flash的设计和应用。

系统构成
本系统以tms320c5409作为核心芯片,完成控制和信号处理功能。使用两块内存芯片:intel公司的4mb flash芯片28f004b3存放系统的启动代码,采用samsung公司的nand flash芯片作为用户数据的存储芯片。
tms320c5409
tms320c5409是一款定点dsp芯片,其主要应用是无线等通信系统。它的主要特点包括:(1)运算速度快。(2)具有优化的cpu结构。(3)具有低功耗方式。(4)具有较多的智能外设。除了标准的串行口和时分复用(tdm)串行口外,还提供了自动缓冲串行口bsp和与外部处理器通信的hpi(host port interface)接口。bsp可提供2k字数据缓冲的读写能力,从而可以降低处理器的额外开销,即使在idle方式下,bsp也可以全速工作。hpi可以与外部标准的微处理器直接接口。同时,还具有i/o口等控制信号。
nand flash
在移动存储设备中,由于nand的存储容量大,因此得到了广泛的应用。本系统采用samsung公司的nand flash芯片k9f5608u0m-ycb0进行存储。该芯片存储容量为32mb,其中主数据区为32mb,辅助数据区为1mb,工作电压为2.7~3.6v,i/o端口宽度为8位。
nand flash芯片的内存按页和块的结构组织,其中每个数据页内有528个字节,前512个字节为主数据存储器,存放用户数据,后16个字节为辅助数据存储器,存放ecc代码,坏块信息和文件系统代码。每个数据块包含32个页,一片k9f5608u0m包括2048个块。
nand flash芯片内有一个容量为528字节的静态寄存器,称为页寄存器,用来在数据存取时作为缓冲区使用。编程数据和读取的数据可以在寄存器和存储阵列中按528个字节的顺序递增访问。当对芯片的某一页进行读写时,其数据首先被转移到该寄存器中,通过这个寄存器和其它芯片进行数据交换,片内的读写操作由片内的处理器自动完成。
nand flash的接口引脚分为三类:数据引脚、控制引脚和状态引脚。其中数据接口高度复用,既用作地址总线,又用作数据总线和命令输入接口。本系统采用的芯片有8个i/o数据引脚(i/o1~i/o8),用来输入/输出地址、数据和命令。控制nand flash的控制引脚有5个,其中cle和ale分别为命令锁存使能引脚和地址锁存使能引脚,用来选择i/o端口输入的是命令还是地址。/ce、/re和/we分别为片选信号,读使能信号和写使能信号。状态引脚r/b表示设备的状态,当数据写入、编程和随机读取时,r/b处于高电平,表明芯片正忙,否则输出低电平。

系统连接及配置
tms320c5409具有16根数据总线和23根地址总线,可以对memory和i/o口进行扩展。由于nand flash的存储速度较慢,因此使用i/o空间对其进行访问。cle和ale 分别由地址线a1和a0控制,nand flash对应的映射地址如表1所示。
dsp采用xf作为nand flash的片选信号。状态输出信号r/b与bio相连,作为dsp对nand flash的状态监控。dsp与nand flash的连接关系如图1所示。
由于nand flash中的程序无法直接运行,因此需要将程序代码存储在其它芯片中。系统采用intel flash芯片28f004b3作为boot区域使用,按照扩展memory对其进行访问。连接关系也如图1所示。
系统启动时,c5409芯片的boot流程将flash芯片28f004b3中的可执行代码搬移到片内ram中,然后在dsp片内运行程序。上电后自动进入读模式状态,利用xf作为控制引脚对nand flash进行片选,可以根据系统的各种请求读写用户数据。

读写控制的实现
nand flash主要用于大块的数据存储,因此数据读写都是基于页的。在程序中,由于nand flash的宽度为8 bit,因此dsp进行读写时只利用c5409数据线的低8bit。对于nand flash而言,通常只处理其主数据区的512个字节,辅助数据区不使用。在以文件为基础的存储产品中我们需要对辅助数据区进行处理。同时由于nand flash允许芯片中存在坏块,因此在读写时需要绕过。
本系统使用nand flash的基本操作有以下三种:读一页数据,写一页数据,块擦除。在这几种方式下,每次的地址配置,其页内地址a0~a7均为0,a9~a24选定所在的页。
dsp读数据时,首先置低xf,对nand flash进行片选,然后向i/o端口0x0001发送read命令,配置完read命令后,向i/o端口0x0002发送地址信号,对地址进行选定。此后从i/o端口0x0000连续进行512个字节的读操作,完成对整个页的读取。最后拉高xf。
dsp写入nand flash的操作也以页为基本单位,首先置低xf片选nand flash,然后

相关IC型号

热门点击

 

推荐技术资料

耳机放大器
    为了在听音乐时不影响家人,我萌生了做一台耳机放大器的想... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!