南国飘香BBS | 广东工业大学官方论坛 广东工业大学南国飘香

一直想总结一下自己在DSP方面工作一年的尚浅的经验,但是一直觉得自己修行不够。就算现在终于写了,我也并不认为自己够资格写下什么正确指导别人的东西。作为一个刚刚会使用DSP的软件人员来说,我所掌握的知识和经验只能供大神们笑谈了。因此,本文仅当个人总结,此外权供他人参考。

本人非科班出身,所学专业以光学为主。因此,计算机操作系统,计算机组成原理,数据结构,编译原理,离散数学,以上课程在校期间我都没学,所以也决定了我接下来所介绍的内容不会,也无法从宏观方面讲述一个DSP程序员从入门到进阶。当然如果想成为一名真正的大牛,以上所介绍的书如无意外在嵌入式行业没发生翻天覆地变化之前都是必须啃下的基础,不然也就是一个会码字会使用数组的码农。以下根据本人个人的工作历程总结一下DSP入门的经验。

其实本人在大学之前并不知道什么是单片机,更别说ARM或DSP了。学习DSP纯粹因为当初不希望毕业了只写一篇东抄西拼回来的论文作为大学的结案陈词,而时值大四刚好遇上DSP课程,所以也就投怀送抱了。在此,非常抱歉,你现在所看的并不是如你所期待的一篇屌丝执着追求技术逆袭或者天才少年的成长故事,这真的只是一篇很纯粹的个人工作总结,此外,无他。

在开始学习DSP后的第一个月是极为痛苦的。因为在此之前我所有的编程经验不外于一次51单片机的时钟课程设计,甚至连C语言的课程设计我也并没有亲手去完成。你可想象我对于指针,对于结构体是多么的陌生,且别说#if,volatile,指针函数,函数指针这类东西了,我甚至连#define的作用也不清楚。回想起来,我真的的感到羞愧。shit,怎么能这么差。但没关系,那时的我,有的是时间和精力,于是不知道什么动力驱使我每晚在实验室熬到十点。一个月后,我终于会看简单的基于TI公司C5502的DSP端C程序了。但是那些东西究竟用来干什么的?可以说,我一无所知······

可悲的是当时的我甚至连看文档学习这样的常识都不知道。于是在遍寻老师同学之后,最终终于找到TI的一份说明它API的一篇东西。于是疯狂的看文档开始了······(此处略去新手初看技术文档所需要花在搜索上的一个问题引出N个问题所花的时间与所经历过程约一万字。)这个过程甚为难熬,对于当初我这样一个连”most-significant”,”LSB”都不知道的人直接去看英文技术文档无异于以卵击石自不量力。不过这个过程能坚持下来,基本上DSP就能顺利入门了。

曾记得当初一起去实验室的人有三五个,但是后来其中一个看着看着文档,看到那些门电路又回宿舍去翻模电的书去了。其中一个经常看彭启琮教授的视频,看着看着我在实验室也看不到他了。还有一个可能从开始就没打算在DSP道路上走下去,学习DSP对于他来说只是找工作时打出的一个幌子。以上三位仁兄都是当初跟我一起进实验室一起学习DSP的同学,我用他们举例并没有什么想法,或者作什么评价,自知自己没资格评判而这本身也没有对错之分。只是为了接下来说明在DSP入门过程中怎么才能不那么痛苦。有些人学习喜欢寻根究底,但是在DSP入门学习过程中,除非你有扎实的知识,我所说的扎实基础是你对嵌入式芯片内部架构有深入了解的前提下,你可以去深究DSP芯片的内部每一部分到底怎么运作,外部电路电路怎么排布搭配,器件选型之类的。若非如此,最好还是面对现实,不要那么执着了,要相信知识的海洋无穷无尽,而你的能力有限;少执着,少失眠,也就少掉头发。相信缘分,要懂的东西,我们终归会再见。另外,对于视频学习方面,如果不是对应你所使用的芯片,建议还是不要看了,因为要不就是牛头不对马嘴,要不就是一些老掉牙的视频,所讲的东西太过泛,看完不免要睡一觉。而我们做一件事的高昂兴致会随着我们过慢的进度和没能够比别人做得好而大打折扣。总体来说,对于DSP这种外设丰富,算法繁多,芯片架构略为复杂的芯片来说,入门宜广而不宜深,先做出点成绩嘚瑟一下,以后想在这条路上怎么走都是后话了。

