快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

和记娱h188下载app手机版:如何利用FPAG开发板搭建LEON2 SOC开发平台



跟着IC制造工艺水平的快速成长,片上系统(SOC)在ASIC设计中获得广泛利用。微处置惩罚器IP核是SOC片上系统的核心部分。然则大年夜多半公司和钻研机构没有足够的财力与人力开拓自己的处置惩罚器,以是业界对照盛行的做法便是购买微处置惩罚器的IP核,例如ARM核或MIPS核,但必要数十万美金的许可证用度的投入。

除了昂贵的ARM核与MIPS核以外,我们还有别的一种选择,便是选择开放源代码的微处置惩罚器的IP核。今朝可以实际应用的开放源代码处置惩罚器有LEON系列与OPENRISC系列两种。本文就先容了LEON2微处置惩罚器核,快速的建立起一个SOC的平台的原型对付验证系统机能与加快软件开拓都是相称紧张的。本文还具体阐述了若何在AlteraFPGA开拓板上建立基于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。和记娱h188下载app手机版

片上总线规范应用了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机上对APEX20KE进行编程),串行口和谋略机的COM1口相连。APEX20KE是Altera公司的可编程逻辑器件,标准门数为20万门阁下,片上可设置设置设备摆设摆设RAM或ROM为10K。

开拓流程如图3开拓流程图。

硬件流程: LEON2软核用VHDL代码编写的,和我们的VHDL设计文件一路应用Synplify综合对象天生FPGA的网表文件,然后应用Altera公司的结构布线和下载的对象Quartus天生响应的SOF文件。经由过程JTAG端口将SOF文件下载到影戏上去。对FPGA硬件进行设置设置设备摆设摆设。因为Quartus软件可以预先设和记娱h188下载app手机版置设置设备摆设摆设APEX20KE片上ROM,以是我们可以使用这一点,在LEON2的片上ROM预先设置设置设备摆设摆设好1K大年夜小的Monitor软件。

软件开拓流程,当软件代码完成今后,应用LEON2的基于GCC的LECCS交叉编译系统对C代码编译,获得二进制代码今后和记娱h188下载app手机版,就可以经由过程串行口下载到FPGA开拓板上。

3 、软硬件具体设计

在LEON的开拓网站上可以下载VHDL代码, LEON2是一个可设置设置设备摆设摆设的处置惩罚器核,可以根据具系一切的利用范围,对处置惩罚器的机能进行权衡。例如可以将指令和数据cache进行设置,选择从1kbyte到64kbyte的大年夜小。同时选择处置惩罚器是否要支持硬件乘法器。是否要有硬件debug的功能等等。图四是LEON2的处置惩罚器设置设置设备摆设摆设的界面,将各个选项部分设置设置设备摆设摆设完毕,系统天生对应的VHDL代码。

图四 LEON2处置惩罚器的设置设置设备摆设摆设

在终极的设计中,拔取了指令和数据cache分手是1kbyte,不带有硬件乘法功能的模块。获得LEON2的VHDL代码,然后加入我们自己设计的HDL代码,应用modelsim做简单的功能仿真。等功能仿真经由过程后,应用synplify对VHDL综合,利用 APEX20KE器件,终极的综合结果是:占用 FPGA资本是5800个LE,可以达到的时钟频率最大年夜46M。该当留意的是,因为APEX20KE器件是Altera公司2000年的产品,假如采纳Altera新一代的FPGA器件,例如StratixII器件,时钟频率可以达到107M,可以满意大年夜多半的利用领域。

应用quartus进行结构布线时,必要将LEON2和外围的memory连接起来, LEON2对法度榜样存储器和数据存储器是统一寻址。然则在FPGA原型平台设计时,软件必要多次改动调试,以是不能采取将法度榜样固化在片外flash这种做法。以是采纳了图5的布局,LEON2核同片内ROM和片外SRAM连接。此中ROM寄放了一个monitor法度榜样。因为这个部分是全部平台正常事情的核心,以是下面我专门对它做具体的解释。

图 5 LEON2与存储器的连接

LEON2的平台中有两个memory,分手是片内ROM,片外SRAM,LEON2对存储器是统一寻址的。分配如下:

Monitor的主要感化是在LEON2系统reset初始化的时刻首先对处置惩罚器初始化,对LEON2的存储设置设置设备摆设摆设寄存器进行设置设置设备摆设摆设。然后向UART口发送启动信息,然后等待从UART信息。当软件部分应用交叉编译器LECCS在PC上编译完毕后, PC机经由过程UART口和FPGA开拓板互相通信,就可以将编译好的srec文件下载到FPGA开拓板和记娱h188下载app手机版上去,放置在片内rom里面的monitor法度榜样就读入法度榜样的内容以及法度榜样的肇端地址。早先monitor将srec法度榜样拷贝到SRAM法度榜样区,等整个法度榜样下载好今后, monitor着末一条法度榜样就会自动跳转到法度榜样的肇端位置,履行SRAM里的法度榜样。

应用图5的连接。因为data_to_leon[31:0]的数据线是单向的,我们应用多路复用器来选择从外部SRAM的数据输入或者内部ROM数据输入和data_to_leon[31:0]互相连接,应用romsn[0]来选择。romsn[0]只有当造访PROM时才会置低,也便是地址为0x00000000-0x1FF和记娱h188下载app手机版FFFFF的时刻。根据上面的描述只有系统reset初始化的时刻造访PROM,也便是romsn[0]置低,等下载的法度榜样整个都拷贝到SRAM法度榜样区今后,monitor会节制LEON2处置惩罚器跳转到法度榜样的肇端位置,也便是片外的SRAM内,这时刻romsn[0]维持高电平,也便是data_to_len[31:0]于ram_datain[31:0]连接。这样系统就只会接管外部SRAM的数据。

也便是,法度榜样下载完毕后,就只会履行下载的法度榜样。这样就可以反复改动法度榜样,反复下载法度榜样。可以在使用这个原型平台开拓和调试软件硬件法度榜样。

终极,在FPGA里根据上面图5的连接将LEON2分手和片内ROM,片外SRAM互相连接,此中片内rom放入了前面所说的monitor的法度榜样。应用quartus做结构布线和下载。终极在FPGA开拓板上建立了LEON2的SOC原型平台,系统可以稳定的事情在33M的时钟下,并且因为FPGA的可多次设置设置设备摆设摆设的特点,极大年夜的方便了软件模块和硬件模块的开拓调试事情。

4 、总结和题外话

上面的内容叙述了若何使用Altera的FPAG开拓板资本,应用开放源代码的LEON2微处置惩罚器,建立一个基于LEON2的SOC原型开拓平台。并且从软件布局和硬件设计的两个方面具体先容了这个平台的建立。颠末实际应用,完全满意要求,加快了我们的项目开拓进度。

责任编辑:gt

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: