• Techo

[IC驗證] 建立電路的 C model 作為驗證對照組

更新日期:2019年11月27日

在業界進行IC產品開發時

通常會有一部分的人負責重點電路演算法的部分

一套演算法可不可行除了透過數學的推導之外

有時還要經過實際跑過才能評估其效益

但開發 RTL電路是相當耗費時間成本的事情

不可能在沒有充分評估的狀況下就直接實作

所以這個時候就需要仰賴軟體的開發速度了

也就是 C model


C model 不一定是由C語來實現

有些人用 C++或是 SystemC

只要能夠建立一套能夠產生 pattern golden data 的軟體即可

在 C model 的實作中

演算法工程師可以適度地模擬硬體的行為

比如說要設計一塊 5 stage pipeline 的電路

在電路沒有很複雜的狀況下我們也許可以只在最後一個 stage 進行與 golden data 的比對

這時在 C model 不需要跟硬體一樣設計出 software pipeline

只要直接算出結果即可

如果這五級 pipeline 中間有一些 forwarding 或是 branch prediction not taken (詳見CPU白算盤)的情況產生

我們可能就要根據電路的複雜度來產生不同階段的 golden data 來做比對


可能有些人對於 IC開發的流程還不是很清楚

IC 是一個開發周期長但是運作速度快單一成本低的產品

我們雖然知道硬體真正做出來很棒很好

但是其成本高到不可能動不動就做一個出來試試看演算法可不可以動

所以我們才會使用軟體來進行可行性的評估

寫錯大不了重新 compile 就好

硬體出了 bug可是會浪費好幾千萬在 TSMC 重新下一顆晶片呢

有些小公司沒搞好就直接倒閉了

所以用硬體做測試可不是隨便開玩笑的



0 次瀏覽
Logo2020.JPG
  • Instagram - White Circle
  • Google+ - White Circle
  • Facebook - White Circle

Contact Us

Techo私人程式家教

官方LINE ID : @tutortecho

zh-Hant.png

© Copyright 2018 by Sherry Wu and Techo Chao.

Proudly created with Wix.com,

but page loading is too slow,so I don't recommend it.