張 瑩,朱恒靜,蘇 妤
(中國航天宇航元器件工程中心,北京 100094)
FPGA宇航應(yīng)用全流程保證技術(shù)
張 瑩,朱恒靜,蘇 妤
(中國航天宇航元器件工程中心,北京 100094)
文章分析了 FPGA的結(jié)構(gòu)特點,結(jié)合宇航型號研制流程和國內(nèi)近年來元器件保證技術(shù)的研究和工程實踐,提出了 FPGA宇航應(yīng)用保證流程和保證的內(nèi)容,針對其中的器件測試、封裝工藝鑒定、開發(fā)驗證和確認、單粒子效應(yīng)減緩措施等關(guān)鍵技術(shù)進行了深入研究。文章提出的相關(guān)技術(shù)可以作為 FPGA宇航應(yīng)用評價和保證的參考。
FPGA;宇航應(yīng)用;元器件保證
隨著宇航型號研制技術(shù)的不斷發(fā)展,用戶技術(shù)指標(biāo)的不斷提高,功能集成和微小型化已經(jīng)成為星載電子設(shè)備的主流趨勢。采用大容量、高密度、高性能的FPGA,能夠使星載電子設(shè)備體積減小、重量減輕、功耗降低,縮小電路板的尺寸,減少焊盤數(shù)量,提高航天器承載有效載荷的能力及功效比,還能充分利用冗余技術(shù)提高系統(tǒng)的容錯能力,需求不斷增加。
雖然 FPGA在航天型號中的推廣使用呈逐年上升的趨勢,但FPGA的設(shè)計和結(jié)構(gòu)特點使其在宇航領(lǐng)域應(yīng)用需要進行一系列的評估和驗證工作。NASA每年均會針對有選用需求的新型FPGA制定評估計劃并實施,如針對新工藝的宇航鑒定[1-2]、新型封裝的可靠性評估[3]、抗輻射能力評估[4]等。ESA要求在決定飛行設(shè)備使用FPGA前,應(yīng)進行全面、系統(tǒng)的風(fēng)險和可行性評估,并通過多年的研究和實踐工作,形成了FPGA應(yīng)用相關(guān)的指南[5-6]。國內(nèi)對宇航用FPGA保證的研究也逐步深入,除傳統(tǒng)的器件級篩選試驗外,開展了FPGA應(yīng)用驗證和應(yīng)用保證的研究。
本文研究建立了覆蓋 FPGA的宇航應(yīng)用全流程的保證方法,然后對流程中的器件測試表征、封裝工藝鑒定、開發(fā)驗證和確認、單粒子效應(yīng)減緩措施等方面進行了深入分析。
根據(jù)編程特性,目前 FPGA的主要類型有SRAM型、Flash型和反熔絲型,就其在航天領(lǐng)域的應(yīng)用而言,每類技術(shù)都有各自的優(yōu)缺點。由于SRAM可以方便地進行重復(fù)擦寫,基于SRAM技術(shù)的FPGA得到了廣泛應(yīng)用,但其最大的缺點是容易發(fā)生單粒子翻轉(zhuǎn),且通常需要使用外部非易失性存儲器來存儲相關(guān)的配置信息,上電加載過程中容易產(chǎn)生錯誤指令。Flash型FPGA結(jié)合了非易失性和可重復(fù)編程的特點,上電后無須配置時間,靜態(tài)功耗低,但其擦寫壽命有限,抗單粒子翻轉(zhuǎn)能力較PROM差,難以防護,空間應(yīng)用具有一定風(fēng)險。反熔絲型FPGA具有信息安全性高、抗輻射性能優(yōu)越的特點,但無法重復(fù)編程,規(guī)模和密度也遠低于采用SRAM可編程技術(shù)的FPGA。
FPGA通常用于航天器的關(guān)鍵分系統(tǒng)和單機,由于其結(jié)構(gòu)和功能的特殊性,傳統(tǒng)的集成電路保證方法不完全適用于 FPGA的性能驗證和可靠性評估,如對FPGA的設(shè)計和工藝的鑒定、對器件特性驗證的特殊要求以及針對應(yīng)用中薄弱環(huán)節(jié)的保證,均是在傳統(tǒng)保證方法基礎(chǔ)上針對 FPGA器件特性提出的特殊保證要求。
FPGA保證應(yīng)在分析FPGA設(shè)計、工藝特點的基礎(chǔ)上開展,一般包括評估、工藝鑒定、應(yīng)用驗證,以及裝機產(chǎn)品保證和應(yīng)用保證。具體保證內(nèi)容可視FPGA研制和應(yīng)用的成熟度確定。
對于新研制FPGA的保證,可以考慮與FPGA研制、型號應(yīng)用同步開展。保證流程是一種與器件研制流程、宇航型號研制流程有切入、反饋關(guān)系的關(guān)聯(lián)結(jié)構(gòu)。FPGA保證不是一項孤立的工作,相關(guān)流程也需要保證工作的反饋結(jié)果對其是否進行下一步工作提供參考依據(jù)。
開展FPGA保證工作前,應(yīng)首先對型號需求和器件現(xiàn)狀進行分析,確定FPGA保證各階段的具體工作項目。對需要開展的工作項目之間的關(guān)聯(lián)關(guān)系進行分析,確定各項目之間的關(guān)聯(lián)結(jié)構(gòu),建立覆蓋FPGA宇航應(yīng)用全流程的保證方法。
2.1 FPGA評估
FPGA評估包括生產(chǎn)廠評估、設(shè)計評估、結(jié)構(gòu)分析和極限評估。
1)生產(chǎn)廠評估。包括:分析產(chǎn)品的研制流程;分析FPGA的生產(chǎn)流程,以及生產(chǎn)流程中每項試驗的依據(jù)說明、試驗程序和方法;分析生產(chǎn)線狀態(tài),檢查該生產(chǎn)線是否具備持續(xù)生產(chǎn)能力,生產(chǎn)線質(zhì)量是否穩(wěn)定;分析生產(chǎn)廠是否具備持續(xù)供貨的能力;分析生產(chǎn)廠質(zhì)量保證能力,包括生產(chǎn)廠質(zhì)量保證計劃、開展的質(zhì)量保證工作、生產(chǎn)廠進行可靠性試驗的條件和試驗數(shù)據(jù)等方面的內(nèi)容。
2)設(shè)計評估。包括結(jié)構(gòu)設(shè)計評估、前端邏輯評估和后端版圖評估,重點分析設(shè)計流程、IP核、設(shè)計過程的驗證和確認、可靠性設(shè)計的手段、采用的抗輻射設(shè)計手段、失效模式。
3)結(jié)構(gòu)分析。包括器件封裝設(shè)計和結(jié)構(gòu)分析評價、芯片設(shè)計和結(jié)構(gòu)分析、器件熱分布分析、主要結(jié)構(gòu)的工藝可靠性分析、材料分析、應(yīng)用于空間環(huán)境的設(shè)計結(jié)構(gòu)可靠性分析等。
4)極限評估。根據(jù)FPGA器件特性和應(yīng)用環(huán)境應(yīng)力不同,選擇合適的試驗項目(溫度應(yīng)力、電應(yīng)力、機械應(yīng)力和綜合應(yīng)力試驗)和試驗方式(恒定應(yīng)力試驗方式和步進應(yīng)力試驗方式)。
2.2 工藝鑒定
針對FPGA工藝的鑒定,是指在掌握FPGA生產(chǎn)工藝、失效機理的基礎(chǔ)上,基于失效機制建立設(shè)計準(zhǔn)則,以及激活能與特定失效機制之間的關(guān)聯(lián)關(guān)系。FPGA工藝鑒定的內(nèi)容包括晶片生產(chǎn)工藝鑒定、封裝工藝鑒定和器件特性表征。
FPGA生產(chǎn)工藝包含了熱載流子效應(yīng)、與時間相關(guān)的介質(zhì)擊穿、電遷移和負偏壓溫度不穩(wěn)定性等幾種基本的物理退化機制,鑒定應(yīng)針對上述失效機制進行。應(yīng)針對生產(chǎn)工藝進行長期可靠性試驗,以及失效率驗證試驗;通過多個生產(chǎn)批次、不同批次的重復(fù)性及成品率(應(yīng)具有多個晶圓的統(tǒng)計數(shù)據(jù)),分析工藝的成熟性。
FPGA封裝工藝鑒定可依據(jù)GJB 7400[7]附錄B進行,采用非氣密陶瓷封裝工藝的器件鑒定可依據(jù)MIL- PRF-38535K[8]進行。
FPGA器件特性表征需要定制測試向量實現(xiàn)對FPGA的特性或功能驗證。在FPGA研發(fā)、制造和驗證的整個流程中,有許多測試點,可以在晶圓制造階段采用設(shè)計專用測試點的方式,或封裝之后對器件進行測試,通過三溫測試獲取器件電性能參數(shù)和基本功能時序參數(shù),并使用特別設(shè)計的測試向量和條件進行器件邏輯仿真。
2.3 應(yīng)用驗證
FPGA應(yīng)用驗證應(yīng)覆蓋其功能和性能、可靠性、應(yīng)用適應(yīng)性3個方面:
1)功能和性能。包括功能、規(guī)范規(guī)定的參數(shù)、極限參數(shù)等。
2)可靠性。包括設(shè)計可靠性、結(jié)構(gòu)可靠性、工藝可靠性、禁限用材料、可靠性試驗等。
3)應(yīng)用適應(yīng)性。包括空間環(huán)境適應(yīng)性、力學(xué)環(huán)境適應(yīng)性、熱學(xué)環(huán)境適應(yīng)性、系統(tǒng)適應(yīng)性、裝聯(lián)工藝適應(yīng)性等。
具體驗證項目如表1所示。
2.4 裝機產(chǎn)品保證
FPGA裝機產(chǎn)品保證包括采購規(guī)范編制、監(jiān)制、驗收、補充篩選、DPA及使用控制等工作項目。由于FPGA結(jié)構(gòu)和功能的復(fù)雜性,在產(chǎn)品驗收中需要重點關(guān)注篩選過程的老煉試驗、測試等項目的實施結(jié)果。
2.5 FPGA應(yīng)用保證
FPGA應(yīng)用保證包括對單粒子效應(yīng)的系統(tǒng)加固措施和對FPGA設(shè)計開發(fā)的驗證。
FPGA宇航應(yīng)用應(yīng)關(guān)注單粒子效應(yīng),通過地面評估試驗獲得器件抗單粒子能力,有針對性地采取系統(tǒng)級加固措施,如三模冗余、定時刷新或備份措施等,并對加固結(jié)果進行評估。
對 FPGA設(shè)計開發(fā)的驗證應(yīng)重點關(guān)注系統(tǒng)級需求、FPGA開發(fā)的功能性能規(guī)范的驗證,以及軟件代碼的驗證,可通過測試和仿真手段實施。
3.1 FPGA器件測試表征
FPGA器件測試與傳統(tǒng)集成電路不同,每個實現(xiàn)具體功能的FPGA都可視為一個定制集成電路,需要定制測試向量。測試可用于晶圓制造階段或封裝之后對器件進行測試,也可以用于篩選試驗,如老煉試驗。FPGA的測試需要對FPGA進行編程,使FPGA實現(xiàn)某種特定功能。測試的關(guān)鍵點包括多種內(nèi)嵌資源的測試、可編程互聯(lián)資源測試、系統(tǒng)整體測試、功耗測試和內(nèi)部延時測試。完整的FPGA測試應(yīng)按照器件內(nèi)部結(jié)構(gòu)將其劃分為多個獨立的模塊,按照不同模塊的功能進行特定的測試向量設(shè)計,如針對SRAM型FPGA,可編程互聯(lián)資源的測試應(yīng)包括對內(nèi)部DCM、BRAM、CLB、IOB、IOL等所有可提供的用戶可編程資源測試,配置功能測試應(yīng)通過配置控制模塊對 FPGA內(nèi)部進行特定的數(shù)據(jù)寫入和回讀,覆蓋所有的配置數(shù)據(jù)存儲單元。
測試向量與器件退化的對應(yīng)基于故障模型的分析和建立。開發(fā)結(jié)構(gòu)化測試向量時,模型基于Verilog開發(fā),應(yīng)用于門級電路。這些模型通常被設(shè)計成易于計算的而不是“故障精確”的,使得與模型對應(yīng)的測試向量會遺漏芯片上呈正態(tài)分布的缺陷。造成這種現(xiàn)象的原因之一是應(yīng)用側(cè)重于門互連,輸出主線和支線常常被分離對待。FPGA主要的邏輯故障見表2。
表2 FPGA主要的邏輯故障模型Table 2 Main logic fault model of FPGA
除了數(shù)字邏輯,現(xiàn)代FPGA還使用大量存儲單元,結(jié)構(gòu)的唯一性向測試存儲單元提出一系列問題。除了固定故障等通用故障模型,其他故障模型還有耦合故障、干擾故障和滯留故障,存儲單元的測試通?;谒惴ǘ皇枪收夏P汀?/p>
電測試與器件現(xiàn)象映射關(guān)系的建立仍然是一個主要研究領(lǐng)域。構(gòu)建的測試向量應(yīng)能映射引起可靠性降低的潛在物理機制。被測設(shè)計和器件級待測參量的測試向量之間的關(guān)系十分復(fù)雜。具體測試電路的設(shè)計在FPGA驗證中的作用已經(jīng)越來越重要。圖1說明了潛在器件退化現(xiàn)象與FPGA測試向量之間的邏輯映射。
3.2 FPGA封裝工藝鑒定
隨著FPGA規(guī)模的不斷增加,芯片尺寸相應(yīng)增大,器件封裝越來越復(fù)雜,倒裝結(jié)構(gòu)的封裝方式是多管腳復(fù)雜大規(guī)模集成電路常用的封裝方式,如Xilinx公司Virtex系列第4代之后的FPGA采用了非密封封裝形式。倒裝芯片焊盤通過凸點與基板連接,用環(huán)氧樹脂來填充縫隙,以保護凸點;芯片背面黏接到散熱板上;采用高密度柱柵陣列作為封裝引腳,另外,在封裝外部陶瓷基板上黏接片式電容達到去耦作用。
在宇航應(yīng)用的極端溫度環(huán)境和真空環(huán)境條件下,非密封封裝可能帶來的可靠性風(fēng)險包括:環(huán)境交變導(dǎo)致的應(yīng)力對封裝材料的影響;水汽對有機材料和芯片的影響;真空環(huán)境對有機材料的影響等。這種封裝工藝涉及倒裝焊、填充物、黏接材料、柱柵等方面,其鑒定涉及的應(yīng)力包括溫度循環(huán)、溫濕度應(yīng)力、機械應(yīng)力。封裝工藝特性表征和鑒定可參照MIL-PRF-38535K及GJB 7400的規(guī)定。
3.3 FPGA單粒子效應(yīng)減緩措施
針對FPGA的單粒子效應(yīng),應(yīng)從設(shè)計加固、工藝選擇和加固、應(yīng)用加固3方面予以減緩。在設(shè)計加固方面,可以采用抗輻射加固結(jié)構(gòu)設(shè)計,優(yōu)化內(nèi)部關(guān)鍵路徑設(shè)計,減少數(shù)據(jù)和控制線的抖動引起的誤觸發(fā)或者數(shù)據(jù)鎖存錯誤。在工藝選擇和加固方面,可以選擇外延層工藝、SOI/SOS工藝,埋層和三勢阱是工藝加固的有效措施,見表3。在應(yīng)用加固方面,可以采用冗余、刷新、重啟等措施緩解單粒子效應(yīng)導(dǎo)致的風(fēng)險,根據(jù)應(yīng)用需求選擇局部或全局冗余技術(shù),并配合配置存儲器的定時刷新,可以大大降低FPGA發(fā)生單粒子錯誤的概率,見表4。
表3 FPGA工藝選擇和加固策略Table 3 Technology selection for dealing with FPGA radiation effects
表4 主要的FPGA應(yīng)用加固措施Table 4 Main SEE mitigation technique
三模冗余(TMR)技術(shù)非常適用于FPGA,因為它提供了包括用戶組合和時序邏輯、布線資源及I/O端口在內(nèi)的全面硬件冗余,但其最突出的問題就是設(shè)計占用面積和功耗的開銷較大。TMR技術(shù)最大的特點就是對1個邏輯電路復(fù)制3份,對其結(jié)果進行表決輸出,通常情況下取多數(shù)結(jié)果作為最后的輸出結(jié)果。配置存儲器的刷新:利用FPGA在配置完成后支持用戶對配置數(shù)據(jù)進行回讀的特性,將配置幀數(shù)據(jù)回讀,與配置存儲器中的原始數(shù)據(jù)進行比較,如發(fā)現(xiàn)存在錯誤的比特流位,則對其進行修改后重新配置到 FPGA中。TMR技術(shù)的實現(xiàn)在ASIC中與在FPGA上存在很多不同,在ASIC中,僅局限于保護用戶設(shè)計中的觸發(fā)器結(jié)構(gòu),而不需要考慮對邏輯路徑的保護,這是由于在集成電路中,觸發(fā)器與觸發(fā)器之間的路徑都是固化的,屬于硬連接,而不同于FPGA中可編程的互連結(jié)構(gòu)。對于特定的邏輯結(jié)構(gòu),TMR技術(shù)足以抵御SEU效應(yīng),但是不能抵御 SET效應(yīng),更深層次的保護可以通過全模塊冗余來實現(xiàn)。全局TMR是基于FPGA結(jié)構(gòu)的特殊性而提出來的,因為所有的邏輯路徑,不僅僅是觸發(fā)器,都會受到SEU的影響。這就意味著將在FPGA中實現(xiàn)3個相同的設(shè)計模塊來減緩單粒子翻轉(zhuǎn)效應(yīng)和單粒子瞬時效應(yīng)。
3.4 FPGA開發(fā)驗證和確認
FPGA常作為控制或數(shù)據(jù)處理的關(guān)鍵器件用于航天器的中央處理單元、數(shù)傳分系統(tǒng)等。在航天器方案設(shè)計階段,針對航天器的總體要求將被逐級分解為對分系統(tǒng)、單機級的需求和對FPGA的功能需求,形成FPGA的軟件設(shè)計規(guī)范,宇航應(yīng)用需求分析與FPGA器件研制實現(xiàn)的接口關(guān)系如圖2所示。
FPGA的設(shè)計通過HDL代碼實現(xiàn),而對設(shè)計的驗證和確認是FPGA宇航應(yīng)用的必要條件,以保證其能夠滿足航天器的系統(tǒng)級需求,特別是使用FPGA的關(guān)鍵分系統(tǒng)的需求。驗證和確認工作應(yīng)由獨立于用戶及FPGA生產(chǎn)廠的第三方進行。
FPGA的典型開發(fā)流程包括需求階段、設(shè)計階段和實現(xiàn)階段。
1)需求階段
FPGA需求階段的驗證和確認分析從器件設(shè)計規(guī)范開始,設(shè)計規(guī)范是實現(xiàn)層面的需求。在航天器系統(tǒng)級需求和性能的基礎(chǔ)上形成 FPGA功能級和實現(xiàn)級需求,所有這些需求一起構(gòu)成了設(shè)計的詳細要求。
FPGA需求階段驗證和確認的主要輸出是FPGA需求規(guī)格說明,通過建立有效的需求評估檢查單,跟蹤規(guī)范直到詳細的功能設(shè)計,并驗證軟件設(shè)計規(guī)范的正確性以及接口設(shè)計的完整性。在需求階段,驗證和確認還需要編制系統(tǒng)測試計劃和驗收測試計劃。
2)設(shè)計階段
功能設(shè)計階段[9]驗證和確認將需求分析翻譯成諸如頂層框圖、寄存器表、時序圖等形式的設(shè)計描述,并將這些設(shè)計產(chǎn)物與HDL定義的寄存器轉(zhuǎn)移級代碼形式的實際實現(xiàn)進行比較。
概要設(shè)計階段主要的驗證和確認是通過審查、評估、仿真的方法對設(shè)計文檔進行驗證。包括FPGA外圍部件(如電壓源、時鐘晶振、存儲器或微處理器等)的設(shè)計描述,應(yīng)對FPGA設(shè)計原理圖、狀態(tài)圖和時序圖進行全面驗證。
RTL設(shè)計階段主要的驗證和確認是對RTL代碼清單進行靜態(tài)檢查和動態(tài)仿真測試,靜態(tài)檢查并不運行代碼本身,僅對代碼設(shè)計說明、代碼結(jié)構(gòu)、流程圖進行分析;動態(tài)仿真測試需要運行代碼,對代碼的正確性、可測性、易讀性,以及接口協(xié)議正確性進行全面驗證。
3)實現(xiàn)階段
FPGA開發(fā)的實現(xiàn)階段始于詳細設(shè)計,詳細設(shè)計是功能設(shè)計的HDL代碼實現(xiàn),以及代碼綜合以產(chǎn)生表示FPGA虛擬結(jié)構(gòu)的網(wǎng)表。HDL代碼通常從IP庫代碼復(fù)用開始,利用軟件開發(fā)工具綜合代碼后,設(shè)計師可以運行仿真進行驗證和確認,或者進行到下一步并執(zhí)行布局布線以編程物理器件。
FPGA的保證應(yīng)貫穿器件設(shè)計、生產(chǎn)、質(zhì)量保證和應(yīng)用的全過程,應(yīng)在傳統(tǒng)質(zhì)量保證的基礎(chǔ)上,進一步提出對FPGA評估、工藝鑒定、應(yīng)用驗證和應(yīng)用保證要求。通過分析FPGA設(shè)計、工藝特點和失效機理,在器件保證各個階段有針對性地采取評價、驗證和應(yīng)用加固措施,以保證FPGA宇航應(yīng)用的可靠性。
本文提出了 FPGA宇航應(yīng)用全流程保證的概念和各階段的基本保證項目,識別了其中的關(guān)鍵保證項目并研究了保證的理論方法,可以作為新型FPGA或國產(chǎn)化研制FPGA宇航應(yīng)用進行評價和保證的參考。但由于FPGA器件的故障模型尚未被完全識別,且其可靠性與應(yīng)用關(guān)聯(lián)緊密,仍應(yīng)進一步深入開展研究工作,以及測試驗證、應(yīng)用驗證的工程實踐,并充分將器件保證與應(yīng)用相結(jié)合。
(References)
[1]DOUGLAS S.FPGA NEPP FY10 summary report: JPL Publication 10-8 9/2010[R]
[2]DOUGLAS S.FPGA NEPP FY09 summary report: JPL Publication 10-1 1/2010[R]
[3]DILLON R P.XILINX V4 package reliability: properties and reliability of underfill material: JPL Publication 12-6 3/2012[R]
[4]ALLEN G.Single-event effect(SEE) survey of advanced reconfigurable field programmable gate arrays: JPL Publication 11-18 12/2011[R]
[5]ESA.Trends and patterns of ASIC and FPGA use in European space missions[DB/CD].[2013-04-15].http://Amstel.estec.esa.int
[6]Techniques for radiation effects mitigation in ASICs and FPGAs: ESCC-Q-HB-60-02A[S].ESA-ESTEC
[7]合格制造廠認證用半導(dǎo)體集成電路通用規(guī)范: GJB 7400—2011[S].北京: 總裝備部軍標(biāo)出版發(fā)行部
[8]Performance specification: integrated circuits (Microcircuits) manufacturing, general specification for: MIL-PRF-38535H[S]
[9]劉瑞, 李朝歷, 李艷麗, 等.基于FPGA的核電廠安全級儀控系統(tǒng)驗證與確認[J].核電子學(xué)與探測技術(shù), 2014, 34(1): 103-106 LIU R, LI C L, LI Y L, et al.V & V for FPGA-based instrumentation and control systems of nuclear power plants[J].Nuclear Electronics & Detection Technology, 2014, 34(1): 103-106
(編輯:王 洋)
FPGA aerospace application assurance technology
ZHANG Ying, ZHU Hengjing, SU Yu
(China Aerospace Components Engineering Center, Beijing 100094, China)
This paper analyzes the construction feature of the FPGA, then proposes an aerospace application assurance process according to the spacecraft development process, based on the theories and practices of the components assurance.The assurance content of different stages is defined, as well as the details for the performance testing, the package technology evaluation and the design verification and validation.It may serve to guide the evaluation and the assurance of the FPGA aerospace application.
FPGA; aerospace application; component assurance
V439+.4
:A
:1673-1379(2017)01-0109-06
10.3969/j.issn.1673-1379.2017.01.018
張 瑩(1983—),女,碩士學(xué)位,從事型號元器件保證工作。E-mail: mindun_1983@163.com。
2016-07-29;
:2017-02-04
張瑩,朱恒靜,蘇妤.FPGA宇航應(yīng)用全流程保證技術(shù)[J].航天器環(huán)境工程, 2017, 34(1): 109-114
ZHANG Y, ZHU H J, SU Y.FPGA aerospace application assurance technology[J].Spacecraft Environment Engineering, 2017, 34(1): 109-114