徐玉婷,耿 楊,董宜平,胡 凱
(1.無錫中微億芯有限公司,江蘇無錫214072;2.中國電子科技集團(tuán)公司第58研究所,江蘇無錫214072)
一種用于FPGA存儲(chǔ)單元的上電復(fù)位狀態(tài)機(jī)設(shè)計(jì)*
徐玉婷1,耿 楊1,董宜平2,胡 凱2
(1.無錫中微億芯有限公司,江蘇無錫214072;2.中國電子科技集團(tuán)公司第58研究所,江蘇無錫214072)
基于FPGA芯片,設(shè)計(jì)實(shí)現(xiàn)了一種上電復(fù)位狀態(tài)機(jī)。在電路內(nèi)部產(chǎn)生一系列的復(fù)位信號(hào),控制配置存儲(chǔ)單元SRAM的數(shù)據(jù)、地址以及電源,使其在不同階段保持合適的電壓,幫助SRAM在上電過程中順利完成初始化,提高FPGA芯片啟動(dòng)的穩(wěn)定性。
FPGA;上電復(fù)位;狀態(tài)機(jī);SRAM
FPGA芯片通常包含大量的可配置模塊(CLB)、輸入/輸出塊(IOB)和連線資源[1]。可編程的連線結(jié)構(gòu)都是由可配置單元所存儲(chǔ)的配置信息所決定的。采用可配置存儲(chǔ)單元設(shè)計(jì)的優(yōu)勢在于減少了用于編程的I/O接口的數(shù)量。而且和單端的存儲(chǔ)單元相比,可差分的寫存儲(chǔ)單元結(jié)構(gòu)大大減少了寫電路的驅(qū)動(dòng)數(shù)量[2]。此外,局部的復(fù)位電路也從存儲(chǔ)單元中去除,以降低存儲(chǔ)單元和I/O接口的復(fù)雜性。但是同時(shí),此類I/O接口的簡化大大增加了電路上電復(fù)位時(shí)存儲(chǔ)單元初始化的難度。因此,本文采用了一種合理的上電順序,使得存儲(chǔ)單元SRAM的數(shù)據(jù)、地址以及電源都受上電狀態(tài)機(jī)的控制,保持合適的電壓,使得上電復(fù)位后,SRAM存儲(chǔ)的數(shù)據(jù)完成初始化,對(duì)提高FPGA芯片的安全性和啟動(dòng)的穩(wěn)定性都有極大的幫助。
FPGA芯片中可配置存儲(chǔ)單元SRAM的常見結(jié)構(gòu)為六管結(jié)構(gòu)[3],如圖1所示。兩個(gè)PMOS管M3和M4是負(fù)載管,主要是用來補(bǔ)償存儲(chǔ)管和開關(guān)管漏端電荷的泄放。與M3和M4構(gòu)成反相器對(duì)的兩個(gè)NMOS管M1和M2是存儲(chǔ)管,數(shù)據(jù)和數(shù)據(jù)的反分別存放在Q和QN點(diǎn)。而柵極與字線(WL)相連的兩個(gè)NMOS管M5和M6起開關(guān)的作用,BIT和BITN為兩條位線。SRAMVDD為SRAM提供電源。
圖1 SRAM六管結(jié)構(gòu)圖
為了提高FPGA芯片的安全性和啟動(dòng)的穩(wěn)定性,本文采用的FPGA電路上電順序分為以下幾個(gè)步驟:
(1)接通電源,上電復(fù)位電路開始檢測電源電壓;
(2)SRAM單元在電源電壓上電時(shí)完成第一次初始化;
(3)SRAM的電源電壓SRAMVDD保持為零,數(shù)據(jù)輸入端保持為零;
(4)所有SRAM的第一地址驅(qū)動(dòng)電壓生效,上拉到FPGA內(nèi)核電源電壓;
(5)將所有SRAM的電源電壓偏壓到VDD;
(6)通過LDO電路開始調(diào)整SRAM的電源電壓到VLDO;
(7)FPGA芯片開始正常的配置操作。
當(dāng)電源電壓緩慢上升時(shí),上電檢測電路開始工作,同時(shí)所有的SRAM由于QN和Q負(fù)載的不同,SRAM出現(xiàn)第一次自動(dòng)的初始化,內(nèi)部Q存儲(chǔ)的數(shù)據(jù)變?yōu)?或1。此時(shí)SRAM中存儲(chǔ)的狀態(tài)均為確定值,可大大減小上電時(shí)SRAM的電流。電源上電檢測完成,上電復(fù)位信號(hào)POR_TRIP由高電平跳變成低電平,此時(shí)狀態(tài)機(jī)開始工作,產(chǎn)生一系列復(fù)位信號(hào),時(shí)序圖如圖2所示。在時(shí)間點(diǎn)A之前,SRAM的電源電壓SRAM VDD保持為零,字線WL的驅(qū)動(dòng)電壓WL_VS保持為零,SRAM的數(shù)據(jù)輸入端保持為零。POR_1發(fā)生跳變后,WL_VS被上拉到FPGA內(nèi)核電源電壓1.1 V。在時(shí)間點(diǎn)B,SRAM VDD偏壓到偏置電壓,BIT端依然保持為零,此時(shí)SRAM陣列根據(jù)從地址譯碼器接收到的地址,逐列打開WL,對(duì)SRAM陣列進(jìn)行第二次初始化,將BIT端的數(shù)值0逐列寫入SRAM單元,從而保證每一位配置存儲(chǔ)器存儲(chǔ)的數(shù)據(jù)均為0。由于大部分SRAM單元在第一次初始化時(shí)內(nèi)部存儲(chǔ)的值已經(jīng)為0,因此第二次初始化只有小部分的值需要從1改寫為0,這也大大減小了改寫時(shí)SRAM的電流。從時(shí)間點(diǎn)C開始,SRAMVDD電壓逐步偏壓到LDO的輸出電壓。在時(shí)間點(diǎn)E,WL_VS電壓也略微升高,始終高于SRAM VDD。FPGA芯片開始正常的配置操作,可重新按需求對(duì)SRAM進(jìn)行配置。
圖2 上電復(fù)位信號(hào)時(shí)序圖
基于上述上電復(fù)位的過程,F(xiàn)PGA芯片中的上電狀態(tài)機(jī)實(shí)現(xiàn)如圖3所示。
圖3 上電狀態(tài)機(jī)控制框圖
POR上電檢測完成后的復(fù)位信號(hào)觸發(fā)POR狀態(tài)機(jī)開始工作,POR狀態(tài)機(jī)產(chǎn)生一組復(fù)位信號(hào)分別控制LDO模塊、配置控制器、地址驅(qū)動(dòng)模塊。其中LDO模塊用于產(chǎn)生SRAM的電源SRAM VDD,地址驅(qū)動(dòng)模塊用來產(chǎn)生SRAM的字線WL的地址,配置控制器則負(fù)責(zé)將數(shù)據(jù)傳遞到DSR模塊,通過DSR模塊傳輸?shù)絊RAM的BIT端和BITN端。
SRAM的電源電壓產(chǎn)生電路LDO模塊的設(shè)計(jì)基于低功耗考慮,采用可掛起的模式,具體結(jié)構(gòu)見圖4。
圖4 LDO結(jié)構(gòu)圖
根據(jù)圖2所示的上電復(fù)位流程,SRAM的電源電壓SRAM VDD受狀態(tài)機(jī)的控制,分為4個(gè)階段。一開始,SRAM VDD保持為0;后來,SRAM VDD的值由圖4右側(cè)的電路產(chǎn)生,其中VBIAS的電壓由POR控制的電阻分壓電路產(chǎn)生,此時(shí)SRAM VDD電壓偏低,記為Vbias_out。隨后圖4中左側(cè)LDO開始工作,SRAM VDD電壓逐漸變?yōu)長DO提供,此時(shí)SRAM VDD的值高于Vbias_out,記為VLDO。
在SMIC 40 nm工藝下對(duì)電路進(jìn)行了實(shí)現(xiàn),采用cadence的仿真工具spectre對(duì)電路進(jìn)行了仿真,狀態(tài)機(jī)仿真波形如圖5所示。電源上電,上電復(fù)位檢測成功,POR_TRIP由高電平1.1 V跳變到低電平0 V,此時(shí)狀態(tài)機(jī)開始工作,依次產(chǎn)生POR_1~POR_5一系列不同延遲的復(fù)位信號(hào)。
圖5 上電復(fù)位信號(hào)仿真波形
由于電路規(guī)模較大,考慮到復(fù)位信號(hào)延遲時(shí)間比較長,下面的仿真模擬了狀態(tài)機(jī)的順序,縮減狀態(tài)機(jī)的工作時(shí)間,對(duì)受上電復(fù)位狀態(tài)機(jī)控制的LDO進(jìn)行了仿真,模擬SRAM VDD不同階段的電壓,仿真波形如圖6所示。
如圖6的仿真波形所示,一開始SRAM VDD的值為0,后來SRAM VDD的值約為1.18 V,當(dāng)LDO開始工作后,SRAM VDD電壓開始上升至1.28 V。
圖6 SRAM VDD仿真波形
本文采用SMIC 40 nm工藝,設(shè)計(jì)實(shí)現(xiàn)了一種上電復(fù)位狀態(tài)機(jī),在電路內(nèi)部產(chǎn)生一系列受狀態(tài)機(jī)控制的復(fù)位信號(hào),使得存儲(chǔ)單元SRAM的數(shù)據(jù)、地址以及電源都受上電狀態(tài)機(jī)的控制,保持合適的電壓有利于SRAM存儲(chǔ)的數(shù)據(jù)在上電時(shí)完成初始化。該上電狀態(tài)機(jī)結(jié)構(gòu)已應(yīng)用于某重點(diǎn)項(xiàng)目工程實(shí)踐中,可大大減少上電時(shí)芯片的啟動(dòng)電流,提高SRAM啟動(dòng)時(shí)的穩(wěn)定性,增強(qiáng)FPGA芯片的安全性。
[1]王道憲.CPLD/FPGA可編程邏輯器件應(yīng)用與開發(fā)[M].北京:國防工業(yè)出版社,2004.
[2]Xilinx.Virtex-5 FPGA Configuration User Guide[P].2012.
[3]R JacobBaker,Harry W Li,David E Boyce.CMOS電路設(shè)計(jì)、布局與仿真[M].北京:機(jī)械工業(yè)出版社,2006.
Design of Power-on Reset State Machine for FPGA
XU Yuting1,GENG Yang1,DONG Yiping2,HU Kai2
(1.East Technologies,inc.Wuxi 214072,China;2.China Electronics Technology Group Corporation No.58 Research Institute,Wuxi 214072,China)
A design of power-on reset state machine for FPGA is presented in the paper.The state machine generates a set of reset signals to maintain proper voltage for memory cells.It ensures the memory cells initializes successfully during the power-on process and enhances FPGA reliability and stability.
FPGA;power on reset;state machine;SRAM
TN402
A
1681-1070(2017)01-0024-03
徐玉婷(1983—),女,江西南昌人,碩士,工程師,研究方向?yàn)榍f門級(jí)FPGA設(shè)計(jì)。
2016-6-3
國家科技重大專項(xiàng)資助項(xiàng)目(2015ZX01018101-005)