FPGA中一些基本概念(LUT,LATCH,FF与RAM,ROM,FIFO)

1.RAM,ROM,FIFO

RAM(Random access memory):随机存取存储器,与CPU直接交换数据的内部存储器,可读写,断电后信息会丢失。对于双口RAM,可进行同时读写数据。

ROM(Read-only memory):只读存储器,顾名思义,只能对数据进行读取,不能写入信息。断电后数据会丢失,也称固定存储器。其实对初学者来说,可能会有一个疑问,既然ROM不能写入数据,那它的初始数据是哪里来的。其实ROM里面存储的数据是在装机之前就已经写好的,装机过程中就只能读出。ROM因其存储数据的稳定性,一般存储固定程序。

FIFO(First Input First Output):先入先出队列。如果安排A,B,C三个元素按次序进入队列,出队列时顺序仍然是A,B,C。而对于软件堆栈来说,它是先进后出(FILO),同样对于A,B,C三个元素,如果依次压栈再弹出,此时顺序会变成C,B,A。

差异:RAM相对ROM来说数据易丢失,故一般用来暂存数据,程序,中间结果等。

RAM相对FIFO来说,RAM可以读写任意地址,而FIFO的信号中没有读写地址,它只能按顺序读写数据。FIFO常用于数据传输通道,用来缓存数据,防止丢失,不同速率时钟模块间的数据传输就要用到异步FIFO。

2.LUT,LATCH,FF

LUT(look up table):查找表,本质是RAM,将数据提前存储在里面。当输入信号时,根据信号指向的地址进行查表,找出地址对应的内容输出。

LATCH:电平触发的一种锁存器,非同步控制。当使能端为高电平(有效)时,输出等于输入。当使能端为低电平(无效)时,输出状态保持。

FF(Flip Flop):触发器,时钟边沿触发,可存储1bit数据,是寄存器的基本存储单位。

异同:LATCH面积比FF小,且速度比FF快,但电平触发容易产生冒险,进而输出产生毛刺。而FF边沿触发,可有效解决冒险现象。由电平或者边沿控制的锁存器就是触发器。

LUT与LATCH都属于组合逻辑,且LUT是FPGA逻辑单元LE(logic element)的组成结构。

LE:是用来完成用户逻辑的最小单元。它由一个四输入一输出的LUT,一个可编程的寄存器,一条进位链,一条寄存器级连链组成。其中,可编程寄存器可配置成DFF,TFF,JKFF,RSFF。每个寄存器有四个输入信号,分别是使能端,时钟输入,数据输入,复位输入。

  • 7
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱你等于1+1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值