当前位置: 首页 > news >正文

10.14~10.15verilog操作流程与Block Design

后面的那个是延时精度

verilog文件结构

文件名称与写的模板没有关系,这个文件名为P1,但模板名为andgate

但是如果是仿真文件,就需要开头的模板名和仿真文件名相同

.v是源文件,设计文件

.v在设计与sim里都有,静态共享,是.v当中的设计文件在其中都有,而仿真,调用文件只在sim里有。什么文件的后缀名都是.v,因为都是verliog实现的,

也就是说仿真文件在创建的时候也是.v,和源文件没区别,只是在具体写的时候,写完的时候,计算机才能识别出哪个是仿真文件,哪个是设计文件。

没有实现新函数方法,只调用已有方法的是仿真文件

创建,设计了新函数方法的是源文件

举例

在仿真文件夹中,仿真文件有个名字,在上图中为led_tb,

在仿真时,仿真文件会调用源文件里的文件,调用了哪些,就意味着哪些文件附属在仿真文件之下,这里的仿真文件led_tb调用了led.v的源文件,所以led.v附属在其之下

而且,在仿真文件当中,实例化其的对象名称为flow_led,所以附属的结构为flow_led:led(led.v)

led表示源文件里实现的方法,flow_led表示这个仿真文件实例化这个类的一个具体名称,在Led之下,(led.v)表示在这个文件之中

运行

在实际运行中,这样的结果是错的,会导致出问题。即使原文件,原代码都是没问题的

因为仿真时是要运行仿真文件,

如果先说运行某个仿真文件下的实例化文件,就会出问题,正确的应该是始终保持仿真文件为顶头文件,一是要注意如果有多个文件,要顶头一个仿真文件;二是要注意顶头的是一级文件,即tp1,而不是p1,

这样就没问题了

 1.创建设计文件

就是写每个门或电路需要哪些信号以及用来干什么,输出什么

2.写仿真文件

仿真文件开始时要写一个模板,表示的是这个仿真文件的名字,要和文件名一样

仿真文件不实现新方法,所以其模板、类名称不需要定义,只需要声明一个空类即可

之后是声明与定义信号,

声明完后写initial,表示在不同的时间里上面声明的信号的值的情况是怎样的,即开始定义信号

最后end表示initial结束,即输入信号的完成

最后一步就是实例化一个源文件里的电路,然后把输入信号传进去即可

在信号定义之前之后好像都可以,最好在之前

在赋值当中,如果遇到对多个信号赋值,需要写begin,end,如果只有一个则不需要

实例化的时候要这样,.din(din)

这样不行,这样是错的

这是设计文件里的信号类型,输入是wire,输出是reg

这是测试文件里的信号,可以发现输入wire定义成了reg,输出定义成了wire,注意一下

周期仿真,赋值

上面有定义时间参数为20

3.跑仿真

4.写引脚文件

5.综合

6.上板

?什么叫数据的宽度?

前面一个数字代表总共多少比特,b,h代表用二进制,十六进制,后面是实际的表示数据,基于前面选择的进制

比特就是二进制,不管用什么进制,都要转化为比特,比特的概念是二进制下的,就是说后面不管怎么表示,前面开头的比特数是一定的,只是根据选择进制不同,有不同的表现形式

固定为16时,如果为H表示,则用4位,用b表示,用16位

每位十六进制数字需要4位二进制数字表示,所以2位十六进制的位宽为8,8‘h11等价于8'b0001_0001

4'h1,一共4位二进制数。每个数字表示1位十六进制,即4位二进制数,等价于4’b0001

16'h4012,一共16位二进制数,每个数字表示1位十六进制数,即4位二进制数,一共4个数字,所以一共是4*4=16位,表示的二进制为0100_0000_0001_0010

若实际记录的比前面标定的位数多,比如4‘h1111,实际记录了16位,但是前面预计记录只有4位,此时读数时,只会从实际记录的最低位向高位截取记录的相应位数,即实际记录为4‘h1,等价于4’b0001

redundant冗余的,numeric literal数字的,文本 

