,,
(新疆輕工職業(yè)技術(shù)學(xué)院 信息與軟件分院,烏魯木齊 830021)
固態(tài)存儲器在我國航天航空領(lǐng)域和工業(yè)行業(yè)得到了廣泛應(yīng)用,由于信息檢測技術(shù)的快速發(fā)展,數(shù)據(jù)存取技術(shù)也在不斷進(jìn)步,固態(tài)存儲器在短周期內(nèi)的海量信息存取成為了目前急需解決的難題。由于視頻、圖像、語音三路數(shù)據(jù)采集寬帶較大、速率要求較高,可以產(chǎn)生大量的數(shù)據(jù),將這些數(shù)據(jù)快速地存取到固態(tài)存儲器中成為該課題研究的主要方向。由于數(shù)據(jù)誤碼、內(nèi)存不足等問題,導(dǎo)致傳統(tǒng)控制性能變差,為此提出了固態(tài)存儲器短周期存取速度動態(tài)控制[1]。數(shù)據(jù)存取過程中的客觀條件變化是具有絕對性的,不變則是具有相對性的,因此在存取過程中必須隨著情況變化進(jìn)行存取速度的動態(tài)控制。針對動態(tài)控制的可靠性,進(jìn)行實(shí)驗分析,由實(shí)驗結(jié)果表明,動態(tài)控制使用均衡加重技術(shù)可降低數(shù)據(jù)誤碼出現(xiàn)的概率,擴(kuò)展內(nèi)存容量可提高信號存取速度,為此采用動態(tài)方式控制性能較強(qiáng)。
針對固態(tài)存儲器短周期存取速度控制方案的設(shè)計,采用現(xiàn)場可編程門陣列(FPGA)對LVDS接口設(shè)置以及數(shù)據(jù)的發(fā)送與處理進(jìn)行控制??删幊涕T陣列(FPGA)具有強(qiáng)大的邏輯處理能力,運(yùn)用豐富的陣列資源可實(shí)現(xiàn)對短周期內(nèi)數(shù)據(jù)存取速度的有效控制。LVDS是一種能夠滿足當(dāng)今高性能數(shù)據(jù)傳輸應(yīng)用的低壓差分信號傳輸技術(shù),能夠為數(shù)據(jù)的傳輸提供高達(dá)3.125 Gb/s的數(shù)據(jù)率性能,由于該方法消耗功率低、噪聲小,促使LVDS成為了目前工業(yè)領(lǐng)域最常用的信號傳輸技術(shù)[2]。選用美國生產(chǎn)的DS92LV1023和DS92LV1224型號半導(dǎo)體作為LVDS接口芯片組,一旦系統(tǒng)接通電源,那么經(jīng)過LVDS接口的芯片數(shù)據(jù)傳輸速度就可達(dá)到60 MB/s,而數(shù)據(jù)傳輸造成的功率消耗則小于300 mW。
將視頻數(shù)據(jù)和圖像信息全部存儲于固態(tài)存儲器之中,短周期存取速度控制原理如圖1所示。
圖1 短周期存取速度控制原理框圖
由圖1可知:LVDS接口接收的數(shù)據(jù),經(jīng)過轉(zhuǎn)換變成信號,以60 MB/s的速度發(fā)送出去。該原理采用模塊化設(shè)計方式,由1塊信號接口板和3塊數(shù)據(jù)存儲板組的,其中各個板塊是相互獨(dú)立的,單塊存儲模塊是由LVDS接口對數(shù)據(jù)接收,存儲器進(jìn)行存儲,結(jié)構(gòu)相對單一,為此,電路的連接設(shè)計也是比較簡單的。在接口板處進(jìn)行隔離處理,防止其它信號干擾,存儲模塊采用光電耦合器對信號進(jìn)行隔離,同時對存取的數(shù)據(jù)進(jìn)行均衡處理,將處理后的數(shù)據(jù)通過LVDS讀取出來,上傳至測試平臺,并通過USB接口將數(shù)據(jù)傳輸?shù)接嬎銠C(jī)中[3]。通過LVDS串行轉(zhuǎn)換,將數(shù)據(jù)轉(zhuǎn)換為信號,記錄該過程完成的時間,進(jìn)而計算數(shù)據(jù)存取速度,實(shí)現(xiàn)短周期存取速度的控制。
根據(jù)短周期存取速度控制原理可知,對存取的數(shù)據(jù)進(jìn)行均衡處理可實(shí)現(xiàn)短周期存取速度的控制,但是也存在數(shù)據(jù)誤碼、存儲內(nèi)存不足等問題,為了解決該問題,需進(jìn)行存取速度動態(tài)控制設(shè)計。
在短周期存取數(shù)據(jù)的過程中,由于出現(xiàn)數(shù)據(jù)誤碼,導(dǎo)致數(shù)據(jù)傳輸信號衰減,為了保證固態(tài)存儲器短周期存取速度動態(tài)控制的有效性,在優(yōu)化設(shè)計過程中采用具有針對性的數(shù)據(jù)傳輸介質(zhì)來解決數(shù)據(jù)誤碼問題。使用信號驅(qū)動器模擬信號發(fā)送端,使用信號均衡器模擬信號接收端,依然選用美國生產(chǎn)的DS92LV1023和DS92LV1224型號半導(dǎo)體作為LVDS接口芯片組,并在此基礎(chǔ)上,增加電纜延展器,通過雙絞線或使用同一軸線來驅(qū)動芯片內(nèi)的數(shù)據(jù)流[4]。利用電纜延展器可驅(qū)動來自串行的數(shù)據(jù)流,實(shí)現(xiàn)雙絞線或使用同一軸線上的數(shù)據(jù)進(jìn)行均衡傳輸,方便對速度進(jìn)行動態(tài)控制。
使用某公司生產(chǎn)的DS15EA101型號均衡器,可自動均衡出發(fā)送器或驅(qū)動器信號發(fā)射的幅值[5]。針對100歐姆的差分信號,使用該均衡器最佳發(fā)射幅值為±400 mV。DS15EA101型號的均衡器對數(shù)據(jù)均衡處理肯定會耗費(fèi)一定能量,使用檢測電路可將該能量轉(zhuǎn)換為信號形式輸入進(jìn)去,模擬信號傳輸狀態(tài),將接收到的信號信息再次傳遞給均衡處理器,利用該處理器控制信號傳輸?shù)乃俣?。將該部分接收的信息與原始信息進(jìn)行對比,根據(jù)對比結(jié)果調(diào)整自動均衡處理器,使傳輸速度穩(wěn)定在一定范圍內(nèi),進(jìn)而提高數(shù)據(jù)傳輸?shù)牧考壴鲆鎇6]。
數(shù)據(jù)的輸出是通過電容交流耦合作用實(shí)現(xiàn)的,在DS15EA101型號均衡器中,接收的芯片端口連接著100歐姆的負(fù)載電荷,布置PCB板時盡量貼近該均衡器的輸入端口,縮短數(shù)據(jù)傳輸之間的距離,方便數(shù)據(jù)存取速度控制。而在均衡器的輸出端口處,需要安裝一個外置的最佳發(fā)射幅值上拉電阻和兩個50 Ω、精度為1%的普通電阻。選擇100 Ω的雙絞線傳輸介質(zhì)電阻,采用交流耦合方式,使輸出的電阻值達(dá)到953 Ω。而在電纜接收端口處,也需要設(shè)置上拉電阻,同樣采用交流耦合方式,在芯片組輸入端處設(shè)立外置交流耦合濾波電容,并與100歐姆的電阻相匹配。
根據(jù)上述采用的均衡加重技術(shù),設(shè)置不同阻值的電阻來均衡電路中電流的傳輸,控制固態(tài)存儲器在短周期內(nèi)的電路穩(wěn)定運(yùn)行[7]。由于電路采用串行連接方式,電壓為定值,一旦電阻變大,那么電流值將下降,雖然控制了電路穩(wěn)定運(yùn)行,但是對于運(yùn)行時間還需進(jìn)行優(yōu)化,為此提出了分時加載操作方法,增加固態(tài)存儲器內(nèi)存,最大限度提高數(shù)據(jù)平均寫入時間。
采用NANDFLASH存儲器可增加固態(tài)存儲器內(nèi)存,由于其內(nèi)部采用非線性宏單元模式,為固態(tài)大容量內(nèi)存的實(shí)現(xiàn)提供了廉價有效的解決方案。NANDFLASH具有頁編程、塊擦除功能,也具有專項執(zhí)行能力,當(dāng)NANDFLASH在執(zhí)行自身功能時,不會受到其它因素影響,直至自身任務(wù)完成。采用該存儲器可靠性較強(qiáng),但也必然會拖延數(shù)據(jù)存取時間,為此在FLASH頁編程過程中,增加加載過程和自動編程過程。其中加載過程需要完成命令指定、地址下發(fā)、數(shù)據(jù)寫入等過程;而自動編程過程相對加載過程較為復(fù)雜,當(dāng)加載完成第一平面的FLASH后,第一平面所指定的頁面直接進(jìn)行自動編程,在編程的同時,正在加載第二平面的FLASH,并以此類推[8]。當(dāng)加載完成第N平面FLASH后,第N-1平面所指定的頁面已經(jīng)完成自動編程,最終再對第N平面自動編程,如此循環(huán)。
利用分時加載操作,使用NANDFLASH增加固態(tài)存儲器內(nèi)存,可保證數(shù)據(jù)被不斷寫入芯片中,大大提高了短周期存取寫入時間,具體的分時加載操作示意圖如圖2所示。
圖2 分時加載操作示意圖
設(shè)NANDFLASH分時加載等級為m,那么加載時長需滿足大于等于最大編程時長,約束條件如下所示:
(m-1)t1≥t2
(1)
公式(1)中:t1為指定地址數(shù)據(jù)進(jìn)行加載的時長;t2為自動編程的時長。分時加載狀態(tài)下的NANDFLASH固態(tài)存儲器平均存取時間為:
(2)
公式(2)中:S為并行存儲芯片數(shù)量。
采用NANDFLASH分時加載操作,令平面1和平面2為第一組,平面3和平面4為第二組,對上述2組當(dāng)分時加載運(yùn)行起來后,任何一個時間段內(nèi),都會存在若干個小操作同時運(yùn)轉(zhuǎn)。交替雙平面編程方式采用2級分時加載級數(shù),根據(jù)公式(1)和(2)可獲取平均寫入速度,能夠滿足固態(tài)存儲器短周期存取速度動態(tài)控制優(yōu)化設(shè)計需求。
上述使用NANDFLASH進(jìn)行分時加載操作時,頁面容量為4 KB。根據(jù)該存儲器自動編程特點(diǎn),設(shè)置FLASH一頁內(nèi)存容納二級緩存FIFO,即先入先出資源,由于一級緩存需要容量是二級緩存需要容量的2倍,那么兩片F(xiàn)LASH內(nèi)存可容納兩個二級緩存FIFO資源[9]?;贔PGA的二級緩存示意圖如圖3所示。
圖3 基于FPGA的二級緩存邏輯示意圖
根據(jù)FPGA雙口資源對接收的信號進(jìn)行判斷,如果處理器接收到來自主機(jī)的傳輸信號,那么LVDS接口芯片組就會接收來自視頻、語言、圖像信號進(jìn)行解碼信號;如果處理器未接收到傳輸信號,那么LVDS接口芯片組就會接收來自其他來源的信號進(jìn)行解碼。利用芯片組將接口的信號傳送到一級FIFO_ 8k之中,如果接收的信號轉(zhuǎn)換為數(shù)據(jù)形式,且寫入的數(shù)據(jù)大于4160字節(jié),那么將該字節(jié)以60 MB/s的速度進(jìn)行讀取,當(dāng)讀取到第4096個字節(jié)時,緩存到二級FIFO_ 4k之中。判斷接收的信號流情況,將信號轉(zhuǎn)換為數(shù)據(jù),再判斷二級緩存數(shù)據(jù)量大小,如果寫入的數(shù)據(jù)大于10字節(jié),那么將該字節(jié)以30 MB/s的速度進(jìn)行讀取。在此基礎(chǔ)上,再次判斷一級緩存數(shù)據(jù)量大小,如果數(shù)據(jù)量還是大于4160字節(jié),則繼續(xù)以60 MB/s速度進(jìn)行讀取,當(dāng)讀取到4096個字節(jié)時緩存到二級FIFO_ 4k之中,并全部寫入FLASH B模塊中。
使用多線組合指令控制方式減少單一控制線的使用數(shù)量,可實(shí)現(xiàn)控制指令的快速擴(kuò)充,促使整個電路使用起來更加簡單,方便工作人員進(jìn)行調(diào)試。在固態(tài)存儲器中,使用NANDFLASH交替雙平面編程方式可滿足上位機(jī)快速對指令控制的需求,以上位機(jī)發(fā)送的命令為基礎(chǔ),對存儲器下達(dá)數(shù)據(jù)讀、寫、擦除、復(fù)位等一系列執(zhí)行命令,該命令傳達(dá)的可靠性是存取速度動態(tài)控制的首要問題。
采用并行發(fā)送方式將上位機(jī)的指令傳送給存儲器,指令數(shù)量x與控制線y之間的關(guān)系為:
2y>x
(3)
通常情況下,固態(tài)存儲器會使用6個指令,那么控制線為3條,在FPGA邏輯控制中會使用三線制指令來控制數(shù)據(jù)存取速度。具體指令定義如表1所示。
表1 具體指令定義
根據(jù)表1中具體指令定義對信息讀、寫、擦除、復(fù)位等一系列執(zhí)行命令進(jìn)行控制,并利用三線制組合成不同指令,以此為基礎(chǔ)實(shí)現(xiàn)短周期存取速度動態(tài)控制。
針對短周期存取速度控制方案設(shè)計中存在的數(shù)據(jù)誤碼、存儲內(nèi)存不足問題,使用均衡加重技術(shù)降低數(shù)據(jù)誤碼出現(xiàn)的概率,采用NANDFLASH存儲器進(jìn)行分時加載操作擴(kuò)大存儲內(nèi)存。利用二級緩存對擴(kuò)大后的內(nèi)存數(shù)據(jù)進(jìn)行緩存讀取,根據(jù)多線組合指令減少控制線數(shù)量,提高動態(tài)控制指令擴(kuò)充速度,進(jìn)而實(shí)現(xiàn)固態(tài)存儲器短周期存取速度動態(tài)控制。
為了驗證固態(tài)存儲器短周期存取速度動態(tài)控制設(shè)計的合理性進(jìn)行了如下實(shí)驗。測試臺的信號源發(fā)送是通過自動加載數(shù)據(jù)實(shí)現(xiàn)的,當(dāng)數(shù)據(jù)回讀到計算機(jī)中,通過視頻回放采集數(shù)據(jù)。針對數(shù)據(jù)誤碼、存儲內(nèi)存不足問題,專門成立實(shí)驗小組展開研究。
由于信號在傳輸過程中受到外界干擾,導(dǎo)致信號強(qiáng)度降低,致使信號受到破壞,出現(xiàn)誤碼。使用人造噪音來干擾模擬的現(xiàn)實(shí)環(huán)境,由此驗證數(shù)據(jù)誤碼對動態(tài)控制的影響。
為了使實(shí)驗結(jié)果更具有可靠性,將傳統(tǒng)控制方法與動態(tài)控制方法對數(shù)據(jù)誤碼進(jìn)行對比分析,結(jié)果如圖4所示。
圖4 不同控制方法數(shù)據(jù)誤碼對比結(jié)果
由圖4可知:在信號接收端黑色實(shí)心點(diǎn)與白色實(shí)心點(diǎn)數(shù)量相差較小,也就說明傳統(tǒng)控制信號接收產(chǎn)生的誤碼率與動態(tài)控制信號接收產(chǎn)生的誤碼率基本一致,最高都可達(dá)85%左右;在信號發(fā)送端黑色實(shí)心點(diǎn)與白色實(shí)心點(diǎn)數(shù)量相差較大,明顯看出黑色實(shí)心點(diǎn)數(shù)量較小,也就說明傳統(tǒng)控制信號發(fā)送產(chǎn)生的誤碼率大于動態(tài)控制信號發(fā)送產(chǎn)生的誤碼率。傳統(tǒng)控制方法信號發(fā)送最高誤碼率可達(dá)到87%,而動態(tài)控制方法信號發(fā)送最高誤碼率最高為70%,兩者相差17%,且動態(tài)控制方法僅有少量的發(fā)送信號出現(xiàn)誤碼。由此可知,動態(tài)控制方法使用均衡加重技術(shù)可降低數(shù)據(jù)誤碼出現(xiàn)的概率。
傳統(tǒng)控制方法直接在固態(tài)存儲器中對信號進(jìn)行讀取,導(dǎo)致控制性能較差;而動態(tài)控制方法采用NANDFLASH存儲器進(jìn)行分時加載操作擴(kuò)大存儲內(nèi)存,促使控制性能得到改善。為了驗證內(nèi)存容量對控制性能的影響,將傳統(tǒng)控制方法與動態(tài)控制方法對不同內(nèi)存容量下,信號發(fā)送情況進(jìn)行對比,結(jié)果如表2所示。
表2 不同內(nèi)存容量下控制信號發(fā)送情況
根據(jù)表2可知,在不同內(nèi)存容量下,使用不同控制方法信號傳輸速率也不同,隨著內(nèi)存容量增大,采用動態(tài)控制方法信號傳輸速率比傳統(tǒng)控制方法速率要快,最快可達(dá)到5500 bps,與傳統(tǒng)方法相比快出2000 bps。以該結(jié)果為基礎(chǔ),將兩種控制方法在不同內(nèi)存下,對信號存取速度控制性能展開對比分析,結(jié)果如圖5所示。
圖5 不同內(nèi)存下兩種方法控制性能對比結(jié)果
由圖5可知:由于在短周期受到時間限制,對于最初信號存取控制不能達(dá)到100%。當(dāng)內(nèi)存為64 MB時,傳統(tǒng)控制方法與動態(tài)控制方法差別較小,均保持在80%以上;當(dāng)內(nèi)存為128 MB時,傳統(tǒng)控制性能下降,低于80%。而動態(tài)控制性能仍然保持在80%以上;當(dāng)內(nèi)存為1024 MB時,傳統(tǒng)方法與采用動態(tài)方法控制性能下降最多,分別下降10%和21%。內(nèi)存繼續(xù)擴(kuò)大,傳統(tǒng)方法性能持續(xù)下降,而動態(tài)控制方法穩(wěn)定在60%左右。由此可知,擴(kuò)展內(nèi)存容量可提高信號存取速度,采用動態(tài)控制方法性能較好。
實(shí)驗采用兩種方法對比的形式對所提固態(tài)存儲器短周期存取速度動態(tài)控制方法的性能進(jìn)行驗證。分別測試了傳統(tǒng)控制方法和所提動態(tài)控制方法的誤碼率和內(nèi)存容量。實(shí)驗先對誤碼率進(jìn)行測試,利用人造噪音作為干擾因素,來干擾模擬的現(xiàn)實(shí)環(huán)境,測試數(shù)據(jù)誤碼對動態(tài)控制的影響;設(shè)置固態(tài)存儲器的不同內(nèi)存容量,在不同容量情況下,讀取信號;測試兩種不同方法的信號發(fā)送情況并進(jìn)行對比。通過對比傳統(tǒng)控制方法與動態(tài)控制方法,可總結(jié)實(shí)驗結(jié)論:動態(tài)控制方法使用均衡加重技術(shù)可降低數(shù)據(jù)誤碼出現(xiàn)的概率,在發(fā)送端信號誤碼率較小,而采用傳統(tǒng)控制方法誤碼率最高可達(dá)到87%。由于在短周期受到時間限制,對于最初信號存取控制不能達(dá)到100%。內(nèi)存繼續(xù)擴(kuò)大,傳統(tǒng)方法性能持續(xù)下降,而動態(tài)控制方法在60%左右波動。由此可知,使用均衡加重技術(shù)可降低數(shù)據(jù)誤碼出現(xiàn)的概率,擴(kuò)展內(nèi)存容量可提高信號存取速度,為此采用動態(tài)方式控制性能較強(qiáng)。
固態(tài)存儲器短周期存取速度動態(tài)控制設(shè)計采用均衡加重技術(shù)提高了信號傳輸質(zhì)量,降低了誤碼出現(xiàn)的概率;使用NANDFLASH雙平面交替編程的分時加載操作方式,提高了信號平均存取速度;利用FRGA二級緩存提高數(shù)據(jù)精準(zhǔn)度,基于多線組合指令有效減少控制線使用數(shù)量,促使整個電路設(shè)計更加簡單。通過對短周期存取速度的優(yōu)化設(shè)計,可大大提高動態(tài)控制性能,但同時信號傳輸穩(wěn)定性卻無法得到有效控制,為此,需工作人員對信號傳輸穩(wěn)定性進(jìn)行深入研究。
參考文獻(xiàn):
[1] 張振亞, 黃 東, 冷永強(qiáng). 并聯(lián)雙循環(huán)風(fēng)冷冰箱短周期切換控制特性[J]. 哈爾濱工業(yè)大學(xué)學(xué)報, 2017, 49(1):150-154.
[2] 馬游春, 姜 德, 吳正洋. 一種用于水下測試的可擴(kuò)展高速固態(tài)存儲系統(tǒng)設(shè)計[J]. 電子器件, 2017, 40(5) :15-20.
[3] 董振興, 朱 巖, 許志宏,等. 星載存儲器吞吐率瓶頸與高速并行緩存機(jī)制[J]. 哈爾濱工業(yè)大學(xué)學(xué)報, 2017, 49(11):52-59.
[4] 馬福博, 余振坤, 葛園園. 大動態(tài)范圍增益可控固態(tài)放大器系統(tǒng)的實(shí)現(xiàn)[J]. 現(xiàn)代雷達(dá), 2017, 39(8):71-74.
[5] 馬維維, 戚岑聰, 張艷聰,等. 六神曲固態(tài)協(xié)同發(fā)酵工藝優(yōu)化及物質(zhì)動態(tài)變化研究[J]. 中華中醫(yī)藥學(xué)刊, 2017,28 (5):1291-1294.
[6] 張耀峰, 李大全, 嚴(yán) 帥,等. 高速PCM圖像數(shù)據(jù)存儲器[J]. 電子器件, 2017, 40(1):49-54.
[7] 羅 佳, 李 濤, 吳純潔,等. 固態(tài)發(fā)酵紅曲發(fā)酵過程中消化酶的動態(tài)變化分析[J]. 食品科技, 2017, 17 (5):14-18.
[8] 具12位分辨率的48通道PWM發(fā)生器動態(tài)控制LED或提供48個DAC輸出[J].電子設(shè)計工程,2017,19(16): 15-28.
[9] 蓋國權(quán).VSC-HVDC穩(wěn)態(tài)模型和功率控制方式的研究[J].電子設(shè)計工程,2017,22(16):128-131.