微处理器的二次引导加载方案

发布者:RadiantBlossom最新更新时间:2011-09-21 来源: 中华电子网关键字:微处理器 手机看文章 扫描二维码
随时随地手机看文章

引 言

  在嵌入式系统中,微处理器的运行程序通常保存在其内部或外部非易失性存储器(如EPROM、EEPROM或Flash)中。对中低速的微处理器来说,系统运行时程序可直接从非易失性存储器读取并解释执行;对高速微处理器来说,非易失性存储器的读取速度较低,不能满足系统运行时程序代码直接读取的要求,需采用引导加载(Boot-load)方式将程序代码从低速非易失性存储器中加载到高速的存储器(如SRAM或DRAM)中,系统运行时直接从高速存储器中读取程序代码,实现系统的高速运行。微处理器用一片或少数几片大规模集成电路组成的中央处理器。这些电路执行控制部件和算术逻辑部件的功能。微处理器与传统的中央处理器相比,具有体积小,重量轻和容易模块化等优点。微处理器的基本组成部分有:寄存器堆、运算器、时序控制电路,以及数据和地址总线。微处理器能完成取指令、执行指令,以及与外界存储器和逻辑部件交换信息等操作,是微型计算机的运算控制部分。它可与存储器和外围电路芯片组成微型计算机。
 

  1 DSP上电加载分析

  TMS320VC5509(简称“5509”)是TI公司的一款高性能、低功耗的定点数字信号处理芯片。5509片内具有128K字高速静态RAM,内部只读ROM中固化了引导加载程序(Bootloader)。5509引导表格式如图1所示。

  

TMS320VC5509的二次引导加载方法

 

  从引导表的格式可以看出,引导加载程序首先读入双字程序入口地址,然后读入需要修改的寄存器数,接着是寄存器地址以及赋值,再读入段字节数、段起始地址以及段内容,引导表以读入双字的O值为结束,读完引导表后跳转到加载程序入口执行。

  下面分别针对固化引导程序中的并行加载方式(16位)以及串行加载方式(16位SPI接口EEPROM),来分析DSP上电加载可能遇到的问题。

  对16位并行加载方式,默认从片外扩展地址0x200000(5509对应片选引脚输出为CEl)开始读入引导表,由于TQFP封装的5509内部24根地址线只引出了14根,因此并行加载方式只能寻址外部214=16K字存储空间,对超过16K字长的引导表,引导程序无法加载。

  对16位SPI接口的EEPROM串行加载方式,5509默认利用其同步串口0(McBSP0)来模拟SPI接口,引导程序固定收发时钟为DSP时钟频率的244分频。由于引导加载过程中,5509时钟频率等于外部晶振频率,因此对于24MHz时钟频率,加载频率约为100kHz,对于一段仅10K字长的引导程序,完成加载需要244×lO×103×16/24×106≈1.63s。

  针对以上两种加载方式存在的问题,提出了利用二次引导加载方式来解决的办法。

  二次引导加载是采用引导加载的原理,在上电复位时,DSP内部固化的引导程序将一个自编的引导程序加载到片内,然后通过二次引导加载程序将最终需要执行的程序加载到DSP中,从而实现更加灵活的程序加载。

  2 并行方式下的二次加载设计

  针对16位并行加载方式中存在的加载程序容量有限的问题,并行二次加载方案中利用DSP的GPIO口来扩展地址线,解决大于16K字程序的加载问题。这里使用两片铁电存储器FM18L08(32K×8位)作为32K字外扩程序存储器,55509地址线A[l3:1]与铁电存储器地址线A[12:0]相连,扩展5509的通用I/O口GPIO[7:6],用作高位地址线与铁电存储器地址线A[14:1 3]相连。在二次引导加载程序中,利用软件控制GPIO[7:6]输出高低电平,来达到控制高位地址线的目的,电路如图2所示。General Purpose Input Output (通用输入/输出)简称为GPIO,或总线扩展器,利用工业标准I2C、SMBus?或SPI?接口简化了I/O口的扩展。当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能。每个GPIO端口可通过软件分别配置成输入或输出。Maxim的GPIO产品线包括8端口至28端口的GPIO,提供推挽式输出或漏极开路输出。提供微型3mm x 3mm QFN封装。

  

TMS320VC5509的二次引导加载方法

 

  在程序加载过程中,由于并行二次引导加载程序对引导表的读入方式与固化引导程序相同(不同的地方,只是在于如何寻址大于16K字程序地址),因此省略了流程图中具体读引导表的步骤。

  在二次加载程序中,加载开始之后,首先设置GPIO[7:6]为00h,读入第1页数据。如果程序在计数到8K之后仍未读完,则对GPIO[7:6]修改翻页,进行下一个8K的读入。

