说明:
XMOS这次致力于打造全新的,颠覆性的嵌入式平台,简化开发人员要学一堆东西才能开发一款高性能AIOT产品的痛点。

XCORE.AI集单片机,AI,FPGA,DSP于一身,嵌入式软件开发人员可以灵活的实现各种控制,而不用担心固定的硬件性能/资源不够用的问题。并且性能强劲,可以让物联网终端设备在本地就处理数据,无需上传到云端处理。

引言:

过去的5年中,Amazon Alexa,  Google Home, Facebook Portal,  Apple Homepod等都是采用的XMOS语音助手方案。大致流程是终端设备采集音频数据,删除回声和噪音,将数据发送到云端,云端回复。

当前的智能设备非常依赖云端,随着自然语音接口引入到嵌入式设备,如果智能音响,智能电视,穿戴设备等,将面临可靠性,隐私问题和成本方面的挑战。

通过将AI功能嵌入到本地设备,提高了安全性,因为重要数据在本地就可以处理,而且降低云端带宽需求,实时性强。

另外当前市场上传统的AI处理器功耗大,价格偏贵,一定程度上限制他们作为智能终端的应用场合。

1、性能

XMOS将XCORE.AI与当前600MHz,M7核心芯片做比较。
AI性能32倍,IO速度16倍,DSP性能15倍,16bit MAC性能的21倍,不细看,还以为是Cortex-M55内核芯片发布了,而且提供FPGA一样的灵活性。

2、特色:
(1)每秒380亿次累加乘
(2)每秒一百万次512点FFT。
(3)128个纳秒级GPIO,并且可以像FPGA一样灵活定制各种IO接口功能,如SPI, QSPI, MII, I2S, I2C, PDM等。
(4)每个内核有512KB TCM RAM,带LPDDR接口。
(5)片上USB高速PHY,带MIPI接口用于摄像头。
(6)16个实时逻辑核心,支持标量/浮点/矢量指令,可根据应用实现灵活性和可扩展性。
(7)用于数字信号处理,机器学习和密码功能的高性能指令集。

3、软件方面
全部采用C编程,使用行业标准的LLVM/Clang编译,AI使用Tensorflow lite,固件可以采用FreeRTOS,并提供大量库。

4、架构
xcore的开发旨在提供类似于FPGA的IO灵活性,并为嵌入式软件工程师提供关键的控制处理,使他们能够创建差异化产品,而不是重复参考设计。

(1)2005年时,发布第1代xcore架构。第一代架构的成功为各种应用程序到IO协议之间架起桥梁,此设计获得数百项设计大奖,典型应用如USB Audio Class 2解决方案和S/PDIF接口 ,所有这些都可以软件实现
(2)第二代xocre加强了控制和DSP性能,使其应用到各种客户解决方案中,以及为XMOS提供了一个平台,使其成为远场语音最杰出的供应商之一。
(3)第三代是通用目的的跨界处理器,集单片机,AI,FPGA,DSP于一身。

xcore体系结构是可伸缩的,单独一个图块是1MB内存,380亿次累加乘速度,两个图块就可以实现2MB内存,760亿次累加乘。图块里面每个logical core都可以作为独立的硬件线程,可以独立运行AI,DSP和IO控制。

实际应用中,用户仅需做一个应用程序,编译器会将各个任务分配几个内核里面。比如一个基于FreeRTOS设计的语言控制程序,含神经网络,麦克风远场处理,PDM,I2C,I2S等。具体到xcore上,就是下面这种效果,这些功能都可以并行独立执行,

总结:
低成本,简单易用,高性能是AIOT主控芯片追求的终极目标,正如XMOS首席执行官所说的,xcore.ai以1美元起步的价格提供了世界低成本,最具灵活行的AI处理器。