specified指定的,numeric constant数字常量,specified base指定基数

?怎么在实际中传入多位宽的信号?

寄存器类型是reg,就是只有在满足always条件时才进行赋值,并且赋值完后具有记忆性,能在下次赋值前一直保持之前赋的值,

如果always@(*),里面是*,就表示一直满足条件,就会一直赋值,寄存的信号就和输入信号始终保持一致,就和assign没有什么区别

assign就是始终赋值,不保存信号,唯一的作用就是决定怎么赋值,实现一个对信号的处理,处理完后就直接传出去,不保存 

如果没有信号时,用assign,会使输出信号为0,而always就会输出上次不为0的信号

设计文件

仿真文件 

设计文件当中定义了一个参数,那么在声明与实例化时,也要表明这个参数的值,不然就是缺省信号,按计划值赋值 

创建IP核 

流程

1点这个

2.点这个,并展开

3.这样配置

4

5.之后就是一直点下面的next即可 

6.

7参数设置,有就整,没有就忽略

8.最后一步,生成

使用BOLCK DESIGN设计

1.创建IP核

即创建块设计中所需要的IP核

在这里的IP Catalog中可以看到已有的IP核

 2.创建bd设计文件

3.将Ip核放入bd文件里

重复这一过程,将不同或相同的块放入文件中

4.放置输入输出端口 

 放置好后就是连线

5.生成结果

相关文章:

10.14~10.15verilog操作流程与Block Design

后面的那个是延时精度 verilog文件结构 文件名称与写的模板没有关系,这个文件名为P1,但模板名为andgate 但是如果是仿真文件,就需要开头的模板名和仿真文件名相同 .v是源文件,设计文件 .v在设计与sim里都有,静态共享&#xff0…...

小解C语言文件编译过程【linux】

小解C语言文件编译过程【linux】 库动态库静态库 C语言文件 程序编译过程整体预处理编译汇编链接动态链接静态链接两种方法对比 库 看到标题是文件编译过程 但是开头却是库,这可不是挂羊头卖狗肉,而是因为库也是代码不可缺少的一部分,并且在…...

[Python]黑色背景白色块滑动视频

