Felix

技术源于积累,成功始于执着!

Lattice FPGA中的Ripple Mode之——关于加法器实现的讨论

为什么写这篇博文呢?因为鄙人无意中发现了一个有趣的问题,所以和大家分享一下。其实加法器是很简单的东西,大部分人可能并不注意其在FPGA的具体实现方式。一般情况下,对于简单的加法运算(如三个4bits的数相加),大部分人都是在HDL中直接使用...

【转】认识FPGA触发器的亚稳态

边沿型触发器的输出有两个稳定状态: 高电平或者低电平。为保证可靠操作, 必须要满足触发器的时序要求,也就是我们熟知的建立时间和保持时间。如果输入信号违反了触发器的时序要求, 那么触发器的输出信号就有可能会出现非法状态---亚稳态。亚稳态是一种不稳定状态,在一定时间后, 最终返回到两个稳定状态之一。

【转】简述单口RAM、伪双口RAM、双口RAM与FIFO的区别

单口RAM与双口RAM的区别在于,单口RAM只有一套地址总线和数据总线,因此读写不能同时进行。而双口RAM有两套地址总线和数据总线,读写可以同时进行。FIFO读写可以同时进行,可以看做双口。双口RAM分为伪双口RAM(Xilinx称为Sim...

Lattice ECP3中的Programmable Slew Rate介绍

首先介绍一下什么是Slew Rate。Slew Rate即为压摆率,可以理解为1微秒或者1纳秒等时间里电压升高的幅度,单位可以为V/s,mV/ns,mV/ps和μV/ps等。 在Lattice ECP3系列的FPGA中,Slew Rate可以配置为两种模式(速度等级):SLOW(默认值)或者FAST。(印象中,Altera 的Cyclone系列好像有四个速度等级)

简述DLL与PLL的区别

在学习Lattice ECP3系列FPGA时,发现芯片内部集成了两个DLL和10个PLL。PLL一般可以用来分频,倍频、相位调整,而DLL也可以做到这些基本功能,那么他们之间到底有什么区别呢?下面来做一个简要的分析与总结。