新四季網

壓縮數據的方法和用於執行該方法的設備的製作方法

2023-10-05 22:07:09 3

壓縮數據的方法和用於執行該方法的設備的製作方法【專利摘要】一種數據壓縮方法,包括:接收包括先前數據塊和當前數據塊的輸入數據流;執行先前數據塊的一部分與先前參考數據塊的一部分的第一比較,以及當前數據塊與當前參考數據塊的第二比較,其中,第一比較和第二比較被並行執行。所述方法還包括基於第一比較和第二比較的結果,選擇性地輸出當前數據塊或者壓縮擴展數據塊,其中,擴展數據塊包括先前數據塊的所述部分和當前數據塊。【專利說明】壓縮數據的方法和用於執行該方法的設備【
技術領域:
】[0001]本發明構思的實施例涉及數據壓縮技術,更具體地,涉及用於數據壓縮加速和用於補償數據壓縮加速期間損失的數據壓縮率的數據壓縮方法以及設備。【
背景技術:
】[0002]一般採用數據壓縮技術來提高通信設備和/或數據存儲設備中的有效的數據傳輸速率和/或有效的數據存儲容量。此外,由於數據壓縮減小了要被存儲在數據存儲設備(例如,快快閃記憶體儲設備)中的數據量,所以在存儲設備中寫的數量和/或讀的數量被降低,藉此提高存儲設備的預期壽命。[0003]一般地,數據壓縮可以被分類為無損壓縮或者有損壓縮。無損數據壓縮特徵在於原始數據的精確再生,而有損數據壓縮允許原始數據的近似。[0004]無損數據壓縮算法的例子包括被稱為「LZ77」和「LZ78」的技術,它們被公開於AbrahamLempel和JacobZiv於1977和1978年所寫的論文中。無損數據壓縮算法的另一例子被稱為「LZW」或者mpel-ZivRossWilliams(「LZRW」),其被公開於AbrahamLempel>JacobZiv和TerryWelch寫於1984年的論文中。【
發明內容】[0005]根據本發明構思的某些實施例,提供了一種數據壓縮方法,其包括:接收包括先前數據塊和當前數據塊的輸入數據流;執行先前數據塊的一部分與先前參考數據塊的一部分的第一比較,以及當前數據塊與當前參考數據塊的第二比較,其中,第一比較和第二比較被並行執行。所述方法還包括:基於第一比較和第二比較的結果,選擇性地輸出當前數據塊或者壓縮擴展數據塊,其中,擴展數據塊包括先前數據塊的所述部分和當前數據塊。[0006]根據本發明構思的其他實施例,提供了一種數據壓縮方法,其包括:接收包括先前數據塊和當前數據塊的輸入數據流。所述方法還包括:從存儲器讀取先前參考數據塊的一部分,並且從所述存儲器並行地讀取當前參考數據塊。所述方法還包括:比較先前數據塊的一部分與先前參考數據塊的所述部分,並且並行地比較當前數據塊和當前參考數據塊。所述方法還包括:當先前數據塊的所述部分和先前參考數據塊的所述部分匹配,並且當前數據塊匹配當前參考數據塊時,壓縮擴展數據塊,其中,擴展數據塊包括先前數據塊的所述部分和當前數據塊。[0007]根據本發明構思的其他實施例,提供了一種數據壓縮電路,其包括:緩衝存儲器,包括第一存儲器區域、第二存儲器區域和第三存儲器區域;和,緩衝存儲器控制器,被配置成響應於地址,輸出存儲在第一存儲器區域中的先前參考數據塊的一部分和存儲在第二存儲器區域中的當前參考數據塊。數據壓縮電路還包括:比較電路,被配置成確定先前數據塊的一部分是否和先前參考數據塊的所述部分匹配,以及當前數據塊是否和當前參考數據塊匹配,並根據確定結果,產生控制信息。數據壓縮電路還包括:壓縮數據產生電路,被配置成基於控制信息,選擇性地輸出當前數據塊或者壓縮數據,其中,通過壓縮包括先前數據塊的所述部分和當前數據塊的擴展數據塊來產生壓縮數據。[0008]根據本發明構思進一步的實施例,提供了一種數據處理系統,其包括:數據存儲設備;主機,被配置成輸出包括先前數據塊和當前數據塊的數據流;和,存儲器控制器,被配置成確定來自主機的數據流中的每一數據塊或者每一擴展數據塊的匹配屬性,根據確定結果壓縮數據流中的數據塊或者擴展數據塊,並把壓縮數據輸出到數據存儲設備。存儲器控制器確定先前數據塊的匹配屬性,然後確定包括先前數據塊的一部分和當前數據塊的擴展數據塊的匹配屬性。【專利附圖】【附圖說明】[0009]結合附圖,從下面的詳細描述,本發明構思的上述以及其他方面和特徵將變得清晰,在附圖中:[0010]圖1A是根據本發明構思某些實施例的數據處理系統的框圖;[0011]圖1B和圖1C是本發明構思其他實施例的數據處理系統的框圖;[0012]圖2是示出圖1A中所示的數據壓縮電路的例子的框圖;[0013]圖3是示出圖2中所示的哈希鍵產生電路的例子的框圖;[0014]圖4是用於說明圖2中所示的哈希鍵產生電路的工作例子的概念圖;[0015]圖5是示出圖2中所示的緩衝存儲器和緩衝存儲器控制器的例子的框圖;[0016]圖6是示出圖2中所示的緩衝存儲器控制器的例子的框圖;[0017]圖7是示出圖2中所示的比較電路的例子的框圖;[0018]圖8是示出圖2中所示的壓縮數據產生電路的例子的框圖;[0019]圖9是示出圖2中所示的數據解壓縮電路的例子的框圖;[0020]圖10是供描述根據本發明構思的某些實施例的數據壓縮方法時參考的流程圖;[0021]圖11是供描述根據本發明構思的其他實施例的數據壓縮方法時參考的流程圖;和[0022]圖12是用於說明圖11中所示的數據壓縮方法的例子的概念圖。【具體實施方式】[0023]此後將參考附圖更全面地描述本發明構思,在附圖中示出了本發明的實施例。但是,本發明可被以很多不同形式具體實施,並且不應被理解為只限於這裡給出的實施例。相反,提供這些實施例以使本公開將是透徹的和完整的,並且將向本領域技術人員全面傳達本發明的範圍。在附圖中,為了清晰可能誇大層和區域的尺寸和相對尺寸。相同的數字通篇指示相同的元件。[0024]將會理解,當一元件被稱為被「連接」或者「耦合」到另一元件時,其可以直接連接或者耦合到另一元件,或者,可能存在居間的元件。相反,當一元件被稱為被「直接連接」或者「直接耦合」到另一元件時,不存在居間的元件。如這裡所使用的,術語「和/或」包括相關聯的被列出項目中的一個或多個的任意和所有組合,並可以被縮寫為「/」。[0025]將會理解,儘管這裡可能使用術語第一、第二等來描述各種元件,但是這些元件不應被這些術語限制。這些術語只被用來將一個元件與另一個加以區分。例如,第一信號可以被稱為第二信號,並且類似地,第二信號可以被稱為第一信號而不偏離本公開的教導。[0026]這裡使用的術語僅僅是為了描述特定實施例,並非旨在限制本發明。如這裡所使用的,單數形式「一」、「一個」和「該」預期也包括複數形式,除非上下文清楚地另有指示。還將會理解,例如「包含」和/或「包括」在本說明書中被使用時,指定了存在所陳述的特徵、區域、部分、步驟、操作、元件,和/或部件,但是不排除存在或者添加一個或多個其他的特徵、區域、部分、步驟、操作、元件、部件,和/或其組。[0027]除非另外定義,否則這裡使用的所有術語(包括技術術語和科學術語)具有和本發明所屬【
技術領域:
】的技術人員通常理解的相同的含義。還將會理解,例如在常用詞典中定義的那些的術語應該被解釋為具有與其在相關技術和/或本申請的上下文中的含義相符的含義,並且將不會以理想化或者過於形式化的意義解釋,除非這裡明確地如此定義。[0028]圖1A是本發明構思其他實施例的數據處理系統100的框圖。數據處理系統100包括主機110、存儲器控制器200、第一存儲設備130和第二存儲設備150。[0029]存儲器控制器200和第一存儲設備130可以被單獨封裝,或者被一起封裝在單個封裝中,例如層疊封裝(packageonpackage,PoP)或者多晶片封裝。[0030]數據處理系統100可以被實施為例如個人計算機(PO、數據伺服器或者可攜式電子設備。可攜式電子設備的例子包括膝上型計算機、行動電話機、智慧型電話機、平板PC、個人數字助理(PDA)、企業數字助理(enterprisedigitalassistant,EDA)、數字靜態相機、數字攝像機、可攜式多媒體播放器(PMP)、個人(或者可攜式)導航設備(personal(orportable)navigationdevice,PND)、手持遊戲控制臺、移動網際網路設備(mobileinternetdevice,MID),以及電子書。[0031]主機110可以把包括數據塊的輸入數據流IDS輸出到存儲器控制器200。每一數據塊可以由N個字節(其中N為2或者大於2的自然數)組成,以允許快速數據壓縮。此夕卜,主機110可以從存儲器控制器200接收輸出數據流DDS。[0032]存儲器控制器200可以逐數據塊地處理(例如,壓縮或者旁路)數據塊。存儲器控制器200可以壓縮擴展數據塊以便提高壓縮比,所述擴展數據塊包括要被處理的當前數據塊和先前數據塊的一部分。例如,擴展數據塊的尺寸與數據塊的尺寸的比例可以是帶小數的數,即,擴展數據塊的字節尺寸可以大於數據塊的字節尺寸但並非數據塊的字節尺寸的精確倍數。[0033]為了描述方便,假設數據塊長度是4位元組,並且擴展數據塊長度是6位元組。但是,本發明構思不受數據塊和擴展數據塊字節的相應數量的限制。[0034]存儲器控制器200可以基於對應的接口協議,在主機110、第一存儲設備130和第二存儲設備150之間交換或者處理數據和/或命令。[0035]存儲器控制器200可以包括主機接口210、數據壓縮電路230、中央處理單元(CPU)或者處理器240、第一存儲器控制器250、第二存儲器控制器260和數據解壓縮電路270。存儲器控制器200可以被實施為例如片上晶片(SoC)。[0036]主機接口210,例如主機側接口,在主機110和存儲器控制器200之間交換數據和/或命令。例如,在數據壓縮期間,主機接口210把來自主機110的輸入數據流IDS傳送到數據壓縮電路230,並在數據解壓縮期間,把解壓縮的輸出數據流DDS從數據解壓縮電路270傳送到主機110。[0037]數據壓縮電路230可以在CPU240的控制下處理(例如,壓縮或者旁路)數據塊,或者可以處理(例如壓縮)擴展數據塊。數據壓縮電路230加速壓縮過程並最小化壓縮比的降低。數據壓縮電路230起到編碼器的作用。[0038]CPU240可以通過數據總線201控制數據壓縮電路230、第一存儲器控制器250、第二存儲器控制器260和數據解壓縮電路270其中至少一個的操作。[0039]第一存儲器控制器250可以基於第一存儲設備130的接口協議在存儲器控制器200和第一存儲設備130之間交換數據和/或命令。在第一存儲設備130是NAND快閃記憶體的情況下,第一存儲器控制器250可以被實施為NAND快閃控制器。[0040]第二存儲器控制器260可以基於第二存儲設備150的接口協議在存儲器控制器200和第二存儲設備150之間交換數據和/或命令。在第二存儲設備150是動態隨機訪問存儲器(DRAM)的情況下,第二存儲器控制器260可以被實施為DRAM控制器。[0041]數據解壓縮電路270可以將壓縮數據解壓縮,並通過主機接口210把解壓縮輸出數據流DDS傳送到主機110。數據解壓縮電路270起到解碼器的作用。[0042]第一存儲設備130可以是基於快閃記憶體的存儲器,例如快閃記憶體、嵌入式多媒體卡(embeddedmultimediacard,eMMC)、通用快快閃記憶體儲設備(universalflashstorage,UFS)、通用串行總線(USB)快閃驅動器,或者固態驅動器(SSD)。[0043]或者,第一存儲設備130可以是非易失存儲器,例如電可擦除可編程只讀存儲器(EEPROM)、磁性隨機訪問存儲器(MRAM)、自旋轉移扭矩MRAM、導電橋接RAM(conductivebridgingRAM,CBRAM)、鐵電RAM(ferroelectricRAM,FeRAM)、相變RAM(phase_changeRAM,PRAM)、電阻RAM(resistiveRAM,RRAM)、納米管RRAM、聚合物RAM(polymerRAM,PoRAM)、納米浮柵存儲器(nanofloatinggatememory,NFGM)、全息存儲器、分子電子存儲器件,或者絕緣體變阻存儲器。[0044]作為另一替換,第一存儲設備130可以是硬碟驅動器。[0045]第二存儲設備150可以是DRAM或者雙數據率(DDR)同步DRAM(SDRAM)。根據第二存儲器控制器260的控制,輸入第一存儲設備130或者從其輸出的數據可以被暫時存儲在第二存儲設備150中。[0046]圖1B和圖1C是本發明構思其他實施例的數據處理系統100的框圖,其中,相同的參考數字指示圖1A相同的元件。展示圖1B和圖1C以演示可以用各種不同方式改變數據壓縮電路230和/或數據解壓縮電路270的集成而不偏離本發明構思。例如,圖1B示出了壓縮電路230通過數據總線201從主機接口210接收輸入數據流IDS的配置,並且同樣地,解壓縮電路270通過數據總線201把輸出數據流DDS供應給主機接口210。又例如,圖1C示出了壓縮電路230和解壓縮電路270被可操作地置於數據總線201與第一存儲器控制器250之間的例子。[0047]圖2是示出圖1A中所示的數據壓縮電路230的例子的框圖。參考圖2,數據壓縮電路230包括輸入數據寄存器231、哈希鍵產生電路233、緩衝存儲器控制器237、緩衝存儲器239、比較電路241和壓縮數據產生電路243。[0048]輸入數據寄存器231接收輸入數據流IDS,使用延遲電路Dl、D2和D3的對應一個調整輸入數據流IDS中所包括的每一數據塊的延遲,並把經過延遲調整的數據塊DATA2、DATA3和DATA4分別傳送到處理電路237、241和243。可以分別依據處理電路233、237和241的處理時間來調整延遲電路D1、D2和D3的延遲。[0049]輸入數據寄存器231把輸入數據流IDS中所包括的數據塊DATAl傳送到哈希鍵產生電路233,把第一延遲數據塊DATA2傳送到緩衝存儲器控制器237,把第二延遲數據塊DATA3傳送到比較電路241,把第三延遲數據塊DATA4傳送到壓縮數據產生電路243。當忽略延遲時,數據塊DATAl到DATA4彼此相同。[0050]圖3是示出圖2中所示的哈希鍵產生電路233的例子的框圖。參考圖3,哈希鍵產生電路233產生對應於順次接收到的每一數據塊(或者數據樣式)DATAl的哈希鍵Hi,並把緩衝存儲器239中所包括的存儲區域的地址或者位置寫到哈希鍵表235中的記錄,其中每一數據塊存在於所述存儲區域中,或者已經被存儲在所述存儲區域中,所述記錄對應於哈希鍵Hi。這個例子的哈希鍵產生電路233包括哈希鍵產生器233-1、第一計數器233-2和哈希鍵表235。[0051]圖4是用於說明圖3中所示的哈希鍵產生電路233的工作例子的概念圖。參考圖3和圖4,哈希鍵產生電路233-1每L個字節產生哈希鍵Hi(其中,L是自然數並且在此後的實施例中L=4),並將哈希鍵Hi輸出到哈希鍵表235,其中,L個字節構成單個數據塊。[0052]第一計數器233-2對每一數據塊DATAl中所包括的字節進行計數,並根據計數結果把第一計數值BCNT輸出到哈希鍵表235。[0053]哈希鍵表235把第一計數值BCNT存儲在由哈希鍵Hi指定的記錄中。此時,第一計數值BCNT可以對應於地址ADD。[0054]哈希鍵產生器233-1產生對應於第一處理單元PUl——即4位元組數據A1A2A3A4的哈希鍵HO,並且第一計數器233-2產生「0x00」作為指示4位元組數據A1A2A3A4的起始位置的第一計數值BCNT。[0055]哈希鍵表235把第一計數值BCNT或者地址ADD——即「0x00」存儲在由哈希鍵HO指定的記錄中。此時,哈希鍵表235可以輸出「0x00」作為第一處理單元PUl(=A1A2A3A4)的地址ADD。此外,哈希鍵產生器233-1產生對應於隨後的4位元組數據A2A3A4B5的哈希鍵H2,並且第一計數器233-2產生「0x01」作為指示4位元組數據A2A3A4B5的起始位置的第一計數值BCNT。[0056]哈希鍵產生器233-1產生對應於隨後的4位元組數據A3A4B5B6的哈希鍵H4,並且第一計數器233-2產生「0x02」作為指示4位元組數據A3A4B5B6的起始位置的第一計數值BCNT。哈希鍵產生器233-1產生對應於隨後的4位元組數據A4B5B6B7的哈希鍵H6,並且第一計數器233-2產生「0x03」作為指示4位元組數據A4B5B6B7的起始位置的第一計數值BCNT。[0057]哈希鍵產生器233-1產生對應於第二處理單元PU2——即4位元組數據B5B6B7B8的哈希鍵H8,並且第一計數器233-2產生「0x04」作為指示4位元組數據B5B6B7B8的起始位置的第一計數值BCNT。此時,哈希鍵表235可以輸出「0x04」作為第二處理單元PU2(=B5B6B7B8)的地址ADD。[0058]哈希鍵產生器233-1產生對應於第三處理單元PU3——即4位元組數據C1C2A3A4的哈希鍵,並且第一計數器233-2產生「0x08」作為指示4位元組數據C1C2A3A4的起始位置的第一計數值BCNT。此時,哈希鍵表235可以輸出「0x08」作為第三處理單元PU3(=C1C2A3A4)的地址ADD。[0059]哈希鍵產生器233-1產生對應於第四處理單元——即4位元組數據B1B2B3B4的哈希鍵Hl,並且第一計數器233-2產生「OxOC」作為指示4位元組數據B1B2B3B4的起始位置的第一計數值BCNT。此時,哈希鍵表235可以輸出「OxOC」作為地址ADD。[0060]哈希鍵產生器233-1產生對應於第五處理單元PU5——即4位元組數據C3C4A3A4的哈希鍵H1,並且第一計數器233-2產生「0x40」作為指示4位元組數據C3C4A3A4的起始位置的第一計數值BCNT。此時,哈希鍵表235可以輸出「0x40」作為地址ADD。[0061]當接收到和第四處理單元PU4(=B1B2B3B4)相同的第六處理單元——即B1B2B3B4時,哈希鍵產生器233-1產生和用於第四處理單元PU3的哈希鍵Hl相同的哈希鍵Hl,並且第一計數器233-2產生「0x44」作為指示第六處理單元PU6的4位元組數據B1B2B3B4的起始位置的第一計數值BCNT。此時,哈希鍵表235輸出「0x44」而非「OxOC」作為第六處理單元PU6(=B1B2B3B4)的地址,並且在和哈希鍵Hl對應的記錄中的地址ADD被從「OxOC」更新到「0x44」。[0062]當要被處理的當前數據塊和先前數據塊匹配或者相同時,哈希鍵表235可以把和為每一數據塊產生的哈希鍵Hi對應的地址ADD輸出到緩衝存儲器控制器237。[0063]圖5是示出圖2中所示的緩衝存儲器239和緩衝存儲器控制器237的例子的框圖。參考圖2和圖5,基於從哈希鍵產生電路233輸出的地址ADD,緩衝存儲器控制器237把擴展參考數據塊MDATA和指示擴展參考數據塊MDATA的起始位置的擴展參考數據塊起始地址MDATA-ADD傳送到比較電路241。[0064]擴展參考數據塊MDATA包括存儲在不同存儲器239_1到239_4其中之一中的先前參考數據塊的一部分和存儲在存儲器239-1到239-4其中另一個中的當前參考數據塊。[0065]而且,響應於指示第一延遲數據塊DATA2的起始位置的寫地址,緩衝存儲器控制器237把第一延遲數據塊DATA2寫到具有交叉結構的存儲器239-1到239-4其中之一。[0066]緩衝存儲器239包括存儲器239-1到239_4,存儲器239-1到239_4均被使用交叉方法分配,並且可獨立地存取。存儲器239-1到239-4的每一個均可以由例如雙埠靜態隨機訪問存儲器(SRAM)來實施。和單埠SRAM不同,雙埠SRAM被配置成在單個周期中同時執行讀操作和寫操作。[0067]由於緩衝存儲器控制器237使用分別具有使用交叉方法分配的不同地址的存儲器239-1到239-4,緩衝存儲器控制器237能夠並行地(即並發或者同時)讀取先前參考數據塊的所述部分和當前參考數據塊。[0068]圖6是示出圖2中所示的緩衝存儲器控制器237的例子的框圖。作為例子,將參考圖1A到圖8詳細地描述處理第一處理單元I3Ul—即第一數據塊A1A2A3A4的過程。[0069]當緩衝存儲器控制器237從哈希鍵產生電路233接收和第一處理單元PUl的哈希鍵HO對應、指示數據塊A1A2A3A4的起始位置的地址ADD(=0x00),並且通過輸入數據寄存器231接收第一延遲數據塊DATA2(=A1A2A3A4)時,緩衝存儲器控制器237中所包括的地址產生器237-1產生當前參考地址ADD_C和直接先前(或者先前)參考地址ADD_P。[0070]此時,當前參考地址ADD_C和從哈希鍵產生電路233輸出的地址ADD(=0x00)相同,並且直接先前參考地址ADD_P是恰好直接在當前存儲器區域之前的存儲器區域的地址。[0071]當第一處理單元PUl的數據塊是初始數據塊時,直接先前參考地址ADD_P可以是預設設置的地址。[0072]圖6中所示的第二計數器237-2對第一延遲數據塊DATA2(=A1A2A3A4)的起始地址計數,並產生第二計數值BCNTl(=0x00)。此時,第二計數值BCNTl對應於將在其中存儲第一延遲數據塊DATA2(=A1A2A3A4)的存儲器區域的地址。[0073]在其他實施例中,不提供第二計數器237-2。在這種情況下,代替第二計數值BCNTl,可以把圖3中所示的第一計數器233-2的第一計數值BCNT(=0x00)直接輸入到緩衝存儲器訪問控制電路237-3。[0074]緩衝存儲器訪問控制電路237-3讀取存儲在和當前參考地址ADD_C(=0x00)對應的第一存儲器區域MRl中的當前參考數據塊,例如4位元組數據X1X2X3X4,並且並行地(同時)讀取存儲在和預設設置的直接先前參考地址ADD_P對應的存儲器區域中的直接先前參考數據塊的一部分,例如2位元組數據。直接先前參考數據塊可以是存儲在預設選擇的存儲器區域中的數據塊。[0075]此後,緩衝存儲器訪問控制電路237-3把第一延遲數據塊DATA2(=A1A2A3A4)寫到第一存儲器239-1中和地址ADD(=0x00)對應的的第一存儲器區域MRl。因此,當前參考數據塊X1X2X3X4被利用第一延遲數據塊DATA2(=A1A2A3A4)更新。[0076]緩衝存儲器訪問控制電路237-3可以把擴展參考數據塊MDATA,例如6位元組數據,輸出到比較電路241,擴展參考數據塊包括直接先前參考數據塊的一部分和存儲在第一存儲器區域MRl中的當前參考數據塊X1X2X3X4。此外,緩衝存儲器訪問控制電路237-3也可以把指示擴展參考數據塊MDATA的起始位置的擴展參考數據塊起始地址MDATA_ADD輸出到比較電路241。[0077]圖7是示出圖2中所示的比較電路241的例子的框圖。寄存器301存儲直接在第二延遲數據塊DATA3(=A1A2A3A4)之前的數據塊的一部分PDATA1。當第二延遲數據塊DATA3(=A1A2A3A4)是初始數據塊時,存儲在寄存器301中的2位元組數據PDATAl可以被預設設置。[0078]第一比較器303把存儲在寄存器301中的2位元組數據PDATAl和直接先前參考數據塊的部分PDATA進行比較,並根據比較結果產生第一比較信號CPl。同時或者並行地,第二比較器305把當前參考數據塊RDATA(=X1X2X3X4)與第二延遲數據塊DATA3(=A1A2A3A4)進行比較,並根據比較結果產生第二比較信號CP2。[0079]長度計算電路311基於第一比較信號CPl和第二比較信號CP2產生指示重複數據的長度的長度信息Match_LEN和指示匹配還是不匹配的匹配信息Match_FLAG。[0080]當存儲在寄存器301中的2位元組數據PDATAl和直接先前參考數據塊的部分PDATA不同時,並且當前參考數據塊RDATA(=X1X2X3X4)與第二延遲數據塊DATA3(=A1A2A3A4)不同時,長度計算電路311可以輸出具有第一電平,例如高電平的匹配信息Match_FLAG。此時,長度計算電路311可以不產生長度信息Match_LEN。[0081]距離計算電路309可以基於擴展參考數據塊起始地址MDATA_ADD和第三計數值BCNT2產生指示擴展數據塊的相對位置、距離或者偏移的距離信息Match_DIS。在其他實施例中,距離計算電路309可以被基於匹配信息Match_FLAG使能或者廢能(disabled)。[0082]第三計數器307可以對第二延遲數據塊DATA3(=A1A2A3A4)的起始位置計數,並根據計數結果產生第三計數值BCNT2。[0083]在其他實施例中,可以不提供第三計數器307。在這種情況下,代替第三計數值BCNT2,圖3中所示的第一計數器233-2的第一計數值BCNT可以被直接輸入到距離計算電路309。用於控制壓縮數據產生電路243的控制信息COMP包括長度信息Match_LEN、匹配信息Match_FLAG和距離信息Match_DIS。[0084]圖8是示出圖2中所示的壓縮數據產生電路243的例子的框圖。壓縮數據產生電路243可以基於控制信息COMP和第三延遲數據塊DATA4產生字面值和長度/距離(length/distance,LLD)數據。[0085]具體地,壓縮數據產生電路243可以基於控制信息COMP確定要被處理的第三延遲數據塊DATA4是否是重複數據塊或者重複數據樣式,並根據確定結果將第三延遲數據塊DATA4依其原樣不壓縮地輸出,或者壓縮包括第三延遲數據塊DATA4的擴展數據塊。[0086]此時,未壓縮數據塊被稱為使用第一編碼方案產生的「字面數據」,並且壓縮數據塊或者壓縮擴展數據塊被稱為使用第二編碼方案產生的「長度/距離數據」。例如,壓縮數據產生電路243可以由有限狀態機(finitestatemachine,FSM)實施。[0087]選擇信號產生電路401響應於匹配信息Match_FLAG產生選擇信號SEL。例如,當匹配信息Match_FLAG是處於第一電平的信號時,選擇電路405響應於具有第一電平的匹配信息Match_FLAG,將第三延遲數據塊DATA4(=A1A2A3A4)依其原樣不壓縮地輸出。因此,字面數據A1A2A3A4被作為輸出數據DATAO輸出。[0088]下面將參考圖1A到圖8詳細地描述用於處理第二處理單元PU2的數據塊B5B6B7B8的過程。[0089]當緩衝存儲器237從哈希鍵產生電路233接收到指示第二處理單元PU2的數據塊B5B6B7B8的起始位置的地址ADD(=0x04)並且通過輸入數據寄存器231接收到第一延遲數據塊DATA2(=B5B6B7B8)時,地址產生器237-1產生當前參考地址ADD_C(=0x04)和直接先前參考地址ADD_P(=0x00)。[0090]根據地址產生器237-1的實施例,當「0x02」被作為直接先前參考地址ADD_P輸出時,緩衝存儲器訪問控制電路237-3可以讀取存儲在地址「0x02」和地址「0x03」的數據。此夕卜,當「0x00」被作為直接先前參考地址ADD_P輸出時,緩衝存儲器訪問控制電路237-3也可以讀取存儲在地址「0x02」和地址「0x03」的數據。[0091]第二計數器237-2對第一延遲數據塊DATA2(=B5B6B7B8)的起始位置進行計數,並根據計數結果產生第二計數值BCNTl(=0x04),即寫地址。[0092]緩衝存儲器訪問控制電路237-3讀取存儲在第二存儲器239_2中的第二存儲器區域MR2中的當前參考數據塊X5X6X7X8,並且並行地讀取存儲在第一存儲器239-1中的第一存儲器區域MRl中的直接先前參考數據塊A1A2A3A4的一部分,例如2位元組數據A3A4,當前參考數據塊X5X6X7X8對應於當前參考地址ADD_C(=0x04),並且直接先前參考數據塊A1A2A3A4對應於直接先前參考地址ADD_P(=0x00)。[0093]此後,緩衝存儲器訪問控制電路237-3響應於寫地址BCNTl(=0x04)(或者在其他實施例中,BCNT(=0x04)),把第一延遲數據塊DATA2(=B5B6B7B8)寫到第二存儲器239-2中的第二存儲器區域MR2。因此,存儲在第二存儲器區域MR2中的當前參考數據塊X5X6X7X8被利用第一延遲數據塊DATA2(=B5B6B7B8)更新。[0094]緩衝存儲器訪問控制電路237-3可以把擴展參考數據塊MDATA,例如6位元組數據A3A4X5X6X7X8輸出到比較電路241,6位元組數據A3A4X5X6X7X8包括存儲在第一存儲器區域MRl中的直接先前參考數據塊A1A2A3A4的部分A3A4,以及存儲在第二存儲器區域MR2中的當前參考數據塊X5X6X7X8。此外,緩衝存儲器訪問控制電路237-3也可以把指示擴展參考數據塊MDATA的起始位置的擴展參考數據塊起始地址MDATA_ADD(=0x02)輸出到比較電路241。[0095]圖7中所示的寄存器301存儲恰好直接在第二延遲數據塊DATA3(=B5B6B7B8)之前的數據塊A1A2A3A4的部分A3A4。[0096]第一比較器303把存儲在寄存器301中的2位元組數據PDATAl(=A3A4)與直接先前參考數據塊的部分PDATA(=A3A4)進行比較,並根據比較結果產生第一比較信號CP1。同時或者並行地,第二比較器305把當前參考數據塊RDATA(=X5X6X7X8)與第二延遲數據塊DATA3(=B5B6B7B8)進行比較,並根據比較結果產生第二比較信號CP2。[0097]長度計算電路311基於第一比較信號CPl和第二比較信號CP2產生長度信息Match_LEN和匹配信息Match_FLAG。[0098]當存儲在寄存器301中的2位元組數據PDATA1(=A3A4)和直接先前參考數據塊的部分PDATA(=A3A4)相同,並且當前參考數據塊RDATA(=X5X6X7X8)與第二延遲數據塊DATA3(=B5B6B7B8)不同時,長度計算電路311可以輸出具有第一電平,例如高電平的匹配信息Match_FLAG。[0099]距離計算電路309可以基於擴展參考數據塊起始地址MDATA_ADD(=0x02)和第三計數值BCNT2(=0x04)產生距離信息Match_DIS。如上所述,當距離計算電路309被根據匹配信息Match_FLAG使能或者廢能時,距離計算電路309可以被響應於據具有第一電平的匹配信息Match_FLAG廢能。[0100]圖8中所示的選擇電路405響應於具有第一電平的匹配信息Match_FLAG,將第三延遲數據塊DATA4(=B5B6B7B8)依其原樣不壓縮地輸出。換句話說,第三延遲數據塊DATA4(=B5B6B7B8)被作為字面數據DATAO輸出。[0101]用於分別處理第三處理單元的數據塊C1C2A3A4、第四處理單元PU4的數據塊B1B2B3B4和第五處理單元PU5的數據塊C3C4A3A4的過程基本上和用於處理第二處理單元PU2的數據塊B5B6B7B8的過程相同。[0102]因此,分別存儲在存儲器區域MR3、MR4和MR5中的參考數據塊Y1Y2Y3Y4、Y5Y6Y7Y8和Ζ1Ζ2Ζ3Ζ4被分別利用數據塊C1C2A3A4、Β1Β2Β3Β4和C3C4A3A4更新。[0103]圖8中所示的選擇電路405響應於具有第一電平的匹配信息Match_FLAG,將第三延遲數據塊DATA4——即C1C2A3A4、B1B2B3B4和C3C4A3A4依其原樣不壓縮地輸出。換句話說,第三延遲數據塊DATA4(C1C2A3A4、B1B2B3B4和C3C4A3A4)被作為字面數據DATAO輸出。[0104]下面將參考圖1A到圖8描述用於處理第六處理單元PU6的數據塊B1B2B3B4的過程。[0105]哈希鍵產生電路233產生對應於第六處理單元叩6的數據塊B1B2B3B4的哈希鍵Hl,並把存儲在哈希鍵表235中的記錄的和哈希鍵Hl對應的第一計數值BCNT輸出到緩衝存儲器控制器237。這裡,第一計數值BCNT是指示第四處理單元PU4的數據塊B1B2B3B4的起始位置的地址ADD(=OxOC)。[0106]而且,哈希鍵產生電路233利用指示第六處理單元PU6的數據塊B1B2B3B4的起始位置的第一計數值BCNT0x44更新存儲在和哈希鍵Hl對應的記錄的第一計數值BCNTOxOC。因此,當接收到新數據塊B1B2B3B4時,哈希鍵產生電路233輸出更新的第一計數值BCNT0x44作為地址ADD。[0107]緩衝存儲器控制器237中所包括的地址產生器237-1響應於地址ADD(=OxOC),產生當前參考地址ADD_C(=OxOC)和直接先前參考地址ADD_P(=0x08)。此時,第二計數器237-2對第一延遲數據塊DATA2(=PU6=B1B2B3B4)的起始位置進行計數,並根據計數結果產生第二計數值BCNTl(=0x44),即寫地址。[0108]圖6中所示的緩衝存儲器訪問控制電路237-3讀取存儲在和當前參考地址ADD_C(=OxOC)對應的第四存儲器區域MR4中的當前參考數據塊B1B2B3B4,並且並行地讀取存儲在和直接先前參考地址ADD_P(=0x08)對應的第三存儲器區域MR3中的直接先前參考數據塊C1C2A3A4的一部分,例如2位元組數據A3A4。[0109]此後,緩衝存儲器訪問控制電路237-3響應於寫地址BCNTI(=0x44)把第一延遲數據塊DATA2(=PU6=B1B2B3B4)寫到第二存儲器239-2中的第六存儲器區域MR6。因此,存儲在第六存儲器區域MR6中的當前參考數據塊Z5Z6Z7Z8被利用第一延遲數據塊DATA2(=PU6=B1B2B3B4)更新。[0110]緩衝存儲器訪問控制電路237-3可以把擴展參考數據塊MDATA,例如6位元組數據A3A4B1B2B3B4輸出到比較電路241,6位元組數據A3A4B1B2B3B4包括存儲在第三存儲器區域MR3中的直接先前參考數據塊C1C2A3A4的部分A3A4,以及存儲在第四存儲器區域MR4中的當前參考數據塊B1B2B3B4。此外,緩衝存儲器訪問控制電路237-3也可以把指示擴展參考數據塊MDATA的起始位置的擴展參考數據塊起始地址MDATA_ADD(=OxOA)輸出到比較電路241。[0111]寄存器301存儲恰好直接在第二延遲數據塊DATA3(=PU6=B1B2B3B4)之前的數據塊C3C4A:3A4(=PU5)的部分AM4。[0112]第一比較器303把存儲在寄存器301中的2位元組數據PDATAl(=A3A4)與直接先前參考數據塊的部分PDATA(=A3A4)進行比較,並根據比較結果產生第一比較信號CP1。與由第一比較器303執行的比較並行,第二比較器305把當前參考數據塊RDATA(=B1B2B3B4)與第二延遲數據塊DATA3(=PU6=B1B2B3B4)進行比較,並根據比較結果產生第二比較信號CP2。[0113]長度計算電路311基於第一比較信號CPl和第二比較信號CP2產生長度信息Match_LEN和匹配信息Match_FLAG。[0114]當存儲在寄存器301中的2位元組數據PDATA1(=A3A4)和直接先前參考數據塊的部分PDATA(=A3A4)相同,並且當前參考數據塊RDATA(=B1B2B3B4)與第二延遲數據塊DATA3(=PU6=B1B2B3B4)相同時,長度計算電路311輸出具有第二電平,例如低電平的匹配信息Match_FLAG。[0115]距離計算電路309可以基於擴展參考數據塊起始地址MDATA_ADD和第三計數值BCNT2產生距離信息Match_DIS。[0116]選擇電路405響應於匹配信息Match_FLAG輸出碼,即由碼產生電路403產生的長度/距離數據,作為輸出數據DATAO。[0117]碼產生電路403基於長度信息Match_LEN和距離信息Match_DIS產生長度/距離數據,例如壓縮數據。因此,選擇電路405輸出碼,例如指示長度和距離的壓縮數據[6,50]而非擴展數據,所述擴展數據包括第五處理單元PU5中所包括的2位元組數據A3A4和第六處理單元PU6中所包括的4位元組數據B1B2B3B4。[0118]數據壓縮電路230決定是否針對每一數據塊進行壓縮,藉此提高數據壓縮速度。此外,數據壓縮電路230可以壓縮擴展數據,藉此提高壓縮比。[0119]第一存儲器控制器250可以產生指示從數據壓縮電路230輸出的數據DATAO是否已經被壓縮的標誌,並且可以把該標誌和字面或長度/距離數據存儲在第一數據存儲設備130中。此時,字面數據或者長度/距離數據可以通過第二數據存儲設備150被存儲在第一數據存儲設備130中。[0120]圖9是示出圖2中所示的數據解壓縮電路270的例子的框圖。參考圖9,數據壓縮電路270包括有限狀態機(FSM)271、輸出數據產生電路273和輸出數據緩衝器275。[0121]FSM271接收包括字面數據和長度/距離數據的數據CDATA以及包括指示數據的壓縮或者未壓縮狀態的標誌的報頭,並根據所述報頭輸出指令將壓縮數據解壓縮的控制信號。[0122]輸出數據產生電路273基於從FSM271輸出的控制信號和壓縮數據CDATA把壓縮數據CDATA解壓縮,並把解壓縮數據流DDS輸出到輸出數據緩衝器275。輸出數據緩衝器275把解壓縮數據流DDS傳送到主機接口210(圖1A)。[0123]圖10是供描述根據本發明構思的某些實施例的數據壓縮方法時參考的流程圖。參考圖1A到圖8和圖10,在操作SllO中,數據壓縮電路230的緩衝存儲器控制器237基於從哈希鍵產生電路233輸出的地址ADD,並行地讀取先前參考數據塊的一部分和當前參考數據塊,它們分別被存儲在存儲器239-1到239-4中的兩個中,並把讀取的數據傳送到比較電路241。[0124]在操作S120中,比較電路241把先前參考數據塊的所述部分與先前數據塊的一部分進行比較,並把當前參考數據塊與當前數據塊進行比較。比較被並行地執行,即同時執行。[0125]當先前數據塊的所述部分和先前參考數據塊的所述部分匹配,並且當前數據塊和當前參考數據塊匹配時,在操作S140中,壓縮數據產生電路243壓縮擴展數據塊,並輸出壓縮數據,即長度/距離數據,其中擴展數據塊包括先前數據塊的所述部分和當前數據塊。[0126]但是,在當前數據塊和當前參考數據塊不匹配而先前數據塊的所述部分和先前參考數據塊的所述部分匹配時,在操作S150中,壓縮數據產生電路243壓縮或者旁路當前數據塊。[0127]在當前數據塊和當前參考數據塊匹配而先前數據塊和先前參考數據塊不匹配時,數據壓縮電路230從緩衝存儲器239讀取擴展參考數據塊,把擴展參考數據塊與擴展數據塊進行比較,並基於比較結果壓縮擴展數據塊。[0128]這裡,擴展參考數據塊包括先前參考數據塊的所述部分和當前參考數據塊。如先前提到的,擴展參考數據塊的尺寸和當前參考數據塊的尺寸的比例不是整數而是帶小數的數。[0129]如上所述,根據先前數據塊的重複性和當前數據塊的重複性,數據壓縮電路230可以輸出當前數據塊作為字面數據,輸出通過壓縮先前數據塊和當前數據塊產生的長度/距離數據,或者輸出通過壓縮包括先前數據塊的一部分和當前數據塊的擴展數據塊產生的長度/距離數據。[0130]圖11是根據本發明構思的其他實施例的數據壓縮方法的流程圖。圖12是用於說明圖11中所示的數據壓縮方法的例子的概念圖。將參考圖1A、圖11和圖12詳細地描述當編碼位置被改變時壓縮數據塊的方法。[0131]如圖12中所示,編碼位置⑶1、⑶2和⑶3指示要被壓縮的數據塊的起始位置。[0132]為了確定要被處理的當前數據塊⑶B(=A3A4B1B2)和參考數據塊RDB之間的匹配或者重複,在操作S210中,數據壓縮電路230確定在第i編碼位置⑶1,當前數據塊CDB(=A3A4B1B2)是否和第一參考數據塊RDB(=A1A2A3A4)匹配。這裡,「i」是從I開始的自然數,並且假設N是自然數3。[0133]當在操作S220中在第i編碼位置⑶I不存在匹配時,即噹噹前數據塊CDB(=A3A4B1B2)和第一參考數據塊RDB(=A1A2A3A4)不匹配時,在操作S230中,數據壓縮電路230把編碼位置從第i編碼位置⑶I改變到第(i+1)編碼位置⑶2。當在操作S250中,(i+1)小於或者等於N時,在操作S210中,數據壓縮電路230確定在第(i+1)編碼位置⑶2,當前數據塊CDB(=A3A4B1B2)是否和第二參考數據塊RDB(=B1B2B3B4)匹配。[0134]在操作S220中,在第(i+1)編碼位置⑶2不存在匹配的情況下,在操作S230中,數據壓縮電路230把編碼位置從第(i+1)編碼位置CD2改變到第(i+2)編碼位置CD3。當在操作S250中,(i+1)小於或者等於N時,在操作S210中,數據壓縮電路230確定在第(i+2)編碼位置CD3,當前數據塊CDB(=A3A4B1B2)是否和第三參考數據塊RDB(=A3A4B1B2)匹配。[0135]在操作S220中,在第(i+2)編碼位置⑶3存在匹配時,在操作S240中,數據壓縮電路230基於第三參考數據塊RDB(=A3A4B1B2),把當前數據塊CDB(=A3A4B1B2)壓縮為長度/距離數據。[0136]但是,當在操作S220中,在第(i+2)編碼位置⑶3不存在匹配時,在操作S230中,數據壓縮電路230把編碼位置從第(i+2)編碼位置CD3改變到第(i+3)編碼位置。但是,在操作S250中,由於(i+1)大於N,在操作S240中,當前數據塊CDB(=A3A4B1B2)被作為字面數據輸出。[0137]如上所述,根據本發明構思的某些實施例,在每一數據塊上執行壓縮,所以數據壓縮速度被增大。此外,由於擴展數據塊被壓縮,避免了壓縮比降低。[0138]由於使用交叉存儲器或者可獨立訪問的存儲器處理擴展數據塊,所以提高了壓縮效率。[0139]而且,確定已經被處理的數據塊的一部分和先前參考數據的一部分之間的匹配屬性,所以可以提高數據壓縮比或者數據壓縮效率。[0140]雖然已經參考本發明構思的示範性實施例具體示出和描述了本發明構思,但是本領域技術人員將會理解,不偏離本發明構思的由下列權利要求限定的精神和範圍,就可以對其在形式和細節上做出各種變化。【權利要求】1.一種數據壓縮方法,包含:接收包括先前數據塊和當前數據塊的輸入數據流;執行先前數據塊的一部分與先前參考數據塊的一部分的第一比較,以及當前數據塊與當前參考數據塊的第二比較,其中,第一比較和第二比較被並行執行;和基於第一比較和第二比較的結果,選擇性地輸出當前數據塊或者對擴展數據塊進行壓縮,其中,擴展數據塊包括先前數據塊的所述部分和當前數據塊。2.如權利要求1所述的數據壓縮方法,其中,在使用交叉方法分配並且可獨立地存取的不同存儲器中分別實施其中存儲當前參考數據塊的第一存儲器區域和其中存儲先前參考數據塊的第二存儲器區域。3.如權利要求1所述的數據壓縮方法,其中,擴展數據塊尺寸和當前數據塊尺寸的比例是帶小數的數。4.如權利要求1所述的數據壓縮方法,還包含從緩衝存儲器並行地讀取先前參考數據塊的所述部分和當前數據塊。5.一種數據壓縮方法,包含:接收包括先前數據塊和當前數據塊的輸入數據流;從存儲器讀取先前參考數據塊的一部分,並且從所述存儲器並行地讀取當前參考數據塊;比較先前數據塊的一部分與先前參考數據塊的所述部分,並且並行地比較當前數據塊和當前參考數據塊;當先前數據塊的所述部分和先前參考數據塊的所述部分匹配,並且當前數據塊匹配當前參考數據塊時,壓縮擴展數據塊,其中,擴展數據塊包括先前數據塊的所述部分和當前數據塊。6.如權利要求5所述的數據壓縮方法,還包含當先前數據塊的所述部分的至少一個和先前參考數據塊的所述部分不匹配,並且當前數據塊和當前參考數據塊不匹配時,選擇性地壓縮或者不壓縮當前數據塊。7.如權利要求5所述的數據壓縮方法,其中,存儲器是包括其中存儲當前數據塊的第一存儲器區域和其中存儲先前參考數據塊的第二存儲器區域的緩衝存儲器,並且第一區域和第二區域分別在使用交叉方法分配並且可獨立地存取的不同存儲器中實施。8.如權利要求5所述的數據壓縮方法,其中,擴展數據塊尺寸和當前數據塊尺寸的比例是帶小數的數。9.一種數據壓縮電路,包含:緩衝存儲器,包括第一存儲器區域、第二存儲器區域和第三存儲器區域;緩衝存儲器控制器,被配置成響應於地址,輸出存儲在第一存儲器區域中的先前參考數據塊的一部分和存儲在第二存儲器區域中的當前參考數據塊;比較電路,被配置成確定先前數據塊的一部分是否和先前參考數據塊的所述部分匹配,以及當前數據塊是否和當前參考數據塊匹配,並根據確定結果,產生控制信息;和壓縮數據產生電路,被配置成基於控制信息,選擇性地輸出當前數據塊或者壓縮數據,其中,通過壓縮包括先前數據塊的所述部分和當前數據塊的擴展數據塊來產生壓縮數據。10.如權利要求9所述的數據壓縮電路,其中,第一存儲器區域、第二存儲器區域和第三存儲器區域被分別實施在使用交叉方法分配並且可獨立地存取的不同存儲器中。11.如權利要求9所述的數據壓縮電路,其中,緩衝存儲器控制器並行地從第一存儲器區域讀取先前參考數據塊的所述部分,從第二存儲器區域讀取當前參考數據塊,然後把當前數據塊寫到第三存儲器區域。12.如權利要求9所述的數據壓縮電路,其中,緩衝存儲器控制器包含:地址產生器,被配置成使用所述地址產生第一存儲器區域的第一地址和第二存儲器區域的第二地址;和緩衝存儲器訪問控制電路,被配置成並行地使用第一地址從第一存儲器區域讀取先前參考數據塊的所述部分,並使用第二地址從第二存儲器區域讀取當前參考數據塊,並基於當前數據塊的第三地址把當前數據塊寫到第三存儲器區域。13.如權利要求9所述的數據壓縮電路,其中,壓縮電路並行地確定先前數據塊的所述部分是否和先前參考數據塊的所述部分匹配,以及當前數據塊是否和當前參考數據塊匹配。14.如權利要求9所述的數據壓縮電路,其中,比較電路包含:寄存器,被配置成存儲先前數據塊的所述部分;第一比較器,被配置成確定從寄存器輸出的先前數據塊的所述部分是否和從緩衝存儲器控制器輸出的先前參考數據塊的所述部分匹配;第二比較器,被配置成確定當前數據塊是否和當前參考數據塊匹配;長度計算電路,被配置成基於第一比較器的輸出信號和第二比較器的輸出信號,輸出指示匹配還是不匹配的匹配信息,以及指示匹配數據的長度的長度信息;和距離計算電路,被配置成基於先前數據塊的所述部分的地址和當前數據塊的地址輸出距離信息,其中,控制信息包括匹配信息、長度信息和距離信息。15.如權利要求14所述的數據壓縮電路,其中,壓縮數據產生電路包含:選擇信號產生電路,被配置成基於匹配信息產生選擇信號;碼產生電路,被配置成基於長度信息和距離信息產生壓縮數據;和選擇電路,被配置成響應於選擇信號,輸出當前數據塊或者壓縮數據。16.一種數據處理系統,包含:數據存儲設備;主機,被配置成輸出包括先前數據塊和當前數據塊的數據流;和存儲器控制器,被配置成確定來自主機的數據流中的每一數據塊或者每一擴展數據塊的匹配屬性,根據確定結果壓縮數據流中的數據塊或者擴展數據塊,並把壓縮數據輸出到數據存儲設備,其中,存儲器控制器確定先前數據塊的匹配屬性,然後確定包括先前數據塊的一部分和當前數據塊的擴展數據塊的匹配屬性。17.如權利要求16所述的數據處理系統,其中,存儲器控制器包含:緩衝存儲器,包括第一存儲器區域、第二存儲器區域和第三存儲器區域;緩衝存儲器控制器,被配置成響應於地址,並行地輸出存儲在第一存儲器區域中的先前參考數據塊的一部分和存儲在第二存儲器區域中的當前參考數據塊;比較電路,被配置成並行地確定先前數據塊的所述部分是否和先前參考數據塊的所述部分匹配,以及當前數據塊是否和當前參考數據塊匹配,並根據確定結果,產生控制信息;和壓縮數據產生電路,被配置成基於控制信息,選擇性地輸出當前數據塊或者壓縮數據,其中,通過對擴展數據塊進行壓縮來產生壓縮數據。18.如權利要求17所述的數據處理系統,其中,第一存儲器區域、第二存儲器區域和第三存儲器區域被分別實施在具有使用交叉方法分配的不同地址的不同存儲器中。19.如權利要求17所述的數據處理系統,其中,緩衝存儲器控制器包含:地址產生器,被配置成使用所述地址產生第一存儲器區域的第一地址和第二存儲器區域的第二地址;和緩衝存儲器訪問控制電路,被配置成並行地使用第一地址從第一存儲器區域讀取先前參考數據塊的所述部分,並使用第二地址從第二存儲器區域讀取當前參考數據塊,並基於當前數據塊的第三地址把當前數據塊寫到第三存儲器區域。20.如權利要求17所述的數據處理系統,其中,比較電路包含:寄存器,被配置成存儲先前數據塊的所述部分;第一比較器,被配置成確定從寄存器輸出的先前數據塊的所述部分是否和從緩衝存儲器控制器輸出的先前參考數據塊的所述部分匹配;第二比較器,被配置成確定當前數據塊是否和當前參考數據塊匹配;長度計算電路,被配置成基於第一比較器的輸出信號和第二比較器的輸出信號,輸出指示匹配還是不匹配的匹配信息,以及指示匹配數據的長度的長度信息;和距離計算電路,被配置成基於先前數據塊的所述部分的地址和當前數據塊的地址輸出距離信息,其中,控制信息包括匹配信息、長度信息和距離信息。21.如權利要求20所述的數據處理系統,其中,壓縮數據產生電路包含:選擇信號產生電路,被配置成基於匹配信息產生選擇信號;碼產生電路,被配置成基於長度信息和距離信息產生壓縮數據;和選擇電路,被配置成響應於選擇信號,輸出當前數據塊或者壓縮數據。22.如權利要求16所述的數據處理系統,其中,擴展數據塊的尺寸和當前數據塊的尺寸的比例不是整數。23.如權利要求16所述的數據處理系統,其中,數據存儲設備是快閃記憶體、嵌入式多媒體卡(eMMC)、通用快快閃記憶體儲設備(UFS)、通用串行總線(USB)快閃驅動器或者固態驅動器(SSD)。24.如權利要求16所述的數據處理系統,其中,數據存儲設備是硬碟驅動器。25.如權利要求16所述的數據處理系統,其中,數據處理系統是智慧型電話機、平板個人計算機、移動網際網路設備,或者電子書。【文檔編號】H03M7/30GK103916131SQ201410001223【公開日】2014年7月9日申請日期:2014年1月2日優先權日:2013年1月2日【發明者】徐萬根,金大旭,孫弘樂,孔駿鎮申請人:三星電子株式會社

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