關於FPGA內部雙口RAM的時序總結:
1)存儲時,雙口ram的存儲是在寫時鍾的上升沿到來時完成的,因此要在寫時鍾的上升沿到來時,數據跟寫地址都已經是個穩定的狀態,這樣才能保證數據的正確存儲。
2)讀數據時,雙口ram的讀取實在讀時鍾的上升沿到來時完成的,因此要在讀時鍾的上升沿到來時,讀地址已經處於穩定的狀態,這樣才能保證讀到的數是相應地址內的數據,數據在讀時鍾的上升沿到來后輸出。
3)對於雙口ram的數據輸出,對於一個地址上的數據會在讀下一個地址的數據時才輸出到數據線上,相當於數據的真正輸出延時讀時鍾一個時鍾。
4)讀地址模塊的使能應延時輸出使能一個時鍾周期,使得第一個地址0可以保持被時鍾上升沿采集到,否則輸出時第一位輸出不穩定數據。
邏輯分析應從時序開始,關於數字邏輯主要是有四種,高電平‘1’、低電平‘0’、高阻態‘Z’和不定態‘X’;程序中一定要避免不定態的產生,因為這是一個不可控的狀態。
一個時序的產生是要集合多個邏輯門產生的,只有邏輯嚴密的思想才能產生一個穩定可靠省資源的時序。