博客首页 | 排行榜 |

xiaxing1012的博客

个人档案
博文分类
狼来啦!!!  2010-09-03 15:23

        每个明天都值得期待,每个今天都值得去奋斗!呵呵,这是我的口头禅,也是我的一个信念。自从加入精英计划后,这个信念越发的强烈!因为我们每天都过得很充实,每天都能学到新东西,尤其是专业方面的技术。这周是我们来Ultrawise实训的第七周,这几天我们开始着手设计计算器的相关模块,为后面的计算器整体设计做铺垫。

第一天和第二天是设计ps2接口的键盘输入显示控制器,我们从设计过程中了解了PS2协议,键盘输入的每个按键数据其实可以看成是一个8位的字节数据块,然后经过键盘的时钟和一个串行数据端来读取。再用一个移位寄存器转化还原输出8位并行数据,考虑到多个按键的情况,加入一个FIFO缓冲器。值得注意的是,我们采用的是第二套键盘编码,所以读取出来的数据不是ascii码,而是对应的第二套编码。第三天我们要设计一个音频播放模块,拿到这个题目,我就小高兴了一下,哈哈!平时太喜欢听音乐了,所以如果自己能设计一个音频播放器,那太让人兴奋了。边兴奋边看提供的文档资料,看得差不多时,组长把我们大伙叫到一起开始讨论。主要讨论了如何获得音频源文件,如何将音频文件转化为ROM.v文件,波特率的转化,dac模块的输出信号,以及读取ROM的地址如何产生和控制。一开始我们怎么也不明白:耳机要收到声音一定是有模拟信号输入,可是FPGA都是数字信号。经过讨论才逐渐明白,原来FPGA输出的是PCM信号,也就是通信原理讲到的脉冲编码调制,它将音频信号数据转化为二进制位流,可以等同于电流,相当于是一个模拟电流信号,所以耳机能接收到声音。这个设计中由于整体框架有了,关键是设计读取ROM的地址信号产生及控制的模块,而这个模块主要需考虑一个波特率的转化问题。比如我们用的音频文件的采样率为8K,所以读取rom的速率也要是8k,为此,根据50M的时钟就应该在程序中加入一个50M/8K的计数器。在第四天的任务中,我们需要写一个PicoBlaze的汇编程序,程序的功能主要包括:实现将8个开关数据在8LED显示,从计算机终端通过串口发送数据到SPARTAN3E板卡,板卡接收数据后将该数据再发送回计算机串口终端显示出来。系统的硬件部分已经搭建好了,只要写一个汇编程序,然后生成ROM.v文件即可。所以这个设计的主要内容就变成了对PicoBlaze的编程,嵌入式编程不像软件编程,我们需要了解处理器的结构和汇编指令,经过一天的学习,对PicoBlaze处理器的结构和指令了解后,很快就完成了这个简单的程序。

虽然我们按时完成了所有的任务,但是我们还有很多需要去深入思考的地方,不光是技术知识方面的深入学习,更重要的是:如何去和同伴交流、讨论与合作,如何去从网络资源中获取我们想要的信息,以及如何编写文档和帮助同伴等等。总之,充分利用浩瀚的网络资源获取我们想要的信息;一个人的能力再强,也强不过一个团队,在团队中帮助同伴也是在提高自身。

加油吧!boys and girls !做好了今天,美好的明天正向你走来。不要忘了偶尔回头看看哦!!!

 

类别:默认 |
上一篇:静态网页实时监控求解之路 | 下一篇:测试
以下网友评论只代表其个人观点,不代表本网站的观点或立场