自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小白蒋-材料转行芯片验证

工种号:[小白蒋],4年二本学校材料成型专业,3年双非一本材料工程专业,现在已转行芯片验证行业,分享学习经历。

  • 博客(161)
  • 资源 (4)
  • 收藏
  • 关注

原创 从2.3k到18k,材料专业同学的成长之路

我是小白蒋,4年二本学校材料成型专业,3年双非一本材料工程专业,现在已转行芯片验证行业。微信公众号:小白蒋,刚做,希望能给我个关注。逃离了7年材料坑我很庆幸,逃离了7年材料坑,已转行芯片行业,希望我的经历能给你点帮助!材料学强势的学校,材料专业面对就业也还是坑。不信的话,打开招聘网站,看到岗位待遇就知道了,跟其它专业,待遇相差天壤之别。我的背景回想到我本科,南京一所二本学校,四年材料成型专业。毕业后,只能去了一家模具厂,一开始让我跟着钳工,每天就是操作磨床,一整天都是站着在操作机器干活。但是来

2020-10-08 15:29:20 2091 4

原创 芯片验证学习-本地环境shell配置(包含tcshrc和cshrc配置)

tcshrc文件配置如下。

2023-08-18 13:51:38 408

原创 新人怎么学习ic验证,芯片验证怎么学习入门

新人怎么学习ic验证,芯片验证怎么学习入门!

2023-03-11 11:07:32 764 1

原创 自学IC验证,转行芯片验证,需要自学什么内容,怎么去学习?材料研究生转行

ic验证自学,应该学习哪些内容,学习芯片验证,应该掌握哪些技能?

2023-03-09 22:49:59 658

原创 【8】AMBA_SOC项目自学IC验证项目-仿真平台脚本使用讲解

ic验证学习,芯片验证平台脚本学习,python仿真脚本控制makefile,材料转行ic验证项目学习

2023-02-11 18:55:42 1481 6

原创 【7】AMBA_SOC项目IC验证自学项目-EDA知识讲解

Synopsys(新思科技),美国vcsCadence(楷登电子),美国有两大验证仿真工具。一个是IUS,一个是IES。IES是cadence现在的仿真工具,功能强大。代表工具,irun。Mentor Graphics(明导国际),德国西门子questasim。

2023-01-15 21:51:32 1534

原创 芯片验证自学-IC验证学习,覆盖率vdb文件怎么合并

比如 A case的覆盖率文件为 a.vdb,B case的覆盖率文件为 b.vdb,那么可以用下面指令合并生成新的覆盖率文件 merge.vdb。在用vcs仿真完成后,每个case都保存了覆盖率,怎么把多个case的覆盖率vdb文件进行合并。

2023-01-14 18:04:14 2679

原创 【6】AMBA_SOC项目需要验证的功能点提取

上一章节内容是规格书,也叫specification(一般都直接喊spec),一般是由设计提供的。拿到spec后,我们就开始列出其中需要验证的功能点,并跟设计review确认;支持axi 32位写操作;支持axi 64位读操作;支持sram 4k空间读写;支持wwdg模块:支持递减计数器;支持计数器值小于0x40复位;支持计数器值在窗口外产生复位;支持EWI功能;支持硬件wwdg;支持寄存器读写;这是我们学习这个项目所有需要验证的功能点;

2022-12-27 11:07:52 919

原创 【4】axi协议学习

Advanced extensible Interface(AXI)是为了满足高性能系统设计而定义的一套独立通道协议,首次是在2003年发布的AMBA3标准中出现,经历AMBA4,目前已经到达AMBA5版本。

2022-12-25 14:18:50 1130

原创 【5】AMBA_SOC项目规格书介绍

窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,看门狗电路在达到预置的时间周期时,会产生一个系统复位。在递减计数器达到窗口寄存器数值之前,如果7位的递减计数器数值(在控制寄存器中)被刷新, 那么也将产生一个系统复位。这表明递减计数器需要在一个有限的时间窗口中被刷新。WWDG最适合于需要Watchdog在一个精准的时序窗口响应的场景。

2022-12-25 13:58:32 1720 1

原创 python脚本,递归修改符合文件后缀的文件内容

【代码】python脚本,递归修改符合文件后缀的文件内容。

2022-12-20 22:51:25 197

原创 【3】APB协议学习

