FPGA新手也能速成视觉AI应用 Kria SOM简化架构加速开发

作者:Chetan Khona,赛灵思工业、视觉、医疗与科学市场总监

现场可编程门阵列(FPGA)的功能逐年扩展,始终围绕着一个核心价值,那就是较其他嵌入式技术的灵活性与性能优势。毫无疑问,近年来FPGA最主流的趋势是整合嵌入式处理器和接口设备,让设计人员能够将合适的任务分配给合适的运算引擎。

由此使得自适应系统单芯片(SoC)透过在不同规模FPGA架构上,提供统一的处理子系统为用户带来三重自由度,即软件可程序设计能力、硬件可程序设计能力和嵌入式平台的可扩展能力。

这种广泛应用源自于FPGA技术显而易见的、差异化的优势。然而,正如这种状况所揭示的前景,其应用范围可以更加广泛。那么如何进一步释放这种应用潜力呢?

首先,说明阻碍其得到更广泛采用的有哪些因素。两个最常见的因素是:一是不熟悉传统的FPGA设计流程,二为用开发时间衡量FPGA设计流程的迭代成本。

很明显,大量的系统架构师和嵌入式及人工智能(AI)软件开发者,都对FPGA的优势有所耳闻,并希望有机会运用这类FPGA。然而,他们不想花费漫长的过程克服学习「新」设计流程的困难,只想专注于嵌入式硬件方面的开发过程。即便对于FPGA专家而言,许多人也表示希望能为自己的嵌入式设计提供一种简单且经济高效的的量产硬件部署选项。由于同地协作(例如在电子实验室)中需要协作才能启动嵌入式电路板,加上2020年和2021年的全球疫情肆虐对同地协作的局限,这种愿望也变得愈加强烈。

Kria SOM新解方节省九个月开发时间
Kria系统模块(System-on-Module, SOM)是赛灵思(Xilinx)量产型产品组合的最新成员,该产品组合的成员已包括x86应用、FPGA和自适应SoC的加速器卡。它是一种整合嵌入式、可插拔、信用卡尺寸的基于Arm SoC的解决方案。SOM的初衷是简化架构,只包含SoC、内存、电源和其他SoC的基本支持功能。当SOM与最终用户设计的低复杂度印刷电路板载卡(Carrier Card)搭配使用时,只需要采用一组简单的开放连接器解决用户终端系统的连接和附加组件需求,就可以将其整合到量产部署的系统中。而针对开发和评估,也提供了入门套件,该套件由非量产型Kria SOM与预定义的载卡共同构成,并提供各种接口选项以连接传感器或其他接口设备。入门套件是初次使用Kria SOM(特别是视觉AI应用)的最便捷方法,它为目标应用开发并由用户定义的客制化量产载卡提供了实现途径。

Kria SOM为刚接触FPGA和SoC技术的开发者,提供了独特、简化的用户体验,并向打算外购而非自行开发量产硬件的FPGA长期用户,提供了极具吸引力的效率提升。而对于FPGA专业人士而言,Kria SOM可节省多达9个月的开发时间和相关成本。节省的这9个月时间主要来自组件选型、录入原理图、布局电路板和启动多学科协作电路板,有时也包括部分的重新设计。对于刚接触自适应运算的用户而言,还有更值得关注、也更加显著的效益。Kria SOM首个成员SOM K26和首个入门套件KV260视觉AI入门套件已经推出(图1)。

图1:K26 Kria SOM和KV260视觉AI入门套件

借助Kria SOM简化嵌入式设计的关键实现技术,在于随每个入门套件提供的应用专用基础架构。它可以直接用于用户的量产设计。首款Kria入门套件为Kria KV260视觉AI入门套件,它主要着重在视觉AI应用。未来的解决方案将重点放在该公司与第三方开发的多样应用,并在赛灵思应用商店(Xilinx App Store)中提供。Xilinx App Store提供成套的量产级参考设计,称为Kria加速应用。这种基于加速应用的方法既为以软件为基础的设计提供了全新范例,同时也为目标应用保持了FPGA的性能优势和系统级灵活性。

