0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于FPGA的SOC设计技术的硬核与软核处理器的区别和联系

FPGA研究院 来源:电子电路开发学习 作者:电子电路开发学习 2022-12-06 10:00 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

软核处理器

SOPC技术,即软核处理器,最早是由Altera公司提出来的,它是基于FPGA的SOC片上系统设计技术。是使用FPGA的逻辑和资源搭建的一个软核CPU系统,由于是使用FPGA的通用逻辑搭建的CPU,因此具有一定的灵活性,用户可以根据自己的需求对CPU进行定制裁剪,增加一些专用功能,例如除法或浮点运算单元,用于提升CPU在某些专用运算方面的性能,或者删除一些在系统里面使用不到的功能,以节约逻辑资源。

另外也可以根据用户的实际需求,为CPU添加各种标准或定制的外设,例如UART,SPI,IIC等标准接口外设,同时,用户也可以自己使用FPGA的逻辑资源,编写各种专用的外设,然后连接到CPU总线上,由CPU进行控制,以实现软硬件的协同工作,在保证系统性能的同时,增加了系统的灵活性。

而且,如果单个的软核CPU无法满足用户需求,可以添加多个CPU软核,搭建多核系统,通过多核CPU协同工作,让系统拥有更加灵活便捷的控制能力。

由于是使用FPGA资源实现的,所以具有很大的灵活性,可以实现根据需要实现多种处理器,如8051,RISC-V,Xilinx的 MicroBlaze ,Altera的Nios-II等等。

硬核处理器

由于软核CPU是使用FPGA的通用逻辑资源搭建的,相较使用经过布局布线优化的硬核处理器来说,软核处理器够运行的最高实时钟主频要低一些,而且也会相应的消耗较多的FPGA逻辑资源以及片上存储器资源,因此SOPC方案仅适用于对于数处理器整体性能要求不高的应用,例如整个系统的初始化配置,人机交互,多个功能模块间的协调控制等功能。

所以,各大FPGA厂家推出了SoC FPGA技术,是在芯片设计之初,就在内部的硬件电路上添加了硬核处理器,是纯硬件实现的,不会消耗FPGA的逻辑资源,硬核处理器和FPGA逻辑在一定程度上是相互独立的,简单的说,就是SoC FPGA就是把一块ARM处理器和一块FPGA芯片封装成了一个芯片。

例如比较有名的Xilinx的ZYNQ/PYNQ系列集成ARM Cortex-A9处理器,同时具有ARM软件的可编程性和FPGA 的硬件可编程性,不仅可实现重要分析与硬件加速,同时还在单个器件上高度集成CPU、DSP、ASSP 以及混合信号功能。

Intel的Cyclone V系列,集成双核Cortex-A9,于2013年发布,在单一芯片上集成了双核的ARM Cortex-A9处理器和FPGA逻辑资源的新型SoC芯片,相较于传统的单一ARM处理器或FPGA芯片,它既拥有了ARM处理器灵活高效的数据运算和事务处理能力,又集成了FPGA的高速并行处理优势。

同时,基于两者独特的片上互联结构,使用时可以将FPGA上的通用逻辑资源经过配置,映射为ARM处理器的一个或多个具有特定功能的外设,通过高达128位宽的AXI高速总线进行通信,完成数据和控制命令的交互。由于片上的ARM处理器是经过布局布线的硬线逻辑,因此其能工作的时钟主频较高,因此单位时间内能够执行的指令也更多。

区别与联系

从架构的角度来说,SOPC和SoC FPGA是统一的,都是由FPGA部分和处理器部分组成。在SoC FPGA 中,嵌入的是纯硬件基础的硬核处理器,简称HPS(Hardware Processor System),而SOPC技术中,嵌入的是使用FPGA逻辑资源实现的软核处理器,两者指令集不一样,处理器性能也不一样。

一般来说,硬核处理器的性能要远远高于软核处理器。另外,硬核处理器除了CPU部分,还集成了各种高性能外设,如MMU、DDR3控制器、Nand FLASH控制器等,可以运行成熟的Linux操作系统和应用程序,提供统一的系统API,降低开发者的软件开发难度。而软核CPU虽然可以通过配置,用逻辑资源来搭建相应的控制器以支持相应功能,但是从性能和开发难度上来说,基于SoC FPGA架构进行设计开发是比较好的选择。

67e61fde-74f5-11ed-8abf-dac502259ad0.png

▲ZYNQ内部框图

另外,虽然SoC FPGA芯片上既包含了有ARM,又包含了有FPGA,但是两者一定程度上是相互独立的,SoC芯片上的ARM处理器核并非是包含于FPGA逻辑单元内部的,FPGA和ARM(HPS)处理器只是封装到同一个芯片中,JTAG接口、电源引脚和外设的接口引脚都是独立的。因此,如果使用SoC FPGA芯片进行设计,即使不使用到片上的ARM处理器,ARM处理器部分占用的芯片资源也无法释放出来,不能用作通用的FPGA资源。

而SOPC则是使用FPGA通用逻辑和存储器资源搭建的CPU,当不使用CPU时,CPU部分占用的资源可以被释放,重新用作通用FPGA资源。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    20374

    浏览量

    255566
  • FPGA
    +关注

    关注

    1664

    文章

    22559

    浏览量

    640551
  • soc
    soc
    +关注

    关注

    40

    文章

    4655

    浏览量

    230528

原文标题:FPGA硬核与软核处理器有什么区别和联系?