南国飘香BBS | 广东工业大学官方论坛 广东工业大学南国飘香
其实芯片设计出来是为了推广使用的,所以你所想知道的一切都在文档里面。不过,它们都是英文的,而且页数很多,而且语言大多晦涩,而且初次看单词大多不认识。所幸,我们有百度,除了不知道到你老婆是谁以外,无所不知的百度;所幸,我们并不需要通读文档,我们通常只需要了解我们当前所使用的某个外设的某种用法。多插一句,不同公司的文档编排会不一样TI的会将不同外设(peripheral)分为不同文档,然后给每个文档编号,ADI喜欢用一个hardware文档搞定。相同的是,无论以什么方式编排,它们的共同特点就是先说明外设的特性(features)再介绍功能作用,以及一些涉及到工程师设计使用的控制介绍以及注意事项,最后会给出一个编程参考(program model)以及步骤。最后的最后,会给出一些寄存器以及其每一位的作用。

从开始学习DSP到现在约莫三年时间,总结来看,看文档结合阅读程序是最快的入门方法,也就是成为DSP码农能简单控制DSP的方法。很遗憾,本文就是这么一篇没有内涵,不会告诉你诸如google的Larry Page如何弄出Page Ranking算法。这只是一篇straightforward目的导向的文章。言归正传,或许中间需要询问一些有经验的人,不过他们给予的帮助只能是指点,只能告诉大方向,或者说总体概括这是无法满足你的一颗好学而又充满疑惑的心的。顺便插一句,好记性不如烂笔头。顺便插一句,有道云笔记不错。顺便插一句,掌握了看文档,基本上已经掌握了DSP入门的所有要领,剩下的只是一些入门的疑惑了。

这些疑惑或许包括:要不要学汇编?首先说说什么是DSP汇编。DSP汇编是跟操作码(opcode)结合得最紧密的能控制DSP的编程语言,每一条汇编指令有操作码与之对应。不同公司的DSP汇编或者就算同公司不同类型的DSP汇编都不一样,基本上没有N年是学不完。再者,学习DSP汇编,需要掌握DSP内核的架构和工作。所以这事不是在DSP入门的三个月做的,应该在入门的三个月后或者半年后做,而事实上由于之前半年的积累,你甚至可以在一个星期内学完那为数不多的指令以及其所对应的内核工作原理,并能自己修改汇编函数。而事实上,这也是我自己个人的亲身经验。

学习DSP要学其他什么课程?基本上除了开篇所说的课程,你还需要学习通信原理,信号与系统,算法原理,数字信号处理,matlab,按照目前双核的趋势,学习Linux也是必要的。不过真的做好了准备,那么或者你这辈子都用不上DSP了。据说idea is shit,过多的想法跟理想化都是没必要的,而且我们又是那么善于三心二意。因此,要学DSP就直接啃程序,啃芯片文档吧。山水有相逢,那些东西会一直营营扰扰,你终于还是绕不开的,只不过现在不是时候。

有没有学习DSP的教材介绍?对于TI的DSP学习BIOS的话可以选择彭启琮的bios一书,米黄色封面。对于硬件外设的理解推荐《TMS320C6000系列DSP的CPU与外设》。另,以上两本书不知道为什么已经不再出版。

学习DSP需要什么基础?英语。看文档用;必要时上英文论坛,一来学习取经,二来解决问题,三来接收先进思想,四来装逼。坚持。一来技术宅比较苦逼,二来技术宅比较苦逼,三来技术宅除了技术宅们没别的聊得来朋友但是技术宅朋友们都不大懂得什么是生活。谦虚。一来要明白你学了技术也不能拯救世界,二来就算时至今日在天朝知识技术仍普遍不值钱所以技术宅只能在圈内获得较高尊重,三来只有谦虚的人才能最终成为他心目中所认为的大神,自己成全自己。

需要买开发板吗?永远不要让实验室的开发板的flash从未被烧写过。

  

爱华网本文地址 » http://www.aihuau.com/a/25101014/198355.html

更多阅读

动网论坛基本设置教程 动网官方论坛

1.安装过程略2.论坛管理我们首先要以默认的管理员用户名“admin”,密码“admin888”登录论坛,登录成功后单击页面上方的“管理”链接即可进入管理页面,在这个页面中我们可以打造自己的个性论坛。建议在登录后一定要更改密码,否则别人有

声明:《南国飘香BBS | 广东工业大学官方论坛 广东工业大学南国飘香》为网友撩妹機分享!如侵犯到您的合法权益请联系我们删除