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

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

3天内不再提示

关于FPGA的五个基本概念

电子工程师 来源:FPGA设计论坛 作者:FPGA设计论坛 2020-09-28 11:18 次阅读

1、什么是Setup 和Holdup时间?
答:Setup/hold time 是测试芯片对输入信号时钟信号之间的时间要求。

建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setup time。如不满足setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。

保持时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。如果holdtime不够,数据同样不能被打入触发器。

2、什么是竞争与冒险现象?解决办法?
答:在组合逻辑中,由于门的输入信号通路中经过了不同的延时,导致到达该门的时间不一致叫竞争。产生毛刺叫冒险。如果布尔式中有相反的信号则可能产生竞争和冒险现象。
解决方法:一是添加布尔式的消去项,二是在芯片外部加电容。三加选通信号。用D触发器,格雷码计数器,同步电路等优秀的设计方案可以消除。

3、如何解决亚稳态?Metastability
答:亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当一个触发器进入亚稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上。在这个稳定期间,触发器输出一些中间级电平,或者可能处于振荡状态,并且这种无用的输出电平可以沿信号通道上的各个触发器级联式传播下去。
解决方法:
1 、降低系统时钟频率
2 、用反应更快的Flip-Flop
3 、引入同步机制,防止亚稳态传播
4 、改善时钟质量,用边沿变化快速的时钟信号

关键是器件使用比较好的工艺和时钟周期的裕量要大。

4、说说静态、动态时序模拟的优缺点
静态时序分析是采用穷尽分析方法来提取出整个电路存在的所有时序路径,计算信号在这些路径上的传播延时,检查信号的建立和保持时间是否满足时序要求,通过对最大路径延时和最小路径延时的分析,找出违背时序约束的错误.它不需要输入向量就能穷尽所有的路径,且运行速度很快、占用内存较少,不仅可以对芯片设计进行全面的时序功能检查,而且还可利用时序分析的结果来优化设计,因此静态时序分析已经越来越多地被用到数字集成电路设计的验证中。

动态时序模拟就是通常的仿真,因为不可能产生完备的测试向量,覆盖门级网表中的每一条路径.因此在动态时序分析中,无法暴露一些路径上可能存在的时序问题;

静态时序分析缺点:
1、无法识别伪路径
2、不适合异步电路
3、不能验证功能

5、用VERILOG写一段代码,实现消除一个glitch。
滤掉小于1个周期glitch的原理图如下:


verilog代码实现如下:

module digital_filter_(clk_in,rst,host_rst,host_rst_filter);
inputclk_in;
inputrst;
inputhost_rst;
output host_rst_filter;
reg host_rst_d1;
reg host_rst_d2;

always@(posedge clk_in or negedge rst)
begin
if(~rst)
begin
host_rst_d1 <= 1'b1;
host_rst_d2 <= 1'b1;
end
else
begin
host_rst_d1 <= host_rst;
host_rst_d2 <= host_rst_d1;
end
end

assign host_rst_filter = host_rst_d1 | host_rst_d2;
endmodule
滤掉大于1个周期且小于2个周期glitch的原理图如下:
verilog代码实现如下:

module digital_filter_(clk_in,rst,host_rst,host_rst_filter);
inputclk_in;
inputrst;
inputhost_rst;
output host_rst_filter;
reg host_rst_d1;
reg host_rst_d2;
reg host_rst_d3;

always@(posedge clk_in or negedge rst)
begin
if(~rst)
begin
host_rst_d1 <= 1'b1;
host_rst_d2 <= 1'b1;
host_rst_d3 <= 1'b1;
end
else
begin
host_rst_d1 <= host_rst;
host_rst_d2 <= host_rst_d1;
host_rst_d3 <= host_rst_d2;
end
end
责任编辑:xj

原文标题:总结五个面试中经常会遇到的FPGA基本概念

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

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

    关注

    1602

    文章

    21320

    浏览量

    593156
  • Setup
    +关注

    关注

    0

    文章

    30

    浏览量

    11831

原文标题:总结五个面试中经常会遇到的FPGA基本概念

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

