嵌入式FPGA IP正在发现更广阔的用武之地

2023-11-25 22:04

本文主要是介绍嵌入式FPGA IP正在发现更广阔的用武之地,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者:郭道正, Achronix Semiconductor中国区总经理

在日前落幕的“中国集成电路设计业2023年会暨广州集成电路产业创新发展高峰论坛(ICCAD 2023)”上,Achronix的Speedcore™嵌入式FPGA硅知识产权(eFPGA IP)受到了广泛关注,预约会议、专程前往或者驻足询问的芯片设计业人士的数量超过了往届,表明了越来越多的国内开发者正在考虑为其ASIC或SoC设计添加高性能eFPGA逻辑阵列。

众多潜在用户的需求,反映了当前各行各业都在加速导入智能化技术,并利用eFPGA来在其ASIC或SoC中添加硬件数据处理加速功能,并为不断演进的算法或者标准保留可编程性。Speedcore eFPGA IP包括了查找表、存储器、数字信号处理器(DSP)和机器学习处理器(MLP)等构建模块。它们都采用了模组化的结构设计,以支持客户根据其客制化终端系统的需求,来量身定制相应的资源组合。

Achronix的Speedcore IP以GDSII格式提供,同时提供相应的文档,以支持设计师将Speedcore eFPGA实例集成到其特有的ASIC之中。Achronix还提供配套的ACE设计工具,用于编译针对Speedcore eFPGA的设计。目前,Speedcore eFPGA IP已被全球数十家领先的科技企业采用,总的出货量超过了1500万。

简要功能介绍

由于Speedcore eFPGA是一款嵌入式IP,因此它被设计为整个ASIC的一个单元组件,被ASIC的其他完全定制的单元模组所包围(见下图)。Speedcore eFPGA包括以下功能:

·可编程内核逻辑阵列,具有客户自定义的功能

·内核I/O环

·FPGA配置单元(FCU)

·配置存储器(CMEM)

·用于调试和编程的接口

·用于测试的接口(DFT)

核心资源介绍

通过选择下列每种资源的数量,就可以定义一个定制Speedcore eFPGA IP的功能:

·逻辑 - 6输入查找表(LUT),加上集成的快速加法器

·逻辑RAM - 两种选择:

·用于LRAM2k的每个存储器单元的容量最多可达2Kb,其中包括与MLP紧耦合的存储器

·用于LRAM4k的每个存储器单元的容量最多可达4Kb

·Block RAM - 两种选择:

·用于BRAM20k的每个存储器单元的容量最多可达20Kb

·用于BRAM72k的每个存储器单元的容量最多可达72Kb,包括与MLP紧耦合的存储器

·DSP64 - 每个单元模块有一个18 x 27乘法器、64位累加器和27位预加法器

·MLP  - 机器学习处理器(MLP)模块,包含乘法器、加法器、累加器和紧耦合存储器(包括BRAM72k和LRAM2k)

交付与应用价值

由于Achronix采用了根据客户需求来定制GDSII的商业模式,每个Speedcore eFPGA实例的资源模块的数量和组合都是基于客户需求来搭配提供。Achronix的Speedcore eFPGA IP可用于台积电(TSMC)的16FF+、16FFC、12FFC、7nm、5nm和3nm工艺技术节点,也可以移植到其他工艺节点上。

在ASIC或者SoC中嵌入Speedcore eFPGA将带来诸多好处,与一款独立的FPGA芯片相比,Speedcore eFPGA IP提供了以下优点:

·降低功耗多达75%

·节省90%的成本

·延迟缩短到1/100,同时带宽提高了10倍。

因此,Speedcore eFPGA具有极高的应用价值。

开发与编程

Achronix是唯一一家可以同时大批量生产并交付eFPGA IP和独立FPGA芯片的公司,而且它们都采用同一套ACE开发工具来支持。设计人员可以100%确信Speedcore eFPGA IP将会正常工作,因为它在Achronix的Speedster系列独立FPGA 芯片中已得到了全面的验证,并且经过了大量的流片验证。

