• 时序逻辑电路的设计要点:

  ①只有时钟信号复位信号可以放在敏感列表里;

  ②使用非阻塞赋值,即使用"<=";

  ③无需对所有分支进行描述,对于未描述的分支,变量将保持原值;

  ④如果敏感列表中,有一个信号是边沿触发,则所有信号都得使用边沿触发。

  • 锁存器: 当时钟为高电平时,输出才会随输入数据的变化而更新。
//基本锁存器
module latch(clk, d, q);
input clk, d;
output q;
always @(clk, d) begin
if(clk)
q<=d;
end
endmodule //含复位控制的锁存器:高电平有效,低电平复位
module latch_reset(clk, rstn, d, q);
input clk, rstn;
input d;
output q;
always @(clk, rstn, d) begin
if(!rstn)
q<=0;
else if(clk)
q<=d;
end
endmodule
  • 触发器: 只有在时钟上升沿时才会更新数据
//基本D触发器
module dff(clk, d, q);
input clk;
input d;
output reg q;
always @(posedge clk)
q<=d;
endmodule //含异步复位信号的D触发器:高电平有效,低电平复位
module dff_reset(clk, rstn, d, q);
input clk, rstn;
input d;
output reg q;
always @(posedge clk, negedge rstn) begin
if(~rstn)
q<=1'b0;
else
q<=d;
end
endmodule //同步复位信号的D触发器
module dff_reset(clk, rstn, d, q);
input clk, rstn;
input d;
output reg q;
always @(posedge clk) begin
if(~rstn)
q<=1'b0;
else
q<=d;
end
endmodule //含异步复位和同步使能的D触发器:使能信号高电平有效;优先级:reset>clk>en.
module dff_reset_en(clk, rstn, en, d, q);
input clk, rstn, en;
input d;
output reg q;
always @(posedge clk, negedge rstn) begin
if(~rstn)
q<=1'b0;
else if(en)
q<=d;
end
endmodule
  • 寄存器:
//1位寄存器
module reg1(clk, reset, load, in_data, out_data);
input clk, reset, load;
input in_data;
output reg out_data;
always @(posedge clk, posedge reset) begin
if(reset)
out_data<=1'b0;
else if(load)
out_data<=in_data;
end
endmodule //N位寄存器
module regN
#(parameter N=8)
(input clk, reset, load,
input [N-1:0] in_data,
output reg [N-1:0] out_data); always @(posedge clk, posedge reset) begin
if(reset)
out_data<=0;
else if(load)
out_data<=in_data;
end
endmodule
  • 计数器:
//模M计数器:参数M指定计数模值;参数N指定计数器所需位数。
module counter_mod_m
#(parameter M=10,
parameter N=4)
(input clk, reset,
output [N-1:0] qd,
output cout); always@(posedge clk) begin
if(reset)
regN<=0;
else if(regN<(M-1))
regN<=regN+1;
else
regN<=0;
end
assign qd = regN;
assign cout=(regN==(M-1))?1'b1:1'b0;
endmodule