利用加速应用方法简化FPGA设计
自我调整SoC是一把双面刃。它们虽然比任何其他主流半导体技术都更加灵活,但也会让新用户感到过于复杂。这种灵活性体现在众多方面:可程序设计逻辑、可程序设计软件、可程序设计I/O、可程序设计数字讯号处理(DSP)引擎、可程序设计嵌入式随机存取内存(RAM)、可程序设计安全性、可程序设计功耗等。Kria SOM以最常用、最主流的使用案例为重点,从设计上简化了这种灵活性造成的复杂性。这些使用案例已开发到加速应用中,方便使用者透过Xilinx App Store加入设计者的行列中。加速应用的变革性影响,类似于自动排挡的发明较之手动排挡让汽车驾驶更容易操控。虽然手动排挡的热衷者仍不乏其人,但是世界上大多数人会自然地选用最容易操纵、最方便的方式。

除了预配置电源提供的便利特性、具备极佳镜像回读功能的自动化启动流程和灵活的I/O分配以外,Kria SOM还为加速开发提供更多功能。Kria SOM支持预构建、可扩展的Linux基础设施,无论客户倾向于Canonical提供的Ubuntu和Ubuntu Core版本,还是透过PetaLinux工具管理的Linux内核,以及使用Yocto进行客制化构建的功能。两种方式都提供一套系统工具,如温度监控器、性能监控器、双倍数据速率(DDR)内存和其他接口设备的服务质量配置、韧体无线更新能力、内置自检测等。这些特性对于简化Kria SOM的使用很有帮助。然而,Kria SOM最突出的特点在于Xilinx App Store所持续新增提供的加速应用库。其中既有免费应用,也有收费应用,并且都可以轻松加载到Kria SOM中(图2)。

图2:预构建的Linux基础架构简化嵌入式设计

预构建的可程序设计逻辑与加速应用
Kria加速应用旨在借助基础软件应用创建应用专用FPGA硬件设计,方便最终用户进行扩展。在加速应用中,SoC的可程序设计逻辑部分已经为用户预先构建,不需要进行修改即可使用。当然,如果需要也可以修改。目前已经开发出一定数量的加速应用,透过修改就能满足设计者的多样化需求。初始Kria加速应用依据的是研究发现的用户在开发过程中最常使用的视觉AI应用。这些提供的加速应用可由用户根据自身目标和需求进行修改。与从头开发相比,节省了软件开发时间。此生态系统(运用自己在各自重点领域的专业知识来转化为应用的合作伙伴)将在Xilinx App Store上增加更多加速应用(表1)。

对于首批入门套件解决方案,主要应用是视觉AI应用,例如安全、智能城市、交通管理和零售分析。这些应用推动了针对KV260入门套件的设计决策,包括为I/O接口选择连接器等决策。这些连接包括行动产业处理器接口(MIPI)、高画质多媒体接口(HDMI)、DisplayPort、通用串行总线(USB)和以太网络等接口。未来的入门套件将扩及更多类型的应用,如机器视觉、视觉引导机器人等。Kria加速应用引导使用者快速从评估阶段进入到设计时间以及部署阶段。

从评估到量产部署的典型流程
这里说明的是从评估到量产部署的典型流程:
1. 最初数天(评估)
选择满足用户需求,适合评估平台功能最为近似的赛灵思预构建设计(加速应用)。
2. 最初数周(设计)
客制化应用软件和AI模型,根据最终产品需求调校Kria加速应用。此外,用户还可针对用户的AI模型选择,使用Vitis库的硬件加速器优化完整的图像数据路径以提升性能。
3. 最初数月(部署)
针对具体的用户接口设备(如不同的摄影机传感器)客制化硬件并启动建构客制化载卡的流程。根据需要,参照在线教程和设计指南,在这个阶段透过Vitis设计工具也可以修改FPGA硬件。
4. 数年(适配)
透过无线更新的方式对现场的软硬件进行更新,以最大化产品相关性,并透过这些更新,有望为用户的公司创造新收益。不断演进的标准、威胁和客户需求可能导致AI模型、视觉管线、控制环路、通讯协议和加密引擎发生改变。Kria SOM提供了在部署后做出这些改变的灵活性与内置功能(图3)。

