SDK软件包介绍
提供高效且易于集成的二次开发软件平台。
1.概述
TACO SDK (Topsfuture AI Compute Optimization Software Development Kit) 是特普斯微(TOPSFuture)针对其 EA65xx 系列高性能 AI SoC 平台精心打造的综合性软件开发包。该 SDK 旨在赋能开发者,为基于 EA65xx 芯片的深度学习应用提供高效、稳健且易于集成的二次开发能力,显著加速从模型开发到边缘端部署的整个生命周期。它整合了底层硬件抽象、中间件服务、硬件加速库、标准框架适配以及应用层示例,构成了完整的嵌入式 AI 解决方案开发栈。
TACO SDK 软件栈的整体架构图如下:
2.TACO SDK主要模块介绍
2.1 系统层与板级支持包(System Layer & BSP)
-
Ubuntu发行版:采用标准的ubuntu发行版24.04,为上层应用和服务提供熟悉且功能完备的用户空间环境及丰富的软件包生态。
-
Linux Kernel & Drivers: 提供基于特定版本 Linux 内核(Linux V6.6)的操作系统基础,并包含与 EA65xx SoC 硬件紧密集成的板级支持包(BSP),负责底层硬件资源的初始化、驱动与管理。
-
OpenSBI: 实现 RISC-V 架构下的标准 Supervisor Binary Interface,为操作系统内核提供统一、规范的底层硬件服务接口,提升系统可移植性与兼容性。
2.2 媒体与 AI 中间件 (Media & AI Middleware)
媒体与 AI 中间件 (Media & AI Middleware)作为核心服务层,向上层应用和框架提供对底层硬件加速单元和系统服务的访问接口。
-
taSys: 提供系统级的服务与管理功能,包括设备管理、任务调度或系统状态监控。
-
taCodec: 封装了 SoC 内建的硬件编解码单元(VPU/JPU),提供针对 H.264/H.265 视频流和 JPEG 图像的高效硬件加速编解码接口。
-
taCV (TacoCV Core Primitives): 构成 TacoCV 库的核心,提供一组高度优化的基础视觉处理原语(Primitives),这些原语直接利用 SoC 内的专用图像处理硬件 IP 或 RISC-V CPU 的向量指令集(RVV)进行加速。
-
taRuntime (Neural Network Runtime Engine): 板载神经网络推理引擎的核心运行时库。它提供标准的 C API,允许应用程序加载经过 NNTC 编译优化后的模型,并调度到 NPU (Neural Processing Unit) 进行硬件加速推理。
2.3 媒体处理框架 (Media Framework)
媒体处理框架集成了业界主流的开源多媒体和计算框架,并针对 EA65xx SoC 进行了深度适配与硬件加速优化。
-
taFFmpeg: 特普斯微定制版的 FFmpeg 库,无缝集成了 taCodec 的硬件加速能力。开发者可以通过标准的 FFmpeg API 实现高性能的音视频流输入/输出(如 RTSP/RTMP)、解复用、解码、编码及复用操作。
-
taOpenCV: 适配于 EA65xx 平台的 OpenCV 库。除了标准的 CPU 计算功能外,它通过调用taCV,使得开发者能在 OpenCV 的框架内利用硬件加速进行视频编解码、JPEG 处理以及执行部分优化的图像处理功能。
-
taOpenBLAS: 针对 RISC-V 架构 (C920 V2 with RVV 1.0) 优化的 OpenBLAS (Basic Linear Algebra Subprograms) 实现。利用 RVV 向量扩展指令集,显著加速了关键的线性代数运算,如 SGEMM (Single-precision General Matrix Multiply) 等,为 AI 模型(尤其是 Transformer 等)中的计算瓶颈提供加速。
-
taPipeworks: 推测为用于构建和管理复杂媒体处理流水线(Pipelines)的框架或工具,简化多阶段、多输入/输出的媒体处理流程开发。
2.4 NPU 部署工具链 (NNTC - Neural Network Toolchain)
-
部署于主机端(X86_64 Linux 环境,支持 Docker 容器化部署,如图中的 taCompiler docker, taWorkshop docker)的关键开发工具。
-
负责将来自主流深度学习框架(如 TensorFlow, PyTorch, ONNX 等)的预训练模型,进行包括图优化、算子融合、量化(如 INT8,FP16)、编译和内存布局优化在内的一系列转换,最终生成可在 EA65xx NPU 上高效执行的二进制指令或模型格式。
2.5 核心计算加速库 (Core Compute Acceleration Libraries)
-
TacoCV: 如中间件部分所述,是一个综合性的、性能优化的图像处理库。它利用硬件 IP 和 RISC-V/RVV 指令集加速大量 CV 算子,覆盖滤波、形态学、几何变换、色彩空间转换、特征提取(如 SIFT/SURF 基础算子)、JPEG 编解码以及 AI 模型的预处理和后处理等关键任务。
-
OpenBLAS (taOpenBLAS): 提供符合 BLAS 标准接口的、基于 RVV 硬件加速的线性代数计算库,是上层科学计算、数据分析及 AI 应用(特别是依赖矩阵运算的部分)的重要性能支撑。
2.6 应用层与参考设计 (Application Layer & Reference Designs)
-
User Application: 开发者基于 TACO SDK 提供的 API 和框架构建的最终嵌入式 AI 产品或解决方案。
-
freeNeck / Demos: 提供的参考应用或性能演示程序,作为开发起点或用于展示 SDK 的典型应用场景和性能表现。
TACO SDK 提供了一个从硬件驱动到应用框架的、高度整合且性能优化的开发平台,旨在降低基于 EA65xx 系列 AI SoC 的嵌入式视觉和智能应用的开发门槛,提升开发效率和最终产品性能。
以上相关SDK开发包及开发详细文档请联系销售获取。