APB总线源自AMBA2.0,即ARM总线标准的2.0版本。AMBA目前已经更新到5.0版本,APB总线的功能也得到了扩充。APB总线最常见的场景就是完成IP的寄存器读写,简单、单一、高效、低功耗。APB的后续版本均是对APB初代版本的简单扩展,业界最常用的仍然是APB初代版本,即APB2.0下面这个图真的是经典中的经典,简单SoC中都是这种结构:下图是APB的三个状态,其中SETUP状态是APB总线的典型状态,有利于IP实现低功耗。写传输开始于地址、写数据、写信号和选择信号在时钟上升沿之后的全部改变

2022-12-08 11:04:45 458

原创 【2】AHB协议学习

AHB是为提出高性能可综合设计的要求而产生的AMBA总线。它是一种支持多总线主机和提高带宽操作的高性能总线。AHB传输包含两个截然不同的部分:地址相位,只持续单个周期;数据相位,可能需要多个周期。这通过使用Hready信号实现;下图表示了最简单的传输,没有等待状态:在这个没有等待状态的简单传输中:这个简单的例子演示了在不同的时钟阶段传输和数据相位是如何产生的。事实上,任何传输的地址相位在前一次传输的数据相位期间出现。这种地址和数据的交叠是总线传输通道的基本性质同时允许高性能的操作。同时仍然给从机足

2022-12-08 10:45:02 937

原创 【1】AMBA_SOC_WWDG项目介绍与说明-IC验证自学入门

2、本项目推出背景:1)很多之前咨询我的人,都已经学习了sytemverilog语言、UVM方法学,但是呢,没做过有价值的项目;2)有的人做过培训班的项目(SRAM和MCDF),但是呢,都是跟着视频学,特别对于转行,很多细节没学懂,一知半解;3)很多做器件或者没有那么相关专业的同学,有一定的基础,知道SRAM和MCDF项目写在简历上,都快成了扣分项,一直想找个好的更贴近公司实际使用的验证项目;基于上述一些点,我打磨了半年,推出了本项目,不夸张的说,这个项目不管对于转行还是在职的芯片验证工程师,学完的话

2022-12-07 23:11:14 1499

原创 pcie中文入门学习文档资料

13、PCIe扫盲——PCIe总线体系结构入门:http://blog.chinaaet.com/justlxy/p/5100053246。18、PCIe扫盲——PCIe总线物理层入门:http://blog.chinaaet.com/justlxy/p/5100053261。11、PCIe扫盲——PCIe总线基本概念:http://blog.chinaaet.com/justlxy/p/5100053225。

2022-09-29 16:27:12 883

原创 985 材料专业研究生年薪 20 多万也不少了吧,为什么还有那么多人劝退,转行能挣多少钱?

研究生3年材料工程专业,一大半同学,去了fab厂做工艺、设备岗位,缺点就是在车间,有的需要倒倒班,工资待遇基本是转行芯片设计公司的一半把。踏实做好现在,多问问,多看看,不要沉浸在自我认知里面,不要以为那么多人去转行是sha子。后面赶上红利后,我才发现,好工作,起始工资就很高,不会让你低,并且好工作没那么辛苦,不需要等以后,目前发展前景就很好。说实话,机械行业,都多少年了,现在基本都是夕阳产业了。2020年,我知道的材料做验证的,很多人30w+,2021年,今年很多材料应届生转行做验证,拿到了40w左右。

2022-08-25 11:26:39 11950 3

原创 进了985材料天坑,还刚得知转专业特别难,应该怎么办?

我依然记得我之前整理自己学习芯片验证的博客,最开始10块钱没人买,觉得贵,问我能不能免费,现在299块钱,还有人觉得贵,问我能不能免费,hhhh。可能咨询我问题的人加起来,都快上千人了,对于普通人,大多数人的选择永远是对的。有人会说,材料实验室,有的老师坑,一周干7天,一天10个小时没时间呀。小时候你就学过了,时间就像海绵里的水,挤挤总会有的,如果不挤,你凭什么抱怨生活的不公。知识对于想学习的人,永远是无价的,对于不想学习的人,你送给他,都是一毛不值。这时候,你可以问了,进了985天坑,应该怎么转行?

2022-08-25 11:23:15 571

原创 1、TCAM介绍

CAM是一种特殊的存储器。所谓CAM,即内容寻址存储器。CAM存储器在其每个存储单元都包含了一个内嵌的比较逻辑,写入CAM的数据会和其内部存储的每一个数据进行比较,并返回与端口数据相同的所有内部数据的地址。概括地讲,RAM是一个根据地址读、写数据的存储单元,而CAM和RAM恰恰相反,它返回的是与端口数据内容相匹配的地址。CAM的应用也比较广泛,比如在路由器中的地址交换表,CPU的Cache控制器(Tag阵列)等。它是从CAM的基础上发展而来的。一般的CAM存储器中每个bit位的状态只有两个,“0”或“1”,