由于Speedcore eFPGA IP采用的是与Achronix的独立FPGA芯片和搭载Achronix Speedster7t FPGA芯片的VectorPath加速卡相同的工具,开发人员可以先在这些独立FPGA芯片或者加速卡上完成设计,然后再移植到Speedcore eFPGA上。客户可以选择以下所列配置接口中的一项或多项组合来进行编程:

·JTAG

·并行CPU(x1、x8、x16、x32、x128数据宽度模式)

·串行闪存(1个或4个闪存器件)

·128位AXI总线

总结与展望

Achronix的Speedcore eFPGA IP保持了高端FPGA的性能,最高运行频率可达750MHz,典型的运行频率也可以达到300MHz-500MHz,可以为ASIC或者SoC提供高性能硬件加速,是诸多智能化应用和边缘计算的理想选择,因而被领先科技企业选择用于通信基础设备、网络加速、智能驾驶和金融科技等多种应用中。

从我们在ICCAD 2023上与客户的交流来看,一些领先的国内系统公司和芯片设计企业已经认识到eFPGA的优点与价值,并进一步在探讨与Achronix进行基于eFPGA的chiplet等新的合作模式。因此,我们可以展望在未来几年中,集成了Speedcore等eFPGA的ASIC或者SoC将是智能化和高速网联等领域内芯片设计企业的一条重要的创新之道。联系本文作者,请发送邮件到:dawson.guo@achronix.com

这篇关于嵌入式FPGA IP正在发现更广阔的用武之地的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/424689

相关文章

SpringCloud之consul服务注册与发现、配置管理、配置持久化方式

《SpringCloud之consul服务注册与发现、配置管理、配置持久化方式》:本文主要介绍SpringCloud之consul服务注册与发现、配置管理、配置持久化方式,具有很好的参考价值,希望... 目录前言一、consul是什么?二、安装运行consul三、使用1、服务发现2、配置管理四、数据持久化总

Java终止正在运行的线程的三种方法

《Java终止正在运行的线程的三种方法》停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作,停止一个线程可以用Thread.stop()方法,但最好不要用它,本文给大家介绍了... 目录前言1. 停止不了的线程2. 判断线程是否停止状态3. 能停止的线程–异常法4. 在沉睡中停止5

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

Linux配置IP地址的三种实现方式

《Linux配置IP地址的三种实现方式》:本文主要介绍Linux配置IP地址的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录环境RedHat9第一种安装 直接配置网卡文件第二种方式 nmcli(Networkmanager command-line

Linux虚拟机不显示IP地址的解决方法(亲测有效)

《Linux虚拟机不显示IP地址的解决方法(亲测有效)》本文主要介绍了通过VMware新装的Linux系统没有IP地址的解决方法,主要步骤包括:关闭虚拟机、打开VM虚拟网络编辑器、还原VMnet8或修... 目录前言步骤0.问题情况1.关闭虚拟机2.China编程打开VM虚拟网络编辑器3.1 方法一:点击还原VM

Nginx实现动态封禁IP的步骤指南

《Nginx实现动态封禁IP的步骤指南》在日常的生产环境中,网站可能会遭遇恶意请求、DDoS攻击或其他有害的访问行为,为了应对这些情况,动态封禁IP是一项十分重要的安全策略,本篇博客将介绍如何通过NG... 目录1、简述2、实现方式3、使用 fail2ban 动态封禁3.1 安装 fail2ban3.2 配

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ

C++实现获取本机MAC地址与IP地址

《C++实现获取本机MAC地址与IP地址》这篇文章主要为大家详细介绍了C++实现获取本机MAC地址与IP地址的两种方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实际工作中,项目上常常需要获取本机的IP地址和MAC地址,在此使用两种方案获取1.MFC中获取IP和MAC地址获取