V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
eijnix
V2EX  ›  问与答

应届生毕业做嵌入式软件开发

  •  
  •   eijnix · 2019-09-21 11:05:43 +08:00 · 4121 次点击
    这是一个创建于 1925 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想请问各位大哥,嵌入式软件开发怎么样啊? 我是非科班,秋招找工作,误打误撞进了华为海思,要在里面做 5g 芯片的嵌入式软件开发,我本身对这个东西有点兴趣,不排斥,就是想问问这个前景怎么样,还是去互联网公司好一点?这个选择感觉很重大,希望各位前辈能指点迷津

    22 条回复    2019-09-22 01:03:56 +08:00
    villivateur
        1
    villivateur  
       2019-09-21 12:06:15 +08:00
    误打误撞都能进华为海思,我很羡慕啊
    eijnix
        2
    eijnix  
    OP
       2019-09-21 12:21:32 +08:00 via iPhone
    @villivateur 老哥 是真的运气好 现在就是不知道这个岗位怎么样 我周围没人搞过这个
    forgottencoast
        3
    forgottencoast  
       2019-09-21 12:26:43 +08:00 via iPhone
    华为啊 待遇高 就是辛苦 反正刚毕业怕什么
    eijnix
        4
    eijnix  
    OP
       2019-09-21 13:03:22 +08:00
    @forgottencoast 那嵌入式软件开发这个工作前途还好不?
    fbb707
        5
    fbb707  
       2019-09-21 13:19:48 +08:00
    @eijnix 我的天啊,这是大佬,我也想进
    zuosiruan
        6
    zuosiruan  
       2019-09-21 13:49:15 +08:00 via Android
    误打误撞的真大佬
    eijnix
        7
    eijnix  
    OP
       2019-09-21 14:09:25 +08:00
    @fbb707
    @zuosiruan 不是大佬 就是今年新增了写算法 我两题都写出来了而已
    Chry3anthemum
        8
    Chry3anthemum  
       2019-09-21 14:22:47 +08:00 via Android   ❤️ 2
    1.你来 hw 你也不要来海屌丝做驱动,海屌丝的驱动说白了不就是测芯片吗,加个 5G 你就以为真是前沿高端了啊?
    2.又不是微电子集成电路的。。。来了海屌丝又不是核心竞争力,你说你来了干啥,好好的互联网不去,跑来做硅工?还不是正儿八经的硅工。
    3.最近企业网消费者天天劝退裁人,海屌丝倒是难民营接收转岗来的,可以遇见人力饱和后两年后就要有一波裁人。我不看好现在跑过来还不是做芯片的。
    4.能受得了一年就写两周代码,剩下 50 周拉通对齐端到端 welcome to join the conference 么?受得了就来。海屌丝的芯片嵌入式,你想了你几年后做的东西别的公司有没,你跳出去好跳吗?
    5.说坏处不说好处也不客观,好处就是摊上好项目,加班费比工资高。好产品线的芯片年终是我等屌丝的几倍。

    你自己选吧。
    GreyYang
        9
    GreyYang  
       2019-09-21 14:41:53 +08:00
    @Chry3anthemum 我厂内部专业词汇倒背如流 :)
    eijnix
        10
    eijnix  
    OP
       2019-09-21 14:51:40 +08:00
    @Chry3anthemum
    @GreyYang 看来两位大哥是业内人士,我就是担心以后跳槽的话还好不好跳,因为真的从来没搞过这个,所以也不懂。以前想着互联网公司干的话,以后不干了自己还可以开个小公司弄点活做。然后这个嵌入式软件开发我也不知道等以后华为裁我之后,自己能不能搞点活做之类的,看 @Chry3anthemum 这位大哥说的话,我这个活应该就是测芯片的,,,那感觉确实做着也没意思啊。。。产品线好像还行,但是我不看重眼前的一点钱,想为以后做打算。
    eijnix
        11
    eijnix  
    OP
       2019-09-21 14:55:17 +08:00
    @Chry3anthemum 这位大哥,想问一下,那我这个活目前来看的话就是一个很没前途的活是么?
    Chry3anthemum
        12
    Chry3anthemum  
       2019-09-21 15:16:51 +08:00 via Android
    你搞计算机的能去互联网就先去互联网,你要是微电子或集成电路的就来海思。前途不好说的,看命。
    nevin47
        13
    nevin47  
       2019-09-21 16:26:26 +08:00 via Android
    我觉得没有楼上老哥说的那么绝对啊哈哈哈,我一个同事才转岗去了海思芯片验证,每天处于学习状态,而且几乎不怎么加班
    eijnix
        14
    eijnix  
    OP
       2019-09-21 17:23:51 +08:00 via iPhone
    @nevin47 老哥,那你觉得在海思做软件开发感觉如何? 感觉还可以不?我是真的不知道怎么样😭,但是又感觉华为这个公司挺不错的,茫然。。。
    Chry3anthemum
        15
    Chry3anthemum  
       2019-09-21 20:42:40 +08:00 via Android   ❤️ 17
    小兄弟,我看你比较焦虑,正好我也堵车在班车上,那我就给你介绍一下芯片从立项到最终商用的流程,你看看你感不感兴趣,适不适合你,你在做考虑。顺便也斗胆给给为老哥说说 IC design 的流程,疏漏之处轻拍:

    1.立项 这个具体不敢多说,主要定指标,指标包括性能和功耗等。
    2.算法 你去的估计是圣无线产品线的。那么,芯片就需要一套算法原型,比如可能 c 或者 MATLAB 的模型,但这些与你的工作无关,这是核心竞争力。
    3.构架 算法和 se 们定电路实现方案,时钟方案,集成哪些 IP 等等,也与你无关。
    4.设计 designer 硅工们拿到 se 给下来的规格,就开始写 if else 了,是个人有点逻辑就能写。但是这个 if else 和软件的不一样,要有硬件思维,你要知道你写下去的这一句话,能映射成什么样的门级电路。就比如与非门那些。这个就比较难了,好的 designer 写的时序很短功耗很小就实现一功能了,烂点的写出来就是一坨屎。这也与你无关,语言是 Verilog。
    5.验证 上面也有老哥提了验证,IC 验证就是把设计的电路,分解好测试点去测试,语言是 systemVerilog,类似于 cpp 的一种语言。上面也有老哥说了转岗去海屌丝,做的就是验证,为啥是验证呢?因为设计不是你想转想转就能转,而验证不需要底层知识(微电子、电路)就能搞定。但是验证比设计强在什么地方呢?就是对系统工作整体的把控性。所以设计和验证各有千秋。如果你做驱动,那么和你对接的就是验证,你需要注意这一点。
    6.后端 4、5 两个算 IC 前端,后端就是将验证验好没问题(大雾)的逻辑代码转换成晶体管门电路的过程。先讲 design code 转化为 logic gates,这个东西就是 net list 网表。然后再经过 a、floorplan,摆放 signal pin 管脚,按照数据流摆放 memory。b、place 摆放 logic gates 位置。c、clock tree systhesis 时钟树建立,时钟树就是数字芯片的脉搏,你可以这样理解。d、route 把摆放好的 logic gate 连起来。然后放好电源,做好信号完整性。后端这个过程比较复杂,就不展开了,大致这样,不过和你也没关系。做好了就是拿出去,给台积电。后端也算是核心竞争力吧。
    7、比如大家熟知的 fab tsmc,simc 等。这个生产过程也复杂,涉及到半导体生产工艺 process,和你的距离就更远了。这真心是核心竞争力啊!但是工资低。。。
    8.回片测试与驱动开发 好了,你的工作了。前面的验证会根据芯片写一份芯片手册,就是讲开啥功能要配啥寄存器的玩意。一般芯片里有两部分:控制部分和计算部分。而驱动就是去控制芯片里的控制部分再去控制计算。这里就要去读写芯片里的寄存器了。你的工作就是写这部分。这里一般验证会帮你,告诉你怎么写:先写地址 0x123 打开时钟再写地址 0x124 撤销复位接着写地址 0x222 开启功能 xx,等待 sleep 5s,读取寄存器 0x456,看里面的数是否符合预期。
    如果测试芯片都符合,你就需要把上面的步骤合起来,写成 SDK。OK 了就可以交货了。

    由于我只做过 designer 前端和 backend 后端的部分,没做过验证和芯片测试,可能有些地方有疏漏,但大致流程就这样,你看着办吧。

    得不到的就是最好的。
    eijnix
        16
    eijnix  
    OP
       2019-09-21 21:37:37 +08:00 via iPhone
    @Chry3anthemum 倒是不怕难不难这些 怕的是你说的 一年就写两周代码 o(╥﹏╥)o
    eijnix
        17
    eijnix  
    OP
       2019-09-21 21:37:59 +08:00 via iPhone
    @Chry3anthemum 很感谢你能耐心的解答 给你一个赞👍🏻
    AltairT
        18
    AltairT  
       2019-09-21 22:41:05 +08:00
    @Chry3anthemum #15 哇,电子专业出生的看到硬件编程语言那部分久违的感觉......虽然学校里只是简单了解了些基本知识.
    sfqtsh
        19
    sfqtsh  
       2019-09-21 23:05:30 +08:00 via Android
    hilda20190714
        20
    hilda20190714  
       2019-09-21 23:14:52 +08:00
    我目前在一家半导体公司工作,做的是 application engineer,想给你点参考,我目前就是芯片的可靠性平台搭建,以及芯片的测试平台搭建,包括软件硬件,芯片在客户端出现问题,要能分析问题点,和研发,pe,销售配合等。
    zhangckid
        21
    zhangckid  
       2019-09-22 00:18:17 +08:00 via Android
    @Chry3anthemum 赞一个
    s4nd
        22
    s4nd  
       2019-09-22 01:03:56 +08:00
    @Chry3anthemum 真大佬
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2797 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:04 · PVG 15:04 · LAX 23:04 · JFK 02:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.