Verilog(二) register and net

1  register = storage

keyword reg;  default x;  variable that can hold value

2  net = connection

keyword wire;  default z;  be driven continuously

例 1)  D flip-flop with syn reset

module  dff(clk, rst, d, q);
  input  clk,  rst,  d;
  output  q;
  reg  q;

always @(posedge clk)
begin
  if (rst)
      q <= 1‘b0;
   else
      q <= d;
end

endmodule 

syn

例 2)  D flip-flop with asyn reset

module  dff(clk, rst, d, q);
  input  clk,  rst,  d;
  output  q;
  reg  q;

always @(posedge clk or posedge rst)
begin
  if (rst)
      q <= 1‘b0;
  else
      q <= d;
end

endmodule 

asyn

时间: 2024-10-06 16:45:48

Verilog(二) register and net的相关文章

Verilog 二选一多路选择器 Modelsim设计。

一个简单的二选一多路选择器 逻辑图 Verilog源程序 module Mux_Two ( input a, //Data input b, //Data input sl, //High: b ;Low: a output reg out ); always@(sl or a or b) if(!sl) out=a; else out=b; endmodule Modelsim架构文件 a为输入25MHz方波,b为输入12.5MHz的方波,sl为输入6.25MHz的方波.sl为高电平时,out

spring 动态指定具体实现类

在写接口实现时,有时会有多个实现类.这篇文章介绍在调用时通过传入字符串来指定具体的实现类. 一.接口与实现类: // 接口 public interface ServiceInterface { public void method(); } // 具体两个实现类 @Service("aService") public class AServiceImpl implements ServiceInterface { @Override public void method() { Sy

Python网络编程08----Django模版

模板系统基本知识 模板是一个文本文件(可以是HTML,XML,CSV等任何文本格式),同时包含了静态内容(例如HTML)和动态标记的逻辑,用于分离文档的表现形式和内容. 模板定义了占位符以及各种用于规范文档该如何显示的各部分基本逻辑(模板标签). 模板通常用于产生HTML,但是Django的模板也能产生任何基于文本格式的文档.使用哪个模版以及渲染什么数据是由视图函数本身(通过显式的渲染或者使用render_to_response)或者视图的参数(比如通用视图里的template_name参数)决

django模型系统一

一.复习 代码布局(代码放在哪里) app目录下:必需放在app目录下 templatetags文件夹,不能写错一个字符 app必需注册 1.自定义过滤器 为什么(案例:男:1,女:0...怎么展示) 定义:过滤器就是一个函数. --有1到2个参数 --第一个参数传进来的是模板变量.(过滤器必需依赖模板变量) --第二个参数其他的参数 --return你想要显示的数据 注册过滤器: from django.template import Library register=Library() 这个

Verilog学习笔记基本语法篇(二)&#183;&#183;&#183;&#183;&#183;&#183;&#183;&#183;&#183;运算符

Verilog HDL的语言的运算符的范围很广,按照其功能大概可以分为以下几类: (1)算术运算符 +,-,*,/,% 优先顺序 !~ *  /   % +    - <<    >> <    <=  >   >= ==  !==  === !=== & ^  ^~ | && || ?: 最高优先级别 ↓ ↓ ↓ ↓ 最低优先级别 (2)赋值运算符 =,<= (3)关系运算符> ,<,>=,<= (4)

Verilog学习笔记基本语法篇(十二)&#183;&#183;&#183;&#183;&#183;&#183;&#183;&#183; 编译预处理

h Verilog HDL语言和C语言一样也提供编译预处理的功能.在Verilog中为了和一般的语句相区别,这些预处理语句以符号"`"开头,注意,这个字符位于主键盘的左上角,其对应的上键盘字符为"~",这个符号并不是单引号"'".这里简单介绍最常用的`define `include `timescale. 1)宏定义`define 用一个指定的标识符(名字)来代表一个字符串,其的一般形式为: `define 标识符(宏名) 字符串(宏内容) 如:

Verilog HDL那些事_建模篇笔记(实验一,实验二)

实验一:永远的流水灯 扫描频率配置为100Hz,即是说扫描周期为10ms.这里需要注意的是扫描周期的概念.流水灯嘛,顾名思义,扫描周期指的是流水灯扫一轮所需要的时间.听到说周期,就应该想到在建模的时候需要写计数器模块,这个计数器模块应该是神一般的独立存在,独立运行.每隔10ms复位一次,复位后又重新开始计数. 实验二:闪耀灯和流水灯 闪耀灯涉及到闪耀频率,流水灯涉及到扫描频率的概率.这里先区分一下闪耀频率和扫描频率的概念.闪耀频率对应闪耀周期,闪耀周期是针对于单个LED灯而言的,即是指LED灯亮

Verilog篇(二)

显示任务:$display,$write, 前者总会输出一个换行符,后者不会.固定输出格式版:$displayb/$displayo/$displayh/$writeb/$writeo/$writeh. (%m 显示模块路径, \转义字符) $fmonitor(file, "%m:%t addr = %h data = %h", $realtime, addr, data); 监控任务:$monitor, $strobe, 前者同一仿真时候只能触发一个task,还有控制任务$monit

paper:synthesizable finite state machine design techniques using the new systemverilog 3.0 enhancements 之 standard verilog FSM conding styles(二段式)

1.Two always block style with combinational outputs(Good Style) 对应的代码如下: 2段式总结: (1)the combinational always block sensitivity list is sensitve to changes on the state variable and all of the inputs referenced in the combinaltional always block. 这个实际中