剑池系列开发工具系统规划(一)| 学习笔记

简介: 快速学习剑池系列开发工具系统规划。

开发者学堂课程【剑池系列开发工具 :剑池系列开发工具系统规划(一)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/734/detail/13095


剑池系列开发工具系统规划(一)

 

内容介绍:

一、 简介

二、 开发工具全貌

三、 开发工具集合

四、 小结

五、下期预告

 

一、简介

整体开发工具集称为剑池开发工具。课题中主要内容为整体开发工具及包含的内容。在开发过程中如何使用好工具集中的组件,使开发效率更高,后续会针对每个工具集的每个点展开讲述。具体从以下四方面进行讲述:

(1) 简介

(2) 开发工具全貌

(3) 开发工具集合

(4) 下期预告

1.平头哥的使命

在市面上宣传的主要有3个产品

(1) 玄铁处理器

(2) 无剑芯片平台

(3) 含光NPU

去年7月25日上海大会发布了业界最高的玄铁处理器 C910,在整个 race five 中,比第二选手超过了40%的性能。其次是无剑 soc 芯片设计平台,在 GitHub 中开放。许多同学在其基础上做了许多有趣的应用。第3个是寒光 NPU,是整个云端推理性能最强的 NPU。整个平头哥的使命就是从端开始到服务器,从云上释放普惠的算点出来,端侧共同打造普惠的芯片出来,整体构建普惠生态。

image.png

整个玄铁处理器分为2个系列:第一个是800系列,称它第一行为自研制定机,800系列中,从最小的超级用号的801到最高性能的860,整个应用领域和性能领域都是全覆盖的,整个成本面积在8位 MCU 级别或 MCU 处理器成本的级别,但是它有32处理性能。 802走的是低功耗低成本的路线; 803有计算与成本平衡;最具特色的805是专门做人工智能加速的,面向市场更多是蓝牙和智能音响,带有智能元素的MCU控制芯片。 807是高能效处理器,810是高性能计算引擎,860是高性能计算架构,以下是资源指令集的整条路线,是玄铁800系列的:

image.png

以下是基于 RISCV 架构的玄铁900系列:

image.png

500系列共有3款处理器,其中910是去年发布的性能最好的 RISC 处理器,目前是12级流水线,可以支持最多16个盒。 整个 hallmark 是7.1每兆赫兹,比第2名多出40%的性能。今年发布的906处理器是5级流水,可以认为与803当量级的处理器,比80 3流水线再深一些的处理器,面向的是高性能 MCU 或高能效的 APP 计算,属于906覆盖的范围。第一款处理器是 RISC 处理器就是902,走的是低成本低功耗路线。图中有2个?,包括流水线集数和名字,表示正在研发当中。但是从布局上看。会往高能效及更高性能方向研究。

 

二、开发工具全貌

开发工具的提出在于推出许多玄铁处理器之后,需要提供较为全面的开发工具给予用户。将玄铁处理器更好的使用起来,同时将玄铁处理器的性能全面发挥,这也就是功能上的保障。其次,将玄铁处理器的性能在用户手上极致发挥。最后希望用户体验最佳,也就是指用户快速上手使用开发芯片。介绍开发工具全貌首先需要介绍规范,规范分为2个部分:

应用二进制接口(ABI)

规范程序二进制存储格式;

规范 CPU 寄存器使用规则;

规范函数调用参数传递规则;

规范函数栈帧布局;

规范软件64位定点运算接口;

规范软件浮点运算接口;

统一接口规范(CSI)

CPU 抽象接口(CSI-Core);

通用外设驱动接口(CSI-Driver);

微内核抽象接口(CSI-Kernel);

通用算法库接口(CSI-DSP);

神经网络加速库接口(CSI-NN);

计算机视觉加速库接口(CSI-CV);

