UVM验证该去大公司还是中型公司呢?

无论是UVM验证还是系统C验证亦或是其它,大公司的普遍特点是做过多层封装、已经准备好轮子、各式各样的工具库。如果一毕业就进大公司,那你会在UVM等基础之上再学习公司封装的那部分工具、脚本或者是库,一旦掌握以后你接下来将会脱离一些初级的工作内容,简单来说这部分内容公司已经从效率的角度着手统一且优化过了,你只需要填写若干参数、让它构建好再进行二次开发就可以了。大公司的利益点是需要每个人都在其岗位上乘以效率参数以后进行工作的,这对于大公司机器是有显著好处的。

但有时候坏也坏在这一点,因为当你习惯每次出门都脚踩风火轮时候,你以为你生下来就是三太子转世金身护体的。大公司在流程、工具、脚本等多个层面都有多年积累,可以让你舒舒服服地留在这家公司,每天摸摸鱼也能把工作搞定,再鼓励你做做工作改进,于是这样的层层裹裹的封装就越来越厚,以至于有的时候你还需要捋一捋哪些内容是通识、标准、IP、基础技术,哪些知识又是仅限于这家大公司的环境、流程、自研、未公开技术。如果要考虑以后跳槽,从大公司到大公司,你大概见过了猪跑也吃过猪肉,换家公司也能较快适应。但如果从大公司到小公司,那么你可能需要自己养猪才能吃到猪肉,但这个养猪的过程未必是你想做或者能做的了的。

再换到一家中型公司,是按照他的规模还是按照他成立的时间,这里假定规模和成立时间都已满足中型公司吧,那么他也会有自己的流程、工具,只是可能没有大公司那么好用,毕竟做这些CAD相关工作是需要专门的人力和资深经验的。如果公司缺少CAD工程师,那中型公司往往会由工程师从工作实际出发来做一些点状的流程、工具、脚本来弥合日常工作需要。一句话,用倒是也能用的,就像BYD还没有出爆款汉之前,还找不到车型对标特斯拉的Model3。处在中型公司时期,每个组都已经有意识要做提高效率的事情了,但就是公司整体没有到达一个阶段就跟华为当年斥巨资师从IBM一样,就像每块田地都在改良种植,但下的不是一盘棋。这种肯定要好过小公司、初创公司的原始积累阶段,毕竟有一定时间可以做做提高效率的事情,但做为新人加入这些公司的话,要多留意公司做得好的地方和还有待完善的地方。

在这样的中型公司,你只要肯思考挖掘,一定有你能扎钉子将想法实现的地方,有一定的灵活度,即便你不是CAD只要你有想法,你也能从框架到实现再到方案推广,将你的代码遗产留在这家公司,这往往是大公司不会带给你的另外一种成就感。此外,中型公司的流程、工具、脚本这些东西也没有嵌套得太深以至于爹妈都不认识的程度,所以你还有机会去一层层剥开,去理解它的实现细节,借鉴它的思想,再将它转换为你的东西。

大公司在代码层面会有framework、layered methodology、coding style,小公司往往没有这些,而中型公司的话可能有一部分在里头,比如有的公司会有framework,有的公司会基于UVM之上推一套自己的layered package,也有的公司要求在测试中访问寄存器、激励、数据比较等步骤按照一定的编码风格。又或者有的中型公司不同的验证组之间,各有各的工具箱,互不干涉但也较难跨部门最终统一起来。

那作为一个新人,在对以上的点难有一个全面理解的情况下,还是更推荐去大公司,知道某家大公司的框架大致是什么样的,这样即便2-3年后换到某家中小公司,也能知道以前自己每天的工作中提取测试点、写测试平台、实现测试用例、调试设计和验证代码各用去多少时间,这个比例是否换了一家公司以后有较大的比例变化。比如写测试平台、调试测试平台甚至调试流程、环境都用去更多的时间,那么这部分增重就是工作环境不稳定所导致的。知道了问题出在哪里,才有机会在工作稍有闲暇的时候做一些优化,即便享受到这个便利的人一开始只有你,但你也减少了加班时间。

