推荐一下本人的原创博客专栏:SoC嵌入式软件架构设计 谢谢!
正规的集成电路设计公司在进行片上系统(SoC)设计时都有明白的岗位分工,甚至会以部门的形式来区分各部分的职责,并且非常多时候集成电路设计公司还会提供总体解决方式,包含芯片、软件和硬件,生产商直接按这个方法买其它的电阻电容等元器件就可以生产、測试和销售。总体解决方式分工例如以下:
1. 市场:负责产品规格调研、产品规划。产品经理负责项目立项。
2. System design系统设计:制定产品规格,系统设计,模块级的FPGA验证。
3. IC digital 数字:前端负责算法、代码,后端负责数字部分的布局和布线。满足性能的情况下尽可能降低电路面积。
4. IC analog 模拟:前端负责电路设计、仿真,后端(layout,布图)负责模拟负责的版图设计。满足性能的情况下尽可能降低电路面积。
5. IC verify 验证:数字和模拟后端的验证。这个验证OK了就送去芯片制造公司(如中芯国际)tapout了。一般集成电路设计公司都仅仅是设计,而不会自己制造芯片,制造芯片的工艺要求非常高,一条生产线高达千万元级。
6. 封装和測试:有些基础电路设计公司可能这部分也会外包,有些公司会自己封装和測试。芯片制造公司生产出来的是一块块硅片,一块硅片里面包括非常多颗芯片,须要进行封装和測试,这个过程也要控制芯片的良率。
7. Firmware 固件开发:芯片启动、驱动、操作系统、中间件等开发,与System design配合,负责系统级的FPGA验证,并向应用部门提供接口支持。软、硬件整合技术一般在Firmware和System design两者间进行,有些算法运行频率非常高,然后性能要求非常高,能够考虑用硬件来实现;硬件接口由两者协商确定,软件思维能够影响硬件的设计。嵌入式架构设计师通常会带领Firmware团队进行开发。另外,有时算法中间件会单列出来进行管理和开发,尤其是在算法对产品影响比較大的时候。
8. Application 应用开发:包含方案硬件开发、应用开发、客户支持,总体解决方式支持.