自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 IC验证秋招笔记

虚方法就是一个基本的多态结构,在父类中使用virtual定义的方法和函数,父类句柄在指向子类对象时,可以动态索引到子类重写的子类方法。理解:当需要决定调用哪个虚方法时,SV会根据对象的类型,而非句柄的类型决定调用什么方法。这句话的理解是:即,当父类A定义了一个virtual method(),子类B中重写了方法method()。子类B例化后有个句柄b指向子类对象,将子类句柄b赋值给父类句柄a,即 a = b。

2022-09-06 22:21:55 747

原创 详细介绍竞争与冒险

在组合电路中,某一输入变量经过不同途径传输后,到达电路中某一汇合点的时间有先有后,这种现象称竞争;由于竞争而使电路输出发生瞬时错误()的现象叫做冒险。或者说由于竞争产生的毛刺叫做冒险。F=AA' 或 F=A + A'观察以下门电路,Gate1为 非门,Gate2为 与门,实现了逻辑理想情况下输入与输出的关系为:但是由于门电路的输入到输出是一定会有时间延迟的,就会导致这个时间通常叫做电路的开关延迟,出现以下毛刺。(Gate1输入到输出有一定的延迟,导致 ~A信号就会滞后于A一段时间)...

2022-08-27 18:00:27 16930 1

原创 关于宏`uvm_info和$display的区别

$display可以直接打印一条文本信息,并在每一次$display执行后会自动换行,比如:打印结果: `uvm_info的功能与$display语句的功能相似,但比display更加灵活,以下是`uvm_info的格式:`uvm_info有以下三种格式: 第一个参数是字符串,用于把打印的信息归类。第二个参数也是字符串,是具体需要打印的信息,第三个参数则是冗余级别。冗余级别为UVM_LOW,表示信息非常关键,冗余级别为UVM_HIGH,表示信息可有可无,UVM_MED

2022-08-26 20:27:32 3465

原创 UVM—virtual sequencer and virtual sequence详解

在UVM里Sequence层次化这一块是重点也是难点,这里主要介绍virtual sequence。对于顶层的测试环境, 测试序列所要协调的不再只是面向一个sequencer的sequence群,而是要面向多个sequencer的sequence群, 面向不同sequencer的sequence群如何挂载到不同的sequencer上呢?这就需要用到virtual sequence和virtual sequencer来解决。............

2022-08-26 00:04:04 3220

原创 5、Verilog Language - More Verilog Features

给定四个无符号数,求最小值。无符号数可以与标准的比较运算符(a < b)进行比较。使用条件运算符组成双向最小电路,然后组合几个组成四路最小电路。你可能需要一些线向量作为中间结果。

2022-08-22 18:34:43 391 1

原创 IC秋招System Verilog 116道题目及答案

foreach中对a[i]分别赋值1~10,但因为a只有1bit,所以截取1~10的最后一位,就成了0和1交替的数组,a = '{0,1,0,1,0,1,0,1,0,1}. 对一个单bit的数组求和,结果也是单bit,所以直接显示 a.sum ,或者 b=a.sum。下面选项中,关于时钟块的说法错误的是()?1、logic类型只能有一个驱动,所有信号都声明为logic而不是reg或wire,如果存在多个驱动编译时就会报错,当然,若需要多个驱动,如双向总线,这些信号就需要被定义成线网类型,如wire。

2022-08-18 15:21:03 9518 3

原创 关于`timescale命令的作用以及时间精度的理解

timescale命令绝大部分人都不陌生,多多少少都见过,但仍然存在许多我们需要注意的地方。`timescale命令是用来说明该命令后的模块的时间单位和时间精度。仿真时间延迟时间精度程度。在使用`timescale时,前面为"`",在键盘左上角,数字键“1”前的按键,英文状态下可按出,并不是单引号‘,别被迷惑了。如果按错了,编译时就会问题!...

2022-07-23 00:11:54 12931 3

原创 简单理解锁存器和触发器的主要区别