如果一个新人进了一家公司,尽管芯片产品已经有系列推出了,但内部设计、验证的流程还多有不足的情况下,他往往需要疲于奔命做项目,而又找不到哪里出问题了,甚至他可能觉得加班就是新人的宿命,但其实他有机会看看猪跑的。

对于大公司而言,法治大于人治的地方占主要比例,年轻人遇到不懂的地方,有很多文档可以去看去琢磨,而后才是去问老同事整个事情脉络;对于中型公司而言,从效率上面会比小公司、初创公司要好,但你懂得,能用和好用之间还差着许多的一点点,这些一点点也是逐步改善的工程问题,或者全局统筹的推倒重来。新人很难意识到这中间的差别,但他一定有机会在大、中、小公司之间游梭一轮。等到那个时候,就能理解大、中、小公司的差异了,但对新人而言,有机会去大厂的,还是先去打打螺丝,见见世面蛮好的。

至少,咱们能知道抖音小红书上讲的芯片,和实际上要参与复杂工程的芯片,简直就不是一个东西好吧……所以呢,从新人规范做事方法来看,毕业先去大厂打工有普遍的意义所在,在芯片、验证、乃至UVM这个点上来看,背后的逻辑都是一样的。

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

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

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

相关文章

法律文件智能识别:免费OCR平台优化数字化管理

一、系统概述 在法律行业,纸质文件的数字化需求日益迫切,合同、判决书、协议等文件的管理成为法律部门的一大难题。传统手动输入不仅耗时,且易出错。思通数科的OCR识别平台应运而生,以其开源、免费的特性为法律文档管理提供了智能…

koa + sequelize做距离计算(MySql篇)

1.核心思路 1.利用sequelize的fn方法调用MySql原生函数(st_distance_sphere、point) 2.这里利用到了MySql的原生函数,不懂可以去看看mysql的函数知识 2.核心代码 //st_distance_sphere、point函数用来计算当前经纬度和目的地经纬度 //col…

小程序分包看完这一篇秒懂

前言 在小程序开发中,分包是一种优化加载时间和用户体验的方法。通过将小程序拆分成多个包,可以按需加载,从而减少首次加载时间。很多刚涉及小程序开发的小伙伴对小程序分包都相对茫然或者头疼。也不知道该合适进行分包,怎么进行…

第02章 MySQL环境搭建

一、MySQL的卸载 如果安装mysql时出现问题,则需要将mysql卸载干净再重新安装。如果卸载不干净,仍然会报错安装不成功。 步骤1:停止MySQL服务 在卸载之前,先停止MySQL8.0的服务。按键盘上的“Ctrl Alt Delete”组合键&#xff0…

1.探索WebSocket:实时网络的心跳!

序言 你可能听说过"WebSokcet"这个词,感觉它好像很高深,但其实它是一个超级酷的小工具,让我们在Web应用里实现实时通信。想象一下,你可以像聊天一样,在浏览器和服务器之间来回“畅聊“,没有延迟…

Qt6 CMake 中引入 Qt Linguist 翻译功能

