观点来源:Edge AI和视觉联盟创始人Jeff Bier
云计算与电子设计的几乎所有方面都息息相关,云计算正在改变有关电子设计的一切,越来越多的设计师面临的问题已在云中得到解决,它正在极大地改变工程师的工作方式。
处理器的选择
传统工程师的沙盒-Matlab-于十多年前推出了一项功能,只需一步就可以为嵌入式目标处理器生成代码。该功能的一个未被充分理解的含意是,任何处理器的选择都可能会受到哪些处理器可被Matlab支持生成代码的影响。以前,嵌入式DSP工程师从算法工程师那里获取了Matlab代码,并以汇编语言(如今更可能是C或C++)重新编译整个代码。使用Matlab的代码生成功能,可以省去这一步骤,节省时间和金钱,但需切换到Matlab支持的处理器。
如今,在AI和深度神经网络领域,大多数算法都诞生于云中,并使用TensorFlow和Pytorch之类的开源框架。通过各种工具以多种方式在嵌入式处理器上实现。未来,选择处理器的一个重要因素将是哪种处理器具有实现从云到嵌入式的最简单路径。比起自己编写代码,容易得多,速度也快得多。
嵌入式软件上云
嵌入式软件的许多方面都正在向云发展,许多EDA工具已经基于云。尽管许多人尚未意识到云在电子设计过程中的重要性,但这种变化正在迅速发生,部分原因在于当今云公司的规模。
以FPGA为例。微软和亚马逊提供了FPGA在云中加速数据并行代码的功能,使FPGA易于编程。微软和亚马逊具有上规模和统一的环境-服务器,解决了FPGA厂商无法解决的问题,这也是为什么云成为设计和开发活动的重心的原因之一。”
芯片制造商使用云
英特尔已经有了流行的DevCloud,是基于云的环境,芯片开发人员可以在其中构建和优化代码。这是下一步的逻辑步骤,所有工具和开发板都将连接到英特尔服务器。无需等待安装任何东西或等待任何安装软件到达。此外,亚马逊、谷歌和微软不在乎客户使用哪种芯片,只要他们使用云。
智能在端侧与云的权衡
当今嵌入式开发人员确实应该精通的另一个概念是边缘计算。由于现在越来越多的嵌入式设备将连接性作为物理网的一部分,因此出于成本、速度或隐私方面的考虑,每个嵌入式智能系统都必须在云计算和边缘计算间取得平衡。智能应该进入嵌入式设备还是进入云?
将智能置于云端,意味着如果联网失败,该产品将无法正常工作。但通过云提供智能服务,则可将产品提早一年推向市场,因为嵌入式设备可能可以仅是一个笨拙的Wi-Fi相机,他们不必实现内置用途的嵌入式系统;还能够快速、轻松地迭代其算法。一旦算法达到合理的部署水平,便可以在连夜进行A/B测试:将新算法部署到一半的客户中,查看哪种算法效果更好,然后再部署到每个人。
深度神经网络(DNN)
另一个明显改变嵌入式系统工作方式的迅速发展的领域是人工智能。EdgeAI和视觉联盟进行的调查显示,在过去的五年作为人工智能基础的DNN在嵌入式计算机视觉系统的采用率从大约20%上升到大约80%。
人们在两件事上挣扎。一是实际上很难让DNN为自己的应用工作。二是弄清楚他们应该在哪里实际使用DNN。DNN已成为一种时尚,每个人都想使用它们,但它们不一定是解决许多问题的最佳解决方案。对于许多人来说,经典技术仍然是更好的选择。嵌入式系统人员,硬件和软件人员确实需要对此有所了解。因为如果要运行深度神经网络,与传统的手工设计算法相比,将对硬件产生很大影响,需要大量的性能和内存。
联系客服