|
數位同步可考慮用FIFO來做到
0 m2 w# A0 S; v2 D; h, aFIFO: First In First Out Memory/ Z' @- A U7 y
也可以說是要做到clock domain crossing" m$ d7 ?1 o: C( F( X- l) @! D+ c
" r0 c4 S( B! l$ p0 P
這個FIFO的設計要很小心,有很多時候會做出似是而非的電路,
' j2 L5 c- W: @6 M/ E在testing的部份,也要注意,因為有很多corner case測不到,; t% }, Y. G) p8 r+ C& M; O
FIFO和串起來的DFF是不同的,因為它要能夠告知傳送端FIFO內部的資料是滿的或是空的,: s! {2 l* [3 M3 L
這看似容易,卻因為不同的clock domain而使得這個訊號會被誤傳,或是產生所謂的metastable status,/ ]$ t6 c, \. d' r0 g% H
這個代表空的或是滿的的訊號的產生要用到非同步的比較器,
3 j( V4 V9 L/ k9 [有一個建議是用gray code來做內部的counter,也有別的做法,
5 y l3 t! i0 C有不清楚可以再寫訊息問我 |
評分
-
查看全部評分
|