位置:51电子网 » 技术资料 » D S P

基于LEON微处理器的SOC原型平台设计

发布时间:2007/8/24 0:00:00 访问次数:1665

随着IC制造工艺水平的快速发展,片上系统(SOC)在ASIC设计中得到广泛应用。微处理器IP核是SOC片上系统的核心部分。但是大多数公司和研究机构没有足够的财力与人力开发自己的处理器,所以业界比较流行的做法就是购买微处理器的IP核,例如ARM核或MIPS核,但需要数十万美金的许可证费用的投入。 
除了昂贵的ARM核与MIPS核以外,我们还有另外一种选择,就是选择开放源代码的微处理器的IP核。目前可以实际使用的开放源代码处理器有LEON系列与OPENRISC系列两种。本文就介绍了LEON2微处理器核,快速的建立起一个SOC的平台的原型对于验证系统性能与加快软件开发都是相当重要的。本文还详细阐述了如何在Altera的FPGA开发板上建立基于LEON2微处理器的SOC原型平台。
1 LEON2微处理器
LEON处理器系列是欧洲航天局的下属的研究所开发的32位微处理器,应用在航天局的各种ASIC芯片内。目前有LEON2,LEON3系列。LEON系列处理器是一个可配置,可综合适于在SOC设计中应用的微处理器核。LEON2处理器是一个使用SPARC V8指令集的32位的RISC处理器,它的源代码由可综合的VHDL代码构成。同时LEON2的性能也很不错,使用Dhrystone2.1的测试平台,LEON可以达到大约0.85MIPS/MHz。更大的好处是LEON处理器是一个公开源代码,遵循GNU LGPL协议。任何人都可以其网站上免费下载其硬件代码和各种开发软件工具与相关文档。并且在自己ASIC项目中使用。
LENO2的处理器具有以下的特点:
内部使用了5级流水线,兼容SPARC V8指令集。
具有硬件乘法,除法和MAC的功能。
具有分开的指令和数据cache结构(哈佛结构),可以根据需求灵活的配置cache的容量,大小范围是1-64kbyte。
片上总线规范使用了AMBA2.0规范,支持APB,和AHB标准。
具备一些片上常用外设,包括UART,中断控制,I/O端口,实时时钟,看门狗等。
支持硬件调试功能。
图1是LEON2的结构框图,虚线部分内是LEON2处理器的组成部分。


 
       
       图1 LEON处理器的结构框图
从上面的介绍可以看出,LEON2的性能相当不错,但是作为一个处理器,除了本身的性能以外,同时还必须要有高效的编译器软件开发环境,各种应用软件和操作系统的支持。ARM和MIPS在嵌入式的广泛应用,与其背后的高效的软件编译开发工具,以及众多支持ARM和MIPS的实时操作系统软件有很大关系。很多公司选择ARM或MIPS,不仅看重微处理器的性能,更大的方面是看重其背后的软件支持环境。虽然LEON系列在这一点上不如商用微处理器,但是也是相当不错了。和硬件代码一起,可以下载LECCS,一个基于GCC的免费的C/C++的交叉编译系统,同时也可以使用GDB调试工具做源代码级别的调试。开源社区还提供免费的实时系统RTEMS,UClinux,eCos等免费实时操作系统。上述实时操作系统都已在LEON2处理器上移植成功了。
       由于LEON2处理器的源代码是公开的,任何人都可以免费得到和使用。很多研究机构和公司没有自己的处理器的核,如果去开发,需要大量的人力物力支持,而且附带的各种软件编译器的开发也需要大量的工作,对于中小型的公司或研究院很难做到。如果通过购买ARM或者MIPS的核,通常都需要几十万美金的许可证的费用,同时以后的产品也必须要付一定的费用。而LEON系列处理器就给了这些公司和研究机构另外的一种选择。虽然在功耗和性能上同常用的ARM,MIPS等处理器还有些不足,但是完全可以使用。LEON处理器是经过了多个ASIC芯片流片成功的实践检验。目前基于LEON系列的ASIC芯片也有几十个项目。
2 在FPGA开发板上建立基于LEON2的SOC原型平台
随着片上系统复杂性的不断增加,为了克服片上系统(SOC)设计的挑战,半导体业界正在采取一种基于系统原型的平台设计方法。这种方法就是通过将片上系统映射到FPGA,这样可以在接近运行速度的前提下,验证硬件和软件。这样不仅给为软件部分能尽早的进行开发与调试工作提供了一个原型,同时也可以在实际运行中发现一些在系统设计中没有注意的地方。这样最终可以缩短设计周期,同时为ASIC设计一次成功提供了更大的把握。 
在我们的设计中,为了上述的目的,所以决定在FPGA开发板上建立基于LEON2处理器的SOC平台。使用这个原型系统,就可以很容易验证系统的性能,并且加速软件开发调试流程。图2 就是我们的一个基于LEON2的平台的模块框图。LEON2处理器作为核心部分,片内ROM存放monitor负责系统初始化和将程序拷贝到片外SRAM内的任务,片外RAM是FPGA开发板上memory,用来存放程序和数据。我们自己设计的IP核通过AHB总线和LEON2相互交互。


