铁电存储器FM18L08在DSP系统中的应用
图1 硬件系统原理图
4系统软件设计
这个系统中,软件编程的核心在于按照特定的格式将数据写到FM18L08 FRAM中,下面具体介绍软件系统的设计方法。 在TI公司的软件开发工具CCS(Code Composer Studio)中,汇编器和连接器创建的目标文件采用COFF(Common Object File Format)格式,代码和数据都按段(Section)来组织设计。先通过CCS将程序下载到硬件系统的C5402的片内DARAM中,再运行程序将所需数据及程序按照表1的格式写到FM18L08 FRAM(对应于DSP数据寻址的08000h-0FFFFh)中,断开硬件系统与CCS环境的联系,重新上电或复位C5402,将看到灯在闪烁,此时硬件系统已经可以脱机独立运行了。 .mmregs .data table:.word 08aah ;16位引导标志 .word 7fffh,8806h ;SWWSR寄存器初值和BSCR寄存器初值 .word 0000h,080h,00044h ;程序入口XPC、程序入口地址和程序段长度 .word 0000h,080h ;存放目标XPC和存放目标地址 .global main .text main: stm #07fh,sp stm #0fffeh,ar1 ;向FRAM的07FFEh单元写入80h st #080h,*ar1+ nop st #00h,*ar1 ;向FRAM的07FFFh单元写入00h nop stm #table,ar1 ;向FRAM的0000h开始单元依次写入引导表要求的内容 stm #07h,brc stm #8000h,ar2 rptb loopa ld *ar1+,a nop stl a,*ar2+ ld a,-8,a stl a,*ar2+ loopa: nop nop stm #start,ar1 ;向FRAM中写入运行程序代码 stm #21h,brc nop ld *ar1+,a stl a,*ar2+ ld a,-8,a stl a,*ar2+ loopb: nop nop ld #00h,a nop stl a,*ar2+ stl a,*ar2 b $ .sect "chengxu" ;脱机独立运行系统程序 start: rsbx xf ;灯亮 …… ssbx xf ;灯灭 …… b start ret .end 主程序中,data段为上电引导程序提供了需要加载的各代码段的长度、源地址和目的地址这几个参数。其中,代码段长度既可以根据载入DSP系统后在CCS反汇编窗口算得,也可以从连接生成的映像文件(后缀为.map)中得到。
5 结束语
本文介绍的基于铁电存储器FM18L08的DSP 并行引导装载方案,可以在无需专用烧写器的情况下,实现DSP脱机独立运行系统的设计,并且该方案已成功的应用到一种语音门锁系统中。实验结果表明,该方法具有简化接口电路、节省系统资源、性价比高的优点。 但是,如果脱机独立运行系统程序超过了64K字节,只能采用另外的替代方法,这是在一些电路设计方案论证时需要考虑的问题。
- FM18L08在DSP系统中的应用(01-23)
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 达芬奇数字媒体片上系统的架构和Linux启动过程(06-02)
- FPGA的DSP性能揭秘(06-16)
- 用CPLD实现DSP与PLX9054之间的连接(07-23)