【有芯职说】数字芯片BES工程师
一、 数字芯片BES工程师简介
今天来聊聊数字芯片BES工程师,其中BES是Back End Support的缩写,就是后端支持的意思。其实这个岗位是数字IC前端设计和数字IC后端设计之间的一座桥,完成从寄存器传输级设计到具体工艺的mapping和实现。这个岗位在不同的厂叫法不同,例如数字芯片前端流程工程师、数字IC设计流程工程师、数字IC设计中端工程师、数字电路前端asic flow工程师等,都是指的这个岗位角色。
当然,分工这么细,都是大厂的设计规模相对比较大,需要每个环节有专门的人来负责,以便更加高效的完成芯片项目。如果对于规模不大的项目,例如一些小的公司,这块的工作就直接归到数字前端设计或者数字后端设计flow里面了。我们只要理解他负责的工作和角色即可。
从个人角度来说,我更倾向与把这部分工作归到数字IC前端设计职责内,原因就是前端设计人员不光需要懂逻辑设计,还要有时序、可测试性、功耗分析、约束等能力,保证交付给后端的设计是clean,可实现性更强的。这样的效率也会更高一些。现在据了解某些大厂的FLP/PR都在设计前移,所以BES这块归结到前端设计是个趋势。
二、 数字芯片BES工程师的职责是什么
这块直接上招聘JD,从需求侧的描述能基本看出数字芯片BES工程师做哪些工作。
JD-1
工作职责
- 从事数字芯片Front-end flow方面相关工作(逻辑综合和时序分析,以及优化/收敛、约束编写、PPA分析);
- 主要工作内容为:synthesis、DFT、formal verification、STA、power analysis、Tetramax等;
- 工艺、lib、memory评估;
- 协助进行系统时钟、复位设计;
- 协助进行低功耗相关方案设计;
- 根据spec编写UPF/SDC等约束文件;
- 实现芯片顶层及子模块的相关DFT RTL代码编写,扫描链,MBIST电路,边界扫描电路插入,以及测试pattern的生成及仿真等;
- 协助物理实现工程师解决物理功能模块平面布置图设计、时序分析,优化/收敛方面的问题。
任职资格
- 硕士及以上学历,电子工程或计算机科学相关专业,工作经验和职级不限;
- 熟练使用Verilog HDL或System Verilog;
- 熟悉常用的EDA工具,如:Synopsys VCS, Verdi, Cadence IUS, Mentor QuestaSim等;
- 有过ASIC经验背景者优先;
- 有物理实现背景者优先;
- 有低功耗或DFT背景者优先;
- 熟悉数字低功耗Front-end flow,有多电源域经验,熟练掌握power gating、isolation、level shifter、retention等Front-end flow技巧;
- 掌握Shell/Perl/Python/TCL等脚本语言者会有优势。
JD-2
Responsibilities:
- 负责SOC芯片的前端设计流程,包括Synthesis、Formal和STA;
- 设置时序约束、功率约束CPF/UPF,并在标准工具流程中验证设计;
- 与后端工程师合作实现时序收敛;
- 设置并开发Formal检查环境及调试。
Requirements:
- 要求电子工程学士学位,硕士学位优先,具备基本的ASIC设计知识;
- 熟悉先进的低功耗SoC设计技术;
- 3年以上STA/Synthesis/Formal check的实践经验;
- 对ARM、AHB/AXI总线及SoC架构有了解者优先;
- 熟悉Perl/Csh, tcl和C/C++编程;
- 具备较强的持续学习能力。
三、数字芯片BES工程师的职业发展方向**
在刚刚进入21世纪时,IC设计曾一度备受瞩目,成为炙手可热的行业。当时,EDA工具开始盛行,掌握flow并能用工具支持design service的人才,无疑在行业内极具竞争力。从当前视角及周边案例来看,数字芯片BES工程师的职业发展路径大致可归纳如下:
1. 数字前端设计
对于从事BES工作的工程师而言,他们通常具备数字芯片设计的背景。若不想继续从事flow方面的工作,他们可以选择回归前端设计领域。由于已经积累了flow相关的经验,他们在前端设计的视角和感觉将更为独特和深入。
2. 数字后端设计
与PR工程师的紧密合作使得BES工程师能够较为顺畅地转向后端设计岗位。这一转变将进一步延伸他们在流程上的参与程度,使他们能够更深入地思考门级和物理实现级的问题,如时钟树、congestion、IRDROP和物理验证等。这样的转变将加深他们对芯片设计的整体理解。
3. 转行至EDA公司
EDA公司如C家、S家和M家等在行业内具有显著的影响力,并一直吸引着众多人才。近年来,随着国产EDA公司的逐渐崛起,为工程师提供了更广阔的职业发展空间。喜欢技术的工程师可以选择进入这些公司从事AE/FAE/EDA研发等工作,而擅长与人沟通的则可以考虑sales岗位。他们的技术背景和项目经验将成为他们进入这一领域的最大优势。
4. 更大的转折与机遇
每个人的职业发展都充满了无限可能。更大的转折和更好的机遇往往取决于个人的能力、格局和魄力。这些因素超越了芯片技术领域的范畴,无法准确预测,但无疑为数字芯片BES工程师提供了广阔的职业发展空间。
中国芯片的崛起离不开每一位芯片BES工程师的辛勤付出和共同努力。让我们携手并进,为中国芯的加速发展贡献自己的力量。
相关文章:

