Verilog if语句阻断z状态传播

一、测试代码

设置两组输入输出,对比使用assign赋值语句与always if语句。

  • if_assign_test.v
`timescale 1ns / 1ps
//
// Engineer: wkk
// Module Name: if_assign_test
//
module if_assign_test(input  if_a_in,input  if_b_in,input  if_c_in,input  if_d_in,input  assign_a_in,input  assign_b_in,input  assign_c_in,input  assign_d_in,output reg if_a_out,output reg if_b_out,output reg if_c_out,output reg if_d_out,output assign_a_out,output assign_b_out,output assign_c_out,output assign_d_out
);assign assign_a_out = assign_a_in ? 1'b1:1'b0;
assign assign_b_out = assign_b_in ? 1'b1:1'b0;
assign assign_c_out = assign_c_in ? 1'b1:1'b0;
assign assign_d_out = assign_d_in ? 1'b1:1'b0;always @( * )  beginif( if_a_in ) beginif_a_out = 1'b1;end else beginif_a_out = 1'b0;end
endalways @( * )  beginif( if_b_in ) beginif_b_out = 1'b1;end else beginif_b_out = 1'b0;end
endalways @( * )  beginif( if_c_in ) beginif_c_out = 1'b1;end else beginif_c_out = 1'b0;end
endalways @( * )  beginif( if_d_in ) beginif_d_out = 1'b1;end else beginif_d_out = 1'b0;end
endendmodule
  • tb_if_assign_test.v
`timescale 1ns / 1ps
//
// Engineer: wkk
// Create Date: 2023/12/05 20:37:07
// Module Name: tb_if_assign_test
//module tb_if_assign_test();
reg  if_a_in;
reg  if_b_in;
reg  if_c_in;
reg  if_d_in;
reg  assign_a_in;
reg  assign_b_in;
reg  assign_c_in;
reg  assign_d_in;wire if_a_out;
wire if_b_out;
wire if_c_out;
wire if_d_out;wire assign_a_out;
wire assign_b_out;
wire assign_c_out;
wire assign_d_out;if_assign_test if_assign_test_inst (.if_a_in (if_a_in),.if_b_in (if_b_in),.if_c_in (if_c_in),.if_d_in (if_d_in),.assign_a_in(assign_a_in),.assign_b_in(assign_b_in),.assign_c_in(assign_c_in),.assign_d_in(assign_d_in),.if_a_out   (if_a_out),.if_b_out   (if_b_out),.if_c_out   (if_c_out),.if_d_out   (if_d_out),.assign_a_out(assign_a_out),.assign_b_out(assign_b_out),.assign_c_out(assign_c_out),.assign_d_out(assign_d_out)
);initial  beginif_a_in = 1'b1;if_b_in = 1'b0;if_c_in = 1'bz;if_d_in = 1'bx;assign_a_in = 1'b1;assign_b_in = 1'b0;assign_c_in = 1'bz;assign_d_in = 1'bx;# 100;$finish;
end
endmodule

二、仿真结果

在这里插入图片描述
通过if ( 条件 ) 的方式,z态被阻断了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/199655.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在线网页视频提取工具哪个好用?建议收藏!

随着短视频的崛起,很多人都喜欢将视频下载到手机中慢慢观看,这样可以避免在线播放的卡顿问题,但是会遇到一个问题就是在线网页视频提取工具哪个好用,有的可以提取但是画质太差模糊,有的自带水印飞来飞去。今天小编给大…

同旺科技 USB TO SPI / I2C --- 调试W5500_读写网关地址

所需设备: 内附链接 1、USB转SPI_I2C适配器(专业版); 首先,连接W5500模块与同旺科技USB TO SPI / I2C适配器,如下图: 这里的网关地址设置为192.168.1.1 先将网关地址写入寄存器,然后再读取出来:

关于神舟-战神TA5NS系统重装问题

加装固态卡在log处无法开机问题 下面是我的步骤 1.按f7选择pe安装系统,然后发现卡在战神log处不转动 2.下载驱动 TA5NS驱动地址 下载RAID驱动(如果没有私信我,我网盘里有),拷到u盘中,然后进入pe系统里面…

Educational Codeforces Round 159 (Rated for Div. 2) 之 A - E 题