锁存器(latch)在电平信号的作用下改变状态,。锁存器的数据存储动作取决于输入使能信号的电平值,仅当锁存器处于使能状态时,输出数据才会随着数据输入发生变化,否则处于锁存状态。

2022-07-18 10:37:43 20404

原创 4、Verilog Language-Procedures

HDL Bits答案,Verilog Language-Procedures章节

2022-07-17 19:53:34 660

原创 3、Verilog Language-Modules:Hierarchy

只要使用的所有模块都属于同一个项目(这样编译器就知道在哪里找到模块),就可以通过在模块内部实例化一个模块来创建模块的层次结构。一个模块的代码不能在另一个模块的主体中编写(不同模块的代码不是嵌套的)。......

2022-07-16 17:37:52 485

原创 2、Verilog Language-Vectors

矢量用于使用一个名称对相关信号进行分组,以使操作更方便。例如导线[7:0]w,声明一个名为w的8位向量,它在功能上等价于拥有8条独立连线。注意,vector的声明将维数放在vector的名称之前,这与C语法相比是不一样的。...

2022-07-15 23:58:14 388

原创 1、Verilog Language-Basics

与物理导线不同,Verilog中的导线(和其他信号)是定向的,既具有方向性,这意味着信息只向一个方向流动,从驱动程序流向接收器。在Verilog“连续赋值”(assign left_side = right_side;)中,右边信号的值被驱动到左边的连线上。赋值是“连续的”,左边的值会随着右边的值变化而变化————————————————版权声明:本文为CSDN博主「Black-S」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.c

2022-07-15 20:22:14 619

原创 简单理解StringAOP

目录1、引用AOP原因2、什么是AOP3、AOP优点4、AOP应用场景5、AOP实现方式6、AOP基本术语6.1 Joinpoint(连接点)6.2 Pointcut(切入点)6.3 Advice(通知/增强)6.4 Introduction(引介)6.5 Target(目标对象)6.6 Weaving(织入)6.7 Proxy(代理)6.8 Aspect(切面)1、引用AOP原因​ 介绍AOP之前,我们首先来了解什么是...

2022-05-09 23:14:18 701

原创 简述MySQL事务的特性以及隔离级别

