原创 [博客大赛]我的compression毕设1

2013-7-1 20:30 1722 17 19 分类: 工程师职场

毕业设计小结-compression1:
       毕业设计总算告一小段落,原本想继续做下去的,考虑到下面马上就要找工作了,所以就停住了。整体而言,我的毕设也算是个小项目,“麻雀虽小,可五脏却俱全”。下面简单的说说我的毕设。
      我的毕设主要是采用硬件实现压缩算法(其实就是写verilog代码实现压缩数据的功能),压缩算法采用开源的压缩库,开此课题的主要原因是因为:1)本科做了一个JEPG压缩算法,不过那时晕晕乎乎就做完了,其实很多是参考别人的,没自己的什么思想,更别谈设计了;2)研一实习期间做了一个压缩算法的解压缩实现,压缩实现是师兄负责的,
当时整个项目参与下来学到了不少知识;3)近段时间来云计算如火如荼的进行着,大数据处理一直是个问题,所以压缩算法可能还是很有用的;4)挑战一下自己,让自己再上一个台阶。
     上面说了,毕设算法原理是参考压缩库的,所以不免要研究c语言,如果有算法介绍,研究c语言还好,但如果没有算法介绍,算法研究起来真的是个让人头大的事情。不过还好,对我,之前研究过另一个算法的解压缩算法,不过没有全部弄懂,但是当时的算法有介绍,所以不影响设计。
       压缩算法有很多种类,有损压缩主要用在音频和视频领域,诸如h.264,貌似h.265也出来了;无损压缩算法有lz77,huffman等,这些算法都非常的优秀,如果大家有空的话可以研究一下,这些算法我们还是能看懂的,难就难在用代码实现,而且很出色的实现。verilog代码实现可以利用硬件的优势:并行处理、乒乓操作等,其实说白了就是资源和速度的权衡,如果这个权衡值你能很好的把握,那么你的设计将是很优秀的。我毕设最终结果
是仿真测试压缩率和压缩速度都有提升,但是效果不明显。其实这也是我意料之内的,因为毕竟自己的能力有限,视野有限,所以写的代码的效果也就有限。另一方面,verilog代码设计并不是我的重点,我主要是想把我的设计做为一个模块,借助sopc(altera)搭建一个系统,最终让这个系统跑起来,这样对整体就有一个比较清楚的认识。
      简单介绍一下系统的构成:nios II(嵌入式软核),uart调试模块,sdram,lcd,dma控制器,还有我的压缩模块等;整个压缩过程可以简单描述如下,nios从pc机上搬运数据到sdram,dma通道从sdram搬运数据到压缩模块,压缩模块压缩后通过dma通道搬运数据到sdram,最后搬运至pc机,难点1在如何将我的压缩模块集成于这个系统,还好altera提供avalon总线及其他资料,难点2在于软件和硬件数据之间的调度和协调;难点3在于如何快速的搬运数据;目前,从pc机搬运数据到sdram是通过下载线的,这个过程相当的慢。另外,sdram的速度我就不多说了,大家都知道。最终功能是实现了,能够正确的压缩文件,而且能通过官方解压缩软件解码。不过系统的性能根本就没法谈,太差了,不过我还是很开心的,硬件到软件全是我一个人实现的,也没人问,因为其他人都没做过,期间的难度和迷茫可想而知。
      后面我会把整个实现过程写出来的,包括如何集成自定义模块,lcd等模块的驱动,dma控制器如何使用等,敬请期待吧,谢谢大家! 

文章评论2条评论)

登录后参与讨论

sunyzz 2013-7-4 19:29

谢顶

用户377235 2013-7-4 15:34

ding
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
我要评论
2
17
关闭 站长推荐上一条 /2 下一条