收藏 人收藏

    评论

    相关推荐

    接地装置的基本概念

    接地装置的基本概念
    的头像 发表于 12-05 15:49 247次阅读
    接地装置的<b class='flag-5'>基本概念</b>

    工程师必看!电路基本概念有哪些?

    工程师必看!电路基本概念有哪些?
    的头像 发表于 11-30 09:31 309次阅读
    工程师必看!电路<b class='flag-5'>基本概念</b>有哪些?

    MMU相关的基本概念

    1-MMU相关的基本概念 (1)虚拟地址相关基本概念 • 虚拟内存(Virtual Memory,VM):为每个进程提供了一致的、连续的、私有的内存空间,简化了内存管理。将主存看成是一个存储在磁盘
    的头像 发表于 11-26 16:11 342次阅读

    线性稳压器和开关模式电源(SMPS)的基本概念

    电子发烧友网站提供《线性稳压器和开关模式电源(SMPS)的基本概念.pdf》资料免费下载
    发表于 11-24 14:47 0次下载
    线性稳压器和开关模式电源(SMPS)的<b class='flag-5'>基本概念</b>

    C语言的基本概念和编程技术

    电子发烧友网站提供《C语言的基本概念和编程技术.pdf》资料免费下载
    发表于 11-20 10:18 0次下载
    C语言的<b class='flag-5'>基本概念</b>和编程技术

    LED显示屏的几个最基本概念

    电子发烧友网站提供《LED显示屏的几个最基本概念.pdf》资料免费下载
    发表于 11-02 09:53 0次下载
    LED显示屏的几个最<b class='flag-5'>基本概念</b>

    OFDM的基本原理和PAPR的基本概念

    电子发烧友网站提供《OFDM的基本原理和PAPR的基本概念.pdf》资料免费下载
    发表于 10-25 09:57 0次下载
    OFDM的基本原理和PAPR的<b class='flag-5'>基本概念</b>

    天线的几个基本概念

    电子发烧友网站提供《天线的几个基本概念.ppt》资料免费下载
    发表于 10-07 16:17 0次下载
    天线的几个<b class='flag-5'>基本概念</b>

    深度学习基本概念

    深度学习基本概念  深度学习是人工智能(AI)领域的一个重要分支,它模仿人类神经系统的工作方式,使用大量数据训练神经网络,从而实现自动化的模式识别和决策。在科技发展的今天,深度学习已经成为了计算机
    的头像 发表于 08-17 16:02 1156次阅读

    时序分析基本概念介绍—花一样的“模式”

    今天要介绍的时序基本概念是Mode(模式). 这是Multiple Scenario环境下Sign off的一个重要概念。芯片的设计模式包括最基本的功能function模式,以及各种各样相关的测试模式。
    的头像 发表于 07-10 17:21 1976次阅读
    时序分析<b class='flag-5'>基本概念</b>介绍—花一样的“模式”

    时序分析Slew/Transition基本概念介绍

    今天要介绍的时序分析基本概念是Slew,信号转换时间,也被称为transition time。
    的头像 发表于 07-05 14:50 1695次阅读
    时序分析Slew/Transition<b class='flag-5'>基本概念</b>介绍

    介绍时序分析的基本概念lookup table

    今天要介绍的时序分析基本概念是lookup table。中文全称时序查找表。
    的头像 发表于 07-03 14:30 755次阅读
    介绍时序分析的<b class='flag-5'>基本概念</b>lookup table

    线性度的基本概念(1dB压缩点,IP3,OP3)

    最近再次温故线性度的相关基本概念,收益匪浅,同时对失真进行深入的研究和学习,分享下心得。本文主要介绍下线性度的基本概念,包括1dB压缩点,IP3,OP3。
    的头像 发表于 07-03 11:29 2419次阅读
    线性度的<b class='flag-5'>基本概念</b>(1dB压缩点,IP3,OP3)

    Linux内核实现内存管理的基本概念

    本文概述Linux内核实现内存管理的基本概念,在了解基本概念后,逐步展开介绍实现内存管理的相关技术,后面会分多篇进行介绍。
    发表于 06-23 11:56 522次阅读
    Linux内核实现内存管理的<b class='flag-5'>基本概念</b>

    德索讲解LVDS线束的基本概念

    德索精密工业工程师指出,线束(circuit group)为一定负载源组提供服务设备的总体,如中继线路、交换装置、控制系统等。话务理论的基本研究内容是研究话务量、呼损和线束容量三者之间的关系,因此线束是话务理论中一个重要的基本概念
    的头像 发表于 06-12 09:25 2737次阅读
    德索讲解LVDS线束的<b class='flag-5'>基本概念</b>