作者spurslover (肥宅最後希望)
看板Electronics
標題[問題] Verilog code 控制訊號問題
時間Fri Jun 25 19:09:17 2021
各位好~
我目前碰到的問題是我有兩個module
其中一個module1負責輸出資料而module2負責分析結果並輸出
目前遇到的問題是第一個module丟資料時
假設現在丟第一筆資料給module2分析而module2還沒分析完第二筆資料又進來了
我目前想到的解決方法為把module2的輸出拿來當作module1的輸入
用狀態機的方式來呈現
當做完時才拉起來1 module1的第二筆資料才能在輸出
但是這樣有個問題是一開始執行的時候module2的output是沒有數值的
想請問各位大大有沒有什麼比較好的想法或是建議?
希望能提供給我一點思考的方向
謝謝各位了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.200.112.218 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Electronics/M.1624619359.A.6DA.html
1F:→ vacuo: 就一開始設為1就好了啊 module2的1就代表分析完輸出資料也06/25 19:44
2F:→ vacuo: 代表可接受資料 module1看到1就可以輸出 不然就是要等 那06/25 19:44
3F:→ vacuo: 當module2收到資料就設0 , module1看到0就要等 不能輸出06/25 19:44
4F:推 hsucheng: 如果分析的速度是固定的,也可以數cycle 06/25 20:06
5F:→ DaveLu: pipeline+起始狀態預設?06/25 21:48
6F:推 mmonkeyboyy: asyc buffer-request 或是數cycle06/26 00:22
7F:→ mmonkeyboyy: 你可以看看sync/async的設計 fifo設計06/26 00:23
→ sep7015: +fifo
06/26 18:37
想請問一下我把flipflop 加在module1的後面但要怎麼控制什麼時候要丟資料的問題
因為還是沒辦法知道什麼時候module2已經處理完了
8F:推 hank821017: 如果你的module1是沒辦法等的(例如他前面接了一個sens06/27 15:02
9F:→ hank821017: or會一直倒資料) 或是module1&2吃不同的clk,那就照上06/27 15:03
10F:→ hank821017: 面大大講的用fifo。否則我推簡單的ready/request FSM06/27 15:05
※ 編輯: spurslover (1.200.188.140 臺灣), 06/27/2021 16:44:03