目录 [A. Binary Imbalance](https://codeforces.com/contest/1902/problem/A)DescriptionSolutionCode [B. Getting Points](https://codeforces.com/contest/1902/problem/B)DescriptionSolutionCode [C. Insert and Equalize](https://codeforces.com/contest/1902/problem/…

分享126个图片JS特效,总有一款适合您

分享126个图片JS特效,总有一款适合您 126个图片JS特效下载链接:https://pan.baidu.com/s/1sOKHo4RciQXwQX9vhLIm3g?pwd6666 提取码:6666 Python采集代码下载链接:采集代码.zip - 蓝奏云 学习知识费力气,收集整…

【Maven】更新依赖索引

有时候给idea配置完maven仓库信息后,在idea中依然搜索不到仓库中的jar包。这是因为仓库中的jar包索引尚未更新到idea中。这个时候我们就需要更新idea中maven的索引了,具体做法如下: 打开设置----搜索maven----Repositories----选中本地仓库-…

Javafx实现浏览器

浏览器是一种计算机程序,主要用于显示互联网上的网页。通过浏览器,用户可以访问各种网站、搜索引擎、在线应用程序、社交媒体等。常见的浏览器包括Google Chrome、Mozilla Firefox、Safari、Microsoft Edge、Opera等。浏览器的功能不仅限于浏览网页&…

shell编程

1、开发内存监测脚本 功能描述 监测linux剩余可用的内存,当可用内存小于100M时,就发邮件给我;并且将该脚本加入crontab,每3分钟检查一次内存知识点 获取当前内存的命令:free -m # 以兆的形式显示代码 #! /bin/bashf…

15、pytest的fixture调用fixture

官方实例 # content of test_append.py import pytest# Arrange pytest.fixture def first_entry():return "a"# Arrange pytest.fixture def order(first_entry):return [first_entry]def test_string(order):# Actorder.append("b")# Assertassert orde…

Python中检查字符串是否仅包含字母的多种方法:深入探究

更多资料获取 📚 个人网站:ipengtao.com 随着Python在数据处理和字符串操作方面的广泛应用,经常需要对字符串进行验证,确认其是否仅包含字母。本文将探讨Python中的多种方法来检查字符串是否只由字母组成,以及它们的应…

自助POS收银机-亿发互联网收银解决方案助力零售业迎接数字经济挑战

零售业作为中国经济的主动脉,扮演着至关重要的角色。最新发布的《中国线下零售小店数字化转型报告》揭示了当前线下零售小店所面临的多重痛点,经营方式传统、滞后的内部管理和营销模式,以及缺乏消费数据等问题,这些痛点都指明&…

项目经理是干出来的,不是教出来的

大家好,我是老原。 有不少新手项目经理,在通过了PMP认证考试,拿到PMP证书后,对之前无序的项目管理状态感觉有了一丝通透的感觉,对接受新项目更是信心满满。 然后就有不少没有项目管理经验,且刚刚考取PMP证…

玩转大数据7:数据湖与数据仓库的比较与选择

1. 引言 在当今数字化的世界中,数据被视为一种宝贵的资源,而数据湖和数据仓库则是两种重要的数据处理工具。本文将详细介绍这两种工具的概念、作用以及它们之间的区别和联系。 1.1. 数据湖的概念和作用 数据湖是一个集中式存储和处理大量数据的平台&a…

Vue Computed

小满,我的神! 视频链接 // 只读 const plusOne computed(() > count.value 1) // 可读可写 const plusOne computed({get: () > count.value 1,set: (val) > {count.value val - 1} }, { // 用于调试onTrack(e) {debugger},onTrigger(e) …

网上选课系统源码(Java)

JavaWebjsp网上选课系统源码 运行示意图:

GD32F103*固件库移植FreeRTOS详细教程与解析

GD32F103*固件库移植FreeRTOS详细教程与解析 GD32F103*移植μCOS-Ⅲ详细教程与解析,欢迎指正 文章目录 GD32F103*固件库移植FreeRTOS详细教程与解析前言一、移植前的准备二、移植步骤1.文件结构2.添加代码3.编译与配置 三、注意事项总结 前言 FreeRTOS是一个可以基…

Hadoop学习笔记(HDP)-Part.09 安装OpenLDAP

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

网工内推 | 上市公司初级网工,HCIP认证优先,14薪,享企业年金

01 易佰网络 招聘岗位:初级网络工程师 职责描述: 1.电脑周边设备(打印机、扫描仪、传真机、复印机、投影仪等)安装与维护; 2.局域网维护;无线网WLAN维护;监控系统维护; 3.固资维护管…

学校图书管理系统的开发

目 录 摘要 1 Abstract. 1 1 引言 2 1.1 图书管理的现状 2 1.2 现有图书管理系统的概述 3 1.3 选题的目的、意义 3 1.4 图书管理系统的可行性分析 4 1.5 系统开发运行环境 4 2 图书管理系统开发相关技术的介绍 5 2.1 Asp.net的介绍 5 2.1.1 Asp.net的优势介绍 5 2.1.2 Asp.net…

记录一下Mac配置SpringBoot开发环境

由于很多项目喜欢使用传统的 Java 8 进行开发,而且 Java 8 的稳定性也是经过长久考验的,我们接下来就尝试一下,在一台新的 Mac 中配置 Java 环境,并且开始创建 SpringBoot 项目。 首先,去 Oracle 官网下载 java8 JDK …