并行二次加载程序流程如图3所示。

 

  

TMS320VC5509的二次引导加载方法

 

  3 串行方式下的二次加载设计

  针对串行加载存在的加载速度低的问题,采用二次加载方案,自行设定同步串口时钟分频倍数,以较快的速度完成程序的加载。加载的速度,就只受到外部SPI接口的EERPOM速度限制。通用SPI接口EEPROM(如Atmel公司的AT25256)速度一般均可达到1Mbps以上。下面以外接12MHz晶振为例,DSP内部2倍频之后,同步串口0时钟按照12分频,串行加载电路如图4所示。

  串行二次加载程序中,初始化部分对DSP及其同步串口O相应控制器进行设置,使SPI接口时钟工作在2MHz。然后采用与DSP固化引导程序相同的方式,利用GPIO4以及同步串口O模拟SPI接口对EEPROM进行顺序读入。读完之后,跳转到程序入口执行。

  程序流程如图5所示。

  

TMS320VC5509的二次引导加载方法

 

  4 结论

  二次加载方法克服了5509固化引导加载程序的弊端,可以根据不同的条件,实现比较灵活的加载方式。二次引导加载程序采用汇编语言编写,代码简单短小。经实际验证,以上两种二次引导加载方式均能成功加载。此方法不仅可用在5509DSP中,同样也可以利用在其他类似的高速微处理器系统引导加载方案中。

关键字:微处理器 引用地址:微处理器的二次引导加载方案

上一篇:嵌入式MIPS32 M4K处理器内核SRAM接口应用
下一篇:NXP2214实现多路韦根信号采集硬件设计

推荐阅读最新更新时间:2024-03-30 21:49

