최소 단어 이상 선택하여야 합니다.
최대 10 단어까지만 선택 가능합니다.
다음과 같은 기능을 한번의 로그인으로 사용 할 수 있습니다.
NTIS 바로가기다음과 같은 기능을 한번의 로그인으로 사용 할 수 있습니다.
DataON 바로가기다음과 같은 기능을 한번의 로그인으로 사용 할 수 있습니다.
Edison 바로가기다음과 같은 기능을 한번의 로그인으로 사용 할 수 있습니다.
Kafe 바로가기국가/구분 | United States(US) Patent 등록 |
---|---|
국제특허분류(IPC7판) |
|
출원번호 | US-0400008 (2006-04-08) |
등록번호 | US-8275897 (2012-09-25) |
발명자 / 주소 |
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 | 피인용 횟수 : 40 인용 특허 : 497 |
Systems and methods for providing accelerated data storage and retrieval utilizing lossless and/or lossy data compression and decompression. A data storage accelerator includes one or a plurality of high speed data compression encoders that are configured to simultaneously or sequentially losslessly
Systems and methods for providing accelerated data storage and retrieval utilizing lossless and/or lossy data compression and decompression. A data storage accelerator includes one or a plurality of high speed data compression encoders that are configured to simultaneously or sequentially losslessly or lossy compress data at a rate equivalent to or faster than the transmission rate of an input data stream. The compressed data is subsequently stored in a target memory or other storage device whose input data storage bandwidth is lower than the original input data stream bandwidth. Similarly, a data retrieval accelerator includes one or a plurality of high speed data decompression decoders that are configured to simultaneously or sequentially losslessly or lossy decompress data at a rate equivalent to or faster than the input data stream from the target memory or storage device. The decompressed data is then output at rate data that is greater than the output rate from the target memory or data storage device. The data storage and retrieval accelerator method and system may employed: in a disk storage adapter to reduce the time required to store and retrieve data from computer to disk; in conjunction with random access memory to reduce the time required to store and retrieve data from random access memory; in a display controller to reduce the time required to send display data to the display controller or processor; and/or in an input/output controller to reduce the time required to store, retrieve, or transmit data.
1. A method comprising: receiving a data stream, having a plurality of data blocks, the data stream in a received form;selecting, for a data block in the plurality of data blocks, an encoder from a plurality of encoders based, at least in part, on a data parameter associated with the data stream, th
1. A method comprising: receiving a data stream, having a plurality of data blocks, the data stream in a received form;selecting, for a data block in the plurality of data blocks, an encoder from a plurality of encoders based, at least in part, on a data parameter associated with the data stream, the data parameter indicating an amount of information loss permissible for the data stream;compressing using the selected encoder to provide a compressed data block for a compressed data stream, wherein said compressed data stream includes data compression type descriptors indicative of the type of compression utilized for each one of said plurality of data blocks that was compressed; andtransmitting said compressed data stream over an output having an output bandwidth, wherein the combined length of time required for performing said compressing of said plurality of received data blocks and said transmitting said compressed data stream over said output is less than a length of time required for transmitting said received data stream, in uncompressed form, over said output. 2. The method of claim 1, wherein the selecting the compression technique comprises selecting a lossy compression technique based on the data parameter, and wherein the compressing comprises applying the lossy compression technique to determine the compressed data block, an amount of information loss between the compressed data block and the data block in received form not exceeding the amount of information loss indicated by the data parameter. 3. The method of claim 1, wherein the data parameter indicates that no information loss is permissible for the data stream and wherein the selecting the compression technique comprises selecting a lossless compression technique. 4. The method of claim 1, wherein at least one of said data compression type descriptors is indicative of compressing utilizing parallel encoders. 5. The method of claim 1, wherein at least one of said data compression type descriptors is indicative of compressing utilizing identical parallel encoders. 6. The method of claim 1, wherein at least one of said data compression type descriptors is indicative of compressing utilizing sequential encoders. 7. The method of claim 1, wherein at least one of said data compression type descriptors is indicative of using a plurality of encoders. 8. The method of claim 1, wherein at least one of said data compression type descriptors is indicative of using a single encoder. 9. The method of claim 1, further comprising; determining a compression ratio threshold based, at least in part on, the output bandwidth, andwherein the selecting the encoder further comprises selecting an encoder able to compress the data block such that (i) a compression ratio of the compressed data block relative to the data block in received form exceeds the compression ratio threshold and (ii) an amount of information loss between the data block in received form and the compressed data block does not exceed the permissible amount of information indicated by the data parameter. 10. A method comprising: receiving a data stream, having a plurality of data blocks, the data stream in a received form;selecting, for a data block in the plurality of data blocks, an encoder from a plurality of encoders based, at least in part, on a data parameter associated with the data stream, the data parameter indicating an amount of information loss permissible for the data stream;compressing using the selected encoder to provide a compressed data block for a compressed data stream, wherein said compressed data stream includes data compression type descriptors indicative of the type of compression utilized for each respective one of said plurality of data blocks that was compressed; andtransmitting said compressed data stream over an output having a an output bandwidth,wherein the combined length of time required for performing said compressing said plurality of data blocks and said transmitting said compressed data stream over said output is less than a length of time required for transmitting said received data stream, in uncompressed form, over said output; anddecompressing said data stream using a decoder selected based on said data compression type descriptors. 11. The method of claim 10, wherein the selecting the compression technique comprises selecting a lossy compression technique based on the data parameter, and wherein the compressing comprises applying the lossy compression technique to determine the compressed data block, an amount of information loss between the compressed data block and the data block in received form not exceeding the amount of information loss indicated by the data parameter. 12. The method of claim 10, wherein the data parameter indicates that no information loss is permissible for the data stream and wherein the selecting the compression technique comprises selecting a lossless compression technique. 13. The method of claim 10, wherein at least one of said data compression type descriptors is indicative of compressing utilizing parallel encoders. 14. The method of claim 10, wherein at least one of said data compression type descriptors is indicative of compressing utilizing identical parallel encoders. 15. The method of claim 10, wherein at least one of said data compression type descriptors is indicative of compressing utilizing sequential encoders. 16. The method of claim 10, determining a compression ratio threshold based, at least in part on, the output bandwidth, and wherein the selecting the encoder further comprises selecting an encoder able to compress the data block such that (i) a compression ratio of the compressed data block relative to the data block in received form exceeds the compression ratio threshold and (ii) an amount of information loss between the data block in received form and the compressed data block exceeds the permissible amount of information indicated by the data parameter. 17. A computer-implemented method for accelerating data transmittal on an output to a data storage device, the output associated with an output transmission rate, comprising: receiving a data stream comprising a plurality of data blocks, the data stream in a received form;receiving a data parameter associated with the data stream that indicates an amount of information loss permissible for the data stream;selecting, for a data block in the plurality of data blocks, a compression technique from a plurality of compression techniques based, at least in part, on the data parameter;compressing the data block using the compression technique to determine a compressed data block; andtransmitting, on the output to the data storage device, the compressed data block in a compressed data stream to the data storage device, the compressing and the transmitting together occurring more quickly than a length of time to transmit the data block on the output in the received form. 18. The method of claim 17, wherein the selecting the compression technique comprises selecting a lossy compression technique based on the data parameter, and wherein the compressing comprises applying the lossy compression technique to determine the compressed data block, an amount of information loss between the compressed data block and the data block in received form not exceeding the amount of information loss indicated by the data parameter. 19. The method of claim 18, wherein the data stream comprises video data and wherein the data parameter indicates a display resolution of a device to display the video, and wherein the compressing comprises applying the lossy compression technique to remove video data in excess of the display resolution. 20. The method of claim 19, wherein the selecting the lossy compression technique based on the data parameter comprises: looking up the data parameter in a table to determine the display resolution of the device to display the video; andselecting the compression technique based on the display resolution. 21. The method of claim 18, wherein the data stream comprises audio data. 22. The method of claim 17, wherein the receiving the data parameter comprises receiving the data parameter in a header of the data stream. 23. The method of claim 17, further comprising determining a data type of the data block, and wherein the selecting the compression technique comprises selecting the compression technique based, at least in part, on the data type. 24. The method of claim 17, wherein the selecting the compression technique comprises selecting the compression technique based, at least in part, on the output transmission rate. 25. The method of claim 24, further comprising: determining a compression ratio threshold based, at least in part on, the output transmission rate, andwherein selecting the compression technique further comprises selecting a compression technique able to compress the data block such that (i) a compression ratio of the compressed data block relative to the data block in received form exceeds the compression ratio threshold and (ii) an amount of information loss between the data block in received form and the compressed data block does not exceed the permissible amount of information indicated by the data parameter. 26. The method of claim 25, wherein the plurality of data blocks includes an additional data block, further comprising: determining whether any compression techniques in the plurality of compression techniques meets a criteria, the criteria requiring that a compression technique be able to compress the additional data such that (i) a compression ratio of the compressed additional data block relative to the additional data block in received form exceeds the compression ratio threshold and (ii) an amount of information loss between the additional data block in received form and the compressed additional data block does not exceed the permissible amount of information indicated by the data parameter; andwhen no compression technique in the plurality of compression techniques is determined to meet the criteria, reducing an input transmission rate of the data stream such that at least one of the compression techniques in the plurality of compression techniques meets the criteria. 27. The method of claim 26, wherein the reducing the input transmission rate comprises reducing a rate at which one or more blocks of the data stream are requested. 28. The method of claim 25, further comprising: storing the plurality of data blocks in an input data buffer; andcounting a size of the plurality of input data blocks stored in the input data buffer,wherein the determining the compression ratio threshold comprises determining the compression ratio threshold based, at least in part, on the counted size and the output transmission rate. 29. The method of claim 25, further comprising: adjusting the compression ratio threshold according to a change in the output transmission rate. 30. The method of claim 17, further comprising: prior to the transmitting the compressed data block in a compressed data stream, temporarily storing the compressed block with the compressed data stream on an output buffer. 31. The method of claim 17, wherein the compressing comprises providing program instructions stored in memory to a processor, the program instructions specifying execution of the compression technique. 32. A program storage device readable by a central processing unit, tangibly embodying a program of instructions executable by the central processing unit to perform method steps for accelerating data transmittal on an output to a data storage device, the output associated with an output transmission rate, said method steps comprising: receiving a data stream comprising a plurality of data blocks, the data stream in a received form;receiving a data parameter that indicates an amount of information loss permissible for the data stream;selecting a compression technique for a data block from a plurality of compression techniques based, at least in part, on the data parameter;compressing the data block using the compression technique to determine a compressed data block; andoutputting for transmission, on the output to the data storage device, the compressed data block in a compressed data stream to the data storage device, the compressing and the transmission together occurring more quickly than a length of time to transmit the data block on the output in the received form. 33. The program storage device of claim 32, wherein the selecting the compression technique comprises selecting a lossy compression technique based on the data parameter, and wherein the compressing comprises applying the lossy compression technique to determine the compressed data block, an amount of information loss between the compressed data block and the data block in received form not exceeding the amount of information loss indicated by the data parameter. 34. The program storage device of claim 33, wherein the data stream comprises video data and wherein the data parameter indicates a display resolution of a device to display the video, and wherein the compressing comprises applying the lossy compression technique to remove video data in excess of the display resolution. 35. The program storage device of claim 32, wherein the selecting the lossy compression technique based on the data parameter comprises: looking up the data parameter in a table to determine the display resolution of the device to display the video; andselecting the compression technique based on the display resolution. 36. The program storage device of claim 33, wherein the data stream comprises audio data. 37. The program storage device of claim 32, wherein the receiving the data parameter comprises receiving the data parameter in a header of the data stream. 38. The program storage device of claim 32, said method steps further comprising determining a data type of the data block, and wherein the selecting the compression technique comprises selecting the compression technique based, at least in part, on the data type. 39. The program storage device of claim 32, wherein the selecting the compression technique comprises selecting the compression technique based, at least in part, on the output transmission rate. 40. The program storage device of claim 39, said method steps further comprising: determining a compression ratio threshold as a ratio based, at least in part, on the output transmission rate, andwherein selecting the compression technique further comprises selecting a compression technique able to compress the data block such that (i) a compression ratio of the compressed data block relative to the data block in received form exceeds the compression ratio threshold and (ii) an amount of information loss between the data block in received form and the compressed data block does not exceed the permissible amount of information indicated by the data parameter. 41. The program storage device of claim 40, wherein the plurality of data blocks includes an additional data block, said method steps further comprising: determining whether any compression techniques in the plurality of compression techniques meets a criteria, the criteria requiring that a compression technique be able to compress the additional data such that (i) a compression ratio of the compressed additional data block relative to the additional data block in received form exceeds the compression ratio threshold and (ii) an amount of information loss between the additional data block in received form and the compressed additional data block does not exceed the permissible amount of information indicated by the data parameter; andwhen no compression technique in the plurality of compression techniques is determined to meet the criteria, reducing an input transmission rate of the data stream such that at least one of the compression techniques in the plurality of compression techniques meets the criteria. 42. The program storage device of claim 41, wherein the reducing the input transmission rate comprises reducing a rate at which one or more blocks of the data stream are requested. 43. The program storage device of claim 42, said method further comprising: storing the plurality of data blocks in an input data buffer; andcounting a size of the plurality of input data blocks stored in the input data buffer,wherein the determining the compression ratio threshold comprises determining the compression ratio threshold based, at least in part, on the counted size and the output transmission rate. 44. The program storage device of claim 42, said method further comprising: adjusting the compression ratio threshold according to a change in the output transmission rate. 45. A computer program product, comprising at least one non-transitory storage device readable by a computer, the at least one non-transitory computer readable storage device having embodied thereon computer readable program code for accelerating data transmittal, the computer readable program code comprising: a first computer readable program code for causing the computer to receive a data stream comprising a plurality of data blocks, the data stream in a received form;a second computer readable program code for causing the computer to receive a data parameter that indicates an amount of information loss permissible for the data stream;a third computer readable program code for causing the computer to select a compression technique for a data block from a plurality of compression techniques based, at least in part, on the data parameter;a fourth computer readable program code for causing the computer to compress the data block using the compression technique to determine a compressed data block; anda fifth computer readable program code for causing the computer to transmit, on the output to the data storage device, the compressed data block in a compressed data stream to the data storage device, the compressing and the transmitting together occurring more quickly than a length of time to transmit the data block on the output in the received form. 46. A device for accelerating data transmittal on an output to a data storage device, the output associated with an output transmission rate, comprising: an input buffer capable of receiving a data stream comprising a plurality of data blocks, the data stream in a received form and temporarily storing the plurality of data blocks;a data accelerator capable of: (i) receiving a data parameter that indicates an amount of information loss permissible for the data stream;(ii) selecting, for a data block, a compression technique from a plurality of compression techniques based, at least in part, on the data parameter;(iii) compressing the data block using the compression technique to determine a compressed data block; and(iv) transmitting, on the output to the data storage device, the compressed data block in a compressed data stream to the data storage device, the compressing and the transmitting together occurring more quickly than a length of time to transmit the data block on the output in the received form.
Copyright KISTI. All Rights Reserved.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.