在fpga正常工作時,配置資料儲存在sram中,這個sram單元也被稱為配置儲存器(configure ram)。由於sram是易失性儲存器,因此在fpga上電之後,外部電路需要將配置資料重新載入到晶元內的配置ram中。在晶元配置完成之後,內部的暫存器以及i/o管腳必須進行初始化(initialization),等到初始化完成以後,晶元才會按照使用者設計的功能正常工作,即進入使用者模式。
fpga上電以後首先進入配置模式(configuration),在最後乙個配置資料載入到fpga以後,進入初始化模式(initialization),在初始化完成後進入使用者模式(user-mode)。在配置模式和初始化模式下,fpga的使用者i/o處於高阻態(或內部弱上拉狀態),當進入使用者模式下,使用者i/o就按照使用者設計的功能工作。
altera fpga配置全過程:乙個器件完整的配置過程將經歷復位、配置和初始化等3個過程。fpga正常上電後,當其nconfig管腳被拉低時,器件處於復位狀態,這時所有的配置ram內容被清空,並且所有i/o處於高阻態,fpga的狀態管腳nstatus和config_done管腳也將輸出為低。當fpga的nconfig管腳上出現乙個從低到高的跳變以後,配置就開始了,同時晶元還會去取樣配置模式(msel)管腳的訊號狀態,決定接受何種配置模式。隨之,晶元將釋放漏極開路(open-drain)輸出的nstatus管腳,使其由片外的上拉電阻拉高,這樣,就表示fpga可以接收配置資料了。在配置之前和配置過程中,fpga的使用者i/o均處於高阻態。
在接收配置資料的過程中,配置資料由data管腳送入,而配置時鐘訊號由dclk管腳送入,配置資料在dclk的上公升沿被鎖存到fpga中,當配置資料被全部載入到fpga中以後,fpga上的conf_done訊號就會被釋放,而漏極開路輸出的conf_done訊號同樣將由外部的上拉電阻拉高。因此,conf_done管腳的從低到高的跳變意味著配置的完成,初始化過程的開始,而並不是晶元開始正常工作。
init_done是初始化完成的指示訊號,它是fpga中可選的訊號,需要通過quartus ii工具中的設定決定是否使用該管腳。在初始化過程中,內部邏輯、內部暫存器和i/o暫存器將被初始化,i/o驅動器將被使能。當初始化完成以後,器件上漏極開始輸出的init_done管腳被釋放,同時被外部的上拉電阻拉高。這時,fpga完全進入使用者模式,所有的內部邏輯以及i/o都按照使用者的設計執行,這時,那些fpga配置過程中的i/o弱上拉將不復存在。不過,還有一些器件在使用者模式下i/o也有可程式設計的弱上拉電阻。在完成配置以後,dclk訊號和data管腳不應該被浮空(floating),而應該被拉成固定電平,高或低都可以。
如果需要重新配置fpga,就需要在外部將nconfig重新拉低一段時間,然後再拉高。當nconfig被拉低吼,nstatus和conf_done也將隨即被fpga晶元拉低,配置ram被清,所有i/o都變成三態。當nconfig和nstatus都變為高時,重新配置就開始了。
參考:
Altera FPGA特殊管腳
1.i o,asdo 在as 模式下是專用輸出腳,在ps 和jtag 模式下可以當i o 腳來用。在as 模式下,這個腳是cii 向序列配置晶元傳送控制訊號的腳。也是用來從配置晶元中讀配置資料的腳。在as 模式下,asdo 有乙個內部的上拉電阻,一直有效,配置完成後,該腳就變成三態輸入腳。asdo ...
altera fpga完美使用FFT
altera fpga完美使用fft author angry kua max qq 2518383357 time 2018 01 12 經過這幾天的折騰,終於把fft給整起來了,效果還行,相位,幅值均滿足,下面記錄整個過程。step1,配置fft ip core 模式選stram,對於取樣adc...
Altera FPGA的設計流程總結
altera fpga的設計流程 1.邏輯設計與功能驗證 系統模組劃分 設計子模組 編寫子模組testbench 綜合 analysis synthesis 子模組功能 設計頂層模組 編寫頂層模組的 testbench 綜合 analysis synthesis 系統功能 前 2.時序約束與設計優化...