基于ARM微处理器的液晶触摸屏接口设计
0 引言 人机交互界面的种类较多,如键盘、数码管显示器、液晶显示器及带触摸的液晶屏等。决定人机交互接口方式的主要因素是成本和实际应用的需要。近十年来,液晶触摸屏以功耗低、重量轻、精度高和良好的人机界面等技术特点, 在电子设备特别是手持类电子产品中得到了普遍应用。带触摸的液晶屏,只要能测量出触摸点的坐标位置,即可根据屏上对应坐标点的显示内容或图符获知触摸者的意图, 通过微处理器处理声音、图像、文字及触摸输入控制等信息,使之成为能进行信息存取、输入和输出的集成系统。基于微控制器与液晶模块的硬件接口设计及软件编程在智能系统设计中有着重要的应用价值。ARM 微处理器,运算速度快、资源丰富、性价比高,是当前较为流行的嵌入式控制器。本文介
[单片机]
基于ARM<font color='red'>微处理器</font>的液晶触摸屏接口设计
服务器市场的变数,ARM仍是最大看点?
近年来智能手机成为处理器技术发展的主要驱动力,一段时间以来我发现Linley 处理器会议中最有趣的部分便是专门针对移动应用的会议。 上周举行的一场会议并不是针对移动市场,而是一场专注于网络和服务器市场的会议。不过,这两类市场都在“移动数据”的推动下迅速增长。 事实上,智能手机发展得如此之快,使得它们已经成为互联网访问的主要方式,而且这种发展趋势只会不断加速,相比之下,台式机和笔记本电脑变得比较小众。 Jag Bolaria(Linley)在主题演讲中介绍了网络和服务器这部分行业的概况。在整体市场份额上,英特尔继续保持领先地位,其次是飞思卡尔。令我意外的是,AMD提升了在这一市场的份额,因为供应商都在寻找可以降低成本和替
[单片机]
德州仪器推出采用ARM Cortex-A8 的微处理器单元
日前,德州仪器 (TI) 宣布推出两款采用 1GHz ARM Cortex-A8 的 Sitara 微处理器单元 (MPU) AM3715 与 AM3703,其更快的系统响应时间与启动时间以及更长的电池使用寿命可为开发人员提供极大的便利。这些 MPU 可满足各种应用需求,如便携式数据终端、便携式医疗设备、家庭与楼宇自动化、导航系统、智能显示屏以及人机接口 (HMI) 工业应用等。AM3703 适用于不需要图形功能的应用。AM3715 可提供比前代 Sitara 器件高 2 倍的图形性能,支持流畅复杂的 3D 渲染、完美的视觉效果以及增强型图形用户界面 (GUI) 等功能。AM3715 与 AM3703 均可将 ARM 性能提
[嵌入式]
德州仪器推出采用ARM Cortex-A8 的<font color='red'>微处理器</font>单元
具有四个输出并基于微处理器的双定时器
基于Freescale半导体公司MCC908QY型8位闪存微型计算机的图1所示电路,可提供一个低成本通用双定时器,该定时器可代替单触发电路。您可以通过修改汇编语言软件来满足特定应用要求。该电路采用微处理器 IC1的内部12.8MHz 时钟振荡器。内部时钟除以4即获得3.2 MHz时钟频率,此频率进一步除以定时器预定比例 64即获得50 kHz时钟。将定时器模数计数器除以 50000,可获得可产生1次/秒实时中断与主定时间隔 的1Hz 时基。   每组4个的两组开关(S3至S6及S7至S10),分别以1"16秒的递量设置时间间隔 t1和 t2。尽管该图只给出了单独的DIP 开关,但您也可采用十六进制编码的旋钮式开关来设置时
[单片机]
Microchip发布首款全新1 GHz单核微处理器SAMA7G54
Microchip发布首款全新1 GHz单核微处理器SAMA7G54,搭载MIPI CSI-2摄像头接口和高级音频功能 基于Arm® Cortex®-A7处理器的新款微处理器兼具高性能和低功耗 嵌入式市场需要性能更高、功耗更低的人工智能(AI)解决方案,以部署在功耗通常较高的边缘。人工智能解决方案往往需要先进的成像和音频功能,但这些功能通常只有高性能且高功耗的多核微处理器才具备。为了让开发人员在不牺牲功耗的情况下获得这些高性能外设功能,Microchip Technology Inc.(美国微芯科技公司)今日宣布推出基于Arm Cortex A7的SAMA7G54微处理器(MPU),运行频率最高可达1 GHz。SAMA7G
[传感器]
Microchip发布首款全新1 GHz单核<font color='red'>微处理器</font>SAMA7G54
原子厚度的微处理器,让可弯曲电子产品变成可能
维也纳大学的研究人员使用了一种特别的材料──过渡金属二硫属性元素(transition-metal dichalcogenide,TMD) ,来打造可以改变形状的微处理器,像是奇迹材料石墨烯一样,TMD 可以形成只有一个原子厚度的层状结构,打造出一个接近二维的表面,像是一张超级轻薄的纸,这就是为什么可以让电器产品变形的关键。 Network World 报导,这处理器的功效远不及我们现在使用的那么强大,实际上,它只是一个具有 115 个晶体管的单一位(bit)处理器,只能执行 4 个指令。 然而,在研究人员论文于《Nature》杂志上发表,他们指出,这是「开发二维半导体微处理器的第一步。 」虽然功能单一,但却是开
[单片机]
原子厚度的<font color='red'>微处理器</font>,让可弯曲电子产品变成可能
新的飞思卡尔Qorivva微处理器打造更经济实用的泊车辅助系统
    飞思卡尔半导体 日前推出新的 32 位 Qorivva 微控制器 ( MCU ), 该产品基于 Power Architecture ® 技术 , 目的是使过去只有在豪华汽车中才能见到的环绕摄像泊车辅助系统变得更加经济适用并普及到更广泛的车型中。       Qorivva MPC5604E 32 位 MCU 通过快速以太网传输高分辨率的压缩视频数据 , 可以提供 360 度车周全景 , 从而实现更加安全、简便地泊车。 汽车通常需要 4 或 5 条低压差分信号电缆来传输视频数据 , 每条电缆的价格约合 10 美元。 对视频信号进行压缩并使用以太网传输数据可以避免使用电缆,从而显著地降低成本。    
[嵌入式]
智能卡的边频攻击分析及安全防范措施
   在智能卡应用日益广泛的今天,智能卡应用系统的安全问题非常重要。通常认为智能卡具有较高的安全性 ,但随着一些专用攻击技术的出现和发展,智能卡也呈现出其安全漏洞,导致整个应用系统安全性降低。分析智能卡面临的安全攻击,研究相应的防御措施,对于保证整个智能卡应用系统的安全性有重大意义。下面分析目前主要的智能卡攻击技术之一——边频攻击技术,并有针对性地提出相应的安全设计策略。   1 智能卡简述   智能卡是将具有存储、加密及数据处理能力的集成电路芯片镶嵌于塑料基片上制成的卡片。智能卡的硬件主要包括微处理器和存储器两部分,逻辑结构如图1所示。                  智能卡内部的微处理器多采用8位字长的CPU(当然更
[工业控制]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新工业控制文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved