{"title":"基于fpga硬件的一种新的代码压缩算法及其解压缩器","authors":"W. R. A. Dias, E. Moreno, Isaac Nattan Palmeira","doi":"10.1109/SBCCI.2013.6644870","DOIUrl":null,"url":null,"abstract":"This paper proposes a new method of code compression for embedded systems called by us as CC-MLD (Compressed Code using Huffman-Based Multi-Level Dictionary). This method applies two compression techniques and it uses the Huffman code compression algorithm. A single dictionary is divided into two levels and it is shared by both techniques. We performed simulations using applications from MiBench and we have used four embedded processors (ARM, MIPS, PowerPC and SPARC). Our method reduces code size up to 30.6% (including all extra costs for these four platforms). We have implemented the decompressor using VHDL and FPGA and we obtained only one clock from decompression process.","PeriodicalId":203604,"journal":{"name":"2013 26th Symposium on Integrated Circuits and Systems Design (SBCCI)","volume":"45 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-10-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"12","resultStr":"{\"title\":\"A new code compression algorithm and its decompressor in FPGA-based hardware\",\"authors\":\"W. R. A. Dias, E. Moreno, Isaac Nattan Palmeira\",\"doi\":\"10.1109/SBCCI.2013.6644870\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper proposes a new method of code compression for embedded systems called by us as CC-MLD (Compressed Code using Huffman-Based Multi-Level Dictionary). This method applies two compression techniques and it uses the Huffman code compression algorithm. A single dictionary is divided into two levels and it is shared by both techniques. We performed simulations using applications from MiBench and we have used four embedded processors (ARM, MIPS, PowerPC and SPARC). Our method reduces code size up to 30.6% (including all extra costs for these four platforms). We have implemented the decompressor using VHDL and FPGA and we obtained only one clock from decompression process.\",\"PeriodicalId\":203604,\"journal\":{\"name\":\"2013 26th Symposium on Integrated Circuits and Systems Design (SBCCI)\",\"volume\":\"45 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2013-10-24\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"12\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2013 26th Symposium on Integrated Circuits and Systems Design (SBCCI)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/SBCCI.2013.6644870\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 26th Symposium on Integrated Circuits and Systems Design (SBCCI)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBCCI.2013.6644870","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 12
摘要
本文提出了一种新的嵌入式系统代码压缩方法,我们称之为CC-MLD (Compressed code using Huffman-Based Multi-Level Dictionary)。该方法采用了两种压缩技术,并采用了霍夫曼码压缩算法。一本字典被分为两个级别,并且被两种技术共享。我们使用MiBench的应用程序进行了模拟,我们使用了四个嵌入式处理器(ARM, MIPS, PowerPC和SPARC)。我们的方法将代码大小减少了30.6%(包括这四个平台的所有额外成本)。我们利用VHDL和FPGA实现了该解压缩器,在解压缩过程中只得到一个时钟。
A new code compression algorithm and its decompressor in FPGA-based hardware
This paper proposes a new method of code compression for embedded systems called by us as CC-MLD (Compressed Code using Huffman-Based Multi-Level Dictionary). This method applies two compression techniques and it uses the Huffman code compression algorithm. A single dictionary is divided into two levels and it is shared by both techniques. We performed simulations using applications from MiBench and we have used four embedded processors (ARM, MIPS, PowerPC and SPARC). Our method reduces code size up to 30.6% (including all extra costs for these four platforms). We have implemented the decompressor using VHDL and FPGA and we obtained only one clock from decompression process.