对所有的嵌入式系统来说,必然会在一定的设计阶段进行决策,决定对给定的应用到底是选择ASSP 还是采用合适的片上系统 (SoC) 解决方案。这两种选择都需要交替使用并进行折衷。如果选用 ASSP,虽然它是一款便于实施的标准现成解决方案,但对许多新型应用来说,会严重阻碍设计团队的产品定制与差异化能力的发挥。毫无疑问,用 FPGA 或 ASIC 从头开始构建 SoC 可以实现终极定制。尽管一些设计团队能证明构建 ASIC 是合理的,但是越来越多的OEM厂商利用 FPGA,从成本、功耗、密度和性能角度而言提供与ASIC相同的功能,但是风险却大大降低了。
赛灵思可扩展式处理平台的推出,意味着嵌入式系统设计人员在做出决策时多了一个新的解决方案选择,尤其是在把性能、集成度和灵活性视为关键设计考虑因素时,该解决方案更是明智之选。以ARM®处理器为核心的解决方案利用 SoC 方法来降低成本与功耗,增强特性与性能,并将针对低成本、低功耗优化的 28nm FPGA 的优势与具有嵌入式软件开发人员熟悉的业界领先处理器环境,和生态系统的完整平台相结合(如图1 所示)。该新平台将整合赛灵思目标设计平台战略中的许多组件,使软/硬件设计人员能充分利用开放式标准、常见设计方法、开发工具和运行时间平台,从而帮助设计人员减少开发应用基础设施所花费的时间,集中精力为最终产品带来差异化特性。
系统性能为何重要
尽管许多嵌入式系统只需较低的处理能力实现系统控制,不过,大量面向视频监控、汽车驾驶辅助、航空与国防等市场领域的新型应用都要求系统必须集成并处理多个数据集,以便做出复杂的决策,通常是实时的决策。我们发布的新闻稿谈到了有关不同的市场和应用。这些新型应用的共同之处在于,其所需的系统性能水平大大超出了传统处理解决方案能够实现的水平。许多这种应用基本不能用 ASSP 来实现,原先简单用 ASSP 来满足接口、特性和功能要求的情况已经不适用了。
即便性能最高的顺序处理器也难以满足处理多个进入系统的高清数据流数据输入的速度要求。举例来说,智能视频监控将多个分布式视频捕获点整合在一起,对数据进行预处理,并传输至中央主机系统或新一代无线通信系统,而这些系统将判定反馈整合起来,实施高级自适应、预失真及波束形成算法,这种系统突出反映了应用对出色性能水平的要求。
用硬件提升系统性能
处理器系统主导着嵌入式系统市场,同样发挥重要作用的还有由软件开发人员(实际上软件开发人员的数量与硬件工程设计人员数量之比为 10:1)设计并实施成百上千万条高级代码。指令集时延和有限的并行处理能力限制了通用处理器实施高数据强度系统的能力。解决这一难题的常见方法就是采用更多处理引擎同时处理数据。这就要求对代码进行重新分区,实现多核实施,避免重新分区开销抵消性能增益。
另一种传统的嵌入式系统方法就是将 FPGA 用作“协处理器”来分担或加速大量代码或复杂算法的处理工作,从而提高处理器和系统效率。设计人员通过在 FPGA 架构中执行函数,可将函数性能提升 100 倍,这要归功于 FPGA相对于 CPU 的并行处理能力。我们既可采用定制板或模块上的双芯片处理器加FPGA解决方案的组合方式,也可采用内嵌于FPGA本身的处理器来实施。至于多核方法,在 FPGA 中实施软件算法不是没有缺点,考虑到单元成本和实施复杂性等因素,更不用说涉及到开发需要从传统通用处理器中调用软件算法所需的定制处理引擎和API 等因素。对这种系统来说,性能往往受限于不同技术之间的 I/O 接口,特别是涉及到双芯片时更是如此。
许多 DSP 系统都利用采用特定处理参数的专用高性能处理引擎。这种分区方法比较简单,而且比传统的通用顺序处理引擎性能更高,但软件可调用的处理单元数量有限,因此会限制处理能力。
赛灵思可扩展式处理平台将双核 ARM Cortex™-A9 MPCore™ 处理器与关键外设及可编程逻辑完美整合在一起,解决了其他扩展系统性能的解决方案的许多技术局限性问题。处理器和 28 nm芯片可编程逻辑之间的 AMBA® 互联机制确保不会出现降低系统性能的I/O瓶颈。这种新型架构为设计团队带来增值,使其能在 Cortex-A9 处理器和可编程逻辑扩展模块之间进行功能平衡取舍。
过去十年来,整合 SoC 和 FPGA 两大领域并包括可编程逻辑处理器的处理平台稳步发展,这要归功于采用 FPGA 逻辑资源的软处理器内核的发展,以及嵌入 FPGA 内部作为专用资源的硬连线微处理器内核的出现。类似于赛灵思自己的 MicroBlaze® 处理器的软核处理器在可配置性和低成本方面优势明显,但只有先围绕其构建子系统后才能开始开发。目前很多 FPGA 中构建的处理器都没有坚实的子系统,虽然比软核处理器提升了性能,但需要大量配置,然后才能让该处理器系统启动并运行起来。简而言之,上述这两种模式都是以硬件为核心的方法,目前全球很多 FPGA 开发人员都在成功实践。
目前的软/硬件实际情况
由于种种原因,大多数嵌入式处理系统都是以处理器为核心,很大程度上是因为设计人员希望尽可能多地使用传统代码,从而提高工作效率。大多数设计团队也会预见到,市场部或企业其他部门肯定会提出修改要求,这种修改可能导致项目延迟,影响工作效率。赛灵思可扩展式处理平台的核心就是将基于 ARM 处理器的一般性基础 SoC 作为“主设备”,配合提供高度灵活性、可配置性和高性能的可编程逻辑,发挥最新的低成本低功耗 28 nm 工艺技术的优势。
2010 年 2 月,赛灵思宣布,该公司正在构建采用 28 nm 高介电层/金属闸 (HKMG)、高性能低功耗工艺技术的全新一代 FPGA。选择这一工艺技术将帮助赛灵思推出大幅降低功耗的FPGA,并发挥新一代技术的高级“可用性能” ,而这在以前是不能实现的。
在许多高性能微处理器中,最重要的设计特性就是原始内核速度。相比较而言,FPGA 能以较低的转换速率执行高性能数据处理,设计人员可利用 FPGA 架构自身的并行处理优势,在时钟运行速率比输入输出线速低很多的情况下实现较宽的数据路径。在器件容量提升2倍的情况下,28 nm 技术可实现更高的流水线和并行处理能力,在可接受的g功耗预算范围内进一步提升内核性能。这类似于微处理器向多核设计发展的趋势,也就是说,每个内核的工作速率降低,但多核并行工作,仍能比单核高速工作实现更高的性能。
赛灵思的所有 28nm 可编程逻辑都采用一体化的 ASMBL™架构,将支持所有低成本、高性能产品系列间以及可扩展式处理平台上的设计移植。就处理器而言,作为基础的通用SoC 将提供人们所熟悉的“处理器首先启动”处理平台,并支持:
• 通过在双核配置中使用 ARM Cortex™-A9 MPCore™ 支持高性能低功耗通用应用处理器。
• 支持常用的和必需的通信接口,如千兆以太网和 CA,以及外设和器件接口(USB、 SDIO、I2C、SPI、UART)。
• 动态存储器的存储接口,如满足启动及其它非易失存储需求的 DDR 类型存储器和闪存
• 使用 ARM AMBA®-AXI 的高性能现代化 SoC 互联机制,确保不同 SoC 组件和存储器等之间能实现低时延和高吞吐量。
可扩展式处理平台架构这种以处理器为核心的方法使嵌入式软件开发人员能够移植代码,因为他们可以使用支持 ARM处理器的业界标准操作系统 (OS),以及他们熟悉的使用 ARM® RealView® 及相关第三方工具、基于 Eclipse 的 IDE、GNU、赛灵思软件开发套件等其它工具的软件开发与调试环境。
正如 FPGA 目前在系统中用于执行协处理工作一样,赛灵思可扩展式处理平台使设计团队能通过可编程逻辑扩展系统功能,执行 ARM生态系统成员和赛灵思开发的专用加速器和外设以及定制加速器和外设功能。Xilinx Platform Studio (XPS) 工具套件作为 ISE® 设计套件的一部分,可用来开发并调试器件的可编程逻辑部分,并帮助硬件设计人员创建和实施AMBA® 支持的 IP 模块,从而扩展处理器系统性能,这就是赛灵思所说的“可插接IP (Socketable IP)”,也是推动赛灵思与 ARM 合作定义 AXI4 互联协议 AMBA 4 规范的关键因素。
可扩展式处理平台的共同开发流程使系统架构师、逻辑设计人员和软件开发人员能够用他们熟悉的编程环境并行开展工作,这就是说,他们不仅能就系统功能与性能尽早做出关键分区决策,而且还可在整个开发过程中轻松进行修改。 举例来说,Cortex-A9 可控制可编程逻辑实施的定制外设的数据传输。开发人员可运行协仿真来检测给定功能在硬件中的运行速度是否比在软件中运行得快,也能决定是否在硬件中采用特定软件来加速功能。这样,我们就能在处理器代码中释放出更多空间,用于执行其他命令。不过,现在作架构决策不只是硬件设计师的事,软件开发人员也有机会决定器件的工作方式。
展望未来
下一步,赛灵思及其合作伙伴将开发全套通用标准化加速器和外设以及相关驱动程序和API,进一步帮助软件和系统开发人员在减少硬件设计工程师参与协助的情况下向设计方案添加功能。许多加速器和外设将以 IP 核的形式出现,配合赛灵思实现目标设计平台战略,提供嵌入式开发工具、方法、IP 和技术支持。
为了进一步提高从软件代码向硬件转变的优势,赛灵思还与 “C 语言到 FPGA” 编译器流程的重点厂商合作,共同为嵌入式软件和系统开发人员提供用 C 语言方便构建处理器函数的方式,并将其移植到可编程逻辑扩展模块(通过 C 语言到 FPGA 综合)。赛灵思是BDTI 高级统合工具认证计划的支持者。软件开发人员能使用自己最喜爱的商业开发工具,同时赛灵思也将提供自己基于 GNU 的编译器、调试器和驱动程序,并为常用的商业开发工具提供开放式支持。
今天宣布推出的产品标志着赛灵思将开始与客户、合作伙伴以及其他第三方厂商展开合作,共同帮助系统架构师对适用于新一代嵌入式系统的可选设计方案进行评估。赛灵思将于2011年年中公开发布采用可扩展式处理平台构建的相关产品系列的详细信息,敬请期待。
本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念
本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“
课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了
@2003-2020 中国电子顶级开发网