首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Leon3软核的FPGA SelectMap接口配置设计

Leon3软核的FPGA SelectMap接口配置设计

摘要:与通常采用外围的CPLD器件和CPU来产生配置接口控制逻辑的方法不同,本文设计了采用嵌入到FPGA的Leon3开源CPU软核来控制实现Virtex系列FPGA的SelectMap接口配置的方法,可将其应用于对FPGA芯片的在线配置。该方法设计成本低,不局限于某一类型的FPGA芯片,减少了外围分立元件的使用,增强了设计的灵活性。仿真结果表明该设计满足SelectMap接口配置所需控制逻辑要求,可以完成FPGA的并行配置。
关键词:FPGA;嵌入式CPU;Leon3软核;SelectMap接口

引言
    嵌入式系统的硬件通常包括CPU、存储器和各种外设器件,其中CPU是系统的核心,其重要性不言而喻。随着FPGA和SOPC技术的发展,基于FPGA的嵌入式系统与传统的嵌入式系统相比,具有设计周期短、设计风险和设计成本低、集成度高、灵活性大、维护和升级方便、硬件缺陷修复等优点。基于FPGA的嵌入式系统设计技术和市场逐渐成熟,使得嵌入式CPU软核(如Xilinx公司推出的MicroBlaze、Altera公司的Nios、欧空局开发的Leon3软核等)的大量应用成为可能。
    Virtex系列FPGA是Xilinx公司推出的一种高密度、大容量的现场可编程门阵列。该系列FPGA可支持动态重构,当FPGA逻辑功能需要转换,如算法改进或是发现设计上的错误,或FPGA配置数据发生错误而导致功能失效(如在空间辐射环境下的单粒子翻转效应导致配置数据错误等),则需要对FPGA进行重新配置。通常采用的配置系统由CPU、CPLD、FPGA和存储器构成。本文结合具体应用需求,介绍了利用嵌入式CPU Leon3软核处理器对Virtex系列FPGA的配置进行控制的方法。此系统能够实现FPGA配置数据的重构,并且减少了外围CPU和CPLD器件的使用,具有很好的应用价值。

1 Leon3软核
    Leon3是欧空局开发的32位CPU软核,其标准版是一种开源的软核,使用GNU LGPL授权协议,可以免费地应用于研究、教学和商业目的。Leon3软核使用VHDL语言描述,与SPARC V8兼容,使用7级流水线,集成了全流水的IEEE-754浮点处理器,提高了对多处理器的支持。由于Leon系列指令集符合SPARC V8标准,外部总线符合AMBA标准,兼容软件和IP核资源极其丰富,加上其开放源代码的策略,对它的研究和应用受到了广泛的关注。Leon3软核具有良好的可配置性和可移植性,能够根据需要灵活地选择外围控制器。并且该软核不是FPGA厂商推出的,因此可以应用于不同类型的FPGA芯片。Leon3开源软核的Grlib IP库中提供了多种功能模块,如串口控制器、存储器控制器、通用可编程I/O等,把该软核及其外围的控制模块集成到FPGA中,构成一个嵌入式片上系统。

2 SelectMap接口配置系统设计
2.1 Virtex系列FPGA配置方式
    Virtex系列FPGA基于SRAM工艺,共有4种配置方式:主串(master serial)、从串(slave setial)、SelectMap和边界扫描(boundarysca-n)。串行(主串或从串)模式需要的配置信号少(PROGRAM、CCLK、DIN、INIT、DONE),FPGA在配置时钟的上升沿接收1位配置数据,该配置方式速度较慢。边界扫描模式没有存储芯片,掉电后需重新配置,所以该种配置方式多用于调试阶段。SelectMap模式是一种8位并行配置模式,它是Virtex系列FPGA最快的一种配置模式,其配置时钟最高可达66MHz,每个配置时钟周期内有8位配置数据下载到FPGA内。在对配置速度要求较高的一些应用场合,一般采用SelectMap配置方式。
    SelectMap配置方式所需引脚及相应功能如表1所列。表中BUSY信号是握手信号,只有当配置时钟的频率超过50MHz时才起作用,本设计的配置时钟频率低于50MHz,因此不使用BUSY信号。M(2:0)是模式选择信号,在SelectMap配置模式下,M(2:0)应置为110。
返回列表