基于FPGA的软核处理器在嵌入式中的运用

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于FPGA的软核处理器在嵌入式中的运用

随着一些ASIC 应用开发日益受到成本的困扰,OEM日渐转向FPGA 来构建自己的系统。这些系统中绝大多数需要一个处理器为了给设计者提供一个为FPGA 优化的灵活的嵌入式处理器方案,满足16位和32位嵌入式处理器市场的需求,Altera公司公司推出Nios II 系列32位RSIC嵌入式处理器。这是Altera的第二代软核嵌入式处理器,性能超过200DMIPS,在Altera FPGA 中实现仅需35美分。因为Nios II处理器是软核,因此开发者能够从无限的系统配置组合中选择满足性能和成本目标的方案,而不必为系统级设计考虑采用ASIC。

与此同时赛灵思公司(Xilinx,Inc.)宣布推出Virtex®-5 FXT 器件。这些FPGA 器件在业界率先集成了嵌入式PowerPC®440处理器模块、高速RocketIO™GTX收发器和专用XtremeDSP™处理能力。作为65nm Virtex-5系列的第四款平台,

Virtex-5 FXT提供了极高的性能,还可帮助设计人员降低系统成本、缩小板尺寸并减少元件数量。在赛灵思公司以及业界领导厂商提供的逻辑、嵌入式和DSP开发工具以及IP内核的支持下,Virtex-5 FXT FPGA为有线和无线通信、音频/视频广播设备、军事、航空航天、工业系统以及其它众多应用提供了一个终极系统集成平台。

从FPGA两大主要生产公司的设计方向上我们可以看出,未来的嵌入式发展将向基于软核处理器的FPGA发展,也就是常称之为的SoPC(可编程片上系统Sysein on a Programmable Chip)设计思想。基于FPGA 的SoPC 具有设计灵活、可裁减、可配置、可扩充、可升级的特点,并具备软硬件在系统可编程的功能。我们借助强大得EDA 工具,在设计嵌入式系统时,不仅可以实现软件的可裁减性,同样可以实现硬件的可裁减性,并且可以自主定义处理器的引脚,方便PCB板布线,同样方便更改设计。

Altera 的Nios 处理器和Stratix FPGA 是其Maestro 平台的核心,它具有的核心功能提供了前所未有数据为中心的功能。能够用于任何需要32位嵌入式处理器的应用。据介绍,Nios II 系列包括三种软CPU 核,一个是最大系统性能,一个是为最少逻辑使用量优化的,还有一个是二者之间的平衡。所有核都是100% 代码兼容,让设计者根据系统需求变化改变C P U ,而不会影响现有的软件投入。Nios II系列是建立在前一代成功的基础之上,以部分的资源提供高得多的性能。

另外,Nios II处理器具有健全的软件开发套件,包括编译器、集成开发环境(IDE ),JTAG 调试器,实时操作系统(RTOS)和TCP/IP 协议栈。Nios II嵌入式处理器结合Altera的低成本Cyclone 系列和高性能StratixII 系列FPGA 和HardCopy 结构化ASIC系列,在价格、性能和功能上具有很高的灵活性。Lytle先生认为,Nios II系列增加了Altera 在嵌入式处理器市场上的机会。当第一代Nios 处理器为Altera 开辟了新的应用和市场之门时,Nios II嵌入式处理器系列有望增加公司在16位和32位嵌入式处理器市场上的机会。从使用Altera 低成本Cyclone FPGA 系列的探鱼器和引擎测试仪到使用高性能Stratix系列的视频处理和高级通信系统,Altera的软核嵌入式处理器已经成为新应用中使用可编程逻辑的推动力。

在单片器件上集成重要处理性能和SERDES元件,可为那些需要节约板级空间和成本、同时又需要满足高性能要求的设计人员提供巨大的价值。例如,在无线应用中,Virtex-5

FXT平台技术可以支持的基站类型是受到高度关注的,特别是在支持4G通信系统的LTE(长期演化)基带的应用领域。

创新的Virtex-5 FXT平台是业界首个提供多达两个业界标准的PowerPC 440

处理器模块的FPGA产品。每个处理器集成了32KB指令和32KB 数据缓存,在550 MHz 时钟频率下可提供高达1,100 DMIPS 的性能。与PowerPC440模块紧密耦合的是新的集成5x2纵横开关式交换处理器互连架构,支持并发的I/O和存储器访问。这一高度集成的创新互连架构包括专用的主/从处理器局部总线接口、支持独立发送/接收通道的四个DMA端口,以及一个支持高性能、低延迟点对点连接的专用存储器总线接口。

利用PowerPC 440嵌入式处理器模块,设计人员可快速方便地实现高级可扩展嵌入式处理应用。先进的PLB架构支持高吞吐量128位接口,可使系统瓶颈最小化,从而将处理器、纵横开关式交换构造以及软IP逻辑之间的数据传输能力最大化。同时,在视频处理、3D数据处理以及浮点运算等应用中,增强的高性能辅助处理器控制单元(APU)还为专用协处理器引擎或用户专门定义的指令提供额外的连接能力。

在FPGA 中使用软核处理器比硬核的优势在于,硬核实现没有灵活性,通常无法使用最新的技术。随着系统日益先进,基于标准处理器的方案会被淘汰,而基于Nios II 处理器的方案是基于HDL 源码构建的,能够修改以满足新的系统需求,避免了被淘汰的命运。将处理器实现为HDL 的IP 核,开发者能够完全定制CPU 和外设,获得恰好满足需求的处理器。

下面我基于Nios II软核处理器介绍一下如何使用软核处理器设计自己的嵌入式系统。

1、使用QuartusⅡ内部集成的系统级开发工具SoPC Builder(如果开发DSP系统则使用DSP Builder),选择合适自己系统得Nios II软核,这里我们可以定义Nios II 处理器的位数,内部RAM的大小,ROM的大小,FLASH的大小,可以定义JTAG仿真的等级。

2、我们完成基本的处理器之后,我们应再加上一些已有或自己开发的IP核,比如一些IO,PWM模块,I2C,UART,SPI等通信模块。

3、接着我们定义中断信息和等级信息,中断地址。

4、全部定义完毕之后,就进行编译,然后定义引脚,下载,这就构成了自己特有的处理器。

5、使用Nios II的C编译器将自己的程序进行编译,之后运行,其中Nios II的C 编译器自带一些操作系统,我们从中进行裁减,实现软件的可裁减性。

从以上步骤我们可以看出,使用软核处理器,我们不仅可以实现软件的可裁减性,还可以实现硬件的可裁减性,所以使用SOPC的设计思想,我们的设计就大大地灵活了。

如有侵权请联系告知删除,感谢你们的配合!

相关文档
最新文档