2022-07-07 12:38:50 2755

原创 M7内核中一些信号整理

pc指针:u_cortexm7_wrapper.u_cortexm7integrationcs.u_cortexm7.u_top_sys.u_core.u_cm7_dpu.u_dpu_prog_flow.pc_ret_o[31:0]

2022-06-08 14:25:44 239 1

原创 i2c中主机发送模式示意图和波形图

说明:S=start, Sr=restart, P=stop, A=ack,NA=nack,EVx=event(当ITEVTEN=1时产生中断)EV5: SB=1,读SR1然后将地址写入DR寄存器将清除该事件EV6: ADDR=1,读SR1然后读SR2清除该事件EV8_1: TXE=1,移位寄存器空EV8: TXE=1,写DR寄存器清除该事件EV8_2: TXE=1,BTF=1,产生停止条件时由硬件清除EV9: ADDR10=1,读SR1然后写DR寄存器清除该事件Figure 4-4 Tran

2022-06-05 15:28:52 575

原创 i2c中一些寄存器的配置注意事项

下面是伪代码Trise寄存器的配置注意:reg16_write(`REG_I2C_TRISE, reg16_data);

2022-06-05 14:08:51 664

原创 i2c规格书spec介绍

I2C(inter-integrated circuit)总线接口连接微控制器和串行I2C总线。它提供多主机功能,控制所有I2C总线特定的顺序、协议、仲裁和时序。支持标准(Sm)、快速(Fm)。根据特定设备的需要,可以使用 DMA 以减轻 CPU 的负担。●并行总线/I2C 总线协议转换器● 多主机功能:同一接口既可做主设备也可做从设备● I2C 主设备功能− 产生时钟− 产生起始和停止信号● I2C 从设备功能− 可编程的 I2C 地址检测− 可响应 2 个从地址的双地址能力− 停止位检测

2022-06-05 13:50:59 713

原创 芯片验证学习-仿真中巧用$fdisplay函数,把一些debug信息打印在另外的log中

目录1、$fdisplay()函数说明:2、在项目中使用:a、先指定一个存放debug信息的log文件;b、把想打印的信息放在上面log里面去;1、$fdisplay()函数说明:$fdisplay(把数据写入到制定的文件中去)2、在项目中使用:a、先指定一个存放debug信息的log文件;fp = $fopen({`DIR_PATH, ".debug.log"});b、把想打印的信息放在上面log里面去;$fdisplay(fp, "the addr:%h", addr);.....

2022-05-28 08:08:50 888

原创 芯片验证工程师-后仿环境一些设置参考

目录1、反标SDF文件介绍:2、反标系统函数介绍3、反标在项目中实操1、反标SDF文件介绍:在SDF格式中可以指定固有延迟(intrinsic delays),互连延迟(interconnect delays),端口延迟(port delays),时序检查(timing checks),时序约束(timing constraints)和路径脉冲(PATHPULSE)。使用VCS读取SDF文件时,会将延迟值“反向标注(back-annotates)”到设计中,即在源文件中添加或者更改延迟值。2、反标系

2022-05-28 07:56:00 1104

原创 芯片验证工程师——脚本学习——vncconfig拷贝东西的时候,经常失效需要关闭重开的解决方案

目录需求:脚本文件展示:脚本代码展示:脚本执行:需求:当你打开vncconfig的时候,在linux跟windows之间拷贝东西,老是失效,需要关闭vncconfig在重新打开,有脚本解决嘛?脚本文件展示:脚本代码展示:脚本执行:python gen_vnc.py...

2022-05-15 09:51:34 668

原创 芯片验证工程师——C环境中常用的task定义

