位置:51电子网 » 技术资料 » 存 储 器

DSP外挂Flash在系统编程及并行引导装载方法

发布时间:2008/5/27 0:00:00 访问次数:744

来源:电子技术应用 作者:丁 洁 魏 丰 李广宇摘要:详细介绍了tms320vc5402外挂程序存储器的在系统编程技术和方法,结合实例给出了创建系统引导表的具体步骤,并在此基础上重点叙述了tms320vc5402的并行16位引导装载方法。设计的系统具有较大的灵活性和良好的可扩展性。

关键词:dsp tms320vc5402 flash sst39vf400a 在系统编程 引导装载tms320vc5402(以下简称c5402)是ti公司的一款性价比极好的16位定点dsp芯片。由于c5402内部只有16k×16位ram和4k×16位掩膜rom,用户程序必须存放在外挂的程序存储器中。对程序存储器的编程(即离线编程)通常是通过通用编程器完成的,即用户将要写入的程序转换成编程器能够接收的格式,再通过编程器写入存储器中。随着芯片制造工艺的不断提高,芯片集成度越来越高,存储器正在向小型化、贴片式发展,从而使表面封装或plcc封装的存储器难以利用编程器编程。目前普遍采用的在系统编程isp(in system programming)技术不需要编程器,通过系统的dsp可直接对用户板上的存储器编程,这样不仅节省了通用编程器及适配器的费用,还减少了频繁插拔存储器的麻烦,从而大量节省了系统开发时间,满足了用户程序在线更新的要求。外挂的程序存储器通常选用容量大、存储速度快、功耗低、性价比高的flash存储器。

由于dsp仿真软件编译链接后生成的是二进制的coff格式文件,不能直接写入flash中,还需通过hex转换工具将coff目标文件转换为标准的ascii码十六进制格式(即hex格式)。对于离线编程,只需将这种hex文件直接作为编程器的输入,即可写入flash;而在系统编程,则是利用系统本身的dsp,通过软件编程来实现整个烧写过程。因此,如何对flash进行烧写是整个在系统编程的一个关键。本文以一片c5402外挂一片flash存储器构成的最小系统为实例,介绍采用c语言编写flash烧写程序,并通过dsp将用户程序代码写入flash,从而实现在系统编程。

1 dsp与flash构成的最小系统本系统的flash存储器选用sst公司的sst39vf400a,用作dsp的数据空间。flash的片选信号/ce由dsp的数据空间选择信号/ds和存储器选通信号/mstrb产生,读使能信号/oe和写使能信号/we由dsp的读写脉冲信号r/w和/ds、/mstrb组合产生。flash的地址线a0~a15和dsp的a0~a15直接相连,a16和a17接地。由于dsp数据空间0000h~3fffh为存储器映象寄存器、暂存器和片内ram,对外部flash来讲是不可见的,所以flash可操作的地址范围为4000h~0ffffh。设用户程序从flash中8000h单元开始存放,则系统上电时引导程序就从数据空间的8000h单元开始搬运数据到dsp内部ram指定区域,引导完毕后即跳转到ram中程序入口地址运行用户程序。

2 sst39vf400a的在系统编程2.1 芯片简介及常用命令

sst39vf400a是sst公司的256k×16位flash存储器,工作电压3.3v、擦写寿命100 000次,访问时间70~90ns。用户只需向其特定地址写入特定的指令序列,那么通过这些命令用户即可启动内部写状态机,从而使其自动完成指令序列要求的内部操作,其中包括:复位、整片擦除、块擦除、扇区擦除、操作字写入等。

2.2 sst39vf400a编程操作

对采用在系统编程的flash存储器,整个编程过程由用户控制,因此用户必须了解flash存储器的各状态位,以便知道编程或擦除是否结束。sst39vf400a内部提供两种软件检查方法:检查状态位data# polling(dq7)和toggle bit(dq6)。现以检查toggle bit(dq6)位为例来具体说明sst39vf400a的编程及检查机制。sst39vf400a在进行内部编程或擦除时,对任何地址进行连续读取都会引起dq6的跳变,当操作停止就会结束跳变。因此可以通过连续两次读取检查dq6的变化情况来判断编程擦除操作是否完成。单字编程及检查流程如图1所示(其中wa为要写入数据的存储地址)。

3 c5402的并行引导装载通过在系统编程操作可以实现将用户程序代码写入flash。如何确定flash中用户程序代码的存放格式并正确地引导装载以实现脱机运行,则是整个在系统编程的重点之处。在c5402的五种引导方式中,并行引导是dsp系统最常用最简单的引导方式

来源:电子技术应用 作者:丁 洁 魏 丰 李广宇摘要:详细介绍了tms320vc5402外挂程序存储器的在系统编程技术和方法,结合实例给出了创建系统引导表的具体步骤,并在此基础上重点叙述了tms320vc5402的并行16位引导装载方法。设计的系统具有较大的灵活性和良好的可扩展性。

关键词:dsp tms320vc5402 flash sst39vf400a 在系统编程 引导装载tms320vc5402(以下简称c5402)是ti公司的一款性价比极好的16位定点dsp芯片。由于c5402内部只有16k×16位ram和4k×16位掩膜rom,用户程序必须存放在外挂的程序存储器中。对程序存储器的编程(即离线编程)通常是通过通用编程器完成的,即用户将要写入的程序转换成编程器能够接收的格式,再通过编程器写入存储器中。随着芯片制造工艺的不断提高,芯片集成度越来越高,存储器正在向小型化、贴片式发展,从而使表面封装或plcc封装的存储器难以利用编程器编程。目前普遍采用的在系统编程isp(in system programming)技术不需要编程器,通过系统的dsp可直接对用户板上的存储器编程,这样不仅节省了通用编程器及适配器的费用,还减少了频繁插拔存储器的麻烦,从而大量节省了系统开发时间,满足了用户程序在线更新的要求。外挂的程序存储器通常选用容量大、存储速度快、功耗低、性价比高的flash存储器。

由于dsp仿真软件编译链接后生成的是二进制的coff格式文件,不能直接写入flash中,还需通过hex转换工具将coff目标文件转换为标准的ascii码十六进制格式(即hex格式)。对于离线编程,只需将这种hex文件直接作为编程器的输入,即可写入flash;而在系统编程,则是利用系统本身的dsp,通过软件编程来实现整个烧写过程。因此,如何对flash进行烧写是整个在系统编程的一个关键。本文以一片c5402外挂一片flash存储器构成的最小系统为实例,介绍采用c语言编写flash烧写程序,并通过dsp将用户程序代码写入flash,从而实现在系统编程。

1 dsp与flash构成的最小系统本系统的flash存储器选用sst公司的sst39vf400a,用作dsp的数据空间。flash的片选信号/ce由dsp的数据空间选择信号/ds和存储器选通信号/mstrb产生,读使能信号/oe和写使能信号/we由dsp的读写脉冲信号r/w和/ds、/mstrb组合产生。flash的地址线a0~a15和dsp的a0~a15直接相连,a16和a17接地。由于dsp数据空间0000h~3fffh为存储器映象寄存器、暂存器和片内ram,对外部flash来讲是不可见的,所以flash可操作的地址范围为4000h~0ffffh。设用户程序从flash中8000h单元开始存放,则系统上电时引导程序就从数据空间的8000h单元开始搬运数据到dsp内部ram指定区域,引导完毕后即跳转到ram中程序入口地址运行用户程序。

2 sst39vf400a的在系统编程2.1 芯片简介及常用命令

sst39vf400a是sst公司的256k×16位flash存储器,工作电压3.3v、擦写寿命100 000次,访问时间70~90ns。用户只需向其特定地址写入特定的指令序列,那么通过这些命令用户即可启动内部写状态机,从而使其自动完成指令序列要求的内部操作,其中包括:复位、整片擦除、块擦除、扇区擦除、操作字写入等。

2.2 sst39vf400a编程操作

对采用在系统编程的flash存储器,整个编程过程由用户控制,因此用户必须了解flash存储器的各状态位,以便知道编程或擦除是否结束。sst39vf400a内部提供两种软件检查方法:检查状态位data# polling(dq7)和toggle bit(dq6)。现以检查toggle bit(dq6)位为例来具体说明sst39vf400a的编程及检查机制。sst39vf400a在进行内部编程或擦除时,对任何地址进行连续读取都会引起dq6的跳变,当操作停止就会结束跳变。因此可以通过连续两次读取检查dq6的变化情况来判断编程擦除操作是否完成。单字编程及检查流程如图1所示(其中wa为要写入数据的存储地址)。

3 c5402的并行引导装载通过在系统编程操作可以实现将用户程序代码写入flash。如何确定flash中用户程序代码的存放格式并正确地引导装载以实现脱机运行,则是整个在系统编程的重点之处。在c5402的五种引导方式中,并行引导是dsp系统最常用最简单的引导方式

相关IC型号

热门点击

 

推荐技术资料

循线机器人是机器人入门和
    循线机器人是机器人入门和比赛最常用的控制方式,E48S... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!