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

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

3天内不再提示

FPGA的硬件架构和工作原理

FPGA设计论坛 来源:至芯科技 作者:至芯科技 2021-08-10 16:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、FPGA的硬件架构和工作原理

1.1早期的PROM技术实现

在上世纪60年代以后,小规模集成电路出现,需要实现一个组合逻辑的方法,是一种基于PROM(Programable ROM Based)的技术,其原理是将组合电路的真值表写入ROM中,用PROM设备实现定制逻辑的真值表,等效于实现定制逻辑。

185d067a-ec12-11eb-a97a-12bb97331649.png

这里控制信号从略。

首先,将比较器的真值表填写:

索引 a[1] a[0] b[1] b[0] agtb(a>b) altb(a aeqb(a=b)
0 0 0 0 0 0 0 1
1 0 0 0 1 0 1 0
2 0 0 1 0 0 1 0
3 0 0 1 1 0 1 0
4 0 1 0 0 1 0 0
5 0 1 0 1 0 0 1
6 0 1 1 0 0 1 0
7 0 1 1 1 0 1 0
8 1 0 0 0 1 0 0
9 1 0 0 1 1 0 0
10 1 0 1 0 0 0 1
11 1 0 1 1 0 1 0
12 1 1 0 0 1 0 0
13 1 1 0 1 1 0 0
14 1 1 1 0 1 0 0
15 1 1 1 1 0 0 1

将真值表写入PROM中,使用PROM设备实现比较器:

18658840-ec12-11eb-a97a-12bb97331649.png

等效的实现定制逻辑。

为了进一步了解PROM技术的本质,需要知道ROM设备的架构和原理:

188dcbde-ec12-11eb-a97a-12bb97331649.png

1.2基于PROM技术的SOP(积之和最小项)

数字电路中,将真值表用逻辑门实现的常用方法为SOP(Sum Of Products):

索引号 a[1] a[0] b[1] b[0] agtb(a>b) altb(a aeqb(a=b)
0 0 0 0 0 0 0 1
1 0 0 0 1 0 1 0
2 0 0 1 0 0 1 0
3 0 0 1 1 0 1 0
4 0 1 0 0 1 0 0
5 0 1 0 1 0 0 1
6 0 1 1 0 0 1 0
7 0 1 1 1 0 1 0
8 1 0 0 0 1 0 0
9 1 0 0 1 1 0 0
10 1 0 1 0 0 0 1
11 1 0 1 1 0 1 0
12 1 1 0 0 1 0 0
13 1 1 0 1 1 0 0
14 1 1 1 0 1 0 0
15 1 1 1 1 0 0 1

18af32ec-ec12-11eb-a97a-12bb97331649.png

PROM设备中,多路器的选择信号对应地址的译码逻辑

18c8f83a-ec12-11eb-a97a-12bb97331649.png

1.3基于查找表技术的定制逻辑

上世纪80年代,CPLD的出现,以及之后的FPGA,为了解决输入端和存储单元的2的n次方问题,出现了查找表LUT技术。查找表LUT其原理同样是用固定的(硬核)多路器,基于SRAM技术,实现定制逻辑的真值表,从而等效的实现定制逻辑。其中一个重要的变化,是将真值表项写入SRAM(静态存储器)中,而不是用反溶丝技术(OTP),从而实现在线编程(沿用至今)。同样用上面的二输入比较器为例:

18f41556-ec12-11eb-a97a-12bb97331649.png

以上例子中,所需要的存储器单元仍然是16个单元,为2的4次方。为了清楚LUT的减输入法过程,我们将输入端增加到16(与或阵列,需要65536单元):

190f33e0-ec12-11eb-a97a-12bb97331649.png

这里使用的存储器为:16*16=65536。并没有解决存储器数量增加的问题。但使用四输入LUT的实际架构(含减输入法)为:

1932eb14-ec12-11eb-a97a-12bb97331649.png

这里,仅仅使用了5*16=80个存储器单元。

1.4在线编程技术

CPLD出现之前,PLD设备大多采用反熔丝技术(Anti-Fuse),交叉编程位置在编程前为高阻抗,编程后为很低的阻抗,为导通态。反熔丝技术为一次性编程(OTP),实际使用并不方便,但其好处是便于保护知识产权。在LUT技术出现以后,设计者的定制逻辑真值表和整个设计的网表(含路由),是写入静态存储器SRAM中,具有速度快,支持在线编程(可反复擦除),但其缺点是挥发性(掉电即失),FPGA每次上电以后,需要重新装入(有一个比较复杂的配置过程)。

责任编辑:haq

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

    关注

    1655

    文章

    22283

    浏览量

    630224
  • 存储器
    +关注

    关注

    39

    文章

    7714

    浏览量

    170848
  • 硬件
    +关注

    关注

    11

    文章

    3555

    浏览量

    68741

原文标题:FPGA学习——FPGA的硬件架构和工作原理

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于DSP与FPGA异构架构的高性能伺服控制系统设计

    DSP+FPGA架构在伺服控制模块中的应用,成功解决了高性能伺服系统对实时性、精度和复杂度的多重需求。通过合理的功能划分,DSP专注于复杂算法和上层控制,FPGA处理高速硬件任务,两者
    的头像 发表于 12-04 15:38 96次阅读
    基于DSP与<b class='flag-5'>FPGA</b>异构<b class='flag-5'>架构</b>的高性能伺服控制系统设计

    嵌入式和FPGA的区别

    用于芯片量产前的功能验证。 架构工作原理差异 嵌入式系统采用顺序执行架构,基于冯·诺依曼或哈佛体系结构,程序指令按顺序从存储器中读取并执行。这种架构灵活但效率相对固定。
    发表于 11-19 06:55

    如何利用Verilog HDL在FPGA上实现SRAM的读写测试

    、建立读写操作、配置地址计数器、模拟数据流、综合与仿真以及下载到FPGA进行硬件测试。通过实践,掌握SRAM在FPGA中的使用和基本读写方法,加深对FPGA
    的头像 发表于 10-22 17:21 3954次阅读
    如何利用Verilog HDL在<b class='flag-5'>FPGA</b>上实现SRAM的读写测试

    FPGA+DSP/ARM架构开发与应用

    自中高端FPGA技术成熟以来,FPGA+DSP/ARM架构硬件设计在众多工业领域得到广泛应用。例如无线通信、图像处理、工业控制、仪器测量等。
    的头像 发表于 10-15 10:39 3658次阅读
    <b class='flag-5'>FPGA</b>+DSP/ARM<b class='flag-5'>架构</b>开发与应用

    nRF5 SDK软件架构及softdevice工作原理

    本文将介绍Nordic nRF5 SDK软件架构以及softdevice工作原理,以加深大家对Nordic产品开发的理解,这样开发过程中碰到问题时,大家也知道如何去调试。 如果你刚开始接触nRF5
    的头像 发表于 06-23 11:08 508次阅读
    nRF5 SDK软件<b class='flag-5'>架构</b>及softdevice<b class='flag-5'>工作原理</b>

    GPIO配置的工作原理是什么?

    我使用 EZ-USB 配置实用程序,我想知道是否有人知道 GPIO 配置的工作原理。 例如,GPIO0 可以用作传感器复位,我知道这个 GPIO0 用于重置传感器,但我不明白的是选项用户 GPIO 例如GPIO 1可以是User GPIO0,这是什么意思呢?
    发表于 05-19 06:56

    云电竞服务器 工作原理

    云电竞服务器工作原理详解 一、核心架构原理 虚拟化资源池‌ 通过 ‌KVM/VMware‌ 等虚拟化技术将物理服务器(含NVIDIA GPU集群)抽象为可动态分配的算力资源池,每个用户独享独立虚拟机
    的头像 发表于 05-14 07:44 449次阅读
    云电竞服务器 <b class='flag-5'>工作原理</b>

    电动调压器的工作原理

    电压调压器是一种用于控制电路中电压的装置,其工作原理因类型而异,以下是几种常见电压调压器的工作原理
    的头像 发表于 05-12 13:46 911次阅读
    电动调压器的<b class='flag-5'>工作原理</b>

    微动开关的工作原理

    微动开关的工作原理
    的头像 发表于 04-17 09:00 2720次阅读

    ADC的五大架构及其工作原理

    ADC 是什么?我们为什么需要 ADC?ADC 有哪些架构?他们的工作原理和特点是什么,分别适用于哪些场景?今天,就让 MPS 的 ADC 资深工程师为您逐一解密!
    的头像 发表于 04-03 17:00 3468次阅读
    ADC的五大<b class='flag-5'>架构</b>及其<b class='flag-5'>工作原理</b>

    阻尼器的工作原理与结构

    阻尼器的工作原理与结构密切相关,其基本原理在于通过施加一个与振动方向相反的力(即阻尼力)来消耗振动的能量,使物体的振动幅度逐渐减小,直至停止振动。以下是对阻尼器工作原理与结构的介绍: 工作原理
    的头像 发表于 02-13 14:56 5395次阅读

    分压器的工作原理

     分压器是一种电路元件,其工作原理基于欧姆定律和电压分配法则。分压器通常由两个或更多个电阻(或其他元件,如电容器)串联而成,用于将输入电压分配到输出端。以下是分压器工作原理的详细解释:
    的头像 发表于 01-28 13:50 3250次阅读

    移动电源的工作原理_移动电源结构

    移动电源的工作原理是将电能存储在内置电池中,然后通过适当的电压和电流输出,为电子设备提供所需的电能。以下是关于移动电源工作原理的详细解释:
    的头像 发表于 01-27 16:11 3279次阅读

    超级电容电池的工作原理

    超级电容电池是一种介于传统电容器与电池之间的新型储能装置。其工作原理主要基于电荷分离和电场存储,以下是关于超级电容电池工作原理的详细解释:
    的头像 发表于 01-27 11:17 1987次阅读

    电动汽车驱动系统的控制器硬件架构

    前段时间有星友咨询,想了解电动汽车驱动系统的控制器(逆变器)硬件架构,今天我们借助Infineon主驱逆变器的硬件架构说明下这个问题。
    的头像 发表于 01-10 17:09 1571次阅读
    电动汽车驱动系统的控制器<b class='flag-5'>硬件</b><b class='flag-5'>架构</b>