※ 引述《sasako (只想把你留在心中)》之銘言:
: ※ 引述《LINAN322 (新熱血陽光男孩NN)》之銘言:
: : 恩,小弟已經有先爬過文了,
: : 只是還是無法釐清blocking與nonblocking的設計理念。
: : 小弟目前寫code都是用blocking的寫法,
: : 但是看書,很少人用blocking的寫法,
: : 都是用unblocking的。
: : 很奇怪,因為我目前寫的code都是可以合成的,
: : 但是不清楚這樣寫是不是很傷硬體的資源。
: : 因為小弟主要要將演算法設計至fpga中,
: : 舉一個簡單的例子:
: : 如四行數學式的運算:
: : 1. a = 2 * 3
: : 2. b = a * 2 + 3
: : 3. c = a + 2 * b
: : 4. d = a + b + c
: 你要先問自己你想合出什麼電路吧!
: a = 6 (不是直接用assign就好了嗎)
: b = 15
: c = 36
: d = 57
: = ="
: 還是你想要儲存a b c d的值?
: 先想好你究竟要的是什麼吧?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.138.178.157
※ 編輯: LINAN322 來自: 140.138.178.157 (05/02 14:28)
不好意思,舉了個不好的例子,
應該說,a值會隨著clk一直改變的,
因為a是要傳送的訊號...
,接著會進行運算,得到d值後,會將d值傳送出去...
即d作為傳送至下一級的訊號。
b、c、d會因為運算,跟著改變其值,有相依性。
所以跟s大大說的,就是將數值儲存起來。