【有芯职说】数字芯片BES工程师
一、 数字芯片BES工程师简介 今天来聊聊数字芯片BES工程师,其中BES是Back End Support的缩写,就是后端支持的意思。其实这个岗位是数字IC前端设计和数字IC后端设计之间的一座桥,完成从寄存器传输级设计到具体工艺的mapping和实现。这个岗位在…...

暴力破解pdf文档密码
首先安装pdfcrack工具包 apt install pdfcrack 默认密码字典存储在/usr/share/wordlists里,是gz文件,将它解压并copy到pdf目录 然后使用pdfcrack破解 密码在最后一行user-password的单引号里...

蓝桥杯刷题第四天
思路: 这道题很容易即可发现就是简单的暴力即可完成题目,我们只需满足所有数的和为偶数即可保证有满足条件的分法,同时也不需要存下每个输入的数据,只需要知道他是偶数还是奇数即可,因为我们只需要偶数个奇数搭配在一块…...

03-数据库的用户管理
一、创建新用户 mysql> create user xjzw10.0.0.% identified by 1; Query OK, 0 rows affected (0.01 sec) 二、查看当前数据库正在登录的用户 mysql> select user(); ---------------- | user() | ---------------- | rootlocalhost | ---------------- 1 row …...
每日一题 --- 三数之和[力扣][Go]
三数之和 题目:15. 三数之和 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 **注意&#x…...
vue render 函数详解 (配参数详解)
vue render 函数详解 (配参数详解) 在 Vue 3 中,render 函数被用来代替 Vue 2 中的模板语法。 它接收一个 h 函数(或者是 createElement 函数的别名),并且返回一个虚拟 DOM。 render 函数的语法结构如下: render(h) …...

ubuntu23.10配置RUST开发环境
系统版本: gcc版本 下载rustup安装脚本: curl --proto =https --tlsv1.2 https://sh.rustup.rs -sSf | sh下载完成后会自动执行 选择默认安装选项 添加cargo安装目录到环境变量 vim ~/.bashrc<...

Vue性能优化--gZip
一、gZip简单介绍 1.1 什么是gzip gzip是GNUzip的缩写,最早用于UNIX系统的文件压缩。HTTP协议上的gzip编码是一种用来改进web应用程序性能的技术,web服务器和客户端(浏览器)必须共同支持gzip。目前主流的浏览器,Chro…...

蓝桥杯第七届大学B组详解
目录 1.煤球数量; 2.生日蜡烛; 3.凑算式 4.方格填数 5.四平方和 6.交换瓶子 7.最大比例 1.煤球数量 题目解析:可以根据题目的意思,找到规律。 1 *- 1个 2 *** 3个 3 ****** 6个 4 ********** 10个 不难发现 第…...

荣誉 | 人大金仓连续三年入选“金融信创优秀解决方案”
3月28日,由中国人民银行领导,中国金融电子化集团有限公司牵头组建的金融信创生态实验室发布“第三期金融信创优秀解决方案”,人大金仓新一代手机银行系统解决方案成功入选,这也是人大金仓金融行业解决方案连续第三年获得用户认可。…...

