基于LEON开源软核的SOC平台构建与测试
引 言
伴随着导航系统功能日益多样化、软件算法愈加复杂和集成度要求更高的趋势,在大规模可编程器件上设计、验证和测试导航SoC芯片成为解决方案之一。导航系统SoC芯片设计的要求主要有:
①安全性。芯片的所有功能模块运行正常,运行机制透明,可靠性强。
②可配置性。根据应用要求对硬件进行裁减和配置,达到最佳的功能、功耗和面积比。
③高运算能力。具备在特定时间内完成复杂算法的运算能力。
SoC芯片的核心是实现运算和控制功能的微处理器。LEON是一款基于SPARC V8架构的开源微处理器IP软核,在VHDL源代码基础上,结合具体需求加入定制的运算单元和外设接口建立SoC系统。在配置灵活的LEON核上运行Embedded Linux,提供SoC调试和测试的基本平台。
1 软硬件平台构建
1.1 LEON软核架构简介
LEON核心是一个与SPARCV8兼容的整数处理单元IU(Integer Unit),LEON2是5级流水线,LEON3是7级流水线。LEON包含整数硬件乘法和除法单元、双协处理器接口(FPU浮点处理单元和Co-processor协处理器),分离的指令和数据总线(Harncard结构)。LEON通过高速的AMBA-AHB总线,指令缓存和数据缓存分别和内存控制器及高速的外部接口相连传输数据。低速的AMBA-APB总线实现片上外设的接口,例如定时器、串口、网络接口等。LEON3软核可配置体系架构如图l所示。
1.2 LEON在SoC芯片开发应用中的优势
LEON软核最突出的优势是其良好的可配置性和可移植性,以及遵循GPL许可证协议的开源性。这些特性保证导航系统SoC芯片的安全性,提供良好的性能和灵活的解决方案,也决定了在LEON上进行嵌入式操作系统移植的特殊性。
1.2.1 开源性
基于GPL许可证协议,LEON非容错版本软核IP提供VHDL源代码,仅是容错版本的LEON软核需要商业授权。源代码公开足实现导航系统SoC芯片设计安全性的前提,同时也使研究者和开发者从根本上研究软核的细节从而定制满足具体应用的软核成为可能。与全部源代码开放的LEON相比,Altera的NIOS软核等其他软核仅提供若干接口,无法在更深的软核层次上进行设汁和优化。
1.2.2 优异的可配置性
LEON软核通过集成一套丰富的接口和运算单元IP库,根据具体要求来达到性能、功耗和面积的平衡和优化的目的。
①软核IU可配置参数包括流水线的深度、地址和数据高速缓存(Cache)。另外,常用指令及指令序列可以根据定制的硬件进行优化;在设计或配置新运算单元后能够对指令集进行扩展。在导航系统SoC芯片设计中,通过配置LEON的整数硬件乘除法单元以实现较高的运算性能;而在其他某些使用软件乘除法,即满足要求的应用中无需配置,以降低功耗和优化芯片面积。
相关文章
- 2023-09-06缩短微机械圆盘谐振器缝隙的电极移动法
- 2023-04-30群相可控光学延迟线色散特性分析
- 2022-05-31利用MSDS加强高校实验室安全管理的探讨
- 2023-03-03挤压式摩擦试验装置改进研究
- 2023-08-26地铁站台噪声特性分析
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。