zoukankan      html  css  js  c++  java
  • 时序逻辑、组合逻辑,我不再怕你了

    时序逻辑、组合逻辑,我不再怕你了

     转自http://www.cnblogs.com/crazybingo/archive/2010/08/01/1789740.html

    学FPGA也这么久了,会了VHDL,那时候没有时序逻辑、组合逻辑的概念;之后又会了Verilog,一开始还是没有理解时序逻辑、组合逻辑,做东西的时候,发现总是有缺陷。

    曾经有次因为4.3inch LCD遇到过郁闷的问题,像素点用时序逻辑和组合逻辑都可以,但是不知道到底用什么;再者,精确到点的时候,两种写法会有不同的效果,但是我不理解……

    曾经一度问过我EDA老师,他竟然这样说了一句话:“时序逻辑、组合逻辑是Verilog硬件描述语言设计中最难的部分,很多高级工程师甚至没搞清楚这一点……”

    我灰常的郁闷……竟然这样的答案……

    这些天调试VGA,像素点的绝对精确,一次一次的尝试,我终于理解了时序逻辑、组合逻辑了,以后不用怕了哈哈……

    其实,组合逻辑: always@ (敏感信号)或者 always @ *,组合逻辑相当于组合电路,与或非门组成的电路,其输出至于当前状态有关,与其他输入状态的函数无关,不涉及信号调变处理(组合逻辑竞争冒险 : 只要输入信号同时变化,组合逻辑就必然产生毛刺);

    而时序逻辑:always @(跳变时钟)是时序电路,其输出不仅仅与当前状态有关,只有在时钟跳变的时候才会变化,其最简单的模型相当于DFF,D触发器。

    在VGA驱动设计中,HS,VS等都是时序逻辑,其相当于hcnt,vcnt刚好滞后了一个时钟周期;而xpos,ypos是hcnt,vcnt的组合逻辑,与时钟同步;在第二个模块中,通过判断xpos,ypos来给定RGB,这又是时序逻辑,刚好滞后了一个时钟周期。因此,一前一后,HS,VS和RGB像素点,刚好达到了同步,当然必须保证判断到xpos,ypos后的RGB输入为组合逻辑,因为其至于当前状态有关(此处原因已在《时序逻辑__滞后一个像素》这一章节中讲到)。

    很多人看书,看书,while(1){看书};看不懂组合逻辑,时序逻辑;

    现在想来,只要你理解其中的内涵,就能运用自如哈哈……

  • 相关阅读:
    一个帖子掌握android所有控件、ProgressBar 、Android 动画效果、SQLite、四大组件、Android多媒体(转
    Android开发交流群
    我的程序里 《我的歌声里》程序员版
    《老罗Android开发视频教程安卓巴士》(Android 开发)
    #百度360大战# 我为什么要支持360
    安卓巴士移动开发者周刊第九期
    水杯题的非常好的解释
    [LeetCode] Jump Game
    [LeetCode] Longest Common Prefix
    [CareerCup][Google Interview] 寻找动态的中位数
  • 原文地址:https://www.cnblogs.com/adxiaowei/p/4029868.html
Copyright © 2011-2022 走看看