目录读出一个地址中的值:往一个地址中写值:写task:读task:sleep tasktest_passtest_fail读出一个地址中的值:int data;data = *(volatile uint32_t *)(0x20000004);往一个地址中写值:*(__IO uint32_t *)(0x20000004);写task:void cpu_write(int addr, int wdata){ *(volatile unsigned int *) addr =wdata;

2022-05-11 23:40:21 310

原创 芯片验证学习——systemverilog绿皮书代码运行讲解一

代码运行讲解1、书上代码2、用vcs运行代码2.1在terminal窗口输入 `g 1.sv`,复制下面代码:2.2在terminal窗口输入3、以后遇到代码就像2中一样这样搞;1、书上代码2、用vcs运行代码2.1在terminal窗口输入 g 1.sv,复制下面代码:module TEST; initial begin byte k[4][6]; foreach(k[i,j]) begin k[i][j] = i*10 + j; end fo

2022-05-07 18:46:08 2639

原创 为什么知乎上那么多材料专业劝退?

为什么要把这么多app放在一起比较,你知乎每个app的关注点吗,说句不好听的话,虽然知乎上人均985是装逼,但是平均学历起码是这几个app最高的。到目前为止,还是有很多人遇到不了解的某方面专业知识,还是会来知乎搜,你会去贴吧搜吗?我也觉得知乎是我用过的所有app中,价值含量最高的,可以帮我拓宽视野、了解专业就业前景,说句不太好听的话,其它的app都可以归结为”奶头乐“。你基本用其它app都是在消遣娱乐。知乎实打实带来很多有价值信息,我从研究生就开始刷知乎,那时候刷霍叔等大佬,也让我提前就非常确定要转行

2022-05-02 13:51:06 1324

原创 芯片验证工程师-systemverilog中系统函数补充讲解

systemverilog中系统函数讲解系统函数$fopen作用?系统函数$fscanf作用?系统函数$feof作用?系统函数$fclose作用?举例讲解1:结果展示:系统函数$fopen作用?打开文件系统函数$fscanf作用?读取文件内容;系统函数$feof作用?判读文件是否读完;系统函数$fclose作用?关闭文件;举例讲解1:比如有一个文件1.sv命令行敲入g tb.sv,复制下面代码:module TEST(); integer file; string var

2022-04-23 23:03:05 1100

原创 芯片验证工程师自学——SystemVerilog学习1——数据类型和定宽数组

学习背景:因为我本身是材料专业的本科+研究生,所以更知道完全0基础的人,该怎么去学习这种抽象的类似编程的学习。所以完全从非科班的角度去带领大家去学习芯片验证,本文针对所有完全0基础的人去学习Systemverilog语言。本人从事芯片验证工程师两年,如果文中有地方说的不对,欢迎留言交流。语言背景:之前也有很多材料专业想转行的同学问我,要不要学习verilog,我的回答是,这种转行的,你更应该关注的”应试技能“,因为芯片验证工程师可以不会verilog,但是不能不会systemverilog。(我自

2022-04-23 12:43:32 782

原创 芯片工程师-补充知识学习2-bit、byte和word的讲解

目录背景:基本概念:举例:问题1:例如一个8K空间内存,等于多少个word?问题2:如果 8 k空间的起始地址是 `0x2000_0000`,那么结束地址是多少呢?背景:因为我自己也是完全的非科班转行,0基础的学习的,所以知道很多跟我一样的同学,对一些基础知识但是肯定会用到的知识不了解,比如今天要讲的bit、byte、word。基本概念:bit:也叫比特,是二进制单位( binary unit)的缩写,它的值是0和1;byte:也叫字节,在计算机中,约定好了,1byte=8bit,就跟1cm=10

2022-04-23 12:00:57 1278 3

原创 【牛客Verilog快速入门】基础语法代码和仿真代码演示 VL4 移位运算与乘法

VL4 移位运算与乘法 题目:描述:信号示意图:波形示意图:输入描述:输出描述:解答:设计代码实现:验证平台实现:makefile脚本实现:仿真看波形:题目:描述:已知d为一个8位数,请在每个时钟周期分别输出该数乘1/3/7/8,并输出一个信号通知此时刻输入的d有效(d给出的信号的上升沿表示写入有效)信号示意图:波形示意图:输入描述:输入信号 d, clk, rst类型 wire在testbench中,clk为周期5ns的时钟,rst为低电平复位输出描述:输出信号 input_

2022-04-22 12:23:24 312

原创 【牛客Verilog快速入门】基础语法代码和仿真代码演示 VL3 奇偶校验

VL3 奇偶校验题目:描述:信号示意图:波形示意图:输入描述:输出描述:解答:设计代码实现:验证平台实现:makefile脚本实现:仿真看波形:题目:描述:现在需要对输入的32位数据进行奇偶校验,根据sel输出校验结果(1输出奇校验,0输出偶校验)信号示意图:波形示意图:输入描述:输入信号 bus sel类型 wire输出描述:输出信号 check类型 wire解答:1、简单理解奇偶校验奇校验:原始码流+校验位 总共有奇数个1偶校验:原始码流+校验位 总共有偶数个

2022-04-21 22:09:35 227

原创 【牛客Verilog快速入门】基础语法代码和仿真代码演示 VL2 异步复位的串联T触发器

作者:小白蒋7年材料专业转行芯片验证,两年芯片验证工作经验。VL2 异步复位的串联T触发器题目:描述:输入描述:输出描述:解答:设计代码实现:验证平台实现:makefile脚本实现:仿真看波形:题目:描述:用verilog实现两个串联的异步复位的T触发器的逻辑,结构如图:## 波形示意图:输入描述:输入信号 data, clk, rst类型 wire在testbench中,clk为周期5ns的时钟,rst为低电平复位输出描述:输出信号 q类型 reg解答:设计代码实

2022-04-21 17:06:27 597

原创 【牛客Verilog快速入门】基础语法代码和仿真代码演示 VL1 四选一多路器

作者:小白蒋7年材料专业转行芯片验证,两年芯片验证工作经验。目录题目:信号示意图:波形示意图:输入描述:输出描述:解答:设计代码实现:验证平台实现:makefile脚本实现:仿真看波形:题目:制作一个四选一的多路选择器,要求输出定义上为线网类型状态转换:d0 11d1 10d2 01d3 00信号示意图:波形示意图:输入描述:输入信号 d1,d2,d3,d4 sel类型 wire输出描述:输出信号 mux_out类型 wire解答:设

2022-04-21 16:06:00 1384

原创 验证工作中,python语言使用场景1:生成固定格式数据文件

wechat:jianfuk背景介绍:验证工作中,python语言使用场景1:生成固定格式数据文件;如下所示:我们一个model需要提前加载一个文件进来,但是文件的数据格式如下:@00000000 0@00000000 0@00000000 1@00000000 1@00000000 0@00000000 1@00000000 0python语言代码演示:在命令行敲入g 1.pyimport randomfor i in range(8192): a = "@%08d

2022-04-18 20:47:23 539

原创 验证环境中,常用task一些整理

作者:小白蒋wechat:jianfuk场景需求:在一些case里面,我需要等待一个状态表示位起来,如果不起来我就等待一段时间报错。用到的systemverilog语法:fork_join_any, break, forever代码:task sequence::wait_op_done(output bit[31:0] rdata, input int unsigned poll_interval=100, int unsigned timeout=2000); fork:proc_wa

2022-04-18 14:00:26 464

原创 芯片工程师-补充知识学习1-二进制十六进制学习

作者:小白蒋,公众号:小白蒋,7年材料专业学长转行芯片验证。因为最近,跟很多粉丝聊天,了解到,其中有很多人,一点基础没有,包括二进制数都没接触过,所以今天整理了一篇二进制数讲解。相信大家都知道,对于计算机,cpu只识别0和1两个值,所以在计算机里面,会用到二进制数。那么二进制数和十进制数,是怎么转换呢?二进制十进制001110211310041015110611171000810019101010

2022-04-17 19:35:25 1029

原创 【uart篇】synopsys uart vip配置使用

作者:小白蒋本文主要记录下,synopsys uart vip如何配置使用?首先是 uart_configuration.sv 文件,直接继承自 uart vip agent configuration;class uart_configuration extends svt_uart_agent_configuration; `uvm_object_utils(uart_confiration) function new(string name="uart_configuration");

2022-03-23 16:06:36 4116 6

原创 验证环境中定义宏,简化工作量

`define TC_CASE(tc_name, seq_name) \class ``tc_name`` extends base_test; \ `uvm_component_utils(``tc_name``) \ function new(string name = "``tc_name``", uvm_component parent); \ super.new(name, parent); \ endfunction \ function void build_phase(uvm_

2022-03-17 16:18:11 500

vim编辑器,gvim插件,linux系统中插件

支持w+s打开上下栏,v+t打开左侧栏,w+c关闭一个窗口

2022-08-25

2018年第十四届研究生数学建模B题优秀论文.rar

2018年第十四届研究生数学建模B题优秀论文,有8篇优秀论文,欢迎大家下载,好好学习优秀论文套路,祝大家都获奖!

2020-04-28

2019年第十六届研究生数学建模竞赛E题~F题的题目.rar

2019年第十六届研究生数学建模竞赛E题~F题的题目,原题和题目附带的数据资料,没有答案,只有原题,需要的可以下载,有E题、F题

2020-04-28

2019年第十六届研究生数学建模竞赛A题~D题的题目.rar

2019年第十六届研究生数学建模竞赛A题~D题的题目,原题和题目附带的数据资料,没有答案,只有原题,需要的可以下载,有A题、B题、C题、D题

2020-04-28

2017年数学建模F题优秀论文

第十届数学建模F题,优秀论文,可以分享,真实有效,谢谢下载

2018-09-05

空空如也

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

TA关注的人

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