Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
  • Groups
    • Research Collaboration and Enablement
    • DesignStart
    • Education Hub
    • Innovation
    • Open Source Software and Platforms
  • Forums
    • AI and ML forum
    • Architectures and Processors forum
    • Arm Development Platforms forum
    • Arm Development Studio forum
    • Arm Virtual Hardware forum
    • Automotive forum
    • Compilers and Libraries forum
    • Graphics, Gaming, and VR forum
    • High Performance Computing (HPC) forum
    • Infrastructure Solutions forum
    • Internet of Things (IoT) forum
    • Keil forum
    • Morello Forum
    • Operating Systems forum
    • SoC Design and Simulation forum
    • 中文社区论区
  • Blogs
    • AI and ML blog
    • Announcements
    • Architectures and Processors blog
    • Automotive blog
    • Graphics, Gaming, and VR blog
    • High Performance Computing (HPC) blog
    • Infrastructure Solutions blog
    • Innovation blog
    • Internet of Things (IoT) blog
    • Operating Systems blog
    • Research Articles
    • SoC Design and Simulation blog
    • Tools, Software and IDEs blog
    • 中文社区博客
  • Support
    • Arm Support Services
    • Documentation
    • Downloads
    • Training
    • Arm Approved program
    • Arm Design Reviews
  • Community Help
  • More
  • Cancel
中文社区
中文社区
中文社区博客 软件:加速器致胜的秘密
  • Blogs
  • Forum
  • 视频和文件
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
  • New
中文社区 requires membership for participation - click to join
More blogs in 中文社区
  • ARM中国大学计划博客

  • Arm新闻

  • 中文mbed博客

  • 中文社区博客

  • 恩智浦汽车电子MCU讨论区博客

 

Tags
  • Fast Models
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

软件:加速器致胜的秘密

章政
章政
February 18, 2019
Less than one minute read time.

随着arm生态系统的发展壮大,各种各样的应用场景层出不穷。为了更好地在特定场景下得到更好的性能,能耗比等指标,针对特定应用场景的加速器市场也在蓬勃发展,近年来火热的人工智能加速器(Artificial Intelligence Accelerator)就是一个典型例子。

一个高效的加速器,需要精心设计的硬件以及与之搭配的软件,两者缺一不可,否则用户体验会大打折扣,这也是为什么我们常常看到某些指标非常惊艳的加速器,在实际使用中体验却不尽如人意的原因。以人工智能加速器为例,其中基本的硬件加速单元就是乘加器的组合,但如何让这些乘加器高效地进行并行计算,涉及到上层数据的打包,调度,需要大量的驱动软件工作,而且大部分软件开发者都是基于某种框架进行应用开发,具体见图 1,所以驱动到框架的适配也很重要,甚至有一些框架不能满足应用的需求,需要专门开辟通道进行优化。

图1:arm NPU软硬件框架

开发一款高性能加速器,需要投入大量人力物力,如果不能大规模使用,那么投入回报比会大大降低,甚至亏本。如果加速器能和不同arm系统轻松组合,拓展arm系统的应用范围,那么应用场景将会大大增加,生命周期也会延长。让加速器适配不同的arm系统,这对软硬件接口和驱动提出了非常大的挑战,因为今天的arm产品非常丰富,从低功耗的微处理器,主流的移动平台,到高端的服务器,高性能计算处理器都有相应产品。对于一个加速器团队来说,针对尽可能多的arm配置组合进行开发验证成本将非常高昂,这里面不单单涉及IP/EDA的采购,还有系统的搭建维护,但如果没有这些IP又无法将整个业务流程完整验证,甚至影响软硬件接口的设计优化。

有没有方法高效地解决加速器配套驱动,框架,应用软件开发的问题呢?Fast Model!

图2:使用DS-5调试运行在Fast Model中的系统软件

在Fast Model的例子系统中,arm给出了一系列arm核,相关IP组合的子系统模型,以及相应OS,开发工具DS-5,方便客户快速搭建软件开发平台,调整软硬件接口,进行驱动以及上层软件的开发,具体参考图3。

整个开发流程如下:

  1. 在Fast Model的例子系统中找到你需要的平台,和对应的Bootloader, Firmware, OS软件,并将他们顺利运行
  2. 将Fast Model的子系统导出生成SystemC的模型子系统模块
  3. 编写加速器的功能模型,通过AMBA PV总线和Fast Model导出的子系统模块进行连接
  4. 编写驱动在目标OS中操作加速器
  5. 在模型平台上进行软件框架,应用匹配移植

arm提供了绝大部分市面可见设计的类似子系统,无论是基于arm v7/v8单核,多核,多cluster系统,还是包含最新架构特性的CPU系统,加速器开发团队都可以在Fast Model的例子程序里面找对类似子系统范例进行适配,在设计之初就可以解决不同系统的适配性问题。Fast Model也提供工具让开发者对例子系统进行修改,生成新的子系统以满足需要。在加速器设计之初,软件硬件人员就可以一起利用丰富多样的例子系统进行架构的探索,对稳定软硬件接口非常有帮助,而稳定的接口定义对长期的产品演进至关重要。

图2:基于Fast Model的加速器软件开发

至此开发者已经完成了大部软硬件接口,驱动以及框架软件开发工作,但驱动中的时序问题还没有完全解决,因为Fast Model是一款功能型模型,它为了提高运行速度(50-200MHz),牺牲了时序信息。对于时序信息,开发者可以最后去仿真平台甚至最终芯片上去调节,而此时软件测试用例和框架都已经完成,这将大大节省占用仿真平台(MHz)进行调试排错的时间,从而降低成本。

综上所述,Fast Model可以迅速提高加速器产品的成熟度和适配范围,如果您和您的团队正在开发基于arm的加速器,欢迎联系我试用Fast Model来缩短产品的成熟周期,提高配套软件的质量,提前将产品推向市场。

Anonymous
中文社区博客
  • Arm A-Profile构架2022扩展

    Zenon Xiu (修志龙)
    Zenon Xiu (修志龙)
    原文:Arm A-Profile Architecture Developments 2022 - Architectures and Processors blog - Arm Community blogs - Arm Community  作者:Martin Weidmann翻译:修志龙(Zenon Xiu) 与arm构架授权和生态伙伴一起,arm持续演进其构架,开发新功能以满足现有和新市场的要求…
    • October 17, 2022
  • 深入理解 Arm A-profile的non-maskable interrupt -NMI

    Zenon Xiu (修志龙)
    Zenon Xiu (修志龙)
    原文: https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/a-profile-non-maskable-interrupts  翻译: 修志龙 Zenon Xiu Arm A-profile构架一个长久以来的局限性是:缺乏对non-maskable interrupt (NMI…
    • August 24, 2022
  • Arm A-Profile 构架2021扩展

    Zenon Xiu (修志龙)
    Zenon Xiu (修志龙)
    原文: https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/arm-a-profile-architecture-developments-2021 Martin Weidmann September 8, 2021 翻译注释:Zenon Xiu Arm与arm构架授权公司及生态伙伴一起…
    • August 17, 2022