亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于VCS的固存壞塊仿真系統(tǒng)設(shè)計與應(yīng)用

        2018-04-25 07:36:59,,,,
        計算機測量與控制 2018年4期
        關(guān)鍵詞:指令模型系統(tǒng)

        ,, , ,

        (上海航天電子技術(shù)研究所,上海 201109)

        0 引言

        NAND Flash[1]固存由于其具有的優(yōu)點廣泛應(yīng)用于航天數(shù)據(jù)處理系統(tǒng),這些優(yōu)點包括訪問速度快、低功耗、高密度、大容量、抗震性強等[2]。由于NAND Flash的制造工藝不能保證其存儲區(qū)域在生命周期內(nèi)保持性能的可靠,因此在NAND Flash 生產(chǎn)及使用過程中都有可能產(chǎn)生壞塊[3]。在數(shù)據(jù)處理系統(tǒng)中使用固存控制FPGA對壞塊進行管理,為保證壞塊管理的正確性,必須對固存控制FPGA進行嚴格驗證。隨著壞塊管理設(shè)計復(fù)雜性越來越高,對壞塊的驗證難度也隨之變得日益復(fù)雜。傳統(tǒng)上,一個完整的設(shè)計,往往需要花費70%的時間在驗證上,即便如此,也很難保證壞塊管理的完全正確性[4]。傳統(tǒng)的對固存控制FPGA壞塊管理的驗證方法有模塊級仿真和硬件聯(lián)測。前者單獨測試固存的擦寫、讀、全擦除等流程,無法模擬固存工作過程中壞塊的產(chǎn)生及其對固存控制過程的影響,難以保證驗證的充分性。后者在硬件上宏觀上測試系統(tǒng)功能,被動地等待固存壞塊產(chǎn)生,難以主動控制固存壞塊產(chǎn)生位置,且測試周期長,無法保證壞塊在不同分布工況下的功能正確性。為此有必要設(shè)計一種壞塊受控的仿真系統(tǒng)來保證壞塊驗證的充分性,并提高壞塊驗證效率。

        1 仿真系統(tǒng)搭建

        選用VCS作為搭建壞塊仿真環(huán)境的平臺。VCS是Synopsys公司提供的FPGA/ASIC仿真驗證平臺,支持VHDL、Verilog、SystemVerilog等語言[5]。

        1.1 VCS環(huán)境準備

        編寫執(zhí)行腳本Makefile文件對仿真模型和固存控制FPGA進行分析、編譯、仿真。觀察結(jié)果輸出,檢查壞塊管理的正確性。在Makefile中對VCS做仿真設(shè)置,VCS工作過程分為:分析(Analysis)、編譯(Elaboration)、仿真(Simulation)[6]。

        分析(Analysis)是VCS仿真的第一階段。該階段對庫文件、固存控制FPGA、仿真模型進行分析、進行語法檢查。編譯(Elaboration)是VCS仿真的第二階段。該階段VCS使用在分析(Aanlysis)階段產(chǎn)生的中間文件,建立例化層次并生成可執(zhí)行的二進制文件。仿真(Simulation)是VCS仿真第三階段。該階段可通過命令./{OUTPUT}-gui-cm {CM_COMMAND}-cm_dir {OUTPUT}打開仿真界面,觀察仿真波形[7]。

        1.2 仿真系統(tǒng)結(jié)構(gòu)

        在VCS平臺中通過Verilog語言建立仿真模型,如圖1所示。仿真模型情況如表1所示。核心仿真模型是EEPROM模型和固存模型。前者用于驗證壞塊表的維護,并將維護過程記錄在數(shù)據(jù)文件中(eeprom0.dat~eeprom3.dat),后者用于模擬固存的全擦除、擦寫、讀流程,并在上述工作流程中模擬產(chǎn)生壞塊并反饋給固存控制FPGA,將固存響應(yīng)過程記錄在固存響應(yīng)過程文件文件中(flashctrl.dat)。 遙控指令發(fā)送模型用于發(fā)送讀、寫、停等遙控指令,其中指令保存在文件remote_control.txt中。

        圖1 仿真系統(tǒng)結(jié)構(gòu)

        仿真模型詳情如表1所示,對EEPROM模型和固存模型做詳細闡述。

        表1 仿真模型表

        1.2.1 EEPROM模型

        EEPROM模塊包括3片EEPROM,其中EEPROM1為初始壞塊表,EEPROM2為備份壞塊表,EEPROM3為工作壞塊表。其中,工作壞塊表是固存工作時的日常用表,初始壞塊表和備份壞塊表是工作壞塊表出現(xiàn)異常時,作為備用的應(yīng)急表。三種表的作用將在其維護過程的驗證中做詳細說明。

        建立工作壞塊表包括初始化流程和受固存FPGA控制的讀/寫流程。初始化流程的意義是建立初始壞塊表,讀寫流程的意義是在存儲板工作流程中,根據(jù)壞塊變化情況維護EEPROM中的工作壞塊表。EEPROM地址范圍為0 ~ 131071,其存儲的數(shù)據(jù)位寬為8bit,每個EEPROM地址對應(yīng)固存中的一個塊地址。每個EEPROM地址中的數(shù)據(jù)位寬為8bit,判斷壞塊的閾值為5,即EEPROM地址中“1”的個數(shù)小于5,則認為該EEPROM地址對應(yīng)的固存塊為壞塊。通過Verilog語言可以隨機產(chǎn)生壞塊也可精確產(chǎn)生壞塊。EEPROM的地址范圍為0~131071,對應(yīng)固存中131072個塊。對工作壞塊表的維護過程存儲在記錄文件eeprom3.dat中。建立工作壞塊表流程如圖2所示。

        圖2 建立工作壞塊表流程

        1.2.2 固存模型

        使用Verilog語言建立固存模型,在模型參數(shù)端口可精確設(shè)置壞塊發(fā)生的位置(設(shè)置固存的塊地址、層地址、頁地址)。由固存芯片資料可知,擦寫流程中產(chǎn)生壞塊的方式與讀流程中產(chǎn)生壞塊的方式不同。故在固存模型中設(shè)置三種模式的壞塊反饋機制:第一,擦寫固存時壞塊判斷標準:查詢6次未收到準備好信息,或收到準備好信息但存儲板反饋為壞塊時,則認為出現(xiàn)壞塊[8-9]。第二,讀固存初始壞塊表壞塊判斷標準:查詢1次收到讀出廠標志為低電平(壞塊),則認為出現(xiàn)壞塊。第三,讀固存時壞塊判斷標準:讀操作時當(dāng)讀完一個區(qū)塊數(shù)據(jù)后,對收到的漢明校驗計數(shù)結(jié)果進行判斷,若漢明校驗信號低電平脈沖個數(shù)大于遙控指令設(shè)定的閾值,則認為該區(qū)塊為壞塊。其中第一、第三種情況出現(xiàn)在固存工作過程中,是固存自發(fā)行為。第二種情況受遙控指令控制,當(dāng)遙控指令發(fā)送模型發(fā)送“讀初始壞塊表指令”后,固存讀EEPROM第1層中存儲的初始壞塊信息。固存壞塊產(chǎn)生機制如圖3所示。

        圖3 固存工作流程中壞塊產(chǎn)生流程圖

        2 壞塊管理驗證

        對固存壞塊管理的驗證包括壞塊表維護過程的驗證和壞塊分布對固存讀寫流程影響的驗證。

        2.1 壞塊表維護過程驗證

        仿真系統(tǒng)對固存壞塊表維護過程的驗證包括建立初始壞塊表、恢復(fù)初始壞塊表、恢復(fù)備份壞塊表、建立備份壞塊表、壞塊取消、壞塊上注、工作壞塊表下傳、寫固存時壞塊查詢及標記、讀固存時壞塊查詢及標記、擦除固存時壞塊查詢及標記。

        1)建立初始壞塊表:仿真系統(tǒng)發(fā)送“讀初始壞塊表指令(32’h000018C8)”。仿真系統(tǒng)根據(jù)固存模型反饋,將固存中的初始壞塊情況寫入記錄文件eeprom1.dat。Data為8bit數(shù)據(jù),若數(shù)據(jù)的二進制形式含“1”的個數(shù)小于5,則是壞塊,若“1”的個數(shù)大于等于5,則是好塊。固存好塊地址在eeprom1.dat中記錄情況(部分)如下所示:

        top_tb.MU5: Addr = 000b,Data = 7f; top_tb.MU5: Addr = 001c,Data = df;

        top_tb.MU5: Addr = 001f,Data = 7f; top_tb.MU5: Addr = 0024,Data = fd;

        2)恢復(fù)初始壞塊表:仿真系統(tǒng)發(fā)送“恢復(fù)初始壞塊表指令(32’h000018C7)” 。FPGA將初始壞塊表eeprom1.dat的數(shù)據(jù)寫入工作壞塊表eeprom3.dat。導(dǎo)入數(shù)據(jù)時進行閾值為5的判斷,即若數(shù)據(jù)“1”的個數(shù)小于5,認為是壞塊,若數(shù)據(jù)“1”的個數(shù)大于5,認為是好塊。將好塊寫為全1,將壞塊寫為全0。eeprom3.dat記錄了恢復(fù)初始壞塊表的全部過程。固存共131072個塊,仿真系統(tǒng)將整個恢復(fù)壞塊表流程記錄,發(fā)現(xiàn)初始壞塊表最后一個數(shù)據(jù)無法寫入工作表。

        經(jīng)分析原因如下:在讀初始壞塊表最后一個地址時,在狀態(tài)機state_prom的狀態(tài)PROM_RDPROM_FIRST_OELOW態(tài)將wrprom_nxt_end置為高電平,導(dǎo)致寫工作壞塊表最后一個地址時片選信號無效,無法完成對工作表最后一個地址的寫入。針對該問題的修改措施為:將對初始壞塊表判最后一個地址的位置由狀態(tài)PROM_RDPROM_FIRST_OELOW移狀態(tài)PROM_WRPROM_NXT_END,使得判到初始壞塊表最后一個地址時,對工作表的片選信號有效,從而完成對最后一個地址的寫入。

        3)恢復(fù)備份壞塊表:仿真系統(tǒng)發(fā)送“恢復(fù)備份壞塊表指令(32’h000018C6)”。仿真系統(tǒng)將備份壞塊表中的信息寫入工作壞塊表,即通過讀eeprom2.dat寫eeprom3.dat記錄了恢復(fù)備份壞塊表過程。由于備份表關(guān)于地址的控制邏輯與初始表關(guān)于地址的邏輯相同,故備份表最后一個地址(131071)也無法被選中,及備份壞塊表的最后一個地址信息復(fù)發(fā)恢復(fù)到工作壞塊表。修改措施與恢復(fù)初始壞塊表的修改方法相同。

        4)建立備份壞塊表:仿真系統(tǒng)發(fā)送“建立備份壞塊表指令(32’h000018C5)”。仿真系統(tǒng)將工作壞塊表信息寫入備份壞塊表,即讀eeprom3.dat寫eeprom2.dat。仿真系統(tǒng)同樣發(fā)現(xiàn)工作壞塊表最后一個地址無法寫入備份壞塊表。修改措施與恢復(fù)初始壞塊表的修改方法相同。

        5)壞塊上注:當(dāng)固存數(shù)據(jù)傳輸異常,地面控制站認為固存某地址是壞塊時,需要進行壞塊上注,在工作壞塊表中將固存的壞塊信息進行標注。仿真系統(tǒng)發(fā)送“壞塊上注指令32’hbf000005”,即向固存地址05h上注信息,將其標記為壞塊。觀察eeprom3.dat,可見仿真系統(tǒng)對指定的壞塊進行了上注。

        6)壞塊取消:當(dāng)?shù)孛婵刂普菊J為固存某地址是好塊時,需要進行壞塊取消。其工作流程類似于壞塊上注。仿真系統(tǒng)發(fā)送“壞塊取消指令32’hb5000013”,即向固存地址13h上注信息,將其標記為好塊。觀察eeprom3.dat,地址13 h由壞塊(00h)轉(zhuǎn)變?yōu)楹脡K(ffh)。

        7)工作壞塊表下傳:仿真系統(tǒng)發(fā)送“壞塊表下傳指令”,工作壞塊表信息會通過遙測下傳。

        8)寫固存時壞塊查詢及標記:仿真系統(tǒng)發(fā)送“寫指令”。仿真系統(tǒng)可根據(jù)工作壞塊表對固存壞塊標記情況跳過對應(yīng)的壞塊,只寫好塊。通過查看仿真系統(tǒng)產(chǎn)生的eeprom3.dat中壞塊分布信息及flashctrl.dat中固存寫過程,可以驗證FPGA跳過了壞塊,只寫好塊。

        9)讀固存時壞塊查詢及標記:在仿真系統(tǒng)中令漢明校驗開啟,令固存模型在讀流程中產(chǎn)生壞塊,固存壞塊信息保存在文件flashctrl.dat中,工作壞塊表對固存讀流程中壞塊變化情況保存在文件eeprom3.dat中。通過比較flashctrl.dat與eeprom3.dat可以驗證在讀流程中壞塊產(chǎn)生及標記的正確性。

        10)擦除固存時壞塊查詢及標記:令仿真系統(tǒng)模擬固存在擦除過程中不產(chǎn)生壞塊,固存操作記錄flashctrl.dat中只對工作壞塊表eeprom3.dat中的好塊進行擦除;令固存在擦除過程中產(chǎn)生壞塊,eeprom3.dat根據(jù)固存壞塊變化情況實時進行變化。

        2.2 壞塊分布對固存讀停的影響

        2.2.1 讀停問題描述

        固存控制FPGA要求讀固存頁地址到達300 h時,可自動讀停。若不能讀停而對相同地址重復(fù)讀,會造成數(shù)據(jù)重復(fù)、紊亂。令仿真系統(tǒng)中工作壞塊表第0塊、第4095塊為好塊,其余塊為壞塊(塊地址12d也為壞塊),觀察固存能否在頁地址300 h時自動讀停。工作壞塊表設(shè)置方式如下所示:

        initial begin

        k = 0;

        sram_cnt = 0;

        repeat(131072) begin

        sram[sram_cnt] = 8’h00; //備注:00h表示壞塊

        sram_cnt = sram_cnt + 1;

        end

        for (k = 0;k < 4096; k = k + 1)begin

        sram[0] = 8’hff; //備注:將第0塊,第4095塊設(shè)置為好塊,其余均為壞塊

        sram[4095] = 8’hff; //備注:ffh表示好塊

        end

        end

        固存控制FPGA在頁地址為300h(768d),即塊地址為768/64=12d(1塊包含64頁)時配合頁讀使能信號rd_page_adden對信號cntt進行計數(shù),當(dāng)cntt計到“10”時,令固存讀停,源代碼下所示。

        process(rst_n,clk)

        … …

        if(zs_rd_addreq='1')then

        cntt <=(others=>'0');

        elsif (rd_page_adden = '1')and(rd_addr(width downto 0)="000" & x"0300")then

        cntt <=cntt+1;

        ……

        end process;

        process(rst_n,clk)

        begin

        … …

        elsif (cntt ="10")then

        rd_stop <='1';

        else

        rd_stop <='0';

        … …

        end process;

        由于仿真系統(tǒng)已將第1塊~第4094塊均設(shè)置為壞塊,故固存頁地址跳過了這些地址,當(dāng)頁地址為300h時,固存頁讀地址使能信號rd_page_adden保持無效,cntt計數(shù)失效,固存讀停失敗。仿真如圖4所示。

        圖4 地址為300 h時,信號RD_PAGE_ADDEN為低電平

        2.2.2 讀停設(shè)計優(yōu)化

        固存讀停失敗的原因是未考慮壞塊對判停位置的影響。針對讀停失效的修改方法是增加對壞塊的考量,增加壞塊標志信號blk_invalid的判斷。若固存準備讀停時遇到壞塊,信號cntt正常進行計數(shù),計數(shù)到達“10”時,信號rd_stop有效,可令固存讀停,優(yōu)化后的代碼如下所示:

        process(rst_n,clk)

        … …

        if(zs_rd_addreq='1')then

        cntt <=(others=>'0'); //備注;當(dāng)blk_invalid為1時,表示遇到壞塊。

        elsif( (rd_page_adden='1')or (blk_invalid ='1'andrd_check_en = '1') )and(rd_addr(width downto 0)="000" & x"0300")then //備注:準備讀停時,增加對壞塊的考慮

        cntt <=cntt+1;

        … …

        end process;

        2.3 壞塊分布對固存寫停的影響

        2.3.1 寫停問題描述

        固存在工作時,若寫到最后一塊,要求可以自動寫停。令固存模型的最后一塊為壞塊,仿真發(fā)現(xiàn)固存寫到最后一塊時,未寫停,而是對最后一塊重復(fù)寫,導(dǎo)致數(shù)據(jù)出錯。原因在于,當(dāng)固存最后一塊為壞塊時,固存控制FPGA會跳過最后一塊,最后一頁地址"111"&x"fffff"無法執(zhí)行到,即if語句條件不成立,寫溢出信號wr_overflow無法置高,固存無法寫停。出錯的代碼如下:

        elseif (wr_addr = “111”&x”fffff”) then //備注:32’h7fffff即8388608d

        wr_overflow <= ‘1’; //備注:8388608/64 = 13072,即最后一塊的末頁

        2.3.2 寫停設(shè)計優(yōu)化

        針對固存最后一塊為壞塊的工況,不判最后一塊的末頁,改為判最后一塊的首頁,即頁地址由fffff改為fffc0,優(yōu)化后的代碼如下所示:

        elseif (wr_addr = “111”&x”fffc0”) then //備注: fffff-fffc0 = 3f,即63

        wr_overflow <= ‘1’; //備注:8388608/64 = 13072,即最后一塊的末頁

        此時if語句條件滿足,寫溢出信號wr_overflow有效(高電平),固存可寫停。

        2.4 壞塊分布對數(shù)據(jù)處理安全性的影響

        2.4.1 壞塊連續(xù)分布驗證的必要性

        固存一般應(yīng)用在數(shù)據(jù)處理系統(tǒng),數(shù)據(jù)處理系統(tǒng)對數(shù)據(jù)處理速率比較敏感,在全速率工作時,要求數(shù)據(jù)流暢傳輸,不阻塞。但由于固存本身物理特性,寫固存前需要對其進行擦除,如果固存連續(xù)出現(xiàn)壞塊,則需對其進行連續(xù)擦除,直到擦到好塊為止[10-11]。數(shù)據(jù)處理系統(tǒng)的載荷輸入端不間斷地向固存輸入載荷數(shù)據(jù),如果壞塊連續(xù)出現(xiàn),固存一直處于擦除流程,不接收載荷數(shù)據(jù),數(shù)據(jù)會阻塞在固存前端,如前端緩存FIFO,造成FIFO寫溢出,導(dǎo)致數(shù)據(jù)丟失。故有必要驗證壞塊連續(xù)分布對數(shù)據(jù)處理系統(tǒng)工作安全性的影響。

        2.4.2 壞塊連續(xù)分布驗證過程

        令固存模型在擦除時連續(xù)五次遇到壞塊,仿真系統(tǒng)設(shè)置方法如下:

        case (erase_block_addr)

        16’h0000,16’h0001,16’h0002,16’h0003,16’h0004: force_sts_fail = 1’b1;

        default: force_sts_fail = 1’b0; //備注:force_sts_fail低電平表示擦除時遇到好塊

        end case

        令固存連續(xù)出現(xiàn)5次壞塊時,發(fā)現(xiàn)固存數(shù)據(jù)輸出端丟失數(shù)據(jù)。輸出數(shù)據(jù)記錄文件內(nèi)容(部分)如下所示,發(fā)現(xiàn)計數(shù)區(qū)丟失,表明固存丟失數(shù)據(jù)。

        L1:1acf fc1d 540f 0000 00ff aaaa aaaa aaaa

        L2: aaaa aaaa aaaa aaaa aaaa aaaa aaaa aaaa

        L3: aaaa aaaa aaaa aaaa aaaa 3fff 1234 1234

        L4: aaaa aaaa aaaa aaaa aaaa 3fff 1234 1234

        仿真如圖5所示。期望的第一幀數(shù)據(jù)計數(shù)區(qū)應(yīng)為“0001”,計數(shù)區(qū)位置應(yīng)在數(shù)據(jù)區(qū)“1234”前,但因固存連續(xù)出現(xiàn)壞塊,導(dǎo)致計數(shù)區(qū)丟失。

        圖5 仿真波形顯示丟失計數(shù)區(qū)

        在仿真系統(tǒng)中令壞塊連續(xù)出現(xiàn)的次數(shù)逐漸減小,直到固存輸出端數(shù)據(jù)正常。此時壞塊連續(xù)出現(xiàn)的次數(shù)為3。

        2.4.3 壞塊連續(xù)分布對數(shù)據(jù)處理系統(tǒng)安全性的啟示

        仿真結(jié)果表明,當(dāng)壞塊連續(xù)出現(xiàn)4次及以上時,數(shù)據(jù)處理系統(tǒng)會丟失數(shù)據(jù)。為此,設(shè)計對壞塊的控制需進行兩方面的考慮。

        1)研讀固存芯片手冊,向芯片廠商求證固存壞塊是否會連續(xù)出現(xiàn)4次或4次以上。若固存芯片廠商不能保證壞塊分布可靠性,則需對數(shù)據(jù)處理系統(tǒng)性能做出限制,如降低載荷輸入速率。

        2)若載荷數(shù)據(jù)速率不允許降低,可監(jiān)測固存前級緩存FIFO的編程滿信號。若連續(xù)出現(xiàn)壞塊, FIFO發(fā)生寫溢出,將FIFO的編程滿信號通過遙測通知地面控制站,地面控制站可將對應(yīng)通道的錯誤數(shù)據(jù)丟棄,改用備用通道數(shù)據(jù)。

        3 結(jié)語

        針對固存物理特性造成的壞塊產(chǎn)生不可預(yù)知性,設(shè)計了壞塊產(chǎn)生受控的閉環(huán)仿真系統(tǒng),提供了存儲三種壞塊表的EEPROM模型和可反饋壞塊信息的固存模型,并對壞塊表維護過程和壞塊分布對固存工作狀態(tài)的影響進行了仿真驗證,實現(xiàn)了壞塊分布的全面覆蓋及壞塊管理結(jié)果的記錄可查。為適應(yīng)當(dāng)前航天產(chǎn)品型譜化工作,下一步將對壞塊仿真系統(tǒng)所含模型進行模塊化封裝,以期可通過修改遙控指令文件、EEPROM模型和固存模型參數(shù),增強仿真系統(tǒng)在不同型號航天產(chǎn)品中的通用性。

        參考文獻:

        [1] Samsung,K9K8G08U0A [EB/OL],http://www.samsung.com/Products/Semiconductor,2006-1-10.

        [2] 喬立巖,張 鵬,魏德寶,等.一種新型NAND Flash 壞塊管理算法的研究與實現(xiàn)[J]. 電子測量技術(shù), 2015,38(11):37-41.

        [3] 彭 兵,步 凱,徐 欣, NAND Flash壞塊管理研究[J]. 微處理機,2009,2(4) :113-115.

        [4] 宋秀蘭, 吳曉波.高性能驗證平臺設(shè)計與搭建[J]. 電子器件,2008,31(6):1819-1821.

        [5] Synopsys VCS MX/VCS MXi user guide [S] .Version E-2011.03-SP1.2011.

        [6] Synopsys.Design ware AHB Verification IP databook[S].March 24.2003.

        [7] Synopsys.Reference verification methodology user guide[S].September 2004.

        [8] 邢 旺,郁聰沖.數(shù)據(jù)記錄器中NAND Flash的壞塊管理方法[J].船艦電子工程, 2016, 36(8):132-134.

        [9] Takeuchi K. Novel co-design of NAND Flash memory and high-speed solid-state drives [J]. VLSI circuit,2009,44(4):1224-1227.

        [10] 張 鵬,喬立巖.NADN Flash壞塊管理算法研究與實現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué), 2015.

        [11] 楊 博,李 波.基于NAND FLASH的嵌入式系統(tǒng)啟動速度的研究[J]. 計算機測量與控制,2010,18(8):1869-1875.

        猜你喜歡
        指令模型系統(tǒng)
        一半模型
        聽我指令:大催眠術(shù)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        ARINC661顯控指令快速驗證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        一级无码啪啪| 熟妇人妻无乱码中文字幕| 韩国19禁主播深夜福利视频| 自慰高潮网站在线观看| 隔壁人妻欲求不满中文字幕| 亚洲一区精品无码| 亚洲成av人片在线观看ww| 亚洲成av人片天堂网九九| 日本在线中文字幕一区二区| 一区二区黄色在线观看| 亚洲七久久之综合七久久| 欧美黄色免费看| 天堂av中文在线官网| 少妇一级淫片中文字幕| 无码福利写真片视频在线播放| 中国大陆一级毛片| 国产白浆流出一区二区| 日本h片中文字幕在线| 六月婷婷久香在线视频| 无码不卡一区二区三区在线观看| 97超碰中文字幕久久| 日本韩国男男作爱gaywww| 精品国内自产拍在线观看| 日本a在线天堂| 久久91精品国产一区二区| 狠狠噜狠狠狠狠丁香五月| 成年男女免费视频网站| 亚洲毛片av一区二区三区| 极品一区二区在线视频观看| 少妇饥渴偷公乱a级无码| 国产偷国产偷亚洲欧美高清 | 中文字幕一区乱码在线观看| 国产成人小视频| 一个人看的www免费视频中文| 日本韩国黄色三级三级| 白浆国产精品一区二区| 色先锋av资源中文字幕| 国产亚洲精品福利在线| 国产精品日韩亚洲一区二区| 久久精品国产亚洲av影院| 国产主播福利一区二区|