FPGA趣谈
Posted 07/31/2020 by Bob O"Donnell
最近由于COVID-19病毒大流行,全球的局势变得相当紧张。大家被困家中都想苦中作乐,放松心情。因而像Netflix和Disney+等流媒体服务异常火热,游戏主机和PC的购买和使用也迎来高峰。
当然你也可以在其他领域寻找乐趣——即便它最初并不在你的游乐清单之列。有一个领域尤其有趣,那就是物联网(IoT)的世界。
我们早有耳闻物联网将如何创造一个庞大的、万物智能互连的世界。从某种程度上说,这种愿景已经实现了。从互连的智能仪表到智能标签,再到工厂设备的智能传感器,该技术早已拥有众多有趣的应用。它们大多有着重要的实际用途,例如预测设备故障、远程监控健康设备或者追踪全球运输的货物。
物联网的应用远不止于此。Amazon Echo和Google Home等智能音箱产品还拥有众多娱乐功能,它们已经成为最广受欢迎的IoT设备。我们还看到很多其他有意思的IoT设备,如接入网络的马桶、智能梳子等。总之,发挥您的想象力。
然而更有意思的是,得益于低功耗半导体芯片的创新以及软件工具的极大简化,如今我们可以设想出各类新奇甚至古怪的IoT创意产品,就算是学生或者业余爱好者都能够设计和构建。当然,并非所有创意都能成功走向商业化,但那又何妨?很多人都喜欢捣鼓电子产品和软件,而IoT革命应运而生的大量工具可用于实现各种天马行空的点子。
例如,想象一台智能糖果机,它可以根据请求者的年龄分发不同数量的糖果。成人的手较大,可以分配多一些糖果,而儿童手较小,分配的糖果较少。事实上,华盛顿州立大学温哥华分校的高年级工程专业的学生已经使用几种不同的莱迪思FPGA及其软件开发工具,构建了具有上述功能的AI设备。具体而言,他们使用iCE40 UltraPlus™ FPGA配合用于手部检测的摄像头,并使用MachX03LF™ FPGA控制分配糖果的马达。
这两款芯片尺寸小、低功耗,不仅可以轻松集成到上述应用中,还可以在其他许多小型、电池供电的电路板中大显身手。iCE40 UltraPlus系列拥有较高的灵活性、全面的功能和软件支持,可以运行简单的神经网络和其他人工智能/机器学习算法,例如上述项目用于识别双手的算法。MachXO3系列针对控制PLD(可编程逻辑器件)进行了优化,上述项目中还使用了控制PLD来实现该糖果的分配机制。
然而在上述案例中,比硬件更重要的是软件工具。大学生们甚至是业余爱好者或爱好发明的人都可以使用这些软件工具在FPGA内部创建逻辑实现控制。FPGA的一个最大优点在于它们为工程师提供了可塑性极强的逻辑组件,工程师可以自行发挥,创建执行某些功能所需的精确电路组合。这听起来令人振奋,但很难做到。事实上,尽管FPGA拥有巨大潜力,但是对FPGA进行编程需要的专门技能,这很大程度上限制了它们的使用。
为了解决这些难题,莱迪思始终致力于开发各种新的软件工具和开发平台,让FPGA设计变得简单。Lattice Propel™设计环境作为该公司的最新产品之一,结合了用于设计FPGA内部电路的Propel Builder和用于编写在芯片上运行的应用的Propel SDK(软件开发套件)。目前,Propel可配合MachXO3D系列FPGA使用,对其他产品系列的支持正在规划中。
为了让新手FPGA开发者都能轻松使用Propel Builder,莱迪思已预先构建了实现各种不同复杂电路(包括32位RISC-V CPU)所需的IP,所有这些IP都能通过基于图形逻辑模块的用户界面来操作。之后莱迪思将把更多的IP设计模块添加到IP库中,便于免许可的应用轻松访问。
最终目标是为那些想把创意变为现实的人提供他们所需的工具,无论他们是想要构建正经的物联网、工业或消费电子应用还是只想找找乐子,自由挥洒创意。有时候,面对当前环境的挑战,我们很容易不知所措,但是现在我们可以随时获取半导体设计和软件开发方面的技术进展,这将确确实实创造一个万物皆有可能的世界。未来将会怎样?无限精彩让我们拭目以待。
Bob O’Donnell是一家市场研究公司的总裁兼首席分析师,该公司为技术行业和专业金融领域提供战略咨询和市场研究服务。您可以在Twitter上关注他@bobodtech。