FPGA开发板是Altera公司的FPGA开发板NIOS。板上主要有以下资源,一块APEX20KE的FPGA,256K字节的RAM(2个64K*16bit的片子),JTAG接口(通过JTAG接口我们可以从PC机上

随着IC制造工艺水平的快速发展,片上系统(SOC)在ASIC设计中得到广泛应用。微处理器IP核是SOC片上系统的核心部分。但是大多数公司和研究机构没有足够的财力与人力开发自己的处理器,所以业界比较流行的做法就是购买微处理器的IP核,例如ARM核或MIPS核,但需要数十万美金的许可证费用的投入。 
除了昂贵的ARM核与MIPS核以外,我们还有另外一种选择,就是选择开放源代码的微处理器的IP核。目前可以实际使用的开放源代码处理器有LEON系列与OPENRISC系列两种。本文就介绍了LEON2微处理器核,快速的建立起一个SOC的平台的原型对于验证系统性能与加快软件开发都是相当重要的。本文还详细阐述了如何在Altera的FPGA开发板上建立基于LEON2微处理器的SOC原型平台。
1 LEON2微处理器
LEON处理器系列是欧洲航天局的下属的研究所开发的32位微处理器,应用在航天局的各种ASIC芯片内。目前有LEON2,LEON3系列。LEON系列处理器是一个可配置,可综合适于在SOC设计中应用的微处理器核。LEON2处理器是一个使用SPARC V8指令集的32位的RISC处理器,它的源代码由可综合的VHDL代码构成。同时LEON2的性能也很不错,使用Dhrystone2.1的测试平台,LEON可以达到大约0.85MIPS/MHz。更大的好处是LEON处理器是一个公开源代码,遵循GNU LGPL协议。任何人都可以其网站上免费下载其硬件代码和各种开发软件工具与相关文档。并且在自己ASIC项目中使用。
LENO2的处理器具有以下的特点:
内部使用了5级流水线,兼容SPARC V8指令集。
具有硬件乘法,除法和MAC的功能。
具有分开的指令和数据cache结构(哈佛结构),可以根据需求灵活的配置cache的容量,大小范围是1-64kbyte。
片上总线规范使用了AMBA2.0规范,支持APB,和AHB标准。
具备一些片上常用外设,包括UART,中断控制,I/O端口,实时时钟,看门狗等。
支持硬件调试功能。
图1是LEON2的结构框图,虚线部分内是LEON2处理器的组成部分。


 
       
       图1 LEON处理器的结构框图
从上面的介绍可以看出,LEON2的性能相当不错,但是作为一个处理器,除了本身的性能以外,同时还必须要有高效的编译器软件开发环境,各种应用软件和操作系统的支持。ARM和MIPS在嵌入式的广泛应用,与其背后的高效的软件编译开发工具,以及众多支持ARM和MIPS的实时操作系统软件有很大关系。很多公司选择ARM或MIPS,不仅看重微处理器的性能,更大的方面是看重其背后的软件支持环境。虽然LEON系列在这一点上不如商用微处理器,但是也是相当不错了。和硬件代码一起,可以下载LECCS,一个基于GCC的免费的C/C++的交叉编译系统,同时也可以使用GDB调试工具做源代码级别的调试。开源社区还提供免费的实时系统RTEMS,UClinux,eCos等免费实时操作系统。上述实时操作系统都已在LEON2处理器上移植成功了。
       由于LEON2处理器的源代码是公开的,任何人都可以免费得到和使用。很多研究机构和公司没有自己的处理器的核,如果去开发,需要大量的人力物力支持,而且附带的各种软件编译器的开发也需要大量的工作,对于中小型的公司或研究院很难做到。如果通过购买ARM或者MIPS的核,通常都需要几十万美金的许可证的费用,同时以后的产品也必须要付一定的费用。而LEON系列处理器就给了这些公司和研究机构另外的一种选择。虽然在功耗和性能上同常用的ARM,MIPS等处理器还有些不足,但是完全可以使用。LEON处理器是经过了多个ASIC芯片流片成功的实践检验。目前基于LEON系列的ASIC芯片也有几十个项目。
2 在FPGA开发板上建立基于LEON2的SOC原型平台
随着片上系统复杂性的不断增加,为了克服片上系统(SOC)设计的挑战,半导体业界正在采取一种基于系统原型的平台设计方法。这种方法就是通过将片上系统映射到FPGA,这样可以在接近运行速度的前提下,验证硬件和软件。这样不仅给为软件部分能尽早的进行开发与调试工作提供了一个原型,同时也可以在实际运行中发现一些在系统设计中没有注意的地方。这样最终可以缩短设计周期,同时为ASIC设计一次成功提供了更大的把握。 
在我们的设计中,为了上述的目的,所以决定在FPGA开发板上建立基于LEON2处理器的SOC平台。使用这个原型系统,就可以很容易验证系统的性能,并且加速软件开发调试流程。图2 就是我们的一个基于LEON2的平台的模块框图。LEON2处理器作为核心部分,片内ROM存放monitor负责系统初始化和将程序拷贝到片外SRAM内的任务,片外RAM是FPGA开发板上memory,用来存放程序和数据。我们自己设计的IP核通过AHB总线和LEON2相互交互。


FPGA开发板是Altera公司的FPGA开发板NIOS。板上主要有以下资源,一块APEX20KE的FPGA,256K字节的RAM(2个64K*16bit的片子),JTAG接口(通过JTAG接口我们可以从PC机上

相关IC型号

Warning: Undefined variable $stockkeys in G:\website_51dzw\www.51dzw.com\code\tech\view.php on line 152

热门点击

 

推荐技术资料

业余条件下PCM2702
    PGM2702采用SSOP28封装,引脚小而密,EP3... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式