TWI780696B - 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置 - Google Patents

查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置 Download PDF

Info

Publication number
TWI780696B
TWI780696B TW110116680A TW110116680A TWI780696B TW I780696 B TWI780696 B TW I780696B TW 110116680 A TW110116680 A TW 110116680A TW 110116680 A TW110116680 A TW 110116680A TW I780696 B TWI780696 B TW I780696B
Authority
TW
Taiwan
Prior art keywords
data
original
compressed
host
processor
Prior art date
Application number
TW110116680A
Other languages
English (en)
Other versions
TW202244748A (zh
Inventor
駱子仁
郭皇志
Original Assignee
創鑫智慧股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 創鑫智慧股份有限公司 filed Critical 創鑫智慧股份有限公司
Priority to TW110116680A priority Critical patent/TWI780696B/zh
Priority to CN202110732308.5A priority patent/CN115348327B/zh
Priority to US17/363,001 priority patent/US11456755B1/en
Application granted granted Critical
Publication of TWI780696B publication Critical patent/TWI780696B/zh
Publication of TW202244748A publication Critical patent/TW202244748A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3066Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Processing (AREA)

Abstract

本發明提供一種用於計算設備及其主機與裝置的查找表 壓縮方法與查找表讀取方法。主機以原表位址從原始查找表取出原始資料。主機以重組條件檢查原始資料而獲得檢查結果。主機依照檢查結果將原始資料轉換為經重組資料。主機以經壓縮表位址將經重組資料寫入經壓縮查找表。主機將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表。主機將經壓縮查找表存放於裝置。

Description

查找表壓縮方法與查找表讀取方法及其計算設 備、主機與裝置
本發明是有關於一種電子裝置,且特別是有關於一種用於計算設備及其主機與裝置的查找表壓縮方法與查找表讀取方法。
對於許多應用而言,主機可能會傳輸大量資料給裝置。以人工智慧(artificial intelligence,AI)應用為例,電腦(主機)可能會傳輸大量資料給AI加速卡(裝置)。AI加速卡可以使用這些大量資料進行複雜的AI演算法,然後將演算結果回傳給電腦。無論如何,主機與裝置之間的傳輸頻寬是有限的。如何減少主機與裝置之間的資料傳輸量,是諸多重要課題之一。
預先存放了所述大量資料的查找表(look-up table,LUT)可以被配置在裝置中,以便減少主機與裝置之間的資料傳輸量。舉例來說,在人工智慧模型(AI model)中,內嵌表(embedding table)被廣泛應用於計算設備。對於大型模型而言,一筆資料可能長達上 百個位元組(byte)。透過將資料放進內嵌表(查找表)中,一個64位元(bit)(亦即8個位元組)的位址(索引)可以表示一筆上百個位元組資料。主機可以將64位元的位址傳輸給裝置,而裝置依據此位址在內嵌表中取出一筆上百個位元組資料。因此,主機可以不用將一筆上百個位元組資料傳輸給裝置,以減少主機與裝置之間的資料傳輸量。可想而知,裝置需要具備大量的儲存空間去存放所述內嵌表(查找表)。
本發明提供一種查找表壓縮方法與查找表讀取方法,以及使用所述方法的計算設備及其主機與裝置,以減少查找表(look-up table,LUT)的資料量,以及使用經減少資料量的查找表(經壓縮查找表)。
在本發明的一實施例中,上述的查找表壓縮方法包括:以原表位址從原始查找表取出原始資料;以重組條件檢查原始資料而獲得檢查結果;依照檢查結果,將原始資料轉換為經重組資料;以經壓縮表位址將經重組資料寫入經壓縮查找表;以及將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表。
在本發明的一實施例中,上述的計算設備包括裝置以及主機。主機以原表位址從原始查找表取出原始資料。主機以重組條件檢查原始資料而獲得檢查結果。主機依照檢查結果將原始資料轉換為經重組資料。主機以經壓縮表位址將經重組資料寫入經壓 縮查找表。主機將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表。主機將經壓縮查找表與重組條件存放於裝置。
在本發明的一實施例中,上述的主機包括記憶體以及處理器。處理器以原表位址從記憶體的原始查找表取出原始資料。處理器以重組條件檢查原始資料而獲得檢查結果。處理器依照檢查結果將原始資料轉換為經重組資料。處理器以經壓縮表位址將經重組資料寫入經壓縮查找表。處理器將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表。處理器將映射表存放於記憶體。處理器將經壓縮查找表與重組條件提供給裝置。
基於上述,本發明諸實施例所述計算設備依照重組條件將原始查找表轉換為經壓縮查找表。因此,裝置可以用較小的儲存空間去存放所述經壓縮查找表。
在本發明的一實施例中,上述的查找表讀取方法包括:以原表位址從映射表取出經壓縮表位址以及位元圖(bitmap);以經壓縮表位址從經壓縮查找表取出經重組資料;以及依照位元圖與重組條件將經重組資料轉換為原始資料。
在本發明的一實施例中,上述的計算設備包括主機以及裝置。主機以原表位址從映射表取出經壓縮表位址以及位元圖。裝置耦接至主機,以接收經壓縮表位址以及位元圖。裝置以經壓縮表位址從經壓縮查找表取出經重組資料。裝置依照位元圖與重組條件而將經重組資料轉換為原始資料。
在本發明的一實施例中,上述的裝置包括記憶體以及處 理器。處理器從主機接收經壓縮表位址以及位元圖。處理器以經壓縮表位址從記憶體的經壓縮查找表取出經重組資料。處理器依照位元圖與重組條件而將經重組資料轉換為原始資料。
在本發明的一實施例中,上述的主機包括記憶體以及處理器。處理器以原表位址從記憶體的映射表取出經壓縮表位址以及位元圖。處理器將經壓縮表位址以及位元圖提供給裝置,以使裝置以經壓縮表位址從經壓縮查找表取出經重組資料,以及使裝置依照位元圖與重組條件而將經重組資料轉換為原始資料。
基於上述,本發明諸實施例所述主機將經壓縮表位址以及位元圖傳輸給裝置。裝置可以使用此經壓縮表位址去從經壓縮查找表取出經重組資料。然後,裝置可以依照位元圖與重組條件而將經重組資料轉換為原始資料。因此,所述計算設備可以使用經減少資料量的查找表(經壓縮查找表)。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
100:計算設備
110:主機
111、121:記憶體
112、122:處理器
120:裝置
S210~S250、S310~S330:步驟
圖1是依照本發明的一實施例的一種計算設備的電路方塊(circuit block)示意圖。
圖2是依照本發明的一實施例的一種查找表壓縮方法的流程示意圖。
圖3是依照本發明的一實施例的一種查找表讀取方法的流程示意圖。
在本案說明書全文(包括申請專利範圍)中所使用的「耦接(或連接)」一詞可指任何直接或間接的連接手段。舉例而言,若文中描述第一裝置耦接(或連接)於第二裝置,則應該被解釋成該第一裝置可以直接連接於該第二裝置,或者該第一裝置可以透過其他裝置或某種連接手段而間接地連接至該第二裝置。本案說明書全文(包括申請專利範圍)中提及的「第一」、「第二」等用語是用以命名元件(element)的名稱,或區別不同實施例或範圍,而並非用來限制元件數量的上限或下限,亦非用來限制元件的次序。另外,凡可能之處,在圖式及實施方式中使用相同標號的元件/構件/步驟代表相同或類似部分。不同實施例中使用相同標號或使用相同用語的元件/構件/步驟可以相互參照相關說明。
圖1是依照本發明的一實施例的一種計算設備100的電路方塊(circuit block)示意圖。計算設備100包括主機(host)110與裝置(device)120。主機110與裝置120可以是任何電子產品。舉例來說,在一些實施例中,主機110可以是電腦,而裝置120可以是人工智慧(artificial intelligence,AI)加速卡。在另一些實施例中,裝置120可以是穿戴式設備或是其他電子產品。對於許多應用而言,主機110可能會傳輸大量資料給裝置120。無論如何, 主機110與裝置120之間的傳輸頻寬是有限的。
在一些實施例中,預先存放了大量資料的查找表(look-up table,LUT)可以被配置在裝置120中,以便減少主機110與裝置120之間的資料傳輸量。舉例來說,人工智慧模型(AI model)可以被紀錄於原始查找表中,而這個原始查找表可以被配置在裝置120的記憶體121。對於大型模型而言,一筆資料可能長達上百個位元組(byte)。主機110的處理器112可以將位址(索引)傳輸給裝置120的處理器122,而裝處理器122可以依據此位址在記憶體121的原始查找表中取出一筆上百個位元組資料。因此,主機110可以不用將一筆上百個位元組資料傳輸給裝置120,以減少主機110與裝置120之間的資料傳輸量。無論如何,裝置120的儲存空間有限。原始查找表需要被壓縮以節省儲存空間。
依照不同的設計需求,上述處理器112以及(或是)處理器122可以實現於積體電路(integrated circuit)上的邏輯電路。或者,上述處理器112以及(或是)處理器122可以利用硬體描述語言(hardware description languages,例如Verilog HDL或VHDL)或其他合適的編程語言來實現。舉例來說,上述處理器112以及(或是)處理器122的相關功能可以被實現於一或多個控制器、微控制器、微處理器、特殊應用積體電路(Application-specific integrated circuit,ASIC)、數位訊號處理器(digital signal processor,DSP)、場可程式邏輯閘陣列(Field Programmable Gate Array,FPGA)及/或其他處理單元中的各種邏輯區塊、模組和電路。
下述實施例將說明,在初始化期間,由主機110壓縮原始查找表,然後將經壓縮查找表提供/傳輸給裝置120。在另一實施例中,裝置120可以壓縮原始查找表(「裝置120壓縮原始查找表」相關操作可以參照下述關於「主機110壓縮原始查找表」的相關說明去類推),然後將經壓縮查找表寫回記憶體121。
圖2是依照本發明的一實施例的一種查找表壓縮方法的流程示意圖。步驟S210以原表位址從原始查找表取出原始資料。步驟S220以「重組條件」檢查所述原始資料而獲得檢查結果(亦稱為位元圖,bitmap)。所述重組條件可以依照實際設計來決定。舉例來說,在一些實施例中,所述重組條件包括「n個位元組為常數」。在另一些實施例中,所述重組條件包括「n個位元組小於閥值」。步驟S230依照所述檢查結果而將原始資料轉換為經重組資料。步驟S240以經壓縮表位址將所述經重組資料寫入經壓縮查找表。步驟S250將原表位址、經壓縮表位址以及檢查結果(位元圖)之間的關係寫入映射表。
舉例來說,請參照圖1與圖2,原始查找表可以被存放在主機110的記憶體111。主機110的處理器112以原表位址從記憶體111的原始查找表取出一筆原始資料。處理器112以「重組條件」檢查所述原始資料而獲得檢查結果。處理器112依照所述檢查結果將原始資料轉換為經重組資料。處理器112以經壓縮表位址將所述經重組資料寫入經壓縮查找表。主機110的處理器112將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表。在 完成所述映射表與所述經壓縮查找表的建立後,主機110的處理器112可以將所述映射表存放於主機110的記憶體111,而且主機110的處理器112可以將所述經壓縮查找表與所述重組條件提供/傳輸給裝置120的處理器122。處理器122可以將所述經壓縮查找表存放在記憶體121。在完成所述經壓縮查找表與所述映射表的建立後,主機110的處理器112可以清除在記憶體111中的原始查找表,以節省記憶空間。
表1是所述原始查找表的一個具體範例。在初始化期間,原始查找表可以被存放在主機110的記憶體111。主機110的處理器112以原表位址從記憶體111的原始查找表取出一筆原始資料(步驟S210)。舉例來說,處理器112以原表位址「0x000」從表1(原始查找表)取出原始資料「0x0000_0001」。在本文中「0x」表示16進制數值。
Figure 110116680-A0305-02-0010-1
處理器112以「重組條件」檢查所述原始資料而獲得檢查結果(步驟S220)。在此以「n個位元組為一常數」作為重組條件的一個實施範例,其中的n與所述常數可以是依照實際設計的 任何實數。以表1所示原表位址「0x000」的原始資料「0x0000_0001」為例,當原始資料「0x0000_0001」中的一部份資料(資料長度為n個位元組)全為該常數時,將檢查結果(位元圖)中的一個對應位元設為第一邏輯態,以表示符合重組條件。當該部份資料不全為該常數時,將檢查結果(位元圖)中的該對應位元設為第二邏輯態,以表示不符合重組條件。
舉例來說,在一些實施例中,n可以是2,而所述常數可以是0。處理器112以「2個位元組全為0」去檢查原表位址「0x000」的原始資料「0x0000_0001」(步驟S220)。原始資料「0x0000_0001」有4個位元組,其中前2個位元組「0x0000」符合「重組條件」,所以檢查結果(位元圖)的對應位元為「b’0」(在此雖以邏輯值「0」代表符合重組條件,但是其他實施例不限於此);原始資料「0x0000_0001」的後2個位元組「0x0001」不符合「重組條件」,所以檢查結果(位元圖)的對應位元為「b’1」(在此雖以邏輯值「1」代表不符合重組條件,但是其他實施例不限於此)。因此,原表位址「0x000」的原始資料「0x0000_0001」的檢查結果(位元圖)為「b’01」。以此類推,表1所示原表位址「0x004」、「0x008」、「0x00c」與「0x010」所對應的檢查結果(位元圖)為「b’11」、「b’00」、「b’10」與「b’11」。在本文中「b’」表示2進制數值。
處理器112可以依照所述檢查結果(位元圖)將原始資料轉換為經重組資料(步驟S230)。舉例來說,當所述檢查結果表示原始資料中的一部份資料符合重組條件時,捨棄該部份資料;以 及當所述檢查結果表示該部份資料不符合重組條件時,將該部份資料保留於經重組資料中。以表1所示原表位址「0x000」的原始資料「0x0000_0001」為例,其檢查結果(位元圖)為「b’01」。亦即,原始資料「0x0000_0001」的前2個位元組「0x0000」符合「重組條件」,所以處理器112可以捨棄這部份資料「0x0000」。原始資料「0x0000_0001」的後2個位元組「0x0001」不符合「重組條件」,所以處理器112可以將這部份資料「0x0001」保留於經重組資料中。以此類推,表1所示原表位址「0x004」、「0x00c」與「0x010」所對應的經重組資料為「0xdead_beef」、「0xabcd」與「0x0220_1215」。原表位址「0x008」的原始資料「0x0000_0000」全部符合「重組條件」,所以處理器112可以捨棄原始資料「0x0000_0000」。
處理器112以經壓縮表位址將所述經重組資料寫入經壓縮查找表(步驟S240)。表2是所述經壓縮查找表的一個具體範例。處理器112以經壓縮表位址「0x000」將所述經重組資料「0x0001」寫入表2所示經壓縮查找表。連續地,處理器112以經壓縮表位址「0x002」、「0x006」與「0x008」分別將所述經重組資料「0xdead_beef」、「0xabcd」與「0x0220_1215」寫入表2所示經壓縮查找表。
Figure 110116680-A0305-02-0012-2
主機110的處理器112可以將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表(步驟S250)。表3是所述映射表的一個具體範例。主機110的處理器112可以將表1所示原表位址、表2所示經壓縮表位址以及表1所示原始資料的檢查結果(位元圖)之間的關係寫入表3所示映射表。表3所示「X」表示「不理會(don’t care)」。
Figure 110116680-A0305-02-0013-3
在完成表3所示映射表與表2所示經壓縮查找表的建立後,主機110的處理器112可以將表3所示映射表存放於主機110的記憶體111,而且主機110的處理器112可以將表2所示經壓縮查找表與所述重組條件「2個位元組全為0」提供/傳輸給裝置120的處理器122。處理器122可以將表2所示經壓縮查找表存放在記憶體121。在完成所述經壓縮查找表與所述映射表的建立後(亦即初始化期間已結束),主機110的處理器112可以清除在記憶體111中的表1所示原始查找表,以節省記憶空間。
上述重組條件「2個位元組全為0」為步驟S220的諸多 實施例中的一個。在另一些實施例中,步驟S220的重組條件可以是其他條件,例如「n個位元組小於某一個閥值」,其中的n與所述閥值可以是依照實際設計的任何實數。以表1所示原表位址「0x000」的原始資料「0x0000_0001」為例,當表1所示原始資料「0x0000_0001」中的一部份資料(資料長度為n個位元組)小於該閥值時,將檢查結果(位元圖)中的一個對應位元設為第一邏輯態,以表示符合重組條件。當該部份資料不小於該閥值時,將檢查結果(位元圖)中的該對應位元設為第二邏輯態,以表示不符合重組條件。
舉例來說,在一些實施例中,n可以是1,而所述閥值可以是0x03。處理器112以「1個位元組小於0x03」去檢查表1所示原表位址「0x000」的原始資料「0x0000_0001」(步驟S220)。原始資料「0x0000_0001」的4個位元組的值均小於閥值「0x03」,所以檢查結果(位元圖)的四個對應位元均為「b’0」(在此雖以邏輯值「0」代表符合重組條件,但是其他實施例不限於此)。因此,原表位址「0x000」的原始資料「0x0000_0001」的檢查結果(位元圖)為「b’0000」。表1所示原表位址「0x004」的原始資料「0xdead_beef」的4個位元組的值均不小於閥值「0x03」,所以檢查結果(位元圖)的四個對應位元均為「b’1」(在此雖以邏輯值「1」代表不符合重組條件,但是其他實施例不限於此)。因此,原表位址「0x004」的原始資料「0xdead_beef」的檢查結果(位元圖)為「b’1111」。以此類推,表1所示原表位址「0x008」、「0x00c」與 「0x010」所對應的檢查結果(位元圖)為「b’0000」、「b’1100」與「b’0111」。
處理器112可以依照所述檢查結果(位元圖)將原始資料轉換為經重組資料(步驟S230)。以表1所示原表位址「0x000」的原始資料「0x0000_0001」為例,其檢查結果(位元圖)為「b’0000」。亦即,原始資料「0x0000_0001」的4個位元組的每一個均符合重組條件「1個位元組小於0x03」,所以處理器112可以捨棄這原始資料「0x0000_0001」。表1所示原表位址「0x004」的原始資料「0xdead_beef」的4個位元組的每一個均不符合重組條件「1個位元組小於0x03」,所以處理器112可以將這原始資料「0xdead_beef」保留於經重組資料中。以此類推,處理器112可以捨棄表1所示原表位址「0x008」的原始資料「0x0000_0000」、「0x00e」的原始資料「0x0000」與原表位址「0x010」的原始資料「0x02」,以及將表1所示原表位址「0x00c」的原始資料「0xabcd」與原表位址「0x011」的原始資料「0x20_1215」保留於經重組資料中。
處理器112以經壓縮表位址將所述經重組資料寫入經壓縮查找表(步驟S240)。表4是所述經壓縮查找表的另一個具體範例。處理器112以經壓縮表位址「0x000」將所述經重組資料「0xdead_beef」寫入表4所示經壓縮查找表。連續地,處理器112以經壓縮表位址「0x004」與「0x006」分別將所述經重組資料「0xabcd」與「0x20_1215」寫入表4所示經壓縮查找表。
Figure 110116680-A0305-02-0016-4
主機110的處理器112可以將原表位址、經壓縮表位址以及檢查結果之間的關係寫入映射表(步驟S250)。表5是所述映射表的另一個具體範例。主機110的處理器112可以將表1所示原表位址、表4所示經壓縮表位址以及表1所示原始資料的檢查結果(位元圖)之間的關係寫入表5所示映射表。表5所示「X」表示「不理會(don’t care)」。
Figure 110116680-A0305-02-0016-5
在完成表5所示映射表與表4所示經壓縮查找表的建立後,主機110的處理器112可以將表5所示映射表存放於主機110的記憶體111,而且主機110的處理器112可以將表4所示經壓縮查找表與所述重組條件「1個位元組小於0x03」提供/傳輸給裝置120的處理器122。處理器122可以將表4所示經壓縮查找表存放在記憶體121。在完成所述經壓縮查找表與所述映射表的建立後 (亦即初始化期間已結束),主機110的處理器112可以清除在記憶體111中的表1所示原始查找表,以節省記憶空間。
綜上所述,上述諸實施例所述計算設備100可以依照重組條件將原始查找表轉換為經壓縮查找表。因此,裝置120可以用較小的儲存空間去存放所述經壓縮查找表。
圖3是依照本發明的一實施例的一種查找表讀取方法的流程示意圖。步驟S310以原表位址從映射表取出經壓縮表位址以及位元圖。步驟S320以經壓縮表位址從經壓縮查找表取出經重組資料。步驟S330依照位元圖與重組條件,將經重組資料轉換為原始資料。
舉例來說,請參照圖1與圖3,所述映射表可以被存放於主機110的記憶體111,而所述經壓縮查找表可以被存放於裝置120的記憶體121。主機110的處理器112以原表位址從記憶體111的映射表取出經壓縮表位址以及位元圖,以及主機110的處理器112可以將經壓縮表位址以及位元圖提供給裝置120的處理器122(步驟S310),以使裝置120以所述經壓縮表位址從經壓縮查找表取出經重組資料,以及使裝置120依照所述位元圖與重組條件而將所述經重組資料轉換為原始資料。
裝置120的處理器122可以從主機110接收經壓縮表位址以及位元圖。在步驟S320中,處理器122以經壓縮表位址從記憶體121的經壓縮查找表取出經重組資料。在步驟S330中,處理器122可以依照位元圖與重組條件而將經重組資料轉換為原始資 料。圖3所述「重組條件」可以對應於圖2所述「重組條件」。舉例來說,在一些實施例中,所述重組條件包括「n個位元組為常數」,其中的n與所述常數可以是依照實際設計的任何實數。在重組條件為「n個位元組為常數」的情況下,步驟S330的操作可以包括:當位元圖中的對應位元為第一邏輯態時,以該常數作為原始資料的對應部份資料;以及當該對應位元為第二邏輯態時,擷取經重組資料中的對應部份資料作為原始資料的對應部份資料。
舉例來說,在一些實施例中,重組條件「n個位元組為常數」中的n可以是2,而所述常數可以是0。以表2所示經壓縮查找表與表3所示映射表為例,主機110的處理器112以原表位址「0x000」從表3所示映射表取出經壓縮表位址「0x000」以及位元圖「b’01」,然後將經壓縮表位址「0x000」以及位元圖「b’01」提供給裝置120的處理器122(步驟S310)。處理器122以經壓縮表位址「0x000」從表2所示經壓縮查找表取出經重組資料「0x0001」(步驟S320)。處理器122可以依照位元圖「b’01」與重組條件「2個位元組為0」而將經重組資料「0x0001」轉換為原始資料「0x0000_0001」(步驟S330)。詳而言之,因為位元圖「b’01」中的第一個位元為「b’0」,所以處理器122使用「0x0000」(常數)作為原始資料的前2個位元組。因為位元圖「b’01」中的第二個位元為「b’1」,所以處理器122擷取經重組資料「0x0001」作為原始資料的後2個位元組。
因此,依照表2所示經壓縮表位址「0x000」與位元圖 「b’01」,處理器122可以將經重組資料「0x0001」轉換為原始資料「0x0000_0001」。以此類推,主機110的處理器112以原表位址「0x004」從表3所示映射表取出經壓縮表位址「0x002」以及位元圖「b’11」,以及裝置120的處理器122以經壓縮表位址「0x002」從表2所示經壓縮查找表取出經重組資料「0xdead_beef」,然後處理器122依照位元圖「b’11」將經重組資料「0xdead_beef」作為原始資料。主機110的處理器112以原表位址「0x008」從表3所示映射表取出位元圖「b’00」,以及裝置120的處理器122依照位元圖「b’00」將兩個「0x0000」(常數)作為原始資料,而決定原始資料為「0x0000_0000」。
在另一些實施例中,所述重組條件包括「n個位元組小於閥值」。在重組條件為「n個位元組小於閥值」的情況下,步驟S330的操作可以包括:當位元圖中的對應位元為第一邏輯態時,以符合該閥值的一個或多個實數作為原始資料的對應部份資料;以及當該對應位元為第二邏輯態時,擷取經重組資料中的對應部份資料作為原始資料的對應部份資料。
舉例來說,在一些實施例中,重組條件「n個位元組小於閥值」中的n可以是1,所述閥值可以是0x03,而所述實數可以是小於閥值「0x03」的任何數。以表4所示經壓縮查找表與表5所示映射表為例,主機110的處理器112以原表位址「0x000」從表5所示映射表取出位元圖「b’0000」,然後將位元圖「b’0000」提供給裝置120的處理器122(步驟S310)。因為位元圖「b’0000」中 的4個位元均為「b’0」,所以處理器122用0x00至0x02的四個實數(例如「0x00」、「0x00」、「0x00」與「0x00」)作為原始資料,而決定原始資料為「0x0000_0000」。相較於表1所示原表位址「0x000」的原始資料「0x0000_0001」,處理器122解壓縮的原始資料「0x0000_0000」存在誤差。對於一些特定應用而言,例如人工智慧應用,小於某一閥值的誤差是可被接受的。
在另一些實施例中,所述實數可以是動態變換的。當重組條件為「n個位元組小於閥值」時,裝置120可以使用任一個符合所述閥值條件的值。舉例來說,重組條件為「1個位元組小於0x03」時,裝置120可以隨意填上0x00至0x02的任一數值。以表4所示經壓縮查找表與表5所示映射表為例,主機110的處理器112以原表位址「0x000」從表5所示映射表取出位元圖「b’0000」,然後將位元圖「b’0000」提供給裝置120的處理器122(步驟S310)。因為位元圖「b’0000」中的4個位元均為「b’0」,所以處理器122用0x00至0x02的四個實數(例如「0x00」、「0x02」、「0x01」與「0x00」)作為原始資料,而決定原始資料為「0x0002_0100」。相較於表1所示原表位址「0x000」的原始資料「0x0000_0001」,處理器122解壓縮的原始資料「0x0002_0100」存在誤差。對於一些特定應用而言,例如人工智慧應用,小於閥值(例如0x03)的誤差是可被接受的。
綜上所述,上述諸實施例所述主機110可以將經壓縮表位址以及位元圖傳輸給裝置120。裝置120可以使用此經壓縮表位 址去從經壓縮查找表取出經重組資料。然後,裝置120可以依照位元圖與重組條件而將經重組資料轉換為原始資料。因此,所述計算設備100可以使用經減少資料量的查找表(經壓縮查找表)。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
S210~S250:步驟

Claims (34)

  1. 一種查找表壓縮方法,包括:以一原表位址從一原始查找表取出一原始資料;以一重組條件檢查該原始資料而獲得一檢查結果;依照該檢查結果,將該原始資料轉換為一經重組資料;以一經壓縮表位址將該經重組資料寫入一經壓縮查找表;以及將該原表位址、該經壓縮表位址以及該檢查結果之間的關係寫入一映射表,其中該重組條件包括「n個位元組為一常數」,而檢查該原始資料的操作包括:當該原始資料中的一部份資料全為該常數時,將該檢查結果中的一對應位元設為一第一邏輯態,其中該部份資料的資料長度為n個位元組;以及當該部份資料不全為該常數時,將該檢查結果中的該對應位元設為一第二邏輯態。
  2. 如請求項1所述的查找表壓縮方法,更包括:將該映射表存放於一主機;以及將該經壓縮查找表與該重組條件存放於一裝置。
  3. 如請求項2所述的查找表壓縮方法,其中該主機包括一電腦,以及該裝置包括一人工智慧加速卡。
  4. 如請求項1所述的查找表壓縮方法,其中該常數包括0,而n為2。
  5. 如請求項1所述的查找表壓縮方法,其中將該原始資料轉換為一經重組資料的操作包括:當該檢查結果表示該原始資料中的一部份資料符合該重組條件時,捨棄該部份資料;以及當該檢查結果表示該部份資料不符合該重組條件時,將該部份資料保留於該經重組資料中。
  6. 一種查找表壓縮方法,包括:以一原表位址從一原始查找表取出一原始資料;以一重組條件檢查該原始資料而獲得一檢查結果;依照該檢查結果,將該原始資料轉換為一經重組資料;以一經壓縮表位址將該經重組資料寫入一經壓縮查找表;以及將該原表位址、該經壓縮表位址以及該檢查結果之間的關係寫入一映射表,其中該重組條件包括「n個位元組小於一閥值」,而檢查該原始資料的操作包括:當該原始資料中的一部份資料小於該閥值時,將該檢查結果中的一對應位元設為一第一邏輯態,其中該部份資料的資料長度為n個位元組;以及當該部份資料不小於該閥值時,將該檢查結果中的該對 應位元設為一第二邏輯態。
  7. 如請求項6所述的查找表壓縮方法,其中該閥值包括0x03,而n為1。
  8. 一種計算設備,包括:一裝置;以及一主機,以一原表位址從一原始查找表取出一原始資料,其中該主機以一重組條件檢查該原始資料而獲得一檢查結果,該主機依照該檢查結果將該原始資料轉換為一經重組資料,該主機以一經壓縮表位址將該經重組資料寫入一經壓縮查找表,該主機將該原表位址、該經壓縮表位址以及該檢查結果之間的關係寫入一映射表,以及該主機將該經壓縮查找表與該重組條件存放於該裝置,其中該重組條件包括「n個位元組為一常數」,當該原始資料中的一部份資料全為該常數時,該主機將該檢查結果中的一對應位元設為一第一邏輯態,其中該部份資料的資料長度為n個位元組;以及當該部份資料不全為該常數時,該主機將該檢查結果中的該對應位元設為一第二邏輯態。
  9. 如請求項8所述的計算設備,其中該主機包括一電腦,以及該裝置包括一人工智慧加速卡。
  10. 如請求項8所述的計算設備,其中該常數包括0,而n為2。
  11. 如請求項8所述的計算設備,其中, 當該檢查結果表示該原始資料中的一部份資料符合該重組條件時,該主機捨棄該部份資料;以及當該檢查結果表示該部份資料不符合該重組條件時,該主機將該部份資料保留於該經重組資料中。
  12. 一種計算設備,包括:一裝置;以及一主機,以一原表位址從一原始查找表取出一原始資料,其中該主機以一重組條件檢查該原始資料而獲得一檢查結果,該主機依照該檢查結果將該原始資料轉換為一經重組資料,該主機以一經壓縮表位址將該經重組資料寫入一經壓縮查找表,該主機將該原表位址、該經壓縮表位址以及該檢查結果之間的關係寫入一映射表,以及該主機將該經壓縮查找表與該重組條件存放於該裝置,其中該重組條件包括「n個位元組小於一閥值」,當該原始資料中的一部份資料小於該閥值時,該主機將該檢查結果中的一對應位元設為一第一邏輯態,其中該部份資料的資料長度為n個位元組;以及當該部份資料不小於該閥值時,該主機將該檢查結果中的該對應位元設為一第二邏輯態。
  13. 如請求項12所述的計算設備,其中該閥值包括0x03,而n為1。
  14. 一種主機,包括:一記憶體;以及 一處理器,以一原表位址從該記憶體的一原始查找表取出一原始資料,其中該處理器以一重組條件檢查該原始資料而獲得一檢查結果,該處理器依照該檢查結果將該原始資料轉換為一經重組資料,該處理器以一經壓縮表位址將該經重組資料寫入一經壓縮查找表,該處理器將該原表位址、該經壓縮表位址以及該檢查結果之間的關係寫入一映射表,該處理器將該映射表存放於該記憶體,以及該處理器將該經壓縮查找表與該重組條件提供給一裝置,其中該重組條件包括「n個位元組為一常數」,當該原始資料中的一部份資料全為該常數時,該處理器將該檢查結果中的一對應位元設為一第一邏輯態,其中該部份資料的資料長度為n個位元組;以及當該部份資料不全為該常數時,該處理器將該檢查結果中的該對應位元設為一第二邏輯態。
  15. 如請求項14所述的主機,其中在完成該經壓縮查找表與該映射表的建立後,該主機清除在該記憶體中的該原始查找表。
  16. 如請求項14所述的主機,其中該常數包括0,而n為2。
  17. 如請求項14所述的主機,其中,當該檢查結果表示該原始資料中的一部份資料符合該重組條件時,該處理器捨棄該部份資料;以及當該檢查結果表示該部份資料不符合該重組條件時,該處理器將該部份資料保留於該經重組資料中。
  18. 一種主機,包括: 一記憶體;以及一處理器,以一原表位址從該記憶體的一原始查找表取出一原始資料,其中該處理器以一重組條件檢查該原始資料而獲得一檢查結果,該處理器依照該檢查結果將該原始資料轉換為一經重組資料,該處理器以一經壓縮表位址將該經重組資料寫入一經壓縮查找表,該處理器將該原表位址、該經壓縮表位址以及該檢查結果之間的關係寫入一映射表,該處理器將該映射表存放於該記憶體,以及該處理器將該經壓縮查找表與該重組條件提供給一裝置,其中該重組條件包括「n個位元組小於一閥值」,當該原始資料中的一部份資料小於該閥值時,該處理器將該檢查結果中的一對應位元設為一第一邏輯態,其中該部份資料的資料長度為n個位元組;以及當該部份資料不小於該閥值時,該處理器將該檢查結果中的該對應位元設為一第二邏輯態。
  19. 如請求項18所述的主機,其中該閥值包括0x03,而n為1。
  20. 一種查找表讀取方法,包括:以一原表位址從一映射表取出一經壓縮表位址以及一位元圖;以該經壓縮表位址從一經壓縮查找表取出一經重組資料;以及依照該位元圖與一重組條件,將該經重組資料轉換為一原始資料,其中該重組條件包括「n個位元組為一常數」,而將該經重 組資料轉換為該原始資料的操作包括:當該位元圖中的一對應位元為一第一邏輯態時,以該常數作為該原始資料的一對應部份資料;以及當該對應位元為一第二邏輯態時,擷取該經重組資料中的一對應部份資料作為該原始資料的該對應部份資料。
  21. 如請求項20所述的查找表讀取方法,其中該映射表存放於一主機,該經壓縮查找表存放於一裝置,而所述查找表讀取方法更包括:由該主機將該經壓縮表位址以及該位元圖提供給該裝置。
  22. 如請求項21所述的查找表讀取方法,其中該主機包括一電腦,以及該裝置包括一人工智慧加速卡。
  23. 如請求項20所述的查找表讀取方法,其中該常數包括0,而n為2。
  24. 一種查找表讀取方法,包括:以一原表位址從一映射表取出一經壓縮表位址以及一位元圖;以該經壓縮表位址從一經壓縮查找表取出一經重組資料;以及依照該位元圖與一重組條件,將該經重組資料轉換為一原始資料,其中該重組條件包括「n個位元組小於一閥值」,而將該經重組資料轉換為該原始資料的操作包括:當該位元圖中的一對應位元為一第一邏輯態時,以符合該閥值的至少一實數作為該原始資料的一對應部份資料;以及 當該對應位元為一第二邏輯態時,擷取該經重組資料中的一對應部份資料作為該原始資料的該對應部份資料。
  25. 如請求項24所述的查找表讀取方法,其中該閥值包括0x03,該實數小於該閥值,而n為1。
  26. 一種計算設備,包括:一主機,以一原表位址從一映射表取出一經壓縮表位址以及一位元圖;以及一裝置,耦接至該主機以接收該經壓縮表位址以及該位元圖,其中該裝置以該經壓縮表位址從一經壓縮查找表取出一經重組資料,以及該裝置依照該位元圖與一重組條件而將該經重組資料轉換為一原始資料,其中該重組條件包括「n個位元組為一常數」,當該位元圖中的一對應位元為一第一邏輯態時,該裝置以該常數作為該原始資料的一對應部份資料;以及當該對應位元為一第二邏輯態時,該裝置擷取該經重組資料中的一對應部份資料作為該原始資料的該對應部份資料。
  27. 如請求項26所述的計算設備,其中該主機包括一電腦,以及該裝置包括一人工智慧加速卡。
  28. 如請求項26所述的計算設備,其中該常數包括0,而n為2。
  29. 一種計算設備,包括:一主機,以一原表位址從一映射表取出一經壓縮表位址以及一位元圖;以及 一裝置,耦接至該主機以接收該經壓縮表位址以及該位元圖,其中該裝置以該經壓縮表位址從一經壓縮查找表取出一經重組資料,以及該裝置依照該位元圖與一重組條件而將該經重組資料轉換為一原始資料,其中該重組條件包括「n個位元組小於一閥值」,而將該經重組資料轉換為該原始資料的操作包括:當該位元圖中的一對應位元為一第一邏輯態時,該裝置以符合該閥值的至少一實數作為該原始資料的一對應部份資料;以及當該對應位元為一第二邏輯態時,該裝置擷取該經重組資料中的一對應部份資料作為該原始資料的該對應部份資料。
  30. 如請求項29所述的計算設備,其中該閥值包括0x03,該實數小於該閥值,而n為1。
  31. 一種裝置,包括:一記憶體;以及一處理器,從一主機接收一經壓縮表位址以及一位元圖,其中該處理器以該經壓縮表位址從該記憶體的一經壓縮查找表取出一經重組資料,以及該處理器依照該位元圖與一重組條件而將該經重組資料轉換為一原始資料,其中該重組條件包括「n個位元組為一常數」,當該位元圖中的一對應位元為一第一邏輯態時,該處理器以該常數作為該原始資料的一對應部份資料;以及當該對應位元為一第二邏輯態時,該處理器擷取該經重 組資料中的一對應部份資料作為該原始資料的該對應部份資料。
  32. 如請求項31所述的裝置,其中該常數包括0,而n為2。
  33. 一種裝置,包括:一記憶體;以及一處理器,從一主機接收一經壓縮表位址以及一位元圖,其中該處理器以該經壓縮表位址從該記憶體的一經壓縮查找表取出一經重組資料,以及該處理器依照該位元圖與一重組條件而將該經重組資料轉換為一原始資料,其中該重組條件包括「n個位元組小於一閥值」,而將該經重組資料轉換為該原始資料的操作包括:當該位元圖中的一對應位元為一第一邏輯態時,該處理器以符合該閥值的至少一實數作為該原始資料的一對應部份資料;以及當該對應位元為一第二邏輯態時,該處理器擷取該經重組資料中的一對應部份資料作為該原始資料的該對應部份資料。
  34. 如請求項33所述的裝置,其中該閥值包括0x03,該實數小於該閥值,而n為1。
TW110116680A 2021-05-10 2021-05-10 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置 TWI780696B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW110116680A TWI780696B (zh) 2021-05-10 2021-05-10 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置
CN202110732308.5A CN115348327B (zh) 2021-05-10 2021-06-29 用于计算设备及其主机与装置的查找表压缩与读取方法
US17/363,001 US11456755B1 (en) 2021-05-10 2021-06-30 Look-up table compression method and look-up table reading method for computation equipment and its host and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW110116680A TWI780696B (zh) 2021-05-10 2021-05-10 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置

Publications (2)

Publication Number Publication Date
TWI780696B true TWI780696B (zh) 2022-10-11
TW202244748A TW202244748A (zh) 2022-11-16

Family

ID=83365675

Family Applications (1)

Application Number Title Priority Date Filing Date
TW110116680A TWI780696B (zh) 2021-05-10 2021-05-10 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置

Country Status (3)

Country Link
US (1) US11456755B1 (zh)
CN (1) CN115348327B (zh)
TW (1) TWI780696B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117214589A (zh) * 2023-11-08 2023-12-12 天津德科智控股份有限公司 一种eps***时域响应现场测试方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200832938A (en) * 2006-12-01 2008-08-01 Nec Lab America Inc Methods and systems for quick and efficient data management and/or processing
TW200838157A (en) * 2007-03-07 2008-09-16 Ind Tech Res Inst A variable length decoder and decoding method therefor
US20150193545A1 (en) * 2014-01-08 2015-07-09 Tata Consultancy Services Limited System and method of data compression
CN108648136A (zh) * 2018-03-02 2018-10-12 深圳市易瞳科技有限公司 对二维查找表进行的方法及装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5381425A (en) * 1992-03-27 1995-01-10 North Carolina State University System for encoding and decoding of convolutionally encoded data
KR0180169B1 (ko) * 1995-06-30 1999-05-01 배순훈 가변길이 부호기
KR0170681B1 (ko) * 1995-08-09 1999-03-20 김광호 Rll코드 데이터를 위한 부호화 및 복호화장치
US6215910B1 (en) * 1996-03-28 2001-04-10 Microsoft Corporation Table-based compression with embedded coding
US5675382A (en) * 1996-04-08 1997-10-07 Connectix Corporation Spatial compression and decompression for video
US6480125B2 (en) * 2000-06-09 2002-11-12 Seagate Technology Llc Method and apparatus for efficient encoding of large data words at high code rates
US6538586B1 (en) * 2002-01-30 2003-03-25 Intel Corporation Data encoding strategy to reduce selected frequency components in a serial bit stream
US6812874B1 (en) * 2002-05-22 2004-11-02 Andrew Corporation Method and apparatus for processing analog signal
JP2004192770A (ja) * 2002-12-13 2004-07-08 Sony Corp 符号化方法と装置および光学ディスク記録方法と装置
US7019674B2 (en) * 2004-02-05 2006-03-28 Nec Laboratories America, Inc. Content-based information retrieval architecture
US7400277B2 (en) * 2004-04-06 2008-07-15 International Business Machines Corporation Method and system for the compression of probability tables
US8660261B2 (en) * 2009-06-04 2014-02-25 Mediatek Singapore Pte. Ltd. System and apparatus for integrated video/image encoding/decoding and encryption/decryption
US9208025B2 (en) * 2009-07-30 2015-12-08 Cleversafe, Inc. Virtual memory mapping in a dispersed storage network
US9207870B2 (en) * 2009-07-30 2015-12-08 Cleversafe, Inc. Allocating storage units in a dispersed storage network
US8275744B2 (en) * 2009-07-30 2012-09-25 Cleversafe, Inc. Dispersed storage network virtual address fields
CN102436427B (zh) * 2011-11-07 2014-10-08 华为技术有限公司 一种数据读写方法和存储设备
CN103176752A (zh) * 2012-07-02 2013-06-26 晶天电子(深圳)有限公司 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器
CN103942499B (zh) * 2014-03-04 2017-01-11 中天安泰(北京)信息技术有限公司 基于移动存储器的数据黑洞处理方法及移动存储器
JP2017028555A (ja) * 2015-07-24 2017-02-02 富士通株式会社 データ圧縮装置,データ圧縮方法,データ圧縮プログラム
US9983821B2 (en) 2016-03-29 2018-05-29 Samsung Electronics Co., Ltd. Optimized hopscotch multiple hash tables for efficient memory in-line deduplication application
KR102507140B1 (ko) 2017-11-13 2023-03-08 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
TWI715116B (zh) 2018-09-14 2021-01-01 慧榮科技股份有限公司 資料儲存裝置及其刪除命名空間之方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200832938A (en) * 2006-12-01 2008-08-01 Nec Lab America Inc Methods and systems for quick and efficient data management and/or processing
TW200838157A (en) * 2007-03-07 2008-09-16 Ind Tech Res Inst A variable length decoder and decoding method therefor
US20150193545A1 (en) * 2014-01-08 2015-07-09 Tata Consultancy Services Limited System and method of data compression
CN108648136A (zh) * 2018-03-02 2018-10-12 深圳市易瞳科技有限公司 对二维查找表进行的方法及装置

Also Published As

Publication number Publication date
CN115348327B (zh) 2024-05-03
TW202244748A (zh) 2022-11-16
US11456755B1 (en) 2022-09-27
CN115348327A (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
US10459642B2 (en) Method and device for data replication
CN109952708A (zh) 无损数据压缩
US20150379682A1 (en) Vertex attribute data compression with random access using hardware
CN109075798B (zh) 可变大小符号基于熵的数据压缩
TWI451328B (zh) 用於有效儲存與擷取串流資料之方法與系統
TWI780696B (zh) 查找表壓縮方法與查找表讀取方法及其計算設備、主機與裝置
EP2752760A2 (en) Method of compressing data and devices for performing the same
US20170070238A1 (en) Method for lossless data compression / depression and device thereof
US11955995B2 (en) Apparatus and method for two-stage lossless data compression, and two-stage lossless data decompression
US10115177B2 (en) Online texture compression and decompression in hardware
TW201707388A (zh) 於虛擬記憶體系統中之經改善壓縮快取
US11740791B2 (en) Data compression system using base values and methods thereof
WO2019000355A1 (en) COMPRESSED KEY LOG STRUCTURE
US11424761B2 (en) Multiple symbol decoder
Hasugian et al. File Compression Application Design Using Half Byte Algorithm
CN106385260A (zh) 一种基于低延时的lz无损压缩算法的fpga实现***
Zhao et al. Implementation of the LZMA compression algorithm on FPGA
US7071854B1 (en) Hardware-implemented LZW data decompression
CN103138766A (zh) 数据压缩与解压缩的方法及装置
WO2021036189A1 (zh) Rdma数据发送及接收方法、电子设备及可读存储介质
CN109240849B (zh) 数据备份方法、装置及用于视频会议***的多点控制单元
WO2023237121A1 (zh) 一种数据处理方法、装置及相关设备
US11954028B2 (en) Accessing encoded blocks of data
TWI758897B (zh) 卷積計算裝置及方法
Núñez et al. Lossless data compression programmable hardware for high-speed data networks

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent