TMS320C6000 EMIF to External Flash Memory
- 格式:pdf
- 大小:470.97 KB
- 文档页数:45
在仿真环境下实现TMS320C6000系列DSP的程序自引导摘要:介绍了TMS320C6000系列DSP在仿真环境下对闪速存储器(FLASH)的C语言编程方法,同时根据这种DSP的程序自引导机制(boot loader),介绍了从FLASH进行引导的新途径,从而为TMS320C6000系列DSP的开发提供了一种新的思路。
关键词:TMS320C6000;FLASH;boot loader开发DSP系统应用板,最终要脱离仿真器而独立运行,这时就需要一个能在断电后保存程序及初始化数据的存储器。
系统上电时,由引导程序将DSP的应用程序从该存储器引导到DSP应用板上的高速存储器(如内部SRAM,SDRAM等)中。
由于FLASH具有电信号删除功能且删除速度快,集成度高,因而已成为此种存储器的首选。
将用户程序代码写入FLASH的方法有两种:第一种是用专门的FLASH编程器实现,第二种是通过系统微处理器与FLASH的接口来实现。
第一种方法的主要优点是使用方便可靠,但要求FLASH只能是双列直插等一些可插拔的封装形式,由于芯片制造工艺的提高,芯片的集成度越来越高,FLASH正向小型化、贴片式发展,从而使表面贴装或PLCC封装的FLASH难以利用编程器编程。
第二种方法克服了第一种方法的缺点,且使用灵活,因而在DSP系统中的应用日益广泛。
由于FLASH的存取速度较慢,写入FLASH的程序将在系统上电时被DSP装载到快速的存储器中运行,这个过程称为bootloader。
不同的DSP有不同的引导方式,本文将以TMS320C6713为例来介绍TMS320C6000系列的bootloader方式。
1FLASH的工作方式及在系统编程目前,市场上的FLASH型号很多,但工作方式大体相同,下面以AM29LV160D为例进行介绍。
1.1AM29LV160DFLASH存储器简介AM29LV160D是AMD公司生产的2M×8bit/1M×16bitFLASH存储器,它的数据宽度为8位、16位可选,采用3.3V供电,完全兼容JEDEC标准,并支持在系统编程,用户只需向其内部的命令寄存器写入命令序列即可实现部分擦除、全部擦除、数据写入等功能;同时可提供硬件和软件方法来检查FLASH的操作执行情况。
TI公司三大系列DSP芯片内部结构之比较班级:SJ1126 姓名:张晖学号:201120195012摘要:随着数字信号处理技术和集成电路技术的发展,以及数字系统的显著优越性,导致了DSP芯片的产生和迅速发展,DSP技术的地位凸显出来。
在世界上众多的DSP厂商中,德州仪器公司的DSP始终占据着较大的市场份额(45% ~60%),本文概略的介绍目前得到广泛应用的TI三大DSP处理器系列,TMS320C2000、TMS320C5000和TMS320C6000。
关键字:TI DSP正文:一、TMS320系列DSP命名TMS 320 F 2812 PGF A温度范围(缺省为L)前缀L=0 ~70℃TMX=A=-40 ~85℃TMP=Q=-40~125℃TMS=封装形式DSP PGF=176—引脚LQFP320=TMS320系列PAG=64—引脚塑料TQFPPGE=144-引脚塑料TQFPPZ=100-引脚塑料TQFP器件型号工艺C=COMSE=COMS EPROMF=Flash EEPROMLC=Low—voltage COMS(3.3V)VC=Low—voltage COMS(3V)TMS320包括了定点、浮点和多处理器数字信号处理芯片。
主要分为三种不同指令集的三大系列:TMS320C2000、TMS320C5000和TMS320C6000。
TMS320系列中的同一子系列产品具有相同的CPU结构,只是片内存储器和片内外设配置不同,同一子系列产品的软件完全兼容。
二、TMS320C2000系列TMS320C2000是作为优化控制的DS P系列。
TMS320C2000系列DSP集成CPU核和控制外设于一体,提供了高速的ADC和PWM发生器等,集成强大灵活的特定控制接口。
C2000 DSP既具有数字信号处理能力,又具有强大的事件管理能力和嵌入式控制功能,非常实用于工业、汽车、医疗和消费类市场中数字电机控制、数字电源和高级感应技术。
TMS320C6000系列DSPs外接FLASH引导方式的实现李鹏;郑喜凤;丁铁夫
【期刊名称】《长春理工大学学报(自然科学版)》
【年(卷),期】2004(027)004
【摘要】通过FLASH来引导DSP系统是实际应用中常用的一种方式,但不同系列DSPs的引导方式又不尽相同.本文介绍了TI公司C6000系列DSPs通过外接FLASH进行引导的原理和两种实现方法,并对这两种方法的特点进行了分析和比较.【总页数】4页(P52-54,48)
【作者】李鹏;郑喜凤;丁铁夫
【作者单位】中国科学院长春光学精密机械与物理研究所,长春,130022;中国科学院长春光学精密机械与物理研究所,长春,130022;中国科学院长春光学精密机械与物理研究所,长春,130022
【正文语种】中文
【中图分类】TP368.2
【相关文献】
1.TI TMS320C6000 DSPs的FLASH引导设计与实现 [J], 万轩旻;王霄峻
2.TMS320C6000系列DSP的Flash启动设计 [J], 赵凡;丑武胜;刘敬猛;王田苗
3.基于TMS320C6000系列DSP的Flash编程方法 [J], 白汉斌;刘峰;张明敏
4.TMS320C6000系列DSP主机引导方式的实现 [J], 战云
5.TMS320C6000系列DSP的Flash引导研究 [J], 李忠武
因版权原因,仅展示原文概要,查看原文内容请购买。
浅谈TMS320C6000系列中断设置问题本文只要是关于TMS320C6000和DSP的相关介绍,并着重对TMS320C6000系列中断设置问题进行了详尽的阐述。
DSP随着DSP(数字信号处理器)系统的广泛应用,其程序规模也随之不断扩大,使用芯片本身自带的Boot-loader通过Flash存储器来引导DSP程序,往往受到程序大小和结构的制约,比如程序很大超过厂商固化boot的范围,再如中断向量表的不同位置对程序boot 跳转的影响,等等,因此越来越需要更加灵活的引导方式。
系统上电后,由引导程序将DSP的应用程序从该存储器引导到DSP应用板上的高速存储器(如内部SRAM、SDRAM等)中。
由于Flash存储器具有电信号删除功能,且删除速度快,集成度高,因此已成为此种存储器的首选。
由于Flash存储器的存取速度较慢,写入Flash存储器的程序将在系统上电时被DSP装载到快速的存储器中运行,这个过程称为Boot loader。
不同的DSP有不同的引导方式。
DSP编程DSP系统的引导装载是指在系统加电后,系统自行将一段存储在外部非易失性存储器中的代码移植到内部DSP的高速RAM中并执行的过程。
因此,在引导装载系统中,外部非易失性存储器和DSP的性能显得尤为重要。
FLASH存储器是一种高密度、非易失性的电可擦写存储器。
而且单位存储比特的价格比传统的EPROM要低,所以十分适合于作为外扩存储器。
在系统加电之前,必须先将引导程序和用户程序写入FLASH中。
编程时,除了可以利用专用的硬件编程器实现对FLASH的编程之外,FLASH通常还支持DSP软件编程以实现同样的功能。
当系统加电之后,一般首先在FLASH中运行引导程序,并由其自行完成对用户程序的移植操作,然后再由DSP高速运行移人到DSP片内的用户程序。
DSP编程技巧mposerStudio)是TI公司开发的一个完整的DSP集成开发环境。
由于TI 的DSP使用非常广泛,使得CCS也就成为使用最为广泛的DSP开发软件之一。
基于TMS320C6000系列DSP器件实现嵌入式系统的优化设计1TMS320C6000的硬件设计和指令系统TMS320C6000系列DSP(数字信号处理器)是TI公司最新推出的一种并行处理的数字信号处理器。
它是基于TI的VLIW技术的,其中,TMS320C62xx是定点处理器,TMS320C67xx 是浮点处理器。
本文主要讨论TMS320C6201。
该处理器的工作频率最高可以采用50MHz,经内部4倍频后升至200MHz,每个时钟周期最多可以并行执行8条指令,从而可以实现1600MIPS的定点运算能力,而且完成1024定点FFT的时间只需70μs。
1.1TMS320C6000的硬件结构TMS320C6000的CPU有两个数据通道A和B,每个通道有16个32位字长的寄存器(A0~A15,B0~B15),四个功能单元(L,S,M,D),每个功能单元负责完成一定的算术或者逻辑运行。
A、B两通道的寄存器并不是完全共享,只能通过TM320C6000提供的两个交换通道1X、2X,才能实现处理单元从不同通道的寄存器堆那里获取32位字长的操作数。
TMS320C6000的地址线为32位,存储器寻址空间是4G。
C6201片内集成有1MbitSRAM——512Kbit的程序存储器(根据需要可全部配置成Cache)和512Kbit的数据存储器。
通过片内的程序存储空间控制器,CPU一次可以取出256bit,即一次最多可以取出8条32位指令。
C6201有32位的外部存储接口EMIF为CPU访问外围设备提供了无缝接口。
外围设备可以是同步动态存储器(SDRAM)、同步突发静态存储器(SBSRAM)、静态存储器(SRAM)、只读存储器(ROM),也可以是FIFO寄存器。
为了便于进行多信道数字信号处理,TMS320C6000配备了多信道带缓冲能力的串口McBSP。
McBSP的功能非常强大,除具有一般DSP串口功能之外,还可以支持T1/E1、ST-BUS、IOM2、SPI、IIS等不同标准。
TMS320C6000系列DSP程序固化方式分析TMS320C6000系列DSP程序固化方式分析引言本章内容主要针对TMS320C6000系列芯片,其他类型芯片可能会有差别,但总体思路应该都有指导作用。
随着近年来数字信号处理器(DSP)技术的迅猛发展,其中,TI公司推出的TMS320C6000系列DSP器件更是在许多需要进行大量数字信号处理运算并兼顾高实时性要求的场合得以应用。
TMS320C6000系列DSP的系统设计过程中,DSP器件的程序加载是较难解决的问题之一。
C6000系列DSP的加载方式包括不加载、主机加载和EMIF加载3种。
不加载[No boot]:方式仅限于存储器0地址不是必须映射到RAM空间的器件,否则在RAM空间初始化之前CPU会读取无效的代码而导致错误;主机加载[Host boot]:要求必须有一外部主机控制DSP的初始化,这将增加系统的成本和复杂度,在很多实际场合是难以实现的;EMIF加载[EMIF boot]:DSP与外部ROM/Flash接口较为自由,但片上Bootloader工具自动搬移的代码量有限(1 KB/64 KB)。
本文讨论的就是在EMIF加载方式下的程序各种不同的固化方式。
包括在线烧写,使用CCS提供的FlashBurn工具,使用专有烧写工具[编程器],一、DSP加载方式的选择DSP使用哪种加载方式进行启动,是通过硬件配置的方式选择,当DSP的RESET引脚无效后,DSP读入外围的配置引脚信息,确定加载启动的具体方式。
具体的配置管脚设定可以参考< >literature number: SPRS200二、EMIF加载方式启动过程当RESET变成高电平的时候,在CE1空间开始的1K字节的ROM 代码通过EDMA 被复制到地址为0 的地方(用DSP EMIF最慢的时序),在此期间DSP核一直处于“停止”状态。
数据被存储成系统所用的字节序格式。
在这种情况下,EMIF自动的把要搬移的8位宽数据拼接为32位指令字。
浅谈C2000、C5000、C6000的内部结构和区别浅谈C2000、C5000和C6000的内部结构和区别摘要:德仪公司的DSP分为多种系列,其中TI公司的TMS320系列的DSP在全球应用中较为广泛。
本文重点对TMS320系列下的C2000系列,C5000系列,C6000系列的内部结构做重点介绍,并对其内部结构进行比较。
为了更好地了解其内部结构下面主要从三大方面进行总结,分别是:中央处理单元(CPU)、存储器和I/O空间、外围设备。
关键词:内部结构C2000系列C5000系列C6000系列Introduction to the internal structure and distinction ofC2000,C5000,C6000Abstract:The digital signal processors of the TI company are the widely used for many years.the IT company's DSP is divided into several series,in which TMS320 series have an wide application in the global .Toward the C2000 series, C5000 series, C6000 series which belong to TMS320 series,this paper mainly makes summary and comparison about their internal structure. In order to better understand its internal structure below summarizes mainly from three aspects, respectively is: the central processing unit (CPU), memory and I/O space, and peripheral devices.Keywords:Digital signal processing The internal structure C2000 series C5000 series C6000 series 一、引言在生产数字信号处理的全球企业中,美国的德仪公司生产的数字信号处理器多年来一直占据了较大的DSP生产市场,并且在不断的扩大。
有关TI DSP的EMIF接口的两个问题:地址总线不从零开始问题及寻址范围问题作者:JBB0523(彬彬有礼)示例芯片:TMS320C6416EMIF,即E xternal M emory I nter F ace ,中文译为外部存储器接口。
EMIF可谓是困扰了我很久的一个接口。
当然,相比于SPI,UART,I2C等总线协议来说,EMIF 相对来说复杂一些……========================两个问题============================切不说EMIF怎么去用,单就表面的两个问题就能让人思考好久,但仍不得其解:1)6416中共有EMIFA和EMIFB两个EMIF接口,但有一个问题,为什么EMIFA的地址总线是从AEA3到AEA22共20位,EMIFB的地址总线是从BEA1到BEA20共20位,按理来说这种总线都是从0开始的呀,这到底是怎么回事?2)TI文档《TMS320C6414, TMS320C6415, TMS320C6416 FIXED-POINT DIGITAL SIGNAL PROCESSORS(SPRS146N)》中的表3部分如下所示:在表3中可以看到,对于EMIFB的每个CE片选空间,共有64MB的寻址空间;对于EMIFA 的每个CE片选空间,共有256MB的寻址空间。
但是,请注意问题1中的提到了无论对于EMIFA还是EMIFB均只有20根地址线,我们可以计算一下,2^20=1M的寻址空间,这64MB和256MB到底是指什么呢?对于高手来说当然弄懂也许是小问题,但对于初次接触这类问题的初学者来说,也许琢磨很久也弄不明白,我就是后者!========================问题的答案============================为了解释以下问题,首先明确一个单位度量:字节=8bit,半字=16bit,字=32bit,双字=64bit 解答问题1:我们再次来理一理EMIF接口:EMIFA有AEA3~AEA22共20根地址线和AED0~AED63共64根数据线,也就是说数据总结是“双字”的,再注意一下表3中有关寻址范围的单位是BYTES,一个双字等于八个字节,而如果寻址八个字节则需要3位地址线。
TMS320C6000系列二次Bootloader的设计与实(精)TMS320C6000系列二次Bootloader的设计与实现,DSP,二次Bootloader,Flash存储器,中断向引言随着DSP(数字信号处理器)系统的广泛应用,其程序规模也随之不断扩大,使用芯片本身自带的Boot-loader 通过Flash存储器来引导DSP程序,往往受到程序大小和结构的制约,比如程序很大超过厂商固化boot的范围,再如中断向量表的不同位置对程序boot跳转的影响,等等,因此越来越需要更加灵活的引导方式。
系统上电后,引导程序将DSP的应用程序从该存储器引导到DSP应用板上的高速存储器(如内部SRAM、SDRAM等)中。
于Flash存储器具有引言随着DSP(数字信号处理器)系统的广泛应用,其程序规模也随之不断扩大,使用芯片本身自带的Boot-loader通过Flash存储器来引导DSP程序,往往受到程序大小和结构的制约,比如程序很大超过厂商固化boot的范围,再如中断向量表的不同位置对程序boot跳转的影响,等等,因此越来越需要更加灵活的引导方式。
系统上电后,引导程序将DSP的应用程序从该存储器引导到DSP应用板上的高速存储器(如内部SRAM、SDRAM等)中。
于Flash存储器具有电信号删除功能,且删除速度快,集成度高,因此已成为此种存储器的首选。
于Flash存储器的存取速度较慢,写入Flash存储器的程序将在系统上电时被DSP 装载到快速的存储器中运行,这个过程称为Boot loader。
不同的DSP有不同的引导方式。
以TI公司TMS320C6000系列芯片为例,自举方式有3种:无自举(No Boot),CPU直接开始执行地址0处的指令;主机自举(Host Boot),系统复位后主机通过CPU的HPI(主程序设计接口)初始化DSP的存储空间;ROM自举(ROM Boot),DMA控制器从CEl空间复制固定长度程序的地址0处,然后从地址0处开始执行。