周期約束理論
首先來看什么是時序約束,泛泛來說,就是我們告訴軟件(Vivado、ISE等)從哪個pin輸入信號,輸入信號要延遲多長時間,時鐘周期是多少,讓軟件PAR(Place and Route)后的電路能夠滿足我們的要求。因此如果我們不加時序約束,軟件是無法得知我們的時鐘周期是多少,PAR后的結(jié)果是不會提示時序警告的。
周期約束就是告訴軟件我們的時鐘周期是多少,讓它PAR后要保證在這樣的時鐘周期內(nèi)時序不違規(guī)。大多數(shù)的約束都是周期約束,因為時序約束約的最多是時鐘。
在講具體的時序約束前,我們先介紹兩個概念,在下面的講解中,會多次用到:
? 發(fā)起端/發(fā)起寄存器/發(fā)起時鐘/發(fā)起沿:指的是產(chǎn)生數(shù)據(jù)的源端
? 接收端/接收寄存器/捕獲時鐘/捕獲沿:指的是接收數(shù)據(jù)的目的端
建立/保持時間
講時序約束,這兩個概念要首先介紹,因為我們做時序約束其實就是為了滿足建立/保持時間。
對于DFF的輸入而言,
? 在clk上升沿到來之前,數(shù)據(jù)提前一個最小時間量“預先準備好”,這個最小時間量就是建立時間;
? 在clk上升沿來之后,數(shù)據(jù)必須保持一個最小時間量“不能變化”,這個最小時間量就是保持時間。
建立和保持時間是由器件特性決定了,當我們決定了使用哪個FPGA,就意味著建立和保持時間也就確定了。Xilinx FPGA的setup time基本都在0.04ns的量級,hold time基本在0.2ns的量級,不同器件會有所差異,具體可以查對應器件的DC and AC Switching Characteristics,下圖列出K7系列的建立保持時間。
-
FPGA
+關(guān)注
關(guān)注
1630文章
21769瀏覽量
604634 -
寄存器
+關(guān)注
關(guān)注
31文章
5359瀏覽量
120790
發(fā)布評論請先 登錄
相關(guān)推薦
評論