qt cmake 使用自带翻译工具配置步骤 创建Qt CMake 程序大体流程配置项目 CMake 及 代码使用流程最终CMake 如下最终工程链接为:参考 创建Qt CMake 程序 大体流程 配置项目 CMake 及 代码 在CMake 中添加如下代码, 导入相关的翻译库 find_package(QT NAMES Qt6 Qt…

【Linux】——如何安装g++

g的安装 sudo yum install -y gcc-c

FET113i-S核心板已支持RISC-V,打造国产化降本的更优解 -飞凌嵌入式

FET113i-S核心板是飞凌嵌入式基于全志T113-i处理器设计的国产工业级核心板,凭借卓越的稳定性和超高性价比,FET113i-S核心板得到了客户朋友们的广泛关注。作为一款拥有A7核RISC-V核DSP核的多核异构架构芯片,全志科技于近期释放了T113-i的RISC-…

基于python的机器学习(二)—— 使用Scikit-learn库

目录 一、样本及样本划分 1.1 划分样本的方法 1.1.1 train_test_split()函数 1.1.2 时间序列划分 1.1.3 交叉验证 二、导入或创建数据集 2.1 导入Sklearn自带的样本数据集 2.2 利用Sklearn生成随机的数据集 2.3 读入自己创建的数据集 2.3.1 用Python直接读取文本文件…

【LQB15_模拟】C风险对冲

Description 小蓝所在的蓝星集团即将建立执行一个重要的项目,在建立项目的时候需要考虑执行这个项目对集团的风险。他们组有三个备选方案,方案A的风险评估值为a,方案B的风险评估值为b,方案C的风险评估值为c。方案风险评估值越低&…

第二十八章 Vue之自定义指令

目录 一、引言 二、自定义指令的注册和使用方式 2.1. 自定义指令-全局注册使用 2.2. 自定义指令-局部注册使用 三、自定义指令完整代码 3.1. 自定义指令全局注册/使用 3.1.1. main.js 3.1.2. App.vue 3.2. 自定义指令局部注册/使用 3.2.1. main.js 3.2.2. App.vue …

银行信贷知识竞赛活动策划方案

为了落实20xx年省分行工作会议精神,进一步加强信贷队伍建设,普及和强化员工对信贷业务知识的掌握和运用,提高信贷从业人员素质,推动全省农行20xx年员工成长计划实施,实现我行全面提升信贷管理水平,促使信贷…

【学术论文投稿】探索嵌入式硬件设计:揭秘智能设备的心脏

【IEEE出版】第六届国际科技创新学术交流大会暨通信、信息系统与软件工程学术会议(CISSE 2024)_艾思科蓝_学术一站式服务平台 更多学术会议论文投稿请看:https://ais.cn/u/nuyAF3 目录 引言 嵌入式系统简介 嵌入式硬件设计的组成部分 设…

谷歌浏览器报“喔唷,崩溃啦!”怎么办?

表现 Chrome浏览器所有页面崩溃,“喔唷,崩溃啦!( STATUS_INVALID_IMAGE_HASH )” 原因 Google 在79版本(2019年12月20号左右)的更新中又重新启用了Renderer Code Integrity Protection(渲染器代码完整性保…

双因子认证(Two-factor authentication)简介

一、核心概念 双因子认证(Two-Factor Authentication,简称2FA)是一种身份验证机制,它要求用户提供两种不同类型的证据来证明自己的身份,通常包括用户所知道的(如密码)、用户所拥有的&#xff0…

vue3项目中实现el-table分批渲染表格

开篇 因最近工作中遇到了无分页情景下页面因大数据量卡顿的问题&#xff0c;在分别考虑并尝试了懒加载、虚拟滚动、分批渲染等各个方法后&#xff0c;最后决定使用分批渲染来解决该问题。 代码实现 表格代码 <el-table :data"currTableData"borderstyle"wi…

11.Three.js使用indexeddb前端缓存模型优化前端加载效率

11.Three.js使用indexeddb前端缓存模型优化前端加载效率 1.简述 在使用Three.js做数字孪生应用场景时&#xff0c;我们常常需要用到大量模型或数据。在访问我们的数字孪生应用时&#xff0c;每次刷新都需要从web端进行请求大量的模型数据或其他渲染数据等等&#xff0c;会极大…

【HarmonyOS】引导用户跳转APP设置详情页开启权限

【HarmonyOS】引导用户跳转设置APP详情页开启权限 前言 众所周知在鸿蒙应用中&#xff0c;向用户申请权限时&#xff0c;会弹出系统请求授权的弹框。当用户拒绝了你申请的权限&#xff0c;弹框会直接关闭。当下次触发同样的权限申请&#xff0c;会直接返回失败&#xff0c;不…

深入理解Transformer中的位置编码

1 位置编码的作用 由于注意力的作用机制&#xff0c;不论输入序列的顺序如何&#xff0c;输出结果都是一样的。 也就是丢失了位置信息。 但是对于语言模型&#xff0c; 我们都知道顺序是很重要的&#xff0c; 所以需要对输入序列额外注入位置信息。 2 位置编码方式 Transfor…

MySQL分区表(二)

说明&#xff1a;之前有写过一篇博客&#xff0c;介绍MySQL如何建立分区表&#xff0c;本文介绍如何建立子分区表。子分区&#xff0c;就是在原来分区的基础上&#xff0c;再嵌套一个分区。 例如&#xff0c;按照记录的创建时间分区&#xff0c;在此基础上&#xff0c;再按照租…