图3:Kria SOM流程 - 从评估到量产

正如上述场景所呈现的,在评估阶段无须安装任何工具。GNU编译程序和Vitis AI等软件工具用于第二步,即设计时间。第三阶段是部署。如果有任何阶段需要实现硬件客制化,最有可能是在这个阶段。因此有可能需要Vitis或Vivado设计套件等FPGA工具。

软件设计便利性 提供加速应用优势
Kria加速应用的重要之处在于,它们允许用户在Ubuntu或Yocto Linux环境下从熟悉的嵌入式软件和AI工具入手,而不必与可能不熟悉的FPGA工具打交道。要让用户充分发挥这种流程的优势,前提是Xilinx App Store中有与使用者需求匹配的加速应用(例如智能摄影机、AI Box、配有KV26和KV260的机器视觉摄影机,还有未来的机器人控制器和电子驱动器)。应用软件和AI处理是量产所需的主要修改。因此,虽然完全支持FPGA客制化,但无须客制。

凭借软件设计的便利性,预先构建在这些系统内的应用专用FPGA加速区块提供了更好的性能和低延迟。SOM还能根据加载到SOM中的具体加速应用,透过改变使用者可用的加速区块,提供「个性化」加速。此外,每个加速应用都可以使用Vitis加速库实现客制化。客制化范围从OpenCV到各种其他常用功能。这种灵活性是SOM自适应技术基础的基本价值主张。

Kria SOM主要性能与特性说明
主要特性和标准随使用的Kria加速应用以及与该应用相关的功能而有所变化。对于首批解决方案而言,K26 SOM和KV260视觉AI入门套件重点关注AI吞吐量、性能功耗比和每通道成本。如欲了解更详细的性能基准检验报告,可查询相关白皮书WP529,Kria K26 SOM:边缘视觉AI的理想平台。本白皮书概述了此SOM产品的竞争优势,重点介绍了具体的使用案例,如智能城市应用中的车牌/数字车牌识别等。

Kria K26 SOM特性介绍
K26 SOM采用Zynq UltraScale + MPSoC架构。由此,K26和所有K2x系列SOM均搭载一个64位四核心Arm Cortex-A53应用处理器组、一个32位双核心Arm Cortex-R5F实时处理器和一个Arm Mali-400MP2 3D图形处理器。SOM还内置4GB的64位DDR4内存以及QSPI和eMMC内存。透过外部可信平台模块(TPM) 2.0,内置硬件信任根的固有安全启动功能得到扩展,能进行测量启动并符合IEC 62443的标准。

此外,透过其FPGA架构内的25.6万个系统逻辑单元,K26 SOM还能支持最多4,096个大小的数据处理器(DPU),并为H.264/H.265提供内置视频编码器。K26 SOM透过四个6Gbps收发器和四个12.5Gbps收发器,支持大量的1.8伏特(V)、3.3伏特、单端和差分I/O。整体上可以支持多种类型的标准,如MIPI、SLVS-EC、sub-LVDS、DisplayPort、HDMI、PCIe、USB 2.0/3.0等,包括用户定义的标准。K26 SOM的大小是77毫米(mm)×60毫米×11毫米,在未来,计划显著缩小SOM的尺寸,以支持坚固型应用。商用级K26 SOM支持的额定温度范围是0℃至+85℃,以内部温度传感器报告应用处理器的温度为准。SOM上的所有其他组件均以该传感器的测量值为准。类似地,工业级支持的额定温度范围是-40℃至+100℃。SOM透过两个240引脚连接器与载卡相连,参见表2。