整体ABI主要是规范软件或硬件的 interface,包括CP计算机的使用规则及函数调用规则,二进制存储格式及运算接口规则等,以上内容都会在 ABI 中规定。在开发虚拟机,例如 Java script 时会使用到该规则,规则可以在应用 API 的手册中找到。其次,为了使用户或开发者能更好的共用资源,规定了一个统一接口规范,称之为 CSI。在 CSI 中,会区分各个模块不同的作用。首先用于 CPU 抽象的 interface。会将 CPU 的特权指令操作抽象到 CS core 中。例如,在从802切换到803或在各个 CPU 切换时,使切换更加顺滑。其次,定义了面向外设驱动 CSI Driver,会将阿里云提供的芯片直接用 CSI Driver 来包装,开发时,用同一接口调用,方便开发者。满足驱动、内核、算法、神经网络加速库以及计算机视觉各个方面的开发者。方便用户能够通过接口有更好的实现。阿里云实现了面向玄铁处理器的快速版本,叫 CSI-DSP,更多是面向 DSP 语音信号处理及电子电机控制的加速算法库。 CS-NN 就是将网络加速库抽象出来,CSI-CV 更多是面向计算机视觉,与神经网络有一定交叠,但更多是对图像的识别及处理。以上是整个软硬件接口规范。开发工具全貌如下:

image.png

如图所示,有2个集成开发环境:CDS,CDK。在 graphic interface 上延伸出了图形化。方便用户使用 SDK 的制作方法及框架,图形化的性能分析器,图形化的系统概述分析器,实时调试,以上内容会在集成开发环境中体现。开发环境分为3类,其中一类是编译工具链。目前支持两套编辑系统,分别是 GCC base 和 lv base 基于以上还会存在 CPU 运行时库,CPU 运行时库就是在 CPU 上不支持硬件服务点的时候,仍然能进行服务点计算。由于 CPU 运行式库会有软件浮点的行为,将浮点的操作映射成通用的整形指令。还可能存在语言相关的模拟。例如,除法模拟或调试信息的解析。以上内容都称之为 CPU 运行时库,在该层面做了加速优化,使整个实体效率更高。第三点,会提供整套整套二进制工具,基于 C 库或数学库和软件浮点库等内容。以上为第一大块编译工具链,第二大块是模拟器。模拟器就是在没有硬件的情况下做软件开发使用的工具。模拟器集成了大部分开发板和 CPU,以上内容都能在模拟器中寻找到。可以直接在模拟器上做开发工作。系统如果仅仅只存在 CPU 编译器模拟器或其他真实硬件是没有用的,因为程序会存在一些问题,所以需要调试系统。从整个调试系统来看,存在在线仿真器和调试 monitor。和一些确实系统分为以上几块,以上内容走的是低成本路线。整个开发工具目标明确,希望给用户带来极致极简的开发体验,将许多资源整合在一起,通过调试系统,将开发过程的诊断性提高。例如遇到问题时能快速寻找出问题所在。

