欢迎来到天天文库
浏览记录
ID:58701446
大小:878.50 KB
页数:66页
时间:2020-10-04
《第4章 C55x处理器的软件设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章C55x处理器的软件设计内容提要C55x系列处理器应用灵活、处理能力强大,为开发、使用提供了一个很好的硬件平台,要使这个平台更好的发挥作用,高效、方便的软件设计是不可或缺的。程序的主体框架和对实时性要求不高的部分采用C/C++语言,而算法实现采用汇编语言,这样能够充分发挥二者的优点,解决易读性和效率之间的矛盾。同时也改善了软件的移植性,在软件移植时不用改变程序的主体框架,只要为处理器提供相应的算法即可。本章主要介绍了C55x处理器的程序基本结构,C语言编程以及优化,C语言与汇编语言的混合编程,
2、通用目标文件格式,最后对C55x处理器的数字信号处理库和图像、视频处理库进行了介绍。第4章C55x处理器的软件设计4.1C55x处理器程序基本结构4.2C语言程序开发及优化4.3C语言与汇编语言的混合编程4.4通用目标文件格式4.5C55x处理器的数字信号处理库和图像、视频处理库第4章C55x处理器的软件设计C55x处理器软件开发流程C/C++源文件C编译器汇编源代码COFF目标文件汇编器链接器可执行COFF文件宏源文件归档器宏调用库归档器目标文件库运行支持库建立运行支持库第4章C55x处理器的软件
3、设计●汇编器:是把汇编源代码转换成机器语言。●链接器:则将多个目标文件结合成一个可执行文件。●归档器:可以把一组文件归档为一个库,供用户使用。如果用户只用汇编语言编写程序,则将跳过C编译器而直接通过汇编器生成目标文件。第4章C55x处理器的软件设计4.1C55x处理器程序基本结构根据任务调度的方式不同,C55x处理器程序大体可以分为两类:(1)由程序自己完成任务调度程序运行效率高,对硬件中断响应快,程序运行稳定,适合于任务较为单一,实时性较强的应用;(2)由嵌入式操作系统完成任务调度但如果要利用处理
4、器同时完成多个任务,应用嵌入式操作系统是十分有必要的,这是因为嵌入式操作系统可以将应用分解为多个任务,简化了应用系统软件设计,更为重要的是良好的多任务设计有助于提高系统的稳定性和可靠性。第4章C55x处理器的软件设计4.1.1自我调度程序的基本结构虽然嵌入式操作系统已经发展得较为成熟,但通过程序自身完成任务调度仍然保持着旺盛的生命力,这是因为这种方式适合于DSP这种需要对大量实时数据完成顺序处理的应用。下面给出自我调度程序的基本结构。中断程序1;……中断程序m;Main(){DSP_INT(){……
5、};//DSP初始化For(;;)//主循环{if(条件1)//判断条件1{处理模块1;//条件满足运行处理模块1}……if(条件n)//判断条件n{处理模块n;//条件满足运行处理模块n}}}第4章C55x处理器的软件设计初始化部分通常完成DSP软、硬件的初始化设置,启动系统硬件,使能DSP中断,启动DMA传送等工作。主循环部分是程序的主体,将由它完成数据输入、处理和输出等工作。主循环由条件判断和处理模块组成,当满足条件时运行处理模块,不满足条件则自动跳到下一个判断条件。中断程序通常不进行数
6、据处理,只通过设置判断标志来影响主循环部分的运行。自我调度程序通常由中断程序部分、初始化部分和主循环部分组成:4.1.1自我调度程序的基本结构第4章C55x处理器的软件设计为了满足实时运行的要求,自我调度程序的主循环部分必须将处理时延限制在最大可接受时延内,具体来说就是运行主循环的所有分支的时间总和必须小于最大可接受时延,如果不能满足这一条件,则在最坏情况下,会造成处理数据的不连续,而无法实现数据的实时处理。当所编写的程序没有满足上述条件时,则需要对处理流程进行修改,或修改处理算法以满足条件。4.1
7、.1自我调度程序的基本结构第4章C55x处理器的软件设计TMS320C55x处理器为C语言开发提供了一系列工具,包括:优化C/C++编译器、链接器和归档器。并支持混合编程。C语言的优点在于程序可读性强。4.2C语言程序开发及优化第4章C55x处理器的软件设计4.2.1C语言中的数据类型C55x支持下列数据类型包括字符、定点数、浮点数、指针等。4.2C语言程序开发及优化类型长度内容最小值最大值signedchar(有符号字符)16位ASCII码-3276832767char,unsignedchar(
8、无符号字符)16位ASCII码065535short,signedshort(短整型)16位二进制补码-3276832767unsignedshort(无符号短整型)16位二进制数065535第4章C55x处理器的软件设计char,unsignedcharpointers(数据指针)小存储器模式16位0xFFFF类型长度内容最小值最大值int,signedint(整型)16位二进制补码3276832767unsignedint(无符号整型)16位二进制数065535
此文档下载收益归作者所有