热度 12| ||
人间四月芳菲尽,山寺桃花始盛开。
又一次经历了整整一年的soc项目,会战结束,个人最大的感受就是--节奏,项目的节奏很关键。
大型soc项目,有诸多function要考虑实现,需要多工种配合,需要大量战斗人员(攻城狮们)参与。指挥官如何有效的指挥协调,战斗人员如何高效的配合都是一个需要磨合的过程,而这个过程的长短影响着整个项目的进度。因此,项目节奏很关键。由此再铺陈开来,节奏的把握就需要对项目有一个清晰合理的规划,这个是基于对项目的了解,以及以往经验的有效借鉴。个人也在此次大会战中学习到了一些经验,赶紧记录下来。
明确spec。了解产品的应用场景,和前端,设计,产品部门充分沟通,制定合理的设计目标。
比如,(1)signoff corner,需要结合应用场景和工艺制程,并借鉴以往的经验,选取合理的corner。(STA 工程师深度参与)
(2)power,明确产品的工作模式,制定合理的power domain,评估产品不同场景下的合理功耗目标。(PD,CLP工程师参与)
(3)频率,面积,根据产品需求,指定一个目标范围,在下一个阶段迭代确定。(产品,designer,PD工程师参与)
(4)后端实现策略,PM,Soc designer,Top owner等参与讨论,规划出架构实现的策略,制定方案,评估可行性。
(5)搜集应用到的不同模块,IP等的特殊需求,着手整理check list,作为实现,检查的指导
(6)大致的schedule以及其他策略性的标准等(表格化)
Try run阶段
开始搭建环境,在实际的设计数据中评估各项指标,以及帮助设计迭代。
(1)runtime,搭建环境,初步评估各项的runtime,给详细的schedule制定提供数据参考
(2)server,cpu数量,磁盘空间等,需和IT工程师紧密配合
(3)人员的安排调整,及时熟悉各个功能人员的经验,工作习惯等,方便B计划实施。
(4)Chip TOP level,规划实现方案,
a.纯channel length的还是top 有逻辑的;
b. 学习clock架构,制定clock实现策略
c. 初步规划subsys的位置,形状等(spec阶段的架构策略已定,这里实施细节试验)
d. 初步的電源規劃完成(出表格和圖)
d. 初步规划封装方案(可推迟)
e. 根据设计完成度,进行可try run的工作
(5)subsys和block level,着手开始run flow,调floorplan等
在每个阶段结束的时候,进行review,达成阶段性共识,然后进入下一个阶段(时间上可以有overlap的窗口)
(1)review floorplan,确保没有重大遗漏,PLL,ESD,EFUSE,RF,LDO,IO等合理,TCIC,base drc等可控
(2)review flow,確保flow完整,derate,uncertainty等signoff標準統一,lib 路徑更新。
(3) check list 完成
在try run階段,完成的不僅僅是flow的搭建,同時可以瞭解大家的工作節奏,制定合理的周會時間,review時間,成果驗收時間等。用Action item的方式來跟進:
日期,事項,描述,狀態,責任人等
stable run阶段
这个阶段是关键阶段,需要达成诸多项目指标的预期。PPA要确定,PV等要有过一次验证,确保大部分重要的问题都已经评估到位,避免给final阶段留下隐患。
Chip top level需要達成的目標:a. 確保前端代碼穩定,flow完整。
b. clock結枸規劃完成,route的drc評估完成。
c. 進行timing的評估,給出解決方案
subsys-block level:
a. 完成PPA的評估,確定頻率,功耗
b. floorplan freeze, IR, drc/lvs,clp等signoff要求完整評估
c. PT 中的風險有一定的認識
出一版flatten的gds 給Foundry,進行dry run,確保layer map沒問題
開始固定封裝方案。
在這個階段,需要投入大量的精力,把控項目進度,及時補充人員,機器資源等,這個階段的需要更細節的展開討論。(後續補充)
final run階段
這個階段,各個子系統接受final的網表直接進入最終的run(可以和上一階段有overlap窗口),根據不同模塊的進度,合理靈活的調度人力資源(第一階段的評估基礎上進行)。
singnoff opt的策略在這個階段就非常重要,如何能在有限的資源下將各個事項進行并行處理,也是一門調度藝術。
比如STA,可以先GPA run,後期進行PBA run,節省runtime;DRC,可以在上一個階段run flatten的,初步評估drc類型,然偶進行select rule的方式run,快速迭代;clp同步進行,IR可以在每次timing eco的時候順便做進去;同一版db,多人并行修drc但等等技巧。除了流程節奏以外,還有人的心理節奏,適當的放鬆,鼓勵,都是對進度很有幫助的。
這個階段就要著手檢查check list。
Tape out階段
各種review,確保數據都是final版本,統一出數據,填寫final check list,release gds和drc/lvs環境給晶圓廠。
整個項目過程中的經驗教訓需要自習復盤,專題討論,達到有效吸收的目的,為下一城厲兵秣馬。