目录1、什么是事务2、事务的特性3、事务的隔离性3.1、常见的并发异常3.1.1 丢失更新(写问题)3.1.2 读问题3.2、事务的隔离级别1、什么是事务事务就是由N步数据库操作序列组成的逻辑执行单元,这系列操作要么全部执行,要么全部放弃执行。当在数据库中更改数据成功时,在事务中更改的数据便会提交,不再改变。否则,事务就取消或者回滚,更改无效。2、事务的特性简单介绍一下事务的特性(ACID),分别指的是原子性(Atomici...

2022-05-06 21:21:11 640

原创 项目启动后网页显示“Please sign in”的解决方案

问题:在启动项目的时候,会莫名其妙的进入Please sign in页面!如下图原因:根据IDEA控制台的信息,发现存在一个security password,如下代码,由此可知这是进入了一个安全拦截页面,既SpringSecurity认证授权页面。因为SecurityAutoConfiguration是Spring Boot提供的安全自动配置类,也就是说它自动集成了SpringSecurity。Using generated security password: 68bbcae8-b24d-404

2022-05-05 11:27:32 7066 3

原创 关于StringUtils里isEmpty方法和isBlank方法

目录一、前言二、isEmpty方法三、isBlank方法四、结论一、前言StringUtils 的操作对象是 Java.lang.String 类型的对象,是 JDK 提供的 String 类型操作方法的补充,输入的 String参数 为 null 也不会抛出 NullPointerException异常 ,而是做了相应处理,例如,如果输入为 null 则返回也是 null 等,具体可以查看源代码,在实际工作中,我们需要对字符串进行一些校验,比如:是否为 null,是否为

2022-05-04 13:02:39 15477 1

原创 IDEA配置Git,以GitHub远程仓库为例

1、选择Setting,打开Version Control,点击Git找到git安装路径,应用Apply,点击ok2、配好git以后现把项目初始化,然后把项目添加到本地仓库2.1 因为操作的是整个项目,所以先选中整个项目的根目录,VCS中选中create git repository,创建git仓库,进行初始化操作2.2 红色,表示初始化好了,且idea会自动的将代码添加到了本地仓库中去2.3 检查,项目路径下若有git生成,确实进行了初始化以及添加的行为注:“添..

2022-04-27 22:01:27 12764

原创 @RequestParam注解的基本概念

一、@RequestParam的作用:将请求参数给绑定到控制器的方法参数上去二、@RequestParam的三个属性:语法规则:@RequestParam(value=“参数名”,required=”true/false”,defaultValue=””)三个属性:value 请求参数的参数名,作为参数映射名称; required 表示该参数是否必填,默认为true,当设置成true时,如果请求路劲没有传入该参数,则会报错; defaultValue 默认参数值,如果...

2022-04-19 16:50:48 1318

原创 如何简单理解Spring的IOC

IOC,全称Inversion of Control,即控制反转的意思,是一种设计思想,IOC意味着我们将设计好的对象交给容器来进行控制,而不是像以前那样在对象内部直接控制。例如以前,A想调用B的方法,就必须获取B的实例,即通过创建对象B b = new B(),这样A就可以调用b对象进行控制了,这相当于“正向”控制,即A➡B。而控制反转就是A调用B时不需要主动获取B的对象,但需要C将B主动送给A,即B➡C➡A。举个栗子:假如有一天你在家很饿想吃份晚餐,那么你可以自己找点零食吃,本来没啥问题,但

2022-04-18 22:30:07 400

原创 Session和Cookie主要的区别

Cookie 和Session都是用来跟踪浏览器用户身份的会话方式,但是两者的应用场景不太一样。一、工作原理1、Cookie(1)浏览器端第一次发送请求到服务器端(2)服务器端创建Cookie,该Cookie中包含用户的信息,然后将该Cookie发送到浏览器端(3)浏览器端再次访问服务器端时会携带服务器端创建的Cookie(4)服务器端通过Cookie中携带的数据区分不同的用户2、Session(1)Session是基于Cookie实现的。浏览器端第一次发送请求到服务器端,服务器.

2022-04-12 22:06:58 1713 4

原创 com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. at sun.reflect.GeneratedConstructorAccessor36.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(.

2022-04-10 16:50:24 1487

原创 底层看String、StringBuilder与StringBuffer的区别

1、可变性String是不可变的,而StringBuffer和StringBuilder是可变的 为什么String不可变? public final class String implements java.io.Serializable, Comparable<String>, CharSequence { private final char value[];}首先,String类被private修饰,外部类不能访问Stri...

2022-04-09 13:44:08 703 1

原创 toCharArray()方法和 split()方法

toCharArray()方法,就是将字符串对象中的字符转换为一个字符数组。toCharArray是将String对象的每一个下标位的对象保存在char[]中,比如:String s = "www.123.com"; char[] ch = s.toCharArray(), 这个ch保存的信息就是['w','w','w','.',1','2','3','.'c','o','m']。String s = "www.123.com"; char[] ch = s.toCharArray

2022-04-06 16:34:44 3121

原创 Dao层、Service层和Controller层之间的关系

主要思想是面向接口编程。表示层调用控制层,控制层调用业务层,业务层调用数据访问层。是为了解耦和、提高代码复用。Dao层Dao层主要做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此Dao层的设计 设计Dao层的接口 在Spring的配置文件中定义此接口的实现类 在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类显得结构非常清晰,Dao层的数据源配置,以及有关数据库连接参数都在Spring配置文件中进行配置。Dao接口中的方......

2022-04-06 10:35:02 7144 1

原创 [java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/

IDEA中报错:[java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader) previously initiated loading for a different type with name "javax/servlet/http/HttpServletRequest"] with root cause 这是因为容器所...

2022-04-02 21:28:16 7852 4

原创 Stack类的push和add方法的区别?

Stack类的push和add方法的区别

2022-04-01 07:46:40 1635

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除