编码器设计——Verilog HDL语言
编码器设计
- 任务描述
- 相关知识
- 3位二进制优先编码器的功能
- always语句
- 事件时序控制
- 编程要求
- 源代码
任务描述
设计一个3位二进制优先编码器。运用Verilog HDL进行设计,完善3位二进制优先编码器的功能描述风格代码,具备组合逻辑电路的设计仿真和测试的能力。
相关知识
- 3位二进制优先编码器的功能;
- 如何用always语句、if语句进行逻辑功能的描述。
3位二进制优先编码器的功能
优先编码器允许同时输入两个以上编码信号,并按照事先规定的优先级别,对优先权最高的一个输入信号进行编码,编码器框图如下所示。
always语句
通俗的理解,always就是:一直运行。
always过程从关键字always开始,可以连续多次运行,当过程的最后一行代码执行完成后,再次从第一行代码开始执行。
一个模块中可以包含多个过程,各个过程相互之间是并发执行的。不过,过程不能够嵌套使用。如果过程中有多个语句,则需要使用关键字begin、end或fork、join将它们组成一个代码块。这两种关键字组合代表着顺序代码块和并行代码块。
事件时序控制
事件时序控制的意思是,如果指定的事件发生,则代码被触发执行。它的关键字为@,后面可以加变量或者事件名称。例如:
@(a or b) y = ~a; //当a或b其中任意一个变量发生变化时,则将a非赋值给y
@(posedge clk) y = 1; //在变量clk的上升沿,将1赋值给y
编程要求
根据真值表,设计一个输入输出均为高电平有效的3位二进制优先编码器。
I0~I7(八种状态)是八个编码信号输入端, I7的优先权最高,I0的优先权最低;Y0、Y1、Y2是三位二进制代码输出端。
输入输出均为高电平1有效的3位二进制优先编码器真值表如下所示。
源代码
测试平台:EduCoder
//设计一个输入输出均为高电平有效的3位二进制优先编码器
//I[7]的优先权最高,I[0]的优先权最低
module encoder8_3_test(I,Y);
input [7:0] I;
output [2:0] Y;
// 请在下面添加代码,完成设计任务
/* Begin */
wire[7:0] I;
reg [2:0] Y;
always@(*)
begin
if(I[7]==1) Y = 3'b111;else if(I[6]==1) Y =3'b110;else if(I[5]==1) Y =3'b101;else if(I[4]==1) Y =3'b100;else if(I[3]==1) Y =3'b011;else if(I[2]==1) Y =3'b010;else if(I[1]==1) Y =3'b001;else if(I[0]==1) Y =3'b000;else Y = 3'b000;
end
/* End */
endmodule
觉得有帮助的可以点个赞再走哦!!
编码器设计——Verilog HDL语言相关推荐
- 译码器设计——Verilog HDL语言
译码器设计 任务描述 相关知识 3线-8线译码器的功能 always语句 事件时序控制 case语句 编程要求 源代码 任务描述 设计一个3线-8线译码器.运用Verilog HDL进行设计,完善译码 ...
- 有限状态机设计实例之空调控制器(Verilog HDL语言描述)(仿真与综合)(附用Edraw(亿图)画状态转移图)
目录 前言 空调控制器 简介 状态转移图如下: Verilog HDL语言描述 测试文件 仿真图 ISE综合 RTL Schematic Technology Schematic 前言 关于工具的使用 ...
- 模6计数器以及模10计数器(Verilog HDL语言设计)(Modelsim仿真与ISE综合)
目录 前言 模6计数器 Verilog HDL语言描述 测试文件 仿真电路图 RTL Schematic Technology Schematic 模10计数器 Verilog HDL语言描述 测试文 ...
- spwm控制算法c语言实现,采用Verilog HDL语言与DDS技术实现SPWM控制算法的FPGA设计
其部分程序代码如下: case(state1) A: //初始化状态 begin ADDRES1<=addr1; //时分复用第一路地址 READ_EN<=1′b1; //读使能开 NEX ...
- 模24的8421BCD码计数器(Verilog HDL语言描述)(仿真与综合)
目录 前言 原理 Verilog HDL程序设计 测试代码 仿真波形图 ISE综合后 RTL Schematic Technology Schematic 前言 本博文用Verilog HDL语言描述 ...
- 级联模60计数器(Verilog HDL语言描述)(仿真与综合)
目录 前言 模60计数器 Verilog HDL语言描述 测试文件 仿真波形 RTL Schematic Technology Schematic 前言 看这篇文章前,推荐先看看模10计数器和模6计数 ...
- 通过仿真和综合认识T触发器(Verilog HDL语言描述T触发器)
这个系列的博文已经写过了两篇,分别是通过仿真和综合认识D触发器(Verilog HDL语言描述D触发器)和通过仿真和综合认识JK触发器(Verilog HDL语言描述JK触发器),分析的方法是完全并行 ...
- 通过仿真和综合认识JK触发器(Verilog HDL语言描述JK触发器)
上篇博文写了用仿真和综合来认识D触发器(通过仿真和综合认识D触发器(Verilog HDL语言描述D触发器)),这篇博文采用完全并行的方式来认识JK触发器. 让我们迅速进入正题吧. J-K触发器的Ve ...
- Verilog HDL 语言基础语法
模块的结构 (1)Verilog的基本设计单元是"模块"(block). (2)一个模块由两部分组成,一部分描述接口,另一部分描述逻辑功能. (3)每个Verilog程序包括4个主 ...
最新文章
- 如何优雅地从四个方面加深对深度学习的理解
- ECCV2018 Oral论文集
- jdk1.8,java8,安装包阿里云-百度云下载(windos,mac,linux)
- ichart添加click事件
- 迅雷手机版苹果版_iOS迅雷2019内测版重磅发布,果粉们珍藏好这份详细下载教程...
- NO JVM installation found. please install a 64-bit JDK,解决方法 Error launching android studio NO J
- 沈阳市中考计算机考试时间,2017沈阳市中考考试科目及时间
- Java代码画星空月亮
- 台式电脑主机 前面音箱设置
- 利用计算机对多媒体进行综合处理,多媒体技术复习题及答案
- 路由器、交换机的基本配置 1
- 【拓扑排序+dp】Hzy's Rabbit Candy
- 银行卡正则,验证银行卡是否有效
- 射影几何笔记4:公理和证明
- leangoo大讲堂—北京站
- delphi里面奇奇怪怪的函数真多。。
- python统计代码行数_python实现统计代码行数的方法
- 组播路由协议基础——PIM-SM BSR工作机制
- 基于java的微信支付之JSAPI公众号充值
- Scalers:持续行动至少要以年为单位
热门文章
- 调用各地图h5页打点url及参数
- python matplotlib画多个图_python matplotlib模块 如何画两张图出来
- python代码-淘宝定时抢东西
- [从零学习汇编语言] -寄存器详解
- java超市管理论文,java超市信息管理系统的设计与实现
- mysql超类_在MySQL Workbench图中表示超类/子类(或超类型...
- Druid连接池源代码分析之四-java.lang.sql 规范
- FrameWork之旅 -- Activity过去的门面ActionBar
- python面向对象之水果超市
- 快速上手用Taro框架搭建一个微信小程序