KV260入门套件特性介绍
为了降低成本、简化评估,尽管量产的K26 SOM上有两个连接器,KV269入门套件内的SOM由于功能受限,因此只有一个连接器可以使用。量产SOM和入门套件间的其他差异,还有载卡上移除eMMC内存,用SD卡接口代替,以及入门套件只能在室温下运行。

KV260视觉AI入门套件支持三个MIPI传感器接口,一个安森美半导体(ON Semiconductor)提供的成像器接入系统(IAS)连接器并配套一个板载图像讯号处理器(ISP)、一个补充IAS连接器和一个树莓派(Raspberry Pi)连接器。提供多个USB 2.0/3.0接口以及以太网络、HDMI、DisplayPort和Pmod连接器,用于评估多种类型的视觉AI应用。这种入门套件使用简便,从开箱到开发应用,需时不到1个小时(图4)。

图4:KV260视觉AI入门套件原理图

长生命周期供货期保障灵活适应市场趋势
成套的应用专用解决方案和固有的性能优势,让Kria SOM成为全新嵌入式设计的选择。除此之外,它还可为工业市场提供多项长期商业以及技术优势。

工业市场的特征是要求严苛环境下的长生命周期。这里的长生命周期是指在更宽泛的工作温度范围下承受湿度、冲击和振动的长使用寿命。工业级Kria SOM能在100℃接面温度、80%相对湿度下提供10年的使用寿命。此外,它还能承受最高40g的冲击和5g RMS的振动。

对一些客户而言,长生命周期也指长期供货。就该公司SOM产品而言,工业级解决方案的供货期至少为10年,因为DDR4、QSPI、eMMC、TPM 2.0等各类组件和电源管理组件的价格和供货可能存在诸多变量。此外,Kria SOM模型还允许客户根据出货量涨跌造成的业务需求,从SOM过渡到成品芯片。

从技术的角度,Kria SOM具备自适应组件基础,可为用户提供灵活性优势。这些系统级灵活性可透过加速应用的未来更新得到进一步强化。例如,一项对DPU性能的研究揭示,从INT8调整到INT4能提高硬件性能77%,同时减少逻辑占用和芯片上(on Chip)内存占用。也能部署可扩展量化的神经网络(FINN)这样的降低精度的推断架构,因为Kria SOM硬件会随着时间推移不断改进,可以在部署到实地后进行升级。这与固定的绘图处理器(GPU)架构相比完全相反。

除此之外,有时候在市场的推动下,可能发生从一种技术或接口向另一种技术或接口迁移的情况。而Kria SOM也能适应这些外部力量的作用。其可程序设计I/O和内部可程序设计逻辑能支持从MIPI等成像标准向SLVS-EC转型,乃至从SLVS-EC 1.0版向2.0版转型,以支持二倍的数据速率。

Kria SOM灵活性的另一个部分是它们是云原生的。可以让用户迅速、无缝地在边缘和云之间分配工作负载。在需要加快响应速度的时候,其他物联网解决方案所受限制过大,无法可靠地处理云工作负载。但是Kria SOM可支持许多最常用的云框架。就部分云解决方案而言,例如采用Greengrass框架的亚马逊网络服务(AWS),运行在云端的应用可以无缝迁移到边缘,反之亦然。根据大多数工业资产的预期使用寿命和耐久度,Kria SOM专为满足工业级使用寿命的要求量身打造。

发挥FPGA技术优势可从Kria SOM入手
对于希望在量产系统中发挥FPGA技术的优势,但不知道从何着手的嵌入式开发者和AI软件开发者来说,Kria SOM是理想的解决方案。此外,Kria SOM还能消除设计流程中一些比较耗时的环节,为FPGA专家提高自适应SoC硬件的设计效率并降低了风险。

随着开发厂商和合作伙伴的不懈努力,Kria SOM开发者生态系统将持续成长,不断提供更多加速应用,强化Kria SOM系列和入门套件,大幅缩短掌握自适应运算技术的性能和灵活性所需的时间。

最新文章