嵌入式系统开发的快速启动方法
为了削减成本,提升性能和保持灵活性,在工业、医疗、汽车、航天和军用产品等广泛的应用领域,包括处理器和外设在内的完整的嵌入式系统被整合到了FPGA 上。
虽然FPGA的传统用户是硬件设计者,但是赛灵思的新型嵌入式设计平台,使得软件开发人员也能够在熟悉的环境中轻松编程,包括Eclipse IDE、编译器、调试器、操作系统和库。编程可以利用uC/OS-II之类的RTOS 甚至全嵌入式Linux在裸金属级完成。
![](../img/eep/emb/emb-3657turev3gy3mu.jpg)
图1 嵌入式目标参考设计
嵌入式设计趋势及挑战
FPGA的应用到现在已经有二十多年的时间了,我们在各个领域都能看到各种FPGA的应用,例如医疗、工业控制、汽车电子、连接IP、高端显示、无线、监控、军事通信等等。然而,FPGA内使用嵌入式处理器的时间只不过是近十年的事情,从1999年到现在,FPGA内使用嵌入式处理器在逐年正向增加中。
![](../img/eep/emb/emb-3658vj3wqamqlbs.jpg)
图2 EDK 软件、硬件和集成流程
![](../img/eep/emb/emb-36592npojnhiutr.jpg)
图3 简单的SDK软件开发流程步骤
随着FPGA内使用嵌入式处理器设计越来越多,我们面临的挑战也越来越多,主要挑战分为三个方向:
• 满足不断提高的技术要求
–要求有一个适用于该应用的处理器系统
–要求能够选择正确的功能(外设)组合
• 即便只有很少的FPGA设计经验,也能开发软件
–需要易于定制的预配置系统
• 降低进度风险
–希望花更少的时间创建和调试定制IP模块
–快速并行开发和验证软硬件
很多人都使用过嵌入式处理器,但当一开始在选择一个嵌入式处理器作为系统核心时,考虑要点是什么呢?一个适用于该系统应用的处理器以及能够正确满足外设功能需求的组合将会是最后的选择。这些选择处理器的条件都是FPGA嵌入式处理的挑战。
除此之外,FPGA硬件设计的难度必须要有效降低,能让对FPGA经验设计较少的人员也能够开发软件,这点是因为传统的FPGA设计工程师,他们虽然没有硬件的设计经验也要能够开发软件,这就必须要有一个易于制定的预配置系统。
在进度风险的管理上,FPGA嵌入式设计显得额外重要,由于FPGA嵌入式设计包含软件和硬件同时在一个芯片上,所以当问题发生时,硬件人员和软件人员并不能很快理清问题的症结点,所以常常延迟进度,因此在选择FPGA嵌入式系统时,使用人员往往希望花更少的时间来调试硬件IP模块,并同时开发验证软件,软硬件的整合和效能提升是一个很大挑战。
赛灵思嵌入式平台
赛灵思基于FPGA的嵌入式平台的基本价值在于为了满足不断提高的客户要求。而嵌入式目标参考设计可以让对FPGA设计经验很少的人也能够快速开发软件。而内含目标参考设计Spartan-6和Virtex-6的嵌入式套件可以有效地管理降低客户开发进度风险。
Spartan-6 FPGA嵌入式套件
• 描述:
–该套件支持使用MicroBlaze软处理器的软件开发工作以及使用Spartan-6 LX45T FPGA的硬件处理器系统定制工作。
• 组件:
–采用Spartan-6 LX45T FPGA的SP605基础板
• 下载/调试电缆、电源
–ISE设计套件:嵌入式版本
• ISE和 ChipScope Pro:S6LX45T专用的器件
• Platform Studio、软件开发套件(SDK) (Eclipse IDE)
–嵌入式目标参考设计
• MicroBlaze™处理器子系统设计
–技术文档
• 硬件设置指南和入门指南
• 深入的硬件和软件分步辅导资料
–生态系统合作伙伴提供OS/RTOS支持
• Linux、uC/OS-II、TreckVirtex-6 FPGA嵌入式套件
• 描述:
–该套件支持使用MicroBlaze软处理器的软件开发工作以及使用Virtex™-6 LX240T FPGA的硬件处理器系统定制工作
• 组件:
–采用Virtex-6 LX240T FPGA的 ML605基础板
• 下载/调试电缆、电源
–ISE设计套件:嵌入式版本
• ISE和ChipScope Pro:V6LX240T专用的器件
• Platform Studio、软件开发套件(SDK) (Eclipse IDE)
–嵌入式目标参考设计
• MicroBlaze处理器子系统设计
–技术文档
• 硬件设置指南和入门指南
• 深入的硬件和软件分步辅导资料
–生态系统合作伙伴提供OS/RTOS 支持
• Linux、uC/OS-II、Treck
![](../img/eep/emb/emb-3660504lsh0wbed.jpg)
图4 简单硬件设计流程步骤
![](../img/eep/emb/emb-3661xyeyqk41x32.jpg)
图5 集成并优化软件/硬件
嵌入式目标参考设计
Spartan-6和Virtex-6嵌入式目标参考设计其实是非常相象的,它们都包含一个32位的MicroBlaze™RISC处理器,性能优化,支持Linux RTOS,100MHz时钟频率。另外还包含集成式存储控制器,包含DDR、DDR2、DDR3、LPDDR,数据速率达800Mbps。
全套优化的软IP外设和总线结构包含UART、Flash、GPIO、I2C/SPI、Timer/Intr Controller、Debug。具体如图1所示
- 嵌入式Linux系统中的快速启动技术研究(03-11)
- 嵌入式linux启动信息完全注释(04-24)
- Linux常见紧急情况处理方法(07-23)
- 一种基于BIOS的WINCE启动方法(01-10)
- Windows CE 6.0 Multi-bin的设计与实现(03-06)
- 设计基于NXP LPC2000的次级启动加载程序用于代码升级(04-04)