1. <rt id="e600n"></rt>
      1. <pre id="e600n"><strong id="e600n"><pre id="e600n"></pre></strong></pre>
      2. 岛国免费AV,无码人妻精品一区二区三区夜夜嗨,又大又粗又硬又爽黄毛少妇,精品国产AV二区,91视频最新网址,久操无码,久久无码人妻一区二区三区午夜,国产精品视频中文字幕

        實現快速讀取的方法及介質接口控制器與流程

        文檔序號:16531722發布日期:2019-01-05 10:48閱讀:560來源:國知局
        技術簡介:
        本專利針對邏輯單元連續讀取請求處理效率低的問題,提出通過檢測連續讀取指令并發送"快速讀取"命令的優化方案,利用線程狀態寄存器實現命令并發處理,有效減少讀取延遲,提升存儲介質訪問效率。
        關鍵詞:快速讀取,邏輯單元

        本申請涉及存儲控制器技術領域,具體涉及生成快速讀取命令。



        背景技術:

        在onfi接口標準(在http://www.onfi.org/~/media/onfi/specs/onfi_4_0-gold.pdf?la=en可獲得)中定義了“readcache”系列命令,包括“readcachesequential”與“readcacherandom”。toggle接口標準中定義了類似的“sequentialcacheread”與“randomcacheread”命令。

        在本申請中,將“cacheread”系列命令、“readcache”系列命令等統稱為“cacheread(快速讀取)”命令。存儲控制器向nand閃存芯片發出的“cacheread”命令,指示nand芯片從頁寄存器讀出一個數據頁的同時,在相同的lun(logicunit,邏輯單元)上從閃存單元陣列中讀出另一頁數據。

        主流的nand閃存芯片都支持“cacheread”的命令。

        存儲器目標(target)是閃存芯片封裝內的共享芯片使能(ce,chipenable)信號的一個或多個邏輯單元(lun)。nand閃存芯片封裝內可包括一個或多個管芯(die)。典型地,邏輯單元對應于單一的管芯。邏輯單元可包括多個平面(plane)。邏輯單元內的多個平面可以并行存取,而nand閃存芯片內的多個邏輯單元可以彼此獨立地執行命令和報告狀態。在onfi/toggle接口標準中,還提供了關于目標(target)、邏輯單元、lun、平面(plane)的含義,以及也提供了操作nvm芯片的命令。

        nvm(非易失存儲器,non-volatilememory)用于實現存儲功能,具有非易失性特點。圖1是現有技術的固態存儲設備的框圖,固態存儲設備102同主機相耦合,用于為主機提供存儲能力。主機同固態存儲設備102之間可通過多種方式相耦合,耦合方式包括但不限于通過例如sata(serialadvancedtechnologyattachment,串行高級技術附件)、scsi(smallcomputersysteminterface,小型計算機系統接口)、sas(serialattachedscsi,串行連接scsi)、ide(integrateddriveelectronics,集成驅動器電子)、usb(universalserialbus,通用串行總線)、pcie(peripheralcomponentinterconnectexpress,pcie,高速外圍組件互聯)、nvme(nvmexpress,高速非易失存儲)、以太網、光纖通道、無線通信網絡等連接主機與固態存儲設備102。主機可以是能夠通過上述方式同存儲設備相通信的信息處理設備,例如,個人計算機、平板電腦、服務器、便攜式計算機、網絡交換機、路由器、蜂窩電話、個人數字助理等。存儲設備102包括接口103、控制部件104、一個或多個nvm芯片105以及dram(dynamicrandomaccessmemory,動態隨機訪問存儲器)110。

        nand閃存、相變存儲器、feram(ferroelectricram,鐵電存儲器)、mram(magneticrandomaccessmemory,磁阻存儲器)、rram(resistiverandomaccessmemory,阻變存儲器)等是常見的nvm。

        接口103可適配于通過例如sata、ide、usb、pcie、nvme、sas、以太網、光纖通道等方式與主機交換數據。

        控制部件104用于控制在接口103、nvm芯片105以及固件存儲器110之間的數據傳輸,還用于存儲管理、主機邏輯地址到閃存物理地址映射、擦除均衡、壞塊管理等??刂撇考?04可通過軟件、硬件、固件或其組合的多種方式實現,例如,控制部件104可以是fpga(field-programmablegatearray,現場可編程門陣列)、asic(applicationspecificintegratedcircuit,應用專用集成電路)或者其組合的形式;控制部件104也可以包括處理器或者控制器,在處理器或控制器中執行軟件來操縱控制部件104的硬件來處理io(input/output)命令;控制部件104還可以耦合到dram110,并可訪問dram110的數據;在dram可存儲ftl表和/或緩存的io命令的數據。

        固態存儲設備的控制部件104中包括例如主機接口、前端處理模塊、閃存管理模塊以及一個或多個介質接口控制器(或稱為閃存接口控制器、閃存通道控制器)。主機接口用于同主機交換命令與數據。閃存管理模塊提供邏輯地址到物理地址映射、磨損均衡、垃圾回收等功能,并生成訪問nvm芯片的消息發送給介質接口控制器。介質接口控制器耦合到nvm芯片105。介質接口控制器有一個或多個,每個接口控制器耦合到各自的nvm芯片105。介質接口控制器接收訪問nvm芯片的消息,并根據訪問nvm芯片的消息并以遵循nvm芯片105的接口協議(例如,onfi、toggle接口標準)的方式向nvm芯片105發出命令(例如讀、編程、擦除、暫停、讀取特征(feature)和/或設置特征等命令),以操作nvm芯片105,并接收從nvm芯片105輸出的命令執行結果。介質接口控制器從例如隊列、總線接口和/或存儲器接收訪問nvm芯片的消息。

        介質接口控制器通常耦合到多個nvm芯片,nvm芯片包括多個lun(邏輯單元)或管芯,多個lun和管芯可以并行響應命令。

        在中國專利申請cn201610009789.6與cn201510253428.1中提供了用于介質接口控制器的微指令執行方法與裝置,而中國專利申請cn201610861793.5提供了微指令序列的調度方法與裝置,中國專利申請201710204980.0提供了控制密集型控制系統及其方法,將其全文合并于此??蛇x地,介質接口控制器可包括一個或多個cpu,通過運行程序接收并處理訪問nvm芯片的消息、向nvm芯片發出命令并接收響應。



        技術實現要素:

        本申請的實現快速讀取的方法及介質接口控制器解決了“cacheread”命令的自動生成問題。根據訪問lun的多個消息存在指定模式而生成“cacheread”命令,以降低從nvm芯片讀數據的延遲,提高固態存儲設備的性能。

        根據本申請的實施例,能夠提高固態硬盤產品的讀性能,且不需要上層軟件干預,能夠完全自動判斷是否進行“快速讀取”。

        根據本申請的第一方面,提供了根據本申請第一方面的第一實現快速讀取的方法,包括:獲取訪問邏輯單元的第一消息;若第一消息指示讀邏輯單元,生成并向邏輯單元發送讀命令;獲取訪問相同邏輯單元的第二消息;若第二消息指示讀邏輯單元,生成并向邏輯單元發送“快速讀取”命令;接收邏輯單元響應所述讀命令提供的讀出數據。

        根據本申請的第一方面的第一實現快速讀取的方法,提供了根據本申請第一方面的第二快速讀取的方法,從消息隊列和/或存儲器獲取訪問邏輯單元的消息。

        根據本申請的第一方面的第一或第二實現快速讀取的方法,提供了根據本申請第一方面的第三快速讀取的方法,讀命令是符合onfi標準或toggle標準的讀命令。

        根據本申請的第一方面的第一至第三實現快速讀取的方法之一,提供了根據本申請第一方面的第四快速讀取的方法,“快速讀取”命令是符合onfi標準的“快速讀取”命令或者是符合toggle標準的“快速讀取”命令。

        根據本申請的第一方面的第一至第四實現快速讀取的方法之一,提供了根據本申請第一方面的第五快速讀取的方法,若訪問邏輯單元的第一消息的類型指示非讀邏輯單元,生成同訪問邏輯單元的第一消息對應的命令,并發送給邏輯單元。

        根據本申請的第一方面的第一至第五實現快速讀取的方法之一,提供了根據本申請第一方面的第六快速讀取的方法,若訪問相同邏輯單元的第二消息的類型指示非讀邏輯單元,生成同訪問邏輯單元的第二消息對應的命令,并發送給邏輯單元。

        根據本申請的第一方面的第一至第六實現快速讀取的方法之一,提供了根據本申請第一方面的第七快速讀取的方法,在從向邏輯單元發送讀命令后,到邏輯單元輸出同讀命令對應的數據的時間期間內,獲取訪問相同邏輯單元的第二消息。

        根據本申請的第一方面的第七實現快速讀取的方法,提供了根據本申請第一方面的第八實現快速讀取的方法,在所述時間期間臨近結束時,獲取訪問相同邏輯單元的第二消息。

        根據本申請的第一方面的第一至第八實現快速讀取的方法之一,提供了根據本申請第一方面的第九實現快速讀取的方法,接收邏輯單元提供的第一消息的讀出數據后,獲取訪問相同邏輯單元的第三消息。

        根據本申請的第一方面的第九實現快速讀取的方法,提供了根據本申請第一方面的第十實現快速讀取的方法,若訪問邏輯單元的第三消息的類型指示讀邏輯單元,則向邏輯單元發送“快速讀取”命令,并接收從邏輯單元讀出的對應于第二消息的數據。

        根據本申請的第一方面的第十實現快速讀取的方法,提供了根據本申請第一方面的第十一實現快速讀取的方法,若訪問邏輯單元的消息的類型指示非讀邏輯單元,生成并向邏輯單元發送對應于“快速讀取”命令的結束命令,并接收從邏輯單元讀出的對應于第二消息的數據。

        根據本申請的第二方面,提供了根據本申請第二方面的第一實現快速讀取的方法,包括:運行第一線程,以獲取訪問邏輯單元的第一消息;若第一消息指示讀邏輯單元,生成并向邏輯單元發送讀命令,以及記錄第一線程的狀態,使第一線程休眠;響應于出現訪問所述邏輯單元的第二消息,恢復第一線程的狀態,以從獲取訪問所述邏輯單元的第二消息;若第二消息指示讀邏輯單元,生成并向所述邏輯單元發送“快速讀取”命令;接收所述邏輯單元提供的第一消息的讀出數據。

        根據本申請的第二方面的第一實現快速讀取的方法,提供了根據本申請第二方面的第二實現快速讀取的方法,線程對應于一個或多個邏輯單元。

        根據本申請的第二方面的第一或第二實現快速讀取的方法,提供了根據本申請第二方面的第三實現快速讀取的方法,響應于第一線程休眠,調度器選擇其他線程來由處理器執行。

        根據本申請的第二方面的第一至第三實現快速讀取的方法之一,提供了根據本申請第二方面的第四實現快速讀取的方法,所述讀命令臨近處理完成時,調度器調度第一線程在處理器上執行。

        根據本申請的第三方面,提供了根據本申請第三方面的第一實現快速讀取的方法,獲取訪問邏輯單元的消息;若消息指示讀邏輯單元,且所述邏輯單元上正在處理讀命令或“快速讀取”命令,生成“快速讀取”命令并發送給所述邏輯單元;以及接收邏輯單元響應所述讀命令提供的讀出數據。

        根據本申請的第三方面的第一實現快速讀取的方法,提供了根據本申請第三方面的第二實現快速讀取的方法,還包括:若消息指示讀邏輯單元,且所述邏輯單元上沒有正在處理的讀命令或“快速讀取”命令,生成并向邏輯單元發送讀命令。

        根據本申請的第三方面的第二實現快速讀取的方法,提供了根據本申請第三方面的第三實現快速讀取的方法,記錄所述邏輯單元上正在處理的讀命令或“快速讀取”命令。

        根據本申請的第三方面的第一至第三實現快速讀取的方法之一,提供了根據本申請第三方面的第四實現快速讀取的方法,還包括:若消息指示非讀邏輯單元,且所述邏輯單元上正在處理“快速讀取”命令,生成并向邏輯單元發送對應于“快速讀取”命令的結束命令;接收邏輯單元響應所述快速讀取命令提供的讀出數據;以及生成同訪問邏輯單元的消息對應的命令,并發送給邏輯單元。

        根據本申請的第三方面的第一至第四實現快速讀取的方法之一,提供了根據本申請第三方面的第五實現快速讀取的方法,在從向邏輯單元發送讀命令或“快速讀取”命令后,到邏輯單元輸出同讀命令或“快速讀取”命令對應的數據的時間期間內,獲取訪問相同邏輯單元的消息。

        根據本申請的第三方面的第五實現快速讀取的方法,提供了根據本申請第三方面的第六實現快速讀取的方法,在所述時間期間臨近結束時,獲取訪問相同邏輯單元的消息。

        根據本申請的第三方面的第一至第六實現快速讀取的方法之一,提供了根據本申請第三方面的第七實現快速讀取的方法,向邏輯單元發送讀命令后,再次獲取訪問相同邏輯單元的消息。

        根據本申請的第三方面的第一至第七實現快速讀取的方法之一,提供了根據本申請第三方面的第八實現快速讀取的方法,若識別出訪問邏輯單元的消息的類型指示非讀命令,且所述邏輯單元上有正在處理的讀命令,則在讀命令處理完成后,接收讀命令讀出的數據。

        根據本申請的第三方面的第六至第八實現快速讀取的方法之一,提供了根據本申請第三方面的第九實現快速讀取的方法,響應于從邏輯單元獲取了讀出數據,根據訪問邏輯單元的消息生成對應的命令并發送給邏輯單元。

        根據本申請的第三方面的第九實現快速讀取的方法,提供了根據本申請第三方面的第十實現快速讀取的方法,向邏輯單元發送對應的命令后,再次獲取訪問所述邏輯單元的消息。

        根據本申請的第三方面的第一至第十實現快速讀取的方法之一,提供了根據本申請第三方面的第十一實現快速讀取的方法,在讀命令處理完成,或者響應于發出結束命令且對應的“快速讀取”命令處理完成,還記錄該邏輯單元上當前沒有正在處理的讀命令或“快速讀取”命令。

        根據本申請的第四方面,提供了根據本申請第四方面的第一介質接口控制器,包括調度器、處理器、狀態寄存器、介質接口、消息隊列和能被調度器調度并由處理器運行的一個或多個線程;處理器分別耦合到狀態寄存器、介質接口和消息隊列;消息隊列提供訪問邏輯單元的消息;狀態寄存器保存線程的狀態;其中所述處理器運行線程來執行根據本申請第一方面、第二方面、第三方面的實現快速讀取的方法之一。

        根據本申請的第五方面,提供了根據本申請第五方面的第一實現快速讀取的系統,包括:第一獲取模塊,用于獲取訪問邏輯單元的第一消息;第一判斷模塊,用于若第一消息指示讀邏輯單元,生成并向邏輯單元發送讀命令;第二獲取模塊,用于獲取訪問相同邏輯單元的第二消息;第二判斷模塊,用于若第二消息指示讀邏輯單元,生成并向邏輯單元發送“快速讀取”命令;以及接收模塊,用于接收邏輯單元響應所述讀命令提供的讀出數據。

        根據本申請的第六方面,提供了根據本申請第六方面的第一實現快速讀取的系統,包括:獲取模塊,用于獲取訪問邏輯單元的消息;第一判斷模塊,用于若消息指示讀邏輯單元,且所述邏輯單元上正在處理讀命令或“快速讀取”命令,生成“快速讀取”命令并發送給所述邏輯單元;以及接收模塊,用于接收邏輯單元響應所述讀命令提供的讀出數據。

        根據本申請的第七方面,提供一種包括程序代碼的程序,當被載入存儲設備并在存儲設備上執行時,所述程序代碼使所述存儲設備執行根據本申請第一方面、第二方面、第三方面的實現快速讀取的方法之一。

        附圖說明

        為了更清楚地說明本申請實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請中記載的一些實施例,對于本領域技術人員來講,還可以根據這些附圖獲得其他的附圖。

        圖1是現有技術的固態存儲設備的框圖;

        圖2是根據本申請實施例的生成“快速讀取”命令的流程圖;

        圖3是根據本申請實施例的介質接口控制器的結構框圖;以及

        圖4是根據本申請又一實施例的生成“快速讀取”命令的流程圖。

        具體實施方式

        下面結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例?;诒景l明中的實施例,本領域技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。

        在本申請中,若存在訪問相同邏輯單元的連續的讀命令,將在后的讀命令由“快速讀取”命令替代。并且在在前的讀命令執行完成前(例如,讀出數據前),向相同的邏輯單元發出“快速讀取”命令。

        進一步地,對于訪問相同邏輯單元的多條連續的讀命令,除最前的讀命令外,其他讀命令都由“快速讀取”命令替代。由于在讀命令執行完成之前向邏輯單元發出“快速讀取”命令,使得在邏輯單元上讀命令與“快速讀取”命令被并行執行,從而降低了讀數據過程的整體延遲。

        實施例一

        圖2是根據本申請實施例的生成“快速讀取”命令的流程圖。如圖2所示,固態存儲設備的控制部件(也參看圖1,控制部件104)將來自主機的訪問存儲設備的命令轉換為訪問邏輯單元(lun)的消息??刂撇考?04或介質接口控制器獲取訪問lun的消息(210)。作為舉例,從消息隊列和/或存儲器獲取訪問lun的消息。

        控制部件104或介質接口控制器識別訪問lun的消息的類型,若指示讀lun(220),則生成并向lun發送讀命令(230)。例如,讀命令是符合onfi或toggle標準的讀命令。控制部件或介質接口控制器再次獲取訪問相同lun的消息(240),并識別訪問lun的消息的類型,若依然指示讀lun(250),則向lun發送“快速讀取”命令(260)作為對步驟240中獲取的訪問相同lun的消息的響應。例如,“快速讀取”命令是符合onfi標準的“readcache”系列命令之一,或者是符合toggle標準的“cacheread”系列命令之一。

        接下來,控制部件104或介質接口控制器接收lun提供的讀出數據(270),該讀出數據是基于步驟230中的讀命令所讀取的數據。

        可選地,在步驟220,若訪問相同lun的消息的類型指示非讀lun(例如,向lun寫入數據,在lun上擦除物理塊等),生成同訪問lun的消息對應的命令,并發送給lun。

        依然可選地,在步驟250,若訪問相同lun的消息的類型指示非讀lun(例如,向lun寫入數據,在lun上擦除物理塊等),生成同訪問lun的消息對應的命令,并發送給lun。

        依然可選地,在步驟230,從向lun發送讀命令后,到lun輸出同讀命令對應的數據,具有指定的時間期間。在指定的時間期間內,執行步驟240到步驟260,以生成并向lun發送“快速讀取”命令。優選地,在指定的時間期間臨近結束時,執行步驟240到步驟260,以提升識別到連續的讀lun類型的消息的幾率。例如,在指定時間期間到時前5us左右,執行步驟240到步驟260。

        依然可選地,在步驟270后,再次獲取訪問相同lun的消息。若識別出訪問lun的消息的類型依然指示讀lun,則再次向lun發送“快速讀取”命令,并接收從lun讀出的數據。此時從lun讀出的數據是對應于步驟260發送的“快速讀取”命令的讀出數據。以及在步驟270后,獲取訪問lun的消息,若識別出訪問lun的消息的類型指示非讀lun,至此不再符合生成“快速讀取”命令的條件。相應地,生成并向lun發送對應于“快速讀取”命令的“結束”命令,以及接收從lun讀出的數據。此時從lun讀出的數據是對應于步驟260發送的“快速讀取”命令的讀出數據。

        圖3是根據本申請實施例的介質接口控制器的結構框圖。如圖3所示,介質接口控制器包括調度器330、處理器340、狀態寄存器350、介質接口360、消息隊列370以及可被調度器330調度并由處理器340運行的一個或多個線程(例如,線程300、線程310與線程320)。

        消息隊列370提供訪問lun的消息。線程被處理器340運行時,從消息隊列370獲取訪問lun的消息,并操作介質接口360生成操作lun的命令。線程的運行狀態和/或操作lun的命令的執行狀態被記錄在狀態寄存器350。從而在等待lun執行命令時,在狀態寄存器350中保存線程的狀態,調度器330調度其他線程在處理器340上執行。處理器340可執行構成線程的指令和/或微指令。

        線程對應于指定的一個或多個lun。例如,訪問lun0的消息皆由線程300處理,而訪問lun1和/或lun2的消息皆由線程310處理。

        根據本申請的實施例,以線程300為例,處理器340運行線程300,從消息隊列370獲取訪問lun0的消息(也參看圖2,步驟210),識別出訪問lun0的消息指示讀lun(220),向lun0發出讀命令(記為r0)(也參看圖2,步驟230)。接下來,將線程300的狀態(包括讀命令r0的狀態)記錄在狀態寄存器350,調度器330選擇其他線程來由處理器340執行,例如線程310和線程320。

        在一段時間后,例如預計線程300向lun0發出的讀命令r0即將處理完成,調度器330調度線程300在處理器340上執行。線程300使用狀態寄存器350中記錄的狀態,并再次從消息隊列370中獲取訪問lun0的消息(240),并識別出訪問lun0的新消息依然指示讀lun(250),線程300基于lun0上有讀命令r0在處理,且又出現指示讀lun0的訪問lun0的消息,相應地,根據訪問lun0的新消息生成“快速讀取”命令并發送給lun0(260),以及接收來自lun0的讀出數據(270),該讀出數據對應于步驟230的讀命令r0。

        實施例二

        圖4是根據本申請又一實施例的生成“快速讀取”命令的流程圖。如圖4所示,介質接口控制器獲取訪問lun的消息(400),識別訪問lun的消息的類型(410),若指示讀lun,則進一步識別要被讀取的lun上是否有正在處理的讀命令或“快速讀取”命令(420)。例如,通過訪問狀態寄存器350或狀態標記來識別要被讀取的lun上有正在處理的讀命令或“快速讀取”命令。

        若要被讀取的lun上有正在處理的讀命令或“快速讀取”命令,作為響應,介質接口控制器在lun上正在處理的讀命令或“快速讀取”命令被處理完成前,根據訪問lun的消息生成“快速讀取”命令并發送給lun(430)。接下來,從lun接收對應于步驟420所識別的lun上正在處理的讀命令或“快速讀取”命令的訪問結果的數據(440)。并返回步驟400獲取進一步的訪問lun的消息。

        可選地,生成“快速讀取”命令并發送給lun后,備份當前線程(例如,線程300)的狀態,調度器330(也參看圖3)選擇其他線程(例如,線程310或線程320)在處理器340上執行。在從lun接收讀出數據后,也備份當前線程(例如,線程300)的狀態,并選擇其他線程(例如,線程310或線程320)在處理器340上執行。

        在步驟420,若識別要被讀取的lun上沒有正在處理的讀命令或“快速讀取”命令,則根據獲取的訪問lun的消息,向lun發送讀命令(450)。并返回步驟400獲取進一步的訪問lun的消息??蛇x地,在向lun發送讀命令后,備份當前讀命令的處理狀態(例如,使當前線程休眠),并處理其他消息或選擇其他線程在處理器340上執行。

        在步驟410,若識別出訪問lun的消息的類型指示非讀命令,則進一步識別要被訪問的lun上是否有正在處理的讀命令或“快速讀取”命令(460)。若要被訪問的lun上有正在處理的“快速讀取”命令,向lun發送結束命令(470),并接收“快速讀取”命令讀出的數據(480)。若要被訪問的lun上有正在處理的讀命令,則在讀命令處理完成后,接收讀命令讀出的數據(480)。可選地,在接收讀出數據前,也備份當前線程的狀態,并選擇其他線程在處理器340上執行。并響應于lun能提供被讀取的數據,而恢復所備份的狀態,并繼續接收讀命令讀出的數據。響應于從lun獲取了讀出數據,根據訪問lun的消息生成對應的命令并發送給lun(490)。繼而返回步驟400獲取進一步的訪問lun的消息。

        在向lun發送讀命令或“快速讀取”命令后,還記錄該lun上有正在處理的讀命令或“快速讀取”命令。在讀命令處理完成,或者響應于發出結束命令且對應的“快速讀取”命令處理完成,還記錄該lun上當前沒有正在處理的讀命令或“快速讀取”命令。

        盡管已描述了本申請的優選實施例,但本領域技術人員一旦得知了基本創造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本申請范圍的所有變更和修改。顯然,本領域技術人員可以對本申請進行各種改動和變型而不脫離本申請的精神和范圍。這樣,倘若本申請的這些修改和變型屬于本申請權利要求及其等同技術的范圍之內,則本申請也意圖包含這些改動和變型在內。

        當前第1頁1 2 
        網友詢問留言 留言:0條
        • 還沒有人留言評論。精彩留言會獲得點贊!
        主站蜘蛛池模板: 精品国偷自产在线视频99| heyzo亚洲高清| 2020国产欧洲精品网站| 小污女小欲女导航| 日区中文字幕一区二区| 精品一区二区久久久久久久网站| 亚洲中文精品一区二区| 综合激情亚洲丁香社区| 国产黄a三级三级| 老司机在线视频免费福利| 亚洲成人精品女人久久| 视频区 国产 图片区 小说区| 免费超爽大片黄| 一本不卡| 黑人精品一区二区三区不| 日本不卡一区| av偷拍亚洲一区二区三区| 中文国产不卡一区二区| 国产精品午夜福利免费看| 中出内射颜射骚妇| 亚洲图揄拍自拍另类图片| 亚洲男人在线| 天堂av网一区二区三区| 超清无码一区二区三区| 人人妻人人爽人人澡av| 影音先锋资源| 手机看片日韩| 国产农村激情免费专区| 人妻少妇久久久久久97人妻| 成人欧美一区二区三区在线| 国产精品高清一区二区三区| 亚洲欧洲日韩免费无码h| 丝袜诱惑av91在线观看| 婷婷六月在线精品免费视频观看| 欧美人成精品网站播放| 亚洲人妻三级| 欧美丰满熟妇性XXXX| 久久综合伊人77777| 亚洲精品国产av成拍色拍个| 国产第1页| 大名县|