基于机器视觉的公路车流量检测系统研究
3.1.2 程序设计
在应用系统的程序设计中,若所有的编程任务均用汇编语言来完成,其工作量是很大的。所以,V8 体系结构支持C 以及与汇编语言的混合编程,在一个完整的程序设计中,除了初始化部分用汇编语言完成以外,其主要的编程任务一般都用C 完成。汇编语言与C 的混合编程通常有以下几种方式:
①在C 代码中嵌入汇编指令
②在汇编程序和C 程序之间进行变量的相互访问
③汇编程序和C 程序之间的相互调用
.seg “text”
.global start
start:
set 0x10e0, %g1
mov %g1, %psr
set 0x40000000, %g1
mov %g1, %tbr
set 0x40079000, %g1
mov %g1, %sp
call main
nop
nop
以上的程序段完成简单的初始化,然后跳转到main 函数所标识的C 代码处,如果用户自己编写初始化程序,则跳转到的函数名称可以自行定义,如果使用编译器自带的启动程序,则必须定义main 函数为C 代码主函数。
3.2 CPU初始化程序设计
当使用一个嵌入式操作系统或者不使用嵌入式操作系统、一开始就执行嵌入式应用程序时,有许多因素需要考虑,主要有:
1、初始化执行环境。
2、初始化应用程序
例如:对于已初始化变量,要把初始值从ROM 复制到RAM 的,还要设置其他没有初始化的变量为零。www.51kaifa.com/
3、接一个嵌入的可执行的程序镜像,将代码和数据放入存储器的特定区域里。
对于一个没有嵌入式操作系统支持的嵌入式应用程序来说,ROM 中的代码必须规定一个初始化和启动执行的应用程序的方法。
图4 CPU初始化流程图
3.3 目前工作及展望
星载计算机的基本设计和调试已经完成,考虑到软件的可重用性,将引入实时操作系统,便于统一软件接口和减少工程中软件工作量。
4 结论
针对目前星载计算机CPU基本依赖进口现状,本设计使用性能较高国产基于SPARC V8的CPU,设计实现了用于未来航天工程的星载计算机,对于航天技术的独立自主发展有一定意义,对星载计算机CPU国产化是一种有益探索。
参考文献:
[1] 安军社,面向空间有效载荷的可重构高可靠计算机技术研究 ,西北工业大学博士学位研究生毕业论文 ,2004年3月
[2] 王连国、张健,基于国产CPU的航天计算机技术研究,2005年6月www.51kaifa.com/
[3] 时晨、于伦政,基于SPARC结构的RISC系统设计技术,微电子学与计算机,2002年11月
[4] 邓平科、林宝军、张善从,基于ARM的1553B总线应用,微计算机信息,2006年9月
评论