【关于jupyter notebook】一打开就闪退的问题
在Anaconda Prompt中输入jupyter notebook发现是有个错误。 里面多了一个__init__.py的文件导致报错。删除之后,就可以使用了...

若依 3.8.7版本springboot前后端分离 整合mabatis plus
1.去掉mybatis 这一步我没有操作,看别人的博客有说不去掉可能冲突,也可能不冲突,我试下来就没去掉如需要去除,到总的pom.xml中properties标签下的<mybatis-spring-boot.version>x.x.x</mybatis-spring-boot.version>…...
vue做移动端自适应插件实现rem
1.实现方式 postcss-pxtorem:将px转换为rem amfe-flexible:为html、body提那家font-size,窗口调整的时候重新设置font-size 2.安装与使用 npm install amfe-flexible --save npm install postcss-pxtorem --save-dev 1.再main.js入口文件…...
android 快速实现 图片获取并裁剪(更换头像)
1.获取图片框架:https://github.com/LuckSiege/PictureSelector 2.图片裁剪框架:https://github.com/jdamcd/android-crop 3.Glide图片加载框架:https://github.com/bumptech/glide 2.build.gradle依赖: dependencies {// Pic…...

垃圾回收机制--GC 垃圾收集器--JVM调优-面试题
1.触发垃圾回收的条件 新生代 Eden区域满了,触发young gc (ygc)老年代区域满了,触发full gc (fgc)通过ygc后进入老年代的平均大小大于老年代的可用内存,触发full gc(fgc).程序中主动调用的System.gc()强制执行gc,是full gc,但是不必然执行。…...
Java基础知识总结(29)
Java虚拟机 运行时数据区 程序计数器 方法区:Java 8以后没有方法区,改为了元空间(MetaSpace) 虚拟机栈 堆 本地方法栈 程序计数器 它可以看作是当前线程所执行的字节码的行号指示器。在Java虚拟机的概念模型里,…...
vue js金额转中文
在Vue.js项目中,实现金额转中文的功能通常涉及编写一个JavaScript方法来处理数字转换逻辑,并在Vue组件中调用该方法。下面是一个基本的示例,展示如何在Vue组件中定义一个计算属性或方法来实现这一功能: /*** 思路: …...

《QT实用小工具·二》图片文字转base64编码
1、概述 源码放在文章末尾 base64编码转换类 图片转base64字符串。base64字符串转图片。字符转base64字符串。base64字符串转字符。后期增加数据压缩。Qt6对base64编码转换进行了重写效率提升至少200%。 下面是demo演示: 项目部分代码如下所示: #ifn…...

Django安装及第一个项目
1、安装python C:\Users\leell>py --version Python 3.10.6 可以看出我的环境python的版本3.10.6,比较新 2、 Python 虚拟环境创建 2.1 官网教程 目前,有两种常用工具可用于创建 Python 虚拟环境: venv 在 Python 3.3 及更高版本中默…...
专升本-物联网
物联网(IOT,Internet of things) 体系结构: 感知层(感知执行层) 网络层 应用层 基本特征: 全面感知 可靠传输 智能处理 作用: 信息采集、转换、收集 信息传递和处理 数据…...

wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

回溯算法学习
一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...

基于SpringBoot在线拍卖系统的设计和实现
摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
raid存储技术
1. 存储技术概念 数据存储架构是对数据存储方式、存储设备及相关组件的组织和规划,涵盖存储系统的布局、数据存储策略等,它明确数据如何存储、管理与访问,为数据的安全、高效使用提供支撑。 由计算机中一组存储设备、控制部件和管理信息调度的…...

CSS 工具对比:UnoCSS vs Tailwind CSS,谁是你的菜?
在现代前端开发中,Utility-First (功能优先) CSS 框架已经成为主流。其中,Tailwind CSS 无疑是市场的领导者和标杆。然而,一个名为 UnoCSS 的新星正以其惊人的性能和极致的灵活性迅速崛起。 这篇文章将深入探讨这两款工具的核心理念、技术差…...