Download presentation
Presentation is loading. Please wait.
1
專題題目 Failure Candidate Identification for SiliconFailure Candidate Identification for Silicon Debug
2
組員 951512 陳柏遠 年齡 21 951538 李劭鵬 年齡 21 951463 陳雋為 年齡 21
3
學弟妹加油!? 因為這次聽說有學弟妹也要聽,怕學弟妹 不知道我們在做什麼內容或聽不太懂,所 以題目就從頭盡量詳細介紹!也請教授們 多多包涵. 還有記得拿便當來吃.
4
題目大致介紹 在架構相同的情況下在 simulation values 與 observed values 發現了差 異, 這可能是其中的 WIRE 或 INPUT 有 問題, 而我們必須找出問題所在.
5
題目說明 (不要問我介紹跟說明哪裡不一樣,我也不知 道 … ) 簡單來說這個題目是要我們比較主辦單 位給我們的 obs 檔跟 sim 檔給的數值, obs 檔給的是正確的結果, sim 檔中則是有包 含著錯誤的點,然後用方法去判斷由 testcase 檔所形成類似以下的邏輯閘圖中, 哪一個地方的數值出錯
6
舉例 obs 檔 O1=0 O2=0 I 代表 INPUT W 代表 WIRE O 代表 OUTPUT sim 檔 I 1=1 I 2=0 I 3=1 I 4=1 I 5=0 W1=0 W2=0 W3=1 W4=1 O1=1 O2 = 0 很明顯的 O1 不一樣 所以我們要找出是 不是前面哪裡的數值有問題
7
所以 … ? 所以我們這次專題的目標就是要把比 賽主辦單位所給的 CASE 檔想辦法比對出 SIM 檔跟 OBS 檔中 OUTPUT 不同的地方然 後找找出前面的 WIRE 或是 INPUT 哪裡有 錯,並算出有錯誤的數量也就是算出 final candidates. 此外主辦單位還要我們計算出我們專題用 到的 what if analysis 的數量
8
什麼是 what If analysis 剛剛一直說要比較 obs 檔跟 sim 檔的結果並且 找出錯誤的地方,那我們要怎麼找呢?答案 就是 what if analysis. 簡單來說 what if analysis 就是 0 變成 1 , 1 變 成 0 ,也就是 0 跟 1 的互換,由於整個邏輯閘 給的數值是用 0 跟 1 組成的,那我們只要把原 來某個地方給的 1 變成 0 ,這樣可能就會影響 到後面 output 的結果,用這種 0 跟 1 互換的方 式來找出哪裡是錯誤的地方.
9
這個題目需要注意的地方 使用 what if 分析的數量越少越好(這關 係到演算法跟跑點的方法) 整個程式跑完的時間(假如有很多點可能 要跑很久) 程式方面記憶體的配置(因為點真的可能 有很多,沒寫好點來個幾十萬就爆了)
10
程式流程
11
‧ 取得參數並讀入檔案內容,並記錄訊號的值 。 ‧ 取得 I W O G 四種元件各別總數,定義指向訊號陣列 的指標與其大小。 ‧從 design.v 得知有幾個 input output wire 訊號 ‧配置記憶体空間 配置所有訊號、邏輯閘的資料結構並把邏輯閘的輸 出入訊號連接起來
12
‧ 指派每個 gate 的 Level 參數,愈接近 input 訊號的閘 level 愈低, 訊號從最低 level 的閘開始傳遞到高的閘,等最後傳到最高的閘 之後就會傳到輸出端 指派每個 gate 的 Level 參數,愈接近 input 訊號的 閘 level 愈低,訊號從最低 level 的閘開始傳遞到高 的閘,等最後傳到最高的閘之後就會傳到輸出端
13
‧ 把所有的元件另外再依 Level 大小用 Array 組織起來,先把同 level 的閘用鏈結串列組織起來,再把不同 level 的鏈結串列第一個元素 用 Array 組識起。利用 pGateLevelArray 依 Level 大小順序逛完所有 GATE
14
‧ 依輸入訊號更新所有訊號值,包含各元件的輸出訊號,計算模 擬的結果,應該要跟檔案的內容一樣 ‧ 判斷那些該做 what-if analysis ,不需要分析的話,則 RunAnalysis 欄位設為 false
15
我們的程式架構
16
減少使用 WHAT IF 的方法 Static:Static approach 比對 obs 和 sim 兩 個輸出的 output, 先找有同樣 output 的, 照 順序找出相對的 wire 跟 input, 因為輸出值 相同, 可以判斷 wire 是對的, 我們就不用去 找這些 wire 因為是對的, 把他們的 finish 設 成 true Dynamic:Dynamic approach 是經過 Static approach 分析動作之後 wire 前面的 點就不用再判斷了, 可以減少 what-if 判斷 的次數
17
經由主辦單位提供的四個測試檔作測試, 以下表格為測試資料: 實做的結果 Case1Case2Case3Case4 final candidates 46820 what-if analysis 71012215385 Cpu time 1sec 16sec Memory Usage 904kb
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.