新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 导航系统SoC芯片设计方案分析

导航系统SoC芯片设计方案分析

作者: 时间:2012-05-14 来源:网络 收藏

1.3 Linux系统的移植和调试

近年来Linux凭借其开源、性能优异、软件资源丰富的优势,在嵌入式平台上得到了广泛的应用。在LEON上运行的操作系统日前已经有RTEMS、 eCOS、VxWorks和嵌入式Linux。选择嵌入式Linux的主要原用,是由于Linux的开发平台搭建得比较完善,在工具链、内核移植、驱动程序以及应用程序的各层上都有很好的支持;使用Linux开发能够大大加快开发的进度,并满足多数应用的指标。目前,对LEON提供良好支持的Linux发行版有Snapgear。由于LEON软核优异的可配置性和可移植性.在LEON上进行Linux的移植工作与普通定制的嵌入式微处理器相比,有很多特殊点和难点,主要表现在两个方面。

(1)配置和编译内核

编译内核的目的在于,生成在目标CPU上运行的内核。由于LEON自身硬件的可配置性,Linux的源代码中也需要加入与硬件核相关的选项进行配置。若 LEON软核配置IP,例如硬件加速单元、加密单元或外设接口,则Linux内核中需加入驱动程序。因此,内核的配置分为两类,一类是配置LEON软核自身的设置,另一类是配置目标板上的其他外围设备,例如内存系统、外设接口等。与一般的定制嵌入式CPU(如ARM体系的CPU)相比,前一类配置是 LEON独有的。这种配置的灵话性为软硬件平台的定制提供了极大的方便。例如,Snapgear Embed-ded Linux根据具体需求配置硬件乘除法指令和浮点运算单元FPU:在不需要进行浮点运算的应用中,配置LEON硬件就不需配置浮点单元,相应Linux的配置中取消FPU,进而节省硬件资源和软件的开销。

项目中实际采取的LEON软核配置为:LEON核选择LEON2MMU或LEON3MMU,时钟频率为50MHz,配置硬件整数乘除法指令和FPU对应的浮点操作指令。外围设备配置的串口的起始波特率为38 400 bps,另外,还配置了只读存储区ROM和随机存取器RAM。

(2)调试内核

LEON软核平台调试工具有:TSIM、GRSIM和GRMON。

TSIM:SPARC架构处理器通用软件仿真器,用于软件仿真ERC32-和LEON微处理器。

GRSIM:LEON平台软件仿真器,支持多处理器平台(MP)。

GRMON:LEON平台硬件仿真调试器,支持基于GRLIB软核IP的设汁的硬件调试。

TSIM作为软件模拟的VHDL模型,调试过程中常见的启动选项设置如下:

-freq:设置TSIM模拟LEON处理器硬件的工作频率,LEON3默认为50 MHz。

-fpm:配置模拟FPU模块。

-nfp:针对无FPU的模拟硬件平台关闭FPU。

一nov8:针对无硬件乘除法硬件平台关闭硬件乘除法指令。

-pr:指定使用性能观察器。

在TSIM-LEON平台上进行程序的测试和调试过程中,Profiling(性能观察器)能够显示程序各个分支函数以及宏在实际运行中占用的资源,从而为程序的进一步优化提供必要参考,例如某测试程序在程序运行完毕后使用pro命令得出的结果:

宏_muldf3和_adddf,3在程序运行中占用了大量时间,需进一步优化。经测试证明,通过在LEON中集成FPU消除了宏_muldf3和_adddf3,从而大幅提高浮点运算性能。

2 LEON数学运算性能及算法测试

在LEON软核系统上移植成功Linux后,通过特定测试程序验证LEON在数学运算上的性能,以确定是否满足项目开发的需求。测试中对比ARM9 SC32410,分析LEON以及其集成FPU配置的性能,并根据测试结果对软硬件配置进一步优化。由于LEON硬件配置十分灵活,因此在测试中采用了多种平台,编译程序的选项也有对应的设置。中断响应、功耗等虽然也是处理器性能的重要方面,但本文尚未涉及。



评论


相关推荐

技术专区

关闭