黑色背景白色块滑动视频,单帧效果如下: 配置参数 1920 1080 400 400 300 60 1920x1080.avi import numpy as np import cv2 as cv import os import syswidth 1920 height 1080 rect_szx 400 rect_szy 300 sz_y_init 400 fps 24width int(sys.a…...

【linux kernel】对linux内核设备的注册机制和查找机制分析

文章目录 1、简介2、device_initialize分析3、device_add分析4、总结 🔺【linux内核系列文章】 👉对一些文章内容进行了勘误,本系列文章长期不定时更新,希望能分享出优质的文章! 1、《linux内核数据结构分析之哈希表》…...

asp.net酒店餐饮管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net酒店餐饮管理系统是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言 开发 ASP.NE 酒店餐饮管理系统 二、功能…...

38_Nginx 启动流程

文章目录 src/core/nginx.cint ngx_cdecl main(int argc, char *const *argv) {ngx_buf_t *b;...

数据特征选择 | Lasso特征选择(Python)

文章目录 效果一览文章概述源码设计小结效果一览 文章概述 Lasso算法是一种经典的线性回归算法,被广泛应用于特征选择和降维问题。相较于传统的线性回归算法,Lasso算法能够在保持预测准确性的同时,自动筛选出对目标变量影响较大的特征变量,从而达到降低模型复杂度、提高泛化…...

最小覆盖子串[困难]

优质博文:IT-BLOG-CN 一、题目 给你一个字符串s、一个字符串t。返回s中涵盖t所有字符的最小子串。如果s中不存在涵盖t所有字符的子串,则返回空字符串"" 。 对于t中重复字符,我们寻找的子字符串中该字符数量必须不少于t中该字符数量…...

保姆级搭建Mysql 并进行视图可视化操作

安装MySQL数据库 选择mysql5.7.36_x32.msi”,双击运行,如下图所示: 在此窗口中,选择“Custom”选项,点击“Next>”进入下一步; 在此窗口中,选择号下的MySQL Server 5.7.36 – x64&…...

设计模式的学习顺序

设计模式的学习顺序可以按照以下步骤进行: 掌握基础知识:先确保你对编程语言和软件开发的基本概念有深入的理解,包括面向对象编程、继承、多态等。学习常用设计模式:首先学习并理解一些常用的设计模式,例如单例模式、…...

数据结构和算法——树结构

二叉树 又叫二叉排序树。 节点是数量为,,n为层数。 满二叉树:所有的叶子节点都在最后一层。 完全二叉树:如果所有叶子节点都在最后一层和倒数第二层,而且每个叶子节点都有左右子节点。 完全二叉树 前序遍历 1、先输…...

【Java】Integer包装类

Integer:对基本数据类型 int 实现包装 方法名称说明public Integer(int value)根据 int 值创建 Integer 对象(JDK9以后过时)public integer(String s)根据 String 值创建 Integer 对象&#xf…...

Web后端开发登录校验及JWT令牌,过滤器,拦截器详解

如果用户名正确则成功进入 登录功能 代码 Controller Service Mapper 结果 若登录成功结果如下: 如果登录失败,结果如下 登录校验 为什么需要登录校验 有时再未登录情况下, 我们也可以直接访问部门管理, 员工管理等功能 因此我们需要一个登录校验操作, 只有确认用户登录…...

大语言模型迎来重大突破!找到解释神经网络行为方法

前不久,获得亚马逊40亿美元投资的ChatGPT主要竞争对手Anthropic在官网公布了一篇名为《朝向单义性:通过词典学习分解语言模型》的论文,公布了解释经网络行为的方法。 由于神经网络是基于海量数据训练而成,其开发的AI模型可以生成…...

zabbix内置宏、自动发现与注册

一、zabbix内置宏 1、概念: 在Zabbix中,内置宏是一种特殊的变量,通常用在 Trigger 名称和表达式中,引用有关监控对象的信息。 2、种类: {HOST.NAME} 主机名 {HOST.IP} 主机 IP 地址 {TRIGGER.DESCRIPTION} 触…...

Oracle与Mysql语法区别

database 一、数据类型二、update..select语句三、upsert语句四、常见函数五、自动更新列时间戳一、数据类型 OracleMysqlnumberint/decimal变长字符:varchar2varchardatedatetime/timestampinttinyint/smallint/mediumint/int/bigint二、update…select语句 Oracle update t…...

Jetpack:008-Icon与Image

文章目录 1. 概念介绍2. 使用方法2.1 Icon2.2 Image 3. 示例代码4. 内容总结 我们在上一章回中介绍了Jetpack中与Button相关的内容,本章回中主要I con与Image。闲话休提,让我们一起Talk Android Jetpack吧! 1. 概念介绍 我们在本章回中介绍…...

参数解析(牛客)

目录 一、题目 二、代码 一、题目 二、代码 #include <iostream> #include <vector> using namespace std;int main() {string s;getline(cin, s);int i 0;vector<string>ret;while (i < s.size()){if (s[i] )//遇到空格直接跳过{i;}else if (s[i] …...

Linux网络编程系列之服务器编程——阻塞IO模型

Linux网络编程系列 &#xff08;够吃&#xff0c;管饱&#xff09; 1、Linux网络编程系列之网络编程基础 2、Linux网络编程系列之TCP协议编程 3、Linux网络编程系列之UDP协议编程 4、Linux网络编程系列之UDP广播 5、Linux网络编程系列之UDP组播 6、Linux网络编程系列之服务器编…...

排序算法-基数排序法(RadixSort)

排序算法-基数排序法&#xff08;RadixSort&#xff09; 1、说明 基数排序法与我们之前讨论的排序法不太一样&#xff0c;并不需要进行元素之间的比较操作&#xff0c;而是属于一种分配模式排序方式。 基数排序法比较的方向可分为最高位优先&#xff08;Most Significant Di…...

Qwen3-ASR-1.7B在远程医疗场景:问诊语音实时转写+病历结构化输出

Qwen3-ASR-1.7B在远程医疗场景&#xff1a;问诊语音实时转写病历结构化输出 1. 远程医疗的语音识别挑战 远程医疗正在改变传统的就医方式&#xff0c;但语音沟通的准确性一直是关键挑战。医生在视频问诊中需要同时倾听患者描述、记录病情信息、并保持专业沟通&#xff0c;这对…...

计算机视觉算法工程师职业规划:从入门到专家的成长路径

计算机视觉算法工程师职业规划&#xff1a;从入门到专家的成长路径 【免费下载链接】cv_note 记录cv算法工程师的成长之路&#xff0c;分享计算机视觉和模型压缩部署技术栈笔记。https://harleyszhang.github.io/cv_note/ 项目地址: https://gitcode.com/gh_mirrors/cv/cv_no…...

DeepSeek专家模式是什么?从企业架构视角解析AI Agent自动化执行的落地全路径与避坑指南

【摘要】 站在2026年4月的时间节点回看&#xff0c;DeepSeek专家模式的正式上线标志着大模型从“对话工具”向“推理引擎”的质变。然而&#xff0c;作为一名深耕行业15年的企业架构师&#xff0c;我发现许多企业在引入DeepSeek专家模式后&#xff0c;依然面临“能思考、难执行…...

锂电池寿命预测避坑指南:Transformer模型参数调优全解析

锂电池寿命预测避坑指南&#xff1a;Transformer模型参数调优全解析 锂电池作为现代能源存储的核心组件&#xff0c;其寿命预测的准确性直接关系到设备可靠性和安全运营。传统预测方法往往受限于模型复杂度或数据质量&#xff0c;而Transformer模型凭借其独特的注意力机制&…...

中小企业必看:低成本搭建ISO 9001质量管理体系的5个关键步骤

中小企业必看&#xff1a;低成本搭建ISO 9001质量管理体系的5个关键步骤 在资源有限的中小企业环境中&#xff0c;质量管理常常被视为"奢侈品"——直到一次客户投诉或监管审查让管理者意识到其必要性。ISO 9001标准作为国际通用的质量管理框架&#xff0c;其实不必意…...

Oracle 19c RAC环境下备库node1 ADG异常、asm异常分析及处理

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

Live2D资源解析:突破格式壁垒的技术实战指南

Live2D资源解析&#xff1a;突破格式壁垒的技术实战指南 【免费下载链接】AzurLaneLive2DExtract OBSOLETE - see readme / 碧蓝航线Live2D提取 项目地址: https://gitcode.com/gh_mirrors/az/AzurLaneLive2DExtract 在游戏开发与数字内容创作领域&#xff0c;Live2D资源…...

Qwen3-Reranker-0.6B实战案例:新能源电池BMS日志与故障知识库匹配排序

Qwen3-Reranker-0.6B实战案例&#xff1a;新能源电池BMS日志与故障知识库匹配排序 1. 为什么BMS日志排查总像在大海捞针&#xff1f; 你有没有遇到过这样的场景&#xff1a;某款新能源汽车的电池管理系统&#xff08;BMS&#xff09;突然上报一条异常日志——“Cell_12_Volta…...

unittest 官方文档(Python 3)

unittest 官方文档(Python 3) 简体中文(最新稳定版)https://docs.python.org/zh-cn/3/library/unittest.html 英文(最新稳定版)Pythonhttps://docs.python.org/3/library/unittest.html 文档核心结构(中文) 概述:unittest 框架设计理念、核心概念(测试用例 / 套件…...

文墨共鸣功能全解析:StructBERT双塔/单塔架构怎么选?

文墨共鸣功能全解析&#xff1a;StructBERT双塔/单塔架构怎么选&#xff1f; 1. 理解文墨共鸣的核心功能 文墨共鸣是一个融合深度学习技术与传统美学的语义相似度分析系统。它能够判断两段中文文本在语义层面的相似程度&#xff0c;并以独特的水墨风格界面呈现结果。这个系统…...