看板 Electronics 關於我們 聯絡資訊
基本上我想第一步要做的事就是要決定最後的thoughput 如果很要求速度的話,那就看看能不能透過pipeline的方式 讓二三四級能夠將critical path縮短到10 period 而如果30 period的速度是可接受的話 就讓所有的block都操作在一樣的速度下 (即先做完的就等,直到最慢的做完) HDL要寫的好跟程式要寫的好是一樣的 除了要了解語言的特性 譬如說在verilog裡面 assign a=b+c[1:0]; 跟assign a=b+c; (假設reg [1:0] c; ) 會有完全不一樣的結果(就是unsigned跟signed的差別) 軟工的問題也很重要 推薦一本"Reuse Methodology Manual" 算是HDL的軟工吧 有很多guideline 也有對整個flow的建議 testbench也多有著墨 ※ 引述《saininniang (sob)》之銘言: : verilog基本的語法大都已熟悉 : 但我遇到頻頸了...已經卡很久了 : 若只單寫一個演算法還沒問題 : 若這個電路的前後級是由好幾個不同執行週期的電路組合而成 : 我就不知怎麼結合 : 假設 : 第一級的演算法要跑10個週期 : 第二級 18 : 第三級 30 : 第四級 22 : ..................... : 前級的輸出為後級的輸入 : 各別寫的話還OK : 但我沒能力將這些演算法整合成一個完整的電路 : 這四級的電路都由finite state machine寫成 : 每級都是由許多小module所結合 : 主電路又要再整合這四級 : 實在不會結合... : 不知該怎樣去抓取資料... : 因為每一級的執行週期都不一樣 : 另外 : 寫測試function的testbench有沒有更有效率的寫法? : 寫testbench真的好累 : 最後發表一下寫hdl遇到很多的挫折 : 明明用軟體就能輕易實現,但hdl卻不會寫 : hdl的架構不會設計,coding很沒效率 : 越來越恐懼hdl.....0rz : ※ 編輯: saininniang 來自: 220.133.142.122 (01/20 22:03) : 推 pow:用一個FSM去控制四個FSM 01/21 06:45 : → pow:或者讓四個FSM之間可以互相溝通 01/21 06:45 : → pow:互相溝通的方式可以為 設一個FLAG bit...給前後級溝通用 01/21 06:46 : → pow:會講出「hdl卻不會寫」的意思就是說 你硬體設計還要下多一點 01/21 06:47 : → pow:功夫 coding絕對不難 01/21 06:48 : → pow:記得一定要把硬體設計到非常完全之後 在做CODING 01/21 06:50 : → pow:還要加上其他自己很熟悉的語言的輔助 Matlab? Excel? 01/21 06:50 : → pow:依照硬體運作的方式 把硬體寫在Matlab裡面去驗證功能 01/21 06:51 : → pow:因為MATLAB可以很快得到結果 所以可以用MATLAB來產生 01/21 06:51 : → pow:testbench@input跟硬體output的對照組 01/21 06:52 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.231.199.51