基于海思soc的智能产品开发(高、中、低soc、以及和fpga的搭配)

devtools/2025/1/20 12:45:45/

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        市场上关于图像、音频的soc其实非常多,这里面有高、中、低档,开发方式也不相同。之所以会这样,有价格的因素,也有市场的因素,更有面向人群的差异,本身无所谓对与错,本身都是竞争的需要。今天正好有时间,就简单总结一下。

1、cpu不同

        好一点的soc基本都会采用a76、a72这样的arm cpu,普通一点的会采用a53、a55,再偏下一点就是arm a9、arm a7。甚至于说,采用arm9,或者51单片机都是可以的。如果本身硬件设计足够优秀,也就是主要的算法硬件都已经实现了,cpu只是做控制,那么cpu差一点也是可以的。

2、isp大部分不开源

        很多的soc会提供i2c寄存器、dvp 寄存器、rgb屏寄存器的配置方法,但是对于mipi csi、mipi dsi大部分都是采用闭源的形式提供的。更深入一点的isp,这部分也不会提供代码的。当然,如果使用的话,只需要厂家给出来的芯片手册进行对应的开发就可以了。

3、价格差异极大

        大家如果接触过杰理这类芯片,就会了解到这类mcu的soc价格都不会很贵,普遍都是个位数。但是最近,大家如果了解到rk3588这类的芯片,就会发现国产芯片的价格也慢慢变高了,一颗rk3588也达到了数百元,如果是rk3588j车规级别的soc,则价格更高。

4、不同芯片定位差异大

        以mipi输出为例,很多ipcam soc的低端芯片是不提供mipi输出功能。但是对于另外一些soc来说,他们无所谓,相同的价格,我们可以拿到既带mipi csi输入,还带有mipi dsi输出的soc。所以,对于差不多的soc,不同品牌之间,大家可以好好选一选,这里面的差距还是很大的。

5、越来越多的sdk都是闭源的

        除了之前说的ip和驱动是闭环的,越来越多的sdk也是闭源的。比如说视频的编码、解码,音频的编码、解码,npu的使用,isp上层的配置使用等等,这部分也都是闭源的。更进一步,对于一些上层的网络库,很多soc提供的sdk也是闭源的,比如说rtmp、rtsp库,通常也是只提供h文件、so文件。这样,一方面开发很快,但是另外一方面,相当于开发者也被平台给捆绑住了,有利有弊,需要自己从中权衡。

6、开发方式不同

        大部分soc芯片开发默认都是linux,或者是android。但是对于杰理、富瀚这类厂家来说,mcu+rtos是最常见的开发方式。所以大家在出方案的时候,如果遇到对价格非常敏感的项目,可以考虑mcu+rtos的方案,主打一个短、平、快。

7、npu正在成为趋势

        之前人工智能ai如果说只是点缀的话,现在的npu基本是标配。不管是soc,还是mcu,越来越多的芯片厂家开始标配npu,所以作为开发者而言,如果把这些资源用起来,是需要好好思考下的。

8、高效&定制的算法只有靠fpga+soc解决

        市面上的isp是针对大部分sensor,或者说是大部分应用场景开发的,不一定适用于特定的场景,比如说军工、医疗或者是车规。这种特别细分的场景一般就只能靠fpga来解决了。用了fpga,自然成本就降不下来,也只能在特定的行业中使用了。

        一般fpga是这么处理的,前端通过fpga连接mipi sensor,做一些预处理的工作,处理结束后,输出RGB888,接着通过一颗RGB转mipi csi2的芯片,继续通过soc完成后面的工作。soc本身如果是跑linux的话,无论是编解码、存储、显示,还是网络发送、npu处理,都比fpga方便得多。fpga最大的好处就是算法硬件话,延时非常低,特别适合那些低延时的场景,比如说医疗行业等等。


http://www.ppmy.cn/devtools/152088.html

相关文章

AF3 MSAModule类源码解读

AlphaFold3 中的MSAModule 类 是一个用于处理多序列比对(MSA)的模块,核心功能是通过 MSAModuleBlock 堆叠和梯度检查点优化,实现对 MSA 表征和配对表征的高效计算。调用该类最终返回更新后的配对表征z,更新后的z含有MSA特征和目的蛋白质序列信息。 源代码: class MSAMo…

自制游戏——国争

自制小游戏,分享给大家 //0——步兵(k) //1——弓箭手(k) //2——炮兵(k) //3——土地(平方公里) //4——能量(t) //5——钱(元宝…

【RK3588 docker编译问题】

问题集合 问题1: 编译lunch出现问题 12:31:21 Build sandboxing disabled due to nsjail error. 12:31:22 Build sandboxing disabled due to nsjail error. In file included from build/make/core/config.mk:313: In file included from build/make/core/envset…

从零创建一个 Django 项目

1. 准备环境 在开始之前,确保你的开发环境满足以下要求: 安装了 Python (推荐 3.8 或更高版本)。安装 pip 包管理工具。如果要使用 MySQL 或 PostgreSQL,确保对应的数据库已安装。 创建虚拟环境 在项目目录中创建并激活虚拟环境&#xff…

Java基础--类和对象

目录 什么是类? 什么是对象 为什么java会设计对象 Java对象该怎么用 程序执行流程 类的加载顺序 什么是类? 类是构建对象的模板,一个类可以创建多个对象,每个对象的数据的最初来源来自对象 public class Student{public in…

Python从0到100(八十四):神经网络-卷积神经网络训练CIFAR-10数据集

前言: 零基础学Python:Python从0到100最新最全教程。 想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Pyth…

Vue.js组件开发-解决PDF签章预览问题

在Vue.js组件开发中,解决PDF签章预览问题可能涉及多个方面,包括选择合适的PDF预览库、配置PDF.js(或其封装库如vue-pdf)以正确显示签章、以及处理可能的兼容性和性能问题。 步骤和建议: 1. 选择合适的PDF预览库 ‌vu…

数字图像处理:实验三

hello!uu们大家好,这里是我们第三章实验的学习,在这里我们将学到以下几个任务,第一、基本灰度变换操作,第二、二值化的应用,额外的还有GMM模型的操作等,我们先从前面开始,了解知识点…