verilog学习笔记(1)_两个小module
第一个小module-ex_module
module ex_module(
input wire sclk,//声明模块的时候input变量一定是wire变量
input wire rst_n,//末尾带有_n或者_b代表低电平有效
input wire [7:0] d,
output reg [7:0] q//明模块的时候output变量可以是wire变量,也可以是reg变量 //reg变量必须在always块里赋值
);
//异步D触发器
always@(posedge sclk or negedge ret_n)//括号内为敏感列表 电平触发或者沿触发 此处为沿触发
if(rst_n == 1'b01)//条件表,这里是组合逻辑
q <= 8'h00 //16进制 1个符号代表4个比特 //沿触发的逻辑里边一定都用<=非阻塞赋值
else q <= d;
//同步D触发器
always@(posedge sclk)
if(rst_n == 1'b0)
q <= 8'h00;
else
q <= d;
endmodule
第二个小module-
module ex_wire(
input wire sel,
input wire a,
input wire b,
output wire c
);
//wire 变量一定用assign 连续赋值语句赋值,且必须用阻塞赋值
//assign c = (条件)?a:b;//条件满足执行a,否则执行b
assign c = (sel == 1'b1)? a : b;//a,b可以为reg变量,c一定为wire变量
endmodule
verilog学习笔记(1)_两个小module的更多相关文章
- verilog学习笔记(2)_一个小module及其tb
module-ex_cnt module ex_cnt( input wire sclk, input wire rst_n, output wire[9:0] cnt ); reg [9:0] cn ...
- verilog学习笔记(4)_有限状态机
有限状态机: 有限状态机是由寄存器组和组合逻辑构成的硬件时序电路: - 其状态(即由寄存器组的1和0的组合状态所构成的有限个状态)只能在同一时钟跳变沿的情况下才能从一个状态转向另一个状态: - 究竟转 ...
- Lua学习笔记 入门的两个小程序
[Hello World]第一个Lua程序将遵循传统做法,打印一句“Hello World”: print("Hello World") [阶乘]下面的程序用于输出输入值对应的阶乘 ...
- 【自动化学习笔记】_环境搭建Selenium2+Eclipse+Java+TestNG_(一)
目录 第一步 安装JDK 第二步 下载Eclipse 第三步 在Eclipse中安装TestNG 第四步 下载Selenium IDE.SeleniumRC.IEDriverServer 第五步 下 ...
- 学习笔记:暴力破解WIFI小软件
小弟 自己的学习笔记,做练习的 ,缺陷还很多,做到无法解决速度问题就不想做下去了,如果要看的话 主要是思路问题,获取句柄,控制句柄而已,代码比较简单.大神勿喷啊 破解DEMO源码:http://dow ...
- verilog学习笔记(3)_task/case小例子及其tb
module ex_case `timescale lns/1ns module ex_case( input wire rst_n, input wire sclk, output reg [7:0 ...
- <深入理解JavaScript>学习笔记(1)_编写高质量JavaScript代码的基本要点
注:本文是拜读了 深入理解JavaScript 之后深有感悟,故做次笔记方便之后查看. JQuery是一个很强大的JavaScript 类库,在我刚刚接触JavaScript的就开始用了. JQuer ...
- Verilog学习笔记基本语法篇(九)········ 任务和函数
task 和 function 说明语句分别用来定义任务和函数,利用任务和函数可以把函数模块分成许多小的任务和函数便于理解和调试.任务和函数往往还是大的程序模块在不同地点多次用到的相同的程序段.输入. ...
- <深入理解JavaScript>学习笔记(5)_强大的原型和原型链
前言 JavaScript 不包含传统的类继承模型,而是使用 prototypal 原型模型. (prototypal :原型.学好英语还是很重要的) 虽然这经常被当作是 JavaScript 的缺点 ...
随机推荐
- Tomcat 设置开机自启
操作系统centos6.5: Vim /etc/rc.local在末尾添加一下两行 source /etc/profile /test/tomcat/bin/startup.sh 我解释下为什么要加s ...
- which命令实战及原理详解-PATH实战配置
Which查找命令所在的路径,搜索范围来自全局环境PATH变量对应的路径. 其他方法: find / -type f -name “useradd” whereis -b useradd PATH的路 ...
- 【xsy2115】Delight for a Cat
Time Limit: 1000 ms Memory Limit: 512 MB Description 从前,有一只懒猫叫CJB.每个小时,这只猫要么在睡觉,要么在吃东西,但不能一边睡觉一边吃东 ...
- sprintf函数使用
功能 把格式化的数据写入某个字符缓冲区. 所需头文件 stdio.h 原型 int sprintf( char *buffer, const char *format, [ argument] - ) ...
- linux 记录用户操作日志
将以下加入到/etc/profile 最后 history USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]/ ...
- 基于synchronized实现的阻塞队列
package com.lilei.pack09; import java.util.concurrent.ExecutorService; import java.util.concurrent.E ...
- 如何在IPFS里面上传一张图片
之前有好几人问过小编,想在IPFS里面上传一张图片.如何做? 今天小编就讲一下如何在IPFS里面上传.下载文件? 1 下载IPFS软件 下载地址:https://dist.ipfs.io/#go-ip ...
- MySQL 中如何存储 emoji ?
MySQL 中如何存储 emoji ? 问题还原 使用 erlang 存储一些特殊字符串到 MySQL 的时候,却没法读出来.经检查,这些字符串的二进制格式如下: <<240,159,15 ...
- http协议中302和303的区别
http1.0协议中只有302码,没有303状态码:http1.1,在默认情况下,很多服务端基础程序,为了兼容http1.0,在遇到本应响应303时,也给客户端响应了302. 碰到的问题: 场景: 在 ...
- 1-3 hibernate核心对象关系映射 xxx.hbm.xml
详见 http://www.cnblogs.com/biehongli/p/6532800.html 1 <?xml version="1.0" encoding='utf ...