|
數位同步可考慮用FIFO來做到( ]0 q/ J1 x( T4 f% W" Z, l
FIFO: First In First Out Memory- q( T5 q# I$ A) _. ]8 ~
也可以說是要做到clock domain crossing" {7 ?, w3 t5 M! F! ^' ~3 e) j4 S
5 t% f1 _3 P8 _% Y( p這個FIFO的設計要很小心,有很多時候會做出似是而非的電路,
4 I, G$ ?$ {; `* b在testing的部份,也要注意,因為有很多corner case測不到,. }4 }8 S2 P E& P; b7 p8 Y& n
FIFO和串起來的DFF是不同的,因為它要能夠告知傳送端FIFO內部的資料是滿的或是空的,
6 T r6 e# E2 c1 b6 m6 a這看似容易,卻因為不同的clock domain而使得這個訊號會被誤傳,或是產生所謂的metastable status,8 @+ q1 k' v' F, X7 I
這個代表空的或是滿的的訊號的產生要用到非同步的比較器,# ^2 x' q* \4 U' T# C) R
有一個建議是用gray code來做內部的counter,也有別的做法, X n; P2 o% l& C9 w0 P
有不清楚可以再寫訊息問我 |
評分
-
查看全部評分
|