Re: [問題] quartus II 的問題

看板Electronics作者 (Trai)時間17年前 (2007/03/05 13:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串11/12 (看更多)
謝謝回答 我大概找出一些問題,因為在計算前需要將10幾筆資料送到FPGA 當然是透過版子的bus,nWE拉起後,FPGA根據io_addr決定要將io_data送到哪個 register。計算完後也用同樣的方式讀出資料。 我這樣寫意味著有個很大的mux在選擇register。 寫入資料比較沒問題,推測是因為bus的寫入週期剛好能配合這樣的設計, 寫入的時序正確。 但讀取的時候問題就來了,送出io_addr與拉起nOE之後需要一段時間讓MUX去選擇 register,從timing simulation waveform 可以看到bus上data line的變化。 問題就出在讀取週期,版子上的master(arm)在信號穩定前就把資料抓回來, 所以會抓到錯誤的資料。 我想這就是您說的同步問題。不知道有沒有其他buffering的機制可以避免這種情形?? 謝謝回答^^ ※ 引述《acelp (未來,一直來一直來)》之銘言: : 假使您用很慢的頻率來跑 看timing report的timing都很鬆的話 : 那review一下你的design 是否有跨clock domain的設計 : 因為你會用buffer來接收就表示雙方clock的速度不同或是頻率non in phase : 如果有 在控制訊號或是data上有沒有額外的sync? : 如果沒有 那你有可能發生meta stable... : meta stable在你的simulation往往是檢查不出來的... : 因為一般人不會造這樣的test pattern來檢查 : ※ 引述《Trai (Trai)》之銘言: : : 做完timing simulation 結果都正確,丟1200筆進去答案出來都對。 : : 但是丟到算FPGA就出現問題了。 : : 請問是否有遇過類似問題的版友能分享一下經驗的???? 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.89.1 ※ 編輯: Trai 來自: 140.113.89.1 (03/05 13:08)
文章代碼(AID): #15wwHu_p (Electronics)
討論串 (同標題文章)
文章代碼(AID): #15wwHu_p (Electronics)