zoukankan      html  css  js  c++  java
  • 惯性延迟与阻塞/非阻塞赋值

      最近在编写仿真的时候顺便研究了一下电路延迟,延迟分两种,一种是惯性延迟,一种是传输延迟.

      惯性延迟可以理解为滤波,其本身的产生原因也是电路中存在的大量电容,电容有充放电效应,因此可以平波峰波谷,类似水库.

      但是要注意的一点是,网上的解释里面的图片都是一个带尖峰脉冲的输入进来,输出丝毫不变,这是不可能的,实际的图像应该是这个尖峰被平滑成了土堆,能量依然能够传递,但是触发器的0/1判断也是有界限的,所以平滑之后没有达到输出改变的界限.就相当于没有起效,尖峰脉冲似乎就被"滤掉了".

      传输延迟不能拿来滤波,就是走线的延迟,器件的延迟.尖峰脉冲会被它们如实传递下去.

      阻塞赋值和非阻塞赋值,在verilog里是一个难点,但是我觉得不存在这个概念,因为同为硬件描述语言,,VHDL中不存在这个概念.

      总的来说电路里只有组合逻辑和时序逻辑,所谓阻塞和非阻塞,只是VERILOG在时序格式(always)的代码段里硬写组合逻辑所造成的问题.对于我个人而言,写时序逻辑一律使用"<=",写组合逻辑都使用"=".

      而且,reg和wire声明的优先级很低,也就是说,假如我们声明了一个信号为reg,在always块里按照组合逻辑给它写,综合出来还是wire,这就很无语了,整这些语法特性画蛇添足.

  • 相关阅读:
    Hadoop2.x环境搭建
    HDFS序列化
    Hadoop2.x介绍
    eclipse(1)----ubuntu下的安装与配置
    hive与hbase
    mysql----启动报错
    序列化+protobuff+redis
    爬虫学习笔记(2)--创建scrapy项目&&css选择器
    日常随笔
    spark学习(2)--hadoop安装、配置
  • 原文地址:https://www.cnblogs.com/aliothx/p/13455452.html
Copyright © 2011-2022 走看看