数电第六周周结_by_yc的更多相关文章

  1. 201871010132-张潇潇-《面向对象程序设计(java)》第六-七周学习总结

    201871010132-张潇潇-<面向对象程序设计(java)>第六-七周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh ...

  2. 2017-2018-1 我爱学Java 第六七周 作业

    团队六七周作业 完善版需求规格说明书 制定团队编码规范 数据库设计 后端架构设计 TODOList 参考资料 完善版需求规格说明书 <需求规格说明书>初稿不足之处: 1.开发工具写错 2. ...

  3. 201871010104-陈园园 《面向对象程序设计(java)》第六——七周学习总结

    201871010104-陈园园 <面向对象程序设计(java)>第六——七周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daiz ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第六—七周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第六—七周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu- ...

  5. 201871010128-杨丽霞《面向对象程序设计(java)》第六-七周学习总结

    201871010128-杨丽霞<面向对象程序设计(java)>第六-七周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

  6. 模电&数电知识整理(不定期更新)

    模电总复习之爱课堂题目概念整理 Chapter 1 1) 设室温情况下某二极管的反偏电压绝对值为1V,则当其反偏电压值减少100mV时,反向电流的变化是基本不发生变化. 2) 二极管发生击穿后,在击穿 ...

  7. 数电课设——琐碎

    这几天没有更新过网站了,也没继续开发VellLock了,可是感觉还是没有闲着,一直在跟下面的一些元器件在打交道,当然下面的都是小儿科,英文文档都看得我快吐血了.数电基本属于棺材边上过的我,是各种头大, ...

  8. 201871010113-刘兴瑞《面向对象程序设计(java)》第六-七周学习总结

    项目 内容 这个作业属于哪个课程 <任课教师博客主页链接> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 <作业链接地址>htt ...

  9. [问题2015S05] 复旦高等代数 II(14级)每周一题(第六教学周)

    [问题2015S05]  设 \(A\) 是 \(n\) 阶复方阵, 证明: \(A\) 可对角化的充分必要条件是 \(A\) 相似于某个如下的循环矩阵: \[C=\begin{pmatrix} a_ ...

  10. [问题2014A04] 复旦高等代数 I(14级)每周一题(第六教学周)

    [问题2014A04]  设 \(A,B,C,D\) 均为 \(n\) 阶方阵. (1) 若 \(A^2=A\), \(B^2=B\), \((A+B)^2=A+B\), 证明: \(AB=BA=0\ ...

随机推荐

  1. keycloak~资源的远程授权

    17.1远程资源授权准备 17.1.1认证和访问流程图 参考:http://www.zyiz.net/tech/detail-141309.html 17.1.2为用户指定角色 可以使用ROLE_US ...

  2. ProxySQL Cluster 概述

    文章转载自:https://blog.csdn.net/n88Lpo/article/details/79608639 前言 在ProxySQL 1.4.2 之前,ProxySQL 单点的解决方法有配 ...

  3. Kubernetes容器运行时弃用Docker转型Containerd

    文章转载自:https://i4t.com/5435.html Kubernetes社区在2020年7月份发布的版本中已经开始了dockershim的移除计划,在1.20版本中将内置的dockersh ...

  4. 通过 Traefik 使用 Kubernetes Service APIs 进行流量路由 (http,https,金丝雀发布)

    文章转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247490229&idx=1&sn=ca817054 ...

  5. MySQL 主从同步延迟监控

    MySQL5.7和8.0支持通过 replication_applier_status 表获同步延迟时间,当从库出现延迟后,该表中的字段 REMAINING_DELAY 记录延迟秒数,当没有延迟时,该 ...

  6. Mysql三种日志(binlog,redolog,undolog)的作用和区别

    Mysql有三种很重要的日志也是面试经常涉及到的考点,分别是 binlog .redo log和undo log, 这里面binlog 是server层实现的日志,而redo log 和undo lo ...

  7. 如何通过 Java 代码隐藏 Word 文档中的指定段落

    在编辑Word文档时,我们有时需要将一些重要信息保密. 因此,可以隐藏它们以确保机密性. 在本文中,将向您介绍如何通过 Java 程序中的代码隐藏 Word 文档中的特定段落.下面是我整理的具体步骤, ...

  8. k8s 中 Pod 的控制器

    k8s 中 Pod 的控制器 前言 Replication Controller ReplicaSet Deployment 更新 Deployment 回滚 deployment StatefulS ...

  9. 魔改editormd组件,优化ToC渲染效果

    前言 我的StarBlog博客目前使用 editor.md 组件在前端渲染markdown文章,但这个组件自动生成的ToC(内容目录)不是很美观,我之前魔改过一个树形组件 BootStrap-Tree ...

  10. Vue学习之--------事件的基本使用、事件修饰符、键盘事件(2022/7/7)

    文章目录 1.事件处理 1.1. 事件的基本使用 1.1.1 .基础知识 1.1.2. 代码实例 1.1.3.测试效果 1.2.事件修饰符 1.2.1. 基础知识 1.2.2 .代码实例 1.2.3 ...