文章出处:【微信号:FPGA研究院,微信公众号:FPGA研究院】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索DS5000FP处理器芯片:特性、应用与设计要点

    探索DS5000FP处理器芯片:特性、应用与设计要点 在电子工程领域,微处理器芯片的性能和特性对产品的设计和应用起着关键作用。今天,我们将深入探讨DS5000FP
    的头像 发表于 04-01 16:30 341次阅读

    XC7Z020-2CLG484I 双异构架构 全能型 SoC

    解决方案,重新定义了嵌入式系统的性能边界与设计自由度。​ 一、核心架构:双异构融合的技术突破​ XC7Z020-2CLG484I 的核心竞争力源于其独特的 SoC 架构设计,实现了处理器
    发表于 02-28 23:37

    瑞芯微SOC智能视觉AI处理器

    RK3568B2: 一款性能均衡、接口丰富的中高端AIoT应用处理器,是RK3568的优化版本,主打稳定与可靠性。CPU/GPU: 延续RK3568的4A55 + G52 GPU架构,性能可靠
    发表于 12-19 13:44

    【TES818 】青翼凌云科技基于 VU13P FPGA+ZYNQ SOC 的 8 路 100G 光纤通道处理平台

    ​TES818是一款基于VU13PFPGA+XC7Z100SOC的8路100G光纤通道处理平台,该平台采用一片Xilinx的VirtexUltraScale+系列FPGA(XCVU13P)作为
    的头像 发表于 12-04 16:02 773次阅读
    【TES818 】青翼凌云科技基于 VU13P <b class='flag-5'>FPGA</b>+ZYNQ <b class='flag-5'>SOC</b> 的 8 路 100G 光纤通道<b class='flag-5'>处理</b>平台

    Altera Agilex 5系列FPGASoC产品荣膺2025全球电子成就奖

    近日,全球 FPGA 创新技术领导者 Altera 的 Agilex 5 FPGASoC 产品系列,荣获 2025 年 AspenCore 全球电子成就奖(WEAA)的
    的头像 发表于 12-03 11:13 2722次阅读

    嵌入式和FPGA区别

    、光传输) 高性能计算(算法加速) 原型验证(ASIC前期验证) 军事航天(抗辐射、高可靠需求) 未来发展趋势 随着技术的融合,我们看到嵌入式处理器FPGA结合的SoC器件
    发表于 11-19 06:55

    易灵思Sapphire SoC中RISC-V平台级中断控制深度解析

    随着 RISC -V处理器FPGA 领域的广泛应用,易灵思 FPGA 的 Sapphire RISC-V 内核凭借软硬核的灵活支持,为开发者提供多样选择。本文深入探讨 Sapph
    的头像 发表于 11-08 09:35 8171次阅读
    易灵思Sapphire <b class='flag-5'>SoC</b>中RISC-V平台级中断控制<b class='flag-5'>器</b>深度解析

    e203 如何和FPGA通信?

    求教e203 如何和FPGA通信
    发表于 11-07 06:15

    MD5信息摘要算法实现二(基于蜂鸟E203协处理器

    本设计首先根据MD5协处理器的功能设计MD5算法IP,软件部分使用串口程序助手进行64位加解密结果的输出,E203内核根据地址取出对应的数据,使用相关的指令进行传输显示。通过NICE接口将MD5协
    发表于 10-30 07:54

    数据预处理加速模块设计

    ,如果用ARM处理器或上位机来实现这个过程会十分耗时,利用FPGA的并行处理技术可以轻易实现这个功能,整理后的数据传输形式会为之后的设计产生便利。模块用了20块片内双口RAM来实现数据
    发表于 10-29 08:09

    E203提高CPU时钟频率方法

    本文将分享我们团队提高E203主频的办法。 查阅芯来科技官方出版的《手把手教你设计CPU——RISC-V处理器篇》教材,我们发现,原本设计的E203主时钟域应该是100MHZ
    发表于 10-29 06:19

    【VPX650 】青翼凌云科技基于 VPX 系统架构的 VU13P FPGA+ZYNQ SOC 超宽带信号处理平台

    系列 FPGA(XCVU13P)作为主处理器,完成复杂的数 据采集、回放以及数据预处理。采用 1 片 ZYNQ SOC 来完成信号处 理算法。 
    的头像 发表于 10-16 10:48 923次阅读
    【VPX650 】青翼凌云科技基于 VPX 系统架构的 VU13P <b class='flag-5'>FPGA</b>+ZYNQ <b class='flag-5'>SOC</b> 超宽带信号<b class='flag-5'>处理</b>平台

    兆芯荣获2025年度硬核处理器芯片奖

    KX-7000系列处理器,凭借其创新的产品设计、强劲的性能以及卓越的市场应用表现等诸多优势,脱颖而出,一举斩获2025年度硬核处理器芯片奖。
    的头像 发表于 09-12 14:23 2225次阅读

    【老法师】多核异构处理器中M程序的启动、编写和仿真

    文章,小编就将以飞凌嵌入式的OKMX8MP-C开发板为例,为大家介绍多核异构处理器M程序的启动配置、程序编写和实时仿真的过程。
    的头像 发表于 08-13 09:05 4297次阅读
    【老法师】多核异构<b class='flag-5'>处理器</b>中M<b class='flag-5'>核</b>程序的启动、编写和仿真

    DA14594 SmartBond双低功耗蓝牙5.3 SoC 数据手册和产品介绍

    硬件开发指南.pdf Renesas DA14594 SmartBond™双低功耗蓝牙5.3 SoC是一款双无线微控制,结合了现有的Arm^®^ Cortex ^®^ -M33™
    的头像 发表于 05-22 10:28 1778次阅读
    DA14594 SmartBond双<b class='flag-5'>核</b>低功耗蓝牙5.3 <b class='flag-5'>SoC</b> 数据手册和产品介绍