德德哥's profile德德哥天堂PhotosBlogLists Tools Help

Blog


    December 22

    通信所大地震

          今日,我们信息与通信工程研究所发生了一场大地震。每个实验室都贴出了关于硕士博士论文新要求的通知。大概有两点意思,第一是硕士研究生必须发表一篇一级刊物文章才能毕业;博士研究生发表的两篇论文里,必须有一篇被SCI收录才能毕业。通知的最后,还有四个极具分量的字:“立即生效!”而问题就出在这四个字上。
          自从03年硕士研究生从2年半改成2年制后,硕士就取消了发论文的要求,原来的要求也只是B类刊物。现在突然出来一个这样的通知,是非常难让人接受的。立即生效,首当其冲的是04年入学,06年毕业的研究生。他们入学时并没有要求发文章,绝大部分同学都是没发过的,现在需要在剩下的半年发出一篇一级论文,难度之大可想而知。有人计算过,假如这一届的研究生都能在我们专业的几本刊物中发出论文,那么剩下的时间里,这些刊物将成为浙大通信所的专刊。在考虑上发表前期的准备工作,写文章,投稿,N次打会修改等等的时间,能发出的估计是少之又少,即使找到工作,发不出文章也只能延期毕业放弃辛苦得来的机会。其次就是05年刚刚入学的研究生,一年半发出一篇一级论文,保守估计也有相当一部分人得延期。至于博士的SCI嘛,就连我们现在的小boss都没发过!
          通知贴出后,整个信电楼都在沸沸扬扬的讨论这件事情,硕士们忧虑短期的一级,博士们忧虑长期的SCI,顿时人心惶惶。从下午开始,88系版的抗议之声就没有停过,一直顶上了十大。
          晚上实验室开例会,小boss就说,所里的这个决定,显然是要整整04硕士的,他们太轻松了,不能让他们这么容易混过去。boss说从来没见过所里有那么坚决的“立即生效”决定的。但是,从新学生新规定的大原则前提下,这个通知似乎确实有不妥之处,很多同学表示,如果当初知道这样的规定就不考浙大了。一些同学就提出上诉学校甚至诉诸法律。
          总想不懂政策为什么老改来改去。研究生无缘无故改成两年,第一年上课,堆得满满的,看见研一的师兄们上课都上得吐了;第二年就说要找工作。两年就这样过去,不抓紧真的啥都学不到。想我们搞应用的,研究生做项目必然少不了,但是做项目通常比搞理论难发文章,这又是一个很大的矛盾。时世艰难啊!
    December 08

    软核、硬核和固核

    IP(Intellectual Property)就是常说的知识产权。美国Dataquest咨询公司将半导体产业的IP定义为用于ASIC、ASSP和PLD等当中,并且是预先设计好的电路模块。IP核模块有行为(Behavior)、结构(Structure)和物理(Physical)三级不同程度的设计,对应描述功能行为的不同分为三类,即软核(Soft IP Core)、完成结构描述的固核(Firm IP Core)和基于物理描述并经过工艺验证的硬核(Hard IP Core)。

    什么是软核?
    IP软核通常是用HDL文本形式提交给用户,它经过RTL级设计优化和功能验证,但其中不含有任何具体的物理信息。据此,用户可以综合出正确的门电路级设计网表,并可以进行后续的结构设计,具有很大的灵活性,借助于EDA综合工具可以很容易地与其他外部逻辑电路合成一体,根据各种不同半导体工艺,设计成具有不同性能的器件。软IP内核也称为虚拟组件(VC-Virtual Component)。

    什么是硬核?
    IP硬核是基于半导体工艺的物理设计,已有固定的拓扑布局和具体工艺,并已经过工艺验证,具有可保证的性能。其提供给用户的形式是电路物理结构掩模版图和全套工艺文件,是可以拿来就用的全套技术。

    什么是固核?
    IP固核的设计程度则是介于软核和硬核之间,除了完成软核所有的设计外,还完成了门级电路综合和时序仿真等设计环节。一般以门级电路网表的形式提供给用户。


    November 21

    用UEstudio配置Verilog HDL的IDE

          今天进行了一项创举!仿照网上将Ultraedit做成Java、C等编译环境的做法,结合帮助文档,将UEstudio配置成Verilog HDL的简单的集成编译环境。希望日后工作可以比较方便。
          原料:(1)UEstudio,一个包含Ultraedit的集成编辑环境,功能比Ultraeidt强大一些;(2)Modelsim,Verilog HDL的常用仿真软件。
          做法:(1)作为一种语言的编辑器,关键字的高亮显色是最重要的,这一点比较容易做到。在网上有专门的爱好者将各类语言的关键字做好归类,只需要将你要的语言部分拷入UEstudio的安装目录下的wordfile.txt下即可。
          (2)根据个人爱好,我希望我的Verilog HDL编辑器可以有代码折叠功能。由于Verilog HDL的块一般是以begin和end作为开始和结束的标记,其作用相当于C语言的大括号。在wordfile.txt的对应语言中添加进如下代码即可:
                                        /Open Fold Strings = "begin""case"
                                        /Close Fold Strings = "end""endcase"
    这里除了begin和end可以进行折叠外,另外一对case和endcase同样可以完成折叠,同样的方法可以添加你需要的折叠标志。
          (3)UEstudio中有函数列表功能,在C/C++语言中,可以智能的显示出函数名。Verilog HDL是以模块(module)为单位的,而且一般一个文件只含有一个module。因此显示module名并不非常有用。我将其改成变量列表,显示出module中的各个变量,这还是比较有用的。UEstudio的函数列表判断是通过其专门的正则表达式实现的,具体可以参照帮助文档。经过了一个小时的研读,发现了其基本的语法,添加了如下两行代码。在Verilog HDL文件中就能显示出wire和reg类型的变量列表了。之所以不用input、output和inout作为类型,是因为很多时候有中间变量,这样会遗漏。另外由于正则表达式比较复杂,至今能实现的只能是没个变量单独定义的情况,如wire clk;如果是连续定义,如reg Q1,Q2;则不能进行判断。
                      /Function String = "%wire+[ ^t0-9:^[^]]+[ ^t]+^([a-zA-Z_0-9]+^);"
                      /Function String 1 = "%reg+[ ^t0-9:^[^]]+[ ^t]+^([a-zA-Z_0-9]+^);"
          (4)自动缩进功能。同样在wordfile.txt中,有控制自动缩进的语法。所谓自动缩进就是指,输入begin回车,下一行自动加一个tab;输入end,下一行自动退回一个tab。用户可以自己添加不同的缩进词实现自动缩进。如:
                     /Indent Strings = "begin""case""fork" "if" "else"
                     /Unindent Strings = "end""endcase""join" "else"
          (5)加入Modelsim仿真环境。UEstudio给用户留下了相当多的外部程序接口。比较常见的编程语言可以直接将编译器链接到UE里面去,但是似乎没有verilogHDL。我这里利用了modelsim仿真工具的命令,实现了一个对verilogHDL的编译功能。因为modelsim的编译语句vlog是一个exe文件,可以在dos命令行中执行(当然需要在path中添加路径)。命令为vlog + *.v。用户需要做的是在某个固定的地方先用modelsim建一个project,在porject中建立一个库,以后用上面命令编译出来的文件就都编译到这个库里面了。这时候,只需要在UE中的高级->工具配置里面进行的配置就可以,例如:
          命令行:vlog %p%n%e      //分别代表当前文件的路径,文件名和扩展名
          工作目录:%p                   //当前modelsim的project中work文件夹所在路径
          菜单项名称:在Modelsim中编译    //显示在菜单中的项
    然后再在捕捉窗口中打上勾,编译的信息就会显示在UE中了。
          这个时候,你只需要按这个菜单项,就能完成verilogHDL文件的语法检查和编译功能。在输出窗口中你能看到你的Error和warning,双击之可以马上跳转到报错位置,非常方便。这样就可以实现不用打开工具即完成语法检错的功能,完全在UE中实现。假如需要用modelsim进行仿真的话,运行modelsim,在work库里面就能发现你在UE中编译得到的文件,双击testbench项,就可以进入波形仿真阶段了,非常方便好用。
          (6)目前正在探索ctag功能,以求做到比函数列表更加的效果 

          以上只是我根据自己的喜好进行的一些配置,欢迎交流以达到更好的效果。

    November 20

    实验室

          今天是实验室一个星期一次的羽毛球活动,租了两个场,来了三个人,结果狂累。
          和一个师兄聊天的时候,谈到了现在的小boss。说某次他们聊天的时候,boss发牢骚,我们实验室要什么给什么,条件已经算很好了,为什么很多人都懒懒散散的不干活呢?
          想想也是,不少同专业的信电系的同学都进了实验室,相比之下,我们实验室的条件真的算是很好了。我们一进来,马上给我们配电脑。虽然不是新的,但是性能还是不错的。boss知道了我们的电脑是512内存,60G硬盘后,马上给我们加了一条512的内存,120G的硬盘。而其他的实验室呢?一个超大所的室友是从boss给的3台曾经能跑98的破机器让他装出一台用,不是这坏就是那坏,结果还是凑不成。佛祖他们实验室本科生不配,boss还让把自己的从宿舍抬过去实验室用,结果佛祖就被迫从此放弃了在宿舍玩游戏。除此以外,我们实验室还给每位同学每月200块报销,每个月交200发票,说是发票上只能写书、文具等东西,但是我们有教育超市,买东西都能写文具的,于是相当于想买什么都可以了。说实验室氛围吧,师兄师姐们都很耐心教我们这些新手,而且在boss这段时间的催促下,大家一般不上课都来,感觉挺紧凑,学习工作氛围不错。
          看来我们真应该知足了,虽然这两天被264的标准弄得昏头转向,还是要沉下气继续努力,嗯~~
    November 16

    工作日志(11.16)

          这两天,看了几十页《H.264 and MPEG-4 Video Compreesion》(简称黄书),马上可以看到去块滤波部分了,过两天要开始看《ITU-T Recommendation H.264——Advanced video coding for generic audiovisual services》(简称绿书),即H.264标准,争取本周看完书,下周开始写代码,学仿真。boss今天说时间很紧,看来要抓紧了!
          今天听过了信息论,极度难啃,因此更应该啃下来,给研究生减轻负担,决定选这门课了。
          另外,今天又买了两本比较经典的书,凑起了200块发票报销,oh year!
    November 15

    冬学期工作计划

          从家里回来,要收拾心情,开始认真工作了。
          放假的时候认真想了一下,还是师兄说得有道理,整个通信所大部分都在搞视频处理,视频处理是信电系的强项,学习的氛围不错,有兴趣的应该搞一下,自问喜欢硬件多于喜欢软件,喜欢verilog多于喜欢C,于是决定搞视频处理方面。至于嵌入式方面嘛,很多学院,很多系都在搞(信电系的硬件基础要好一些),感觉上上手可能需要比较长一点的时间,另外个人觉得嵌入式可能自学起来相对视频容易一些,而且现在实验室这方面的人比较多,嵌入式就先放放吧。
          回来后和boss商量了一下,结果有点出乎意料,似乎我两方面都需要涉及。昨天基本确定了,首要任务是配合师兄师姐们完成视频的去块滤波部分的verilog代码。开始的时间要比大家都晚,所以一定要加把劲,嗯!嵌入式方面,需要配合师兄完成open RISC上的uC/OS II和Linux两种操作系统的移植,现在基本处于没有概念的状态,估计要看不少书。
          另外信息学院开了个会,说保研的可以正式修读研究生课程,看见研一的师兄师姐一堆堆的课,决定这学期先搞掂两门,初步打算选信息论和通信网络或者是嵌入式系统优化编译(还是什么,记不清了),另外想上一下CS的Linux实验课,还想再考一次六级,希望拿个比较好的成绩,这次不能在裸考了
          唉唉,算上真的还很多事要做啊,加油加油~~