相关文章
|
存储 前端开发 JavaScript
潮玩宇宙大逃杀无聊猿卷轴模式系统开发详细规则丨步骤需求丨方案项目丨技术架构丨源码功能
确定游戏类型和规则:明确无聊猿卷轴模式游戏类型和游戏规则,包括敌人类型、地图设计、任务类型、战斗机制等。
|
2天前
|
开发框架 Java 编译器
2025年1月推荐-工欲善其事,必先利其器-程序员必备之-核心基本工具—不要看什么国际排行榜-没有用-编辑器和编译器推荐-优雅草央千澈
2025年1月推荐-工欲善其事,必先利其器-程序员必备之-核心基本工具—不要看什么国际排行榜-没有用-编辑器和编译器推荐-优雅草央千澈
|
4月前
|
开发框架 开发者 UED
震惊!Uno Platform 竟能这样实现实时数据同步,开发者必看的最佳实践秘籍大公开!
【9月更文挑战第7天】Uno Platform 是一款强大的跨平台开发框架,支持使用单一代码库构建多平台应用。本文介绍其实时数据同步的最佳实践,包括使用 WebSocket 实现双向高效数据传输。通过示例代码展示了如何在客户端建立 WebSocket 连接、处理实时数据接收及利用数据绑定和 ReactiveUI 等技术自动更新 UI,确保一致性和响应性,从而提升用户体验。
83 2
|
5月前
|
前端开发 开发者 C#
深度解析 Uno Platform 中的 MVVM 模式:从理论到实践的全方位指南,助你轻松掌握通过 C# 与 XAML 构建高效可维护的跨平台应用秘籍
【8月更文挑战第31天】本文详细介绍如何在优秀的跨平台 UI 框架 Uno Platform 中实施 MVVM(Model-View-ViewModel)模式,通过一个简单的待办事项列表应用演示其实现过程。MVVM 模式有助于分离视图层与业务逻辑层,提升代码组织性、易测性和可维护性。Uno Platform 的数据绑定机制使视图与模型间的同步变得高效简便。文章通过构造 `TodoListViewModel` 类及其相关视图,展示了如何解耦视图与模型,实现动态数据绑定及命令处理,从而提高代码质量和开发效率。通过这一模式,开发者能更轻松地构建复杂的跨平台应用。
65 0
|
5月前
|
开发者 图形学 iOS开发
掌握Unity的跨平台部署与发布秘籍,让你的游戏作品在多个平台上大放异彩——从基础设置到高级优化,深入解析一站式游戏开发解决方案的每一个细节,带你领略高效发布流程的魅力所在
【8月更文挑战第31天】跨平台游戏开发是当今游戏产业的热点,尤其在移动设备普及的背景下更为重要。作为领先的游戏开发引擎,Unity以其卓越的跨平台支持能力脱颖而出,能够将游戏轻松部署至iOS、Android、PC、Mac、Web及游戏主机等多个平台。本文通过杂文形式探讨Unity在各平台的部署与发布策略,并提供具体实例,涵盖项目设置、性能优化、打包流程及发布前准备等关键环节,助力开发者充分利用Unity的强大功能,实现多平台游戏开发。
148 0
|
5月前
|
C# 开发者 测试技术
震惊!Xamarin 竟能如此构建跨平台应用程序,代码共享、界面设计与性能优化全攻略大揭秘!
【8月更文挑战第31天】在移动应用开发领域,跨平台工具日益受到青睐。Xamarin 是一款强大的工具,支持使用 C# 开发适用于 iOS、Android 和 Windows 的应用。通过安装 Visual Studio 或 Visual Studio for Mac,并创建 Xamarin 项目,开发者可以利用丰富的功能和工具进行开发。Xamarin 的主要优势在于代码共享,能够显著提高开发效率。
102 0
|
5月前
|
JSON 数据格式
【Axure高手秘籍】掌握这招,让你的原型设计效率飙升!——元件库导入与使用教程及主流资源下载全解析
【8月更文挑战第20天】Axure RP是界面设计与交互原型制作的强大工具。掌握元件库能显著提升设计效率。元件库包含预设UI元素如按钮、表单等,可直接拖放构建布局。在Axure RP中,通过“元件”选项下的“库”可访问并导入新元件库。导入后,轻松拖放元件至画布调整,甚至自定义样式和交互。利用脚本还能模拟真实交互效果,如按钮点击反馈。推荐资源包括Axure Marketplace、UIZilla等,助力高效设计。
135 0
|
Linux 开发工具 Android开发
嵌入式软件开发十二种开发工具与链接之优秀
嵌入式软件开发十二种开发工具与链接之优秀
133 0
嵌入式软件开发十二种开发工具与链接之优秀
|
Web App开发 IDE 算法
剑池系列开发工具系统规划(三)| 学习笔记
快速学习剑池系列开发工具系统规划。
剑池系列开发工具系统规划(三)| 学习笔记
|
NoSQL IDE 算法
剑池系列开发工具系统规划(二)| 学习笔记
快速学习剑池系列开发工具系统规划。
剑池系列开发工具系统规划(二)| 学习笔记