XMOS发布集单片机,AI,FPGA,DSP于一身的跨界处理器完全体xcore.ai,致力于AIOT,售价1美元起步的更多相关文章

  1. FPGA+ARM or FPGA+DSP?

    网上有人说.现在的FPGA,ARM功能已经强大到无需DSP协助处理了,未来DSP会不会消声灭迹?是DSP取代FPGA和ARM,还是ARM,FPGA取代DSP呢?担心好不容易学精了DSP,结果DSP变成 ...

  2. FPGA+DSP SRIO通信(一)——DSP端参数设置(通道)

    FPGA+DSP SRIO通信(一)——DSP端参数设置(通道) 原创 2017年04月19日 18:56:45 标签: SRIO-C66x 1217 经过漫长的探索之后,博主发现关于TI的板子调试和 ...

  3. 跨界!Omi 发布多端统一框架 Omip 打通小程序与 Web 腾讯开源 2月28日

    https://mp.weixin.qq.com/s/z5qm-2bHk_BCJAwaodrMIg 跨界!Omi 发布多端统一框架 Omip 打通小程序与 Web 腾讯开源 2月28日

  4. 【AI测试】也许这有你想知道的人工智能 (AI) 测试--开篇

    人工智能测试 什么是人工智能,人工智能是怎么测试的.可能是大家一开始最想了解的. 大家看图中关于人工智能的定义.通俗点来说呢,就是 让机器实现原来只有人类才能完成的任务:比如看懂照片,听懂说话,思考等 ...

  5. 【AI测试】也许这有你想知道的人工智能 (AI) 测试--第二篇

    概述此为人工智能 (AI) 测试第二篇 第一篇主要介绍了 人工智能测试.测试什么.测试数据等.第二篇主要介绍测试用例和测试报告.之后的文章可能具体介绍如何开展各项测试,以及具体项目举例如何测试.测试用 ...

  6. <Win32_17>集音频和视频播放功能于一身的简易播放器

    前段时间,在学习中科院杨老师的教学视频时,他说了一句话: "我很反对百八十行的教学程序,要来就来一个完整的程序" 对此,我很是赞同.所谓真刀真枪的做了,你才会发现其中的奥秘——然而 ...

  7. wcf发布的服务在前端调用时,遇到跨域问题的解决方案

    我是使用IIS作为服务的宿主,因此需要在web.config中增加如下配置节: <bindings> <webHttpBinding> <binding name=&qu ...

  8. 跨界 - Omi 发布多端统一框架 Omip 打通小程序与 Web

    Omip 今天,Omi 不仅仅可以开发桌面 Web.移动 H5,还可以直接开发小程序!直接开发小程序!直接开发小程序! Github Omi 简介 Omi 框架是微信支付线研发部研发的下一代前端框架, ...

  9. 【docker】elasticsearch-head无法连接elasticsearch的原因和解决,集群健康值:未连接,ElasticSearch——跨域访问的问题

    环境 ==================== 虚拟机启动 centos 7  ip:192.168.92.130 elasticsearch 5.6.9   port:9200  9201 elas ...

随机推荐

  1. Session方法

    Session的save()和persist()方法Session的save()方法使一个临时对象转变为持久化对象.它完成以下操作:(1)将临时对象加入到Session缓存中,使其进入持久化状态.(2 ...

  2. AntDesign(React)学习-5 路由及使用Layout布局

    前言:学习目标实现点击登录按钮,直接进入后台布局页面,类似下面antd官网文档展示效果 ant.design访问 https://ant-design.gitee.io/components/menu ...

  3. IntelliJ IDEA构建多Module项目

    打开IDEA 创建完成项目后,我们创建子模块 可以看到common子模块创建成功,子模块的名字大家可以根据自己的实际需求来修改 下面我们再创建子模块 给子模块起个名字 现在已经创建好多模块的项目了,下 ...

  4. Linux - Shell - 算术表达式 - 算数运算

    概述 shell 中基于 $(()) 的 算数运算 背景 复习 shell 脚本 凑数吧 准备 环境 os centos7 1. 算数运算 代码 #!/bin/bash # $(()) 的数学运算, ...

  5. AspxDashBorad_OnDashboardLoaded 获取对应的DashboardParameter

    protected void ASPxDashboardViewerThrend_OnDashboardLoaded(object sender, DashboardLoadedWebEventArg ...

  6. Redis 数据结构的底层实现 (二) dict skiplist intset

    一.REDIS_INCODING_HT (dict字典,hashtable) dict是一个用于维护key和value映射关系的数据结构.redis的一个database中所有的key到value的映 ...

  7. 在多租户(容器)数据库中如何创建PDB:方法5 DBCA远程克隆PDB

    基于版本:19c (12.2.0.3) AskScuti 创建方法:DBCA静默远程克隆PDB.将 CDB1 中的 PDB1 克隆为 CDB2 中的 ERP2 对应路径:Creating a PDB ...

  8. OpenCV的视频读取

    现在找一个能拍摄视频的设备真是太容易了.结果大家都用视频来代替以前的序列图像.视频可能由两种形式得到,一个是像网络摄像头那样实时视频流,或者由其他设备产生的压缩编码后的视频文件.幸运的是,OpenCV ...

  9. python 批量编译 批量删除

    把项目的py文件变异成pyc文件,好处是可以保护源码不泄露. 假如一个工程文件夹有1000个py文件,这个时候怎样快速处理 ? 两步走: ①  py--->pyc python -m compi ...

  10. C++ - cpprestsdk

    Windows 安装方法: CMake 1.32+,生成过程会将 vcpkg 下载好,配置到系统环境变量,然后用 vcpkg 安装依赖库(github 上有列出需要的依赖库). Github 上的示例 ...