自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

转载 FFT补零相关

1.转自http://www.ilovematlab.cn/viewthread.php?tid=36349&sid=lqshA1补零后的FFT和补零前的FFT,两者会有较大的不同,但两频谱的包络还是一致的。设补零前数据长N,补零后数据长M(补了M-N个零值),则补零前的FFT有N条谱线,分别代表的频率点是(0,1,...,N-1)*df1,df1=fs/N;补零前的FFT有M条谱线,分别

2013-05-27 22:31:33 11931 4

转载 MIPS 体系结构汇编语言快速入门(翻译)

MIPS 体系结构和汇编语言快速入门(翻译)译者:Sonic Fu, Northeastern University, Boston, USA译者按:学习笔记,抛砖引玉!网上有一个版本,不全,这个作为补充。英文原版: http://logos.cs.uic.edu/366/notes/mips quick tutorial.htm#IOSystemCalls本文

2013-05-27 22:22:10 1672

原创 ACM算法入门

OJ上的一些水题(可用来练手和增加自信) (poj3299,poj2159,poj2739,poj1083,poj2262,poj1503,poj3006,poj2255,poj3094) 初期: 一.基本算法:       (1)枚举. (poj1753,poj2965)      (2)贪心(poj1328,poj2109,poj2586)      (3)递归和分治法

2013-04-23 12:57:53 1182

原创 USRP2 LTE Transceiver设计

1. 代码架构top_levelrunTransceiver.cpp初始化设备对象,radio接口以及transceiver对象,启动trx相关线程 transceiverTransceiver.h/cpp TRX层,主要实现收发控制功能和对上层协议栈的接口,共分为四个线程:mReceiveFIFOServiceLoopThread负责驱动USRP接收,并将数据存入

2013-02-25 10:47:26 2785 3

原创 USRP变速率采样原理及实现

1. 变速率采样5M带宽的LTE系统中,采样率为512*15k=7.68MHz,而USRP2在不改变FPGA代码的情况下仅支持100M的整数倍分频的采样率,最接近7.68M的采样率为6.25M。所以在空口获得的数据采样率为6.25M,而LTE系统内部采样率为7.68M,需要进行插值和抽取实现速率转换。(补充说明一点,由于LTE过采样的特点,采样率6.25M仍然可以完整保留信号特性,实际上,

2013-02-25 10:28:39 5798 2

原创 SSE指令集入门

Intel公司的单指令多数据流式扩展(SSE,Streaming SIMD Extensions)技术能够有效增强CPU浮点运算的能力。Visual Studio .NET 2003提供了对SSE指令集的编程支持,从而允许用户在C++代码中不用编写汇编代码就可直接使用SSE指令的功能。MSDN中有关SSE技术的主题[1]有可能会使不熟悉使用SSE汇编指令编程的初学者感到困惑,但是在阅读MSDN有关

2012-12-26 16:07:29 4964 3

原创 Linux驱动学习(四)——高级字符设备驱动程序

LDD第二章到第六章的综合复习。用循环缓冲区实现一个FIFO,支持多个reader和writer,利用信号量在竞态下保护数据区域,并且在无数据的时候阻塞读,数据满的时候阻塞写,可以通过ioctl返回FIFO状态。需要的技术:1、信号量:竞争与锁的机制。2、等待队列:进程的休眠与唤醒。用两种方式实现读写阻塞。3、poll:返回文件可读或者可写的状态,为select调用。4、i

2012-12-25 19:48:28 1002

原创 linux下调试方法记录

1、segment faultsegment fault是几乎多有C程序员都会碰到的问题,多为内存问题,因为glibc库中基本所有的函数都默认形参指针是非空的,这样以下原因就可能导致段错误:(1)引用一个包含非法值的指针(当然包括空指针)。(2)未得到正确的权限的时候进行访问,例如往只读的内存地址写数据。(3)内存越界(数组越界,变量类型不一致等)调试segment fault

2012-12-25 16:26:18 670

原创 DSP问题笔记

在学习DSP的过程中遇到了一些问题,包括面试与讨论中,记录在这篇博客中。1、DSP的哈佛结构特点,与常规的冯诺依曼结构区别。  2、给定一个信号为两个幅值为A的正弦信号的叠加(1000hz和1050hz),给定8khz的采样率,一个周期有多少个采样点?思路:这个问题的关键在于理解频率分辨率和DFT的实质。对于有限长离散点做DFT,相当于时域加窗(乘以一个矩形函数),频域上卷积sin

2012-12-23 00:51:34 2460

原创 Linux驱动学习(二)——字符设备驱动程序入门 .

linux下,在应用程序看来,对设备的操作其实就是对文件的操作,利用open,read,write,close等函数进行控制和IO。对于一个字符设备驱动模块,有几个关键结构体:1、struct file_operations:在设备编号和驱动程序操作之间建立连接2、struct file: file结构代表着一个打开的文件,由内核在open时创建,并传递给在该文件上操作的所有函数(如r

2012-12-21 14:23:05 942

原创 Linux驱动学习(一)——简单的hello模块

大概看了一遍LDD,从今天开始动手实践,下面给出linux内核模块开发入门的代码,helloworld。hello.c #include #include MODULE_LICENSE("Dual BSD/GPL");static int __init hello_init(){ printk(KERN_ALERT "Hello, kernel world\n"

2012-12-21 09:05:06 779

原创 GSM手机经典接入流程

打电话的时候,先由MS通过RACH发起入网申请,网络再通过AGCH对MS的入网申请作出响应,分配一条SDCCH(这一过程是立即支配程序,用于位置更新或收发短消息),SDCCH也可以叫专用呼叫信道,网络通过SDCCH分配TCH。如果用户要打电话就需要进一步分配一条TCH(这一过程是支配程序,传送话音等)。接电话和打电话差不多,接的话网络多了一个寻呼的过程。1. The MS powers up

2012-12-18 13:16:15 5963

原创 Openbts for opra 底层驱动移植

最近接触了一个软件无线电的项目,在新的硬件平台上调试openbts,就是那个开源的GSM基站。openbts的架构很清晰,transceiver层负责提供radio部分的接口,实现数据的实时收发,然后通过socket与高层协议栈通信,所以我的大部分工作都是在transceiver层完成的。openbts一直都是以USRP/USRP2作为底层硬件单元,这次我要用opra的板子做底层单元,原想

2012-12-17 16:49:45 4235 7

转载 Linux驱动程序学习步骤经典收藏

先记录一下,稍后会一步步实践。 了解linux驱动程序技巧学习的方法很重要,学习linux操作系统时,你可能会遇到关于驱动方面的问题,这里将介绍学习linux驱动程序的方法,在这里拿出来和大家分享一下。1.学会写简单的makefile2.编一应用程序,可以用makefile跑起来3.学会写linux驱动程序的makefile4.写一简单char驱动,makefile编译通过

2012-11-30 10:15:22 875 1

原创 ubuntu内核编译及RTAI的安装

准备工作apt-get install qt3-apps-dev build-essential kernel-package vimapt-get install libncurses5-dev  (meke menuconfig要调用的)Step1 下载源码并解压到/usr/src目录下Get the kernel source (version 2.6.32-21.32)

2012-11-30 09:37:59 7557 5

原创 基站诊断工具——DSP开发小结

本篇日志记录了我在爱立信实习中参与的一个项目:基站监测与调试工具的开发。WoD工具分为两部分,一部分是在DSP侧,实现在基站freescale的板子上,提供基站端的流量信息/数据信息/signal状态/内存信息等;另一部分是PC侧,负责监视。控制基站与显示,记录数据结果。两部分之间通过socket通信,在自己设计的数据包传输协议基础上交换信息。(在外场测试中,没有PC侧的应用,DSP侧应将各种

2012-11-19 21:46:04 1783

原创 Python学习(四)——Python单元测试

pyunit框架'''Created on Aug 10, 2011@author: wensi'''import unittestclass TestClass1(unittest.TestCase): def testCase1(self):

2011-08-10 22:29:51 730

原创 Python学习(三)——正则表达式模块

re.matchmatch从字符串的开头进行匹配(注意是开头!!!)text = "wensishuai is a handsome boy, he is cool, clever, and so on..."m = re.match(r'(w\w+)\s', te

2011-08-10 22:12:15 1740

原创 Python学习(二)——常用功能

1、获取当前时间:import timeTIMEFORMAT = '%Y%m%d%H%M%S'self.curtimestr = time.strftime( TIMEFORMAT, time.localtime(time.time()))

2011-08-10 19:05:18 676

原创 Python学习(一)——学习资源记录

下面是常用的入门和查找的资源:官方参考文档:http://docs.python.org/release/2.6.7/index.html (学习tutorial和standard library常用函数)google的Python class:http://co

2011-08-09 22:34:18 604

原创 testPython

file = open('xxx.txt','a') p = subprocess.Popen('dir',stdout=subprocess.PIPE,shell=True) print >>file,p.pid print >>file,p.retur

2011-08-09 20:26:21 423

原创 Matlab通信仿真常用函数

信源函数<br />randerr 产生比特误差样本<br />randint 产生均匀分布的随机整数矩阵<br />randsrc 根据给定的数字表产生随机矩阵<br />wgn 产生高斯白噪声 <br />信号分析函数<br />biterr 计算比特误差数和比特误差率<br />eyediagram   绘制眼图<br />scatterplot 绘制分布图<br />symerr 计算符号误差数和符号误差率<br />信源编码<br />compand mu律/A律 压缩/扩张<br />dpcmd

2011-05-28 08:34:00 12371 1

转载 SQL经典面试题

<br />1.用一条SQL语句 查询出每门课都大于80分的学生姓名  <br />name   kecheng   fenshu <br />张三     语文       81<br />张三     数学       75<br />李四     语文       76<br />李四     数学       90<br />王五     语文       81<br />王五     数学       100<br />王五     英语       90<br />A: select disti

2011-05-26 15:25:00 777

原创 理解C++的多态原理及实现

<br />面试时经常被问到一连串的问题:<br />1、什么是多态性?<br />2、多态性的原理(多态是怎么实现的)?<br />3、用C语言实现多态(写代码)。<br />首先,我们来研究一下C++面向对象的内存模型,也就是实现虚函数时类的存储结构。<br />1. 用 virtual 关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。 <br />2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。 虚表是 和类对应的,虚表指针是和对象对应的。 <br />3

2011-05-25 15:23:00 1395

转载 链表归并排序

<br />之前就听说可以用归并来实现链表的排序,刚听到还楞了一下,觉得主要问题是归并数组时需要不断地对数组进行二分,这种操作对于数组直接利用下标即可定位,可是链表定位元素就很麻烦了,不知道怎么实现,后来看了一下,二分的操作果然,当然还是得利用循环,不过相当巧妙,是使用两个步长一快一慢的指针进行,也算奇思妙想,代码如下,重点部位有注释(英文是因为代码里注释习惯写英文,避免之后因为编码问题,辛辛苦苦的注释全部变成圈圈框框,见谅):<br />参考代码如下:<br />#include <stdio.h>#

2011-05-24 22:11:00 3925 1

原创 二分查找

<br />参考代码如下:<br />#include <iostream>using namespace std;int a[20] = {0};void init(){ for (int i = 0; i < sizeof(a) / sizeof(int); ++i) { a[i] = 2 * i; }}int binarysearch(int a1[], int begin, int end, int key){ while (begin

2011-05-19 15:31:00 426

原创 常见排序小结

<br />参考代码如下:<br />#include <iostream>#include <assert.h>#include <algorithm>#include <string>using namespace std;int a[20] = {0};int b[] = {5,3,6,1,8,4,4,19,11,33,2,80,76,7,13,22,87,11,35,1,26,14,21,45,70,28};void init(){ memset(a,0,

2011-05-19 15:12:00 467

转载 Linux下FTP服务搭建

<br />1、安装vsftpd<br />安装vsftpd很简单,只要在终端输入以下命令即可:<br />sudo apt-get install vsftpd<br />安装了之后会在/home/下建立一个ftp目录。这时候你可以试着访问下ftp://IP地址。应该可以看到一个空白内容的ftp空间。<br />默认设置下匿名用户可以下载,但不能写入或上传。<br />2、启动、关闭、重启vsftpd<br />sudo /etc/init.d/vsftpd start       (启动)<br />s

2011-05-19 14:28:00 691

原创 TCP/IP面试

<br />1、建立连接协议(三次握手)<br />(1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。<br />(2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。<br />(3) 客户必须再次回应服务段一个ACK报文,这是报文段3。<br />2、连接终止协议(四次挥手)<br />   由于TCP连接是全双工的,因此每个方向都

2011-05-18 11:18:00 6054 1

原创 C/C++程序员面试题

1、局部变量能否和全局变量重名?   答:能,局部会屏蔽全局。要用全局变量,需要使用"::" ;局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。    2、如何引用一个已经定义过的全局变量?   答:extern  可以用引用头文件的方式,也可以用extern关键字,如果用引用头文件方式来引用某个在头文件中声明的全局变

2011-05-18 10:55:00 4437

原创 软件测试面试

<br />基本知识<br />略<br />设计测试用例<br />1、需求测试:检查设计文档,看是否满足要求<br />2、功能测试:基本功能<br />3、性能测试:速度,质量等<br />4、压力测试:负载,极限情况<br />5、稳定性测试:长时间运行稳定性,不同环境下的稳定性<br />6、易用性测试:外观,界面,使用等<br />7、兼容性测试:和其他工具能否共存,操作系统<br />8、安全性测试:是否存在风险<br />9、本地化测试:<br />10、可移植性:是否用于不同的平台,浏览器

2011-05-18 10:21:00 1297

原创 Linux Shell 练习

<br />1. 用Shell编程,判断一文件是不是块或字符设备文件,如果是将其拷贝到/dev目录下。<br />#!/bin/bash<br />#1.sh<br />#判断一文件是不是字符或块设备文件,如果是将其拷贝到/dev目录下<br />#file executable: chmod 755 1.sh<br />PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin<br />export PATH<br />

2011-05-18 10:08:00 3410

原创 Linux笔试题

<br />二.单项选择题<br />1. 下面的网络协议中,面向连接的的协议是:。<br />A 传输控制协议 B 用户数据报协议 C 网际协议 D 网际控制报文协议<br />2. 在/etc/fstab文件中指定的文件系统加载参数中,参数一般用于CD-ROM等移动设备。<br />A defaults B sw C rw和ro D noauto<br />3. Linux文件权限一共10位长度,分成四段,第三段表示的内容是。<br />A 文件类型 B 文件所有者的权限<br />C 文件所有者所在组

2011-05-18 08:52:00 6591

原创 Linux笔试题目

<br />一.填空题<br />1. 在Linux系统中,以(文件)方式访问设备。<br />2. Linux内核引导时,从文件/etc/fstab中读取要加载的文件系统。<br />3. Linux文件系统中每个文件用i节点来标识。<br />4. 全部磁盘块由四个部分组成,分别为引导块、专用块、 i节点表块和数据存储块。<br />5. 链接分为:硬链接和符号链接。<br />6. 超级块包含了i节点表和空闲块表等重要的文件系统信息。<br />7. 某文件的权限为:drw-r--r--,用数值形式表

2011-05-18 08:43:00 1280

原创 Linux笔试题目

<br />一.填空题<br />1. 在Linux系统中,以(文件)方式访问设备。<br />2. Linux内核引导时,从文件/etc/fstab中读取要加载的文件系统。<br />3. Linux文件系统中每个文件用i节点来标识。<br />4. 全部磁盘块由四个部分组成,分别为引导块、专用块、 i节点表块和数据存储块。<br />5. 链接分为:硬链接和符号链接。<br />6. 超级块包含了i节点表和空闲块表等重要的文件系统信息。<br />7. 某文件的权限为:drw-r--r--,用数值形式表

2011-05-18 08:41:00 966

原创 Linux笔试题目

<br />一.填空题<br />1. 在Linux系统中,以(文件)方式访问设备。<br />2. Linux内核引导时,从文件/etc/fstab中读取要加载的文件系统。<br />3. Linux文件系统中每个文件用i节点来标识。<br />4. 全部磁盘块由四个部分组成,分别为引导块、专用块、 i节点表块和数据存储块。<br />5. 链接分为:硬链接和符号链接。<br />6. 超级块包含了i节点表和空闲块表等重要的文件系统信息。<br />7. 某文件的权限为:drw-r--r--,用数值形式表

2011-05-18 08:39:00 3633

原创 new和malloc的区别和联系

1、new 是c++中的操作符,malloc是c 中的一个函数2、new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不会调用析构函数3、内存泄漏对于malloc或者new都可以检查出来的,区别在于new可以指明是那个文件的那一行,而malloc没有这些信息。4、new 和 malloc效率比较new 有三个字母, malloc有六个字母new可以认为是malloc加构造函数的执行。new出来的指针是直接带

2011-05-17 20:45:00 560

原创 linux 查找关键字目录/文件

查找目录:find /(查找范围) -name '查找关键字' -type d 查找文件:find /(查找范围) -name 查找关键字 -print 如果需要更进一步的了解,可以参看Linux的命令详解。 这里摘抄如下: ·find path -option [ -print ] [ -exec -ok command ] {} /; #-print 将查找到的文件输出到标准输出 #-exec command {} /; -----将查到的文件执行command操作,{} 和 /;之间有空格 #-ok

2011-05-16 20:50:00 5524

原创 [转载]海量数据处理:十道面试题与十个海量数据处理方法总结

<br /> 海量数据处理:十道面试题与十个海量数据处理方法总结<br /><br />作者:July、youwang、yanxionglu。<br />时间:二零一一年三月二十六日<br />说明:本文分为俩部分,第一部分为10道海量数据处理的面试题,第二部分为10个海量数据处理的方法总结。有任何问题,欢迎交流、指正。<br />出处:http://blog.csdn.net/v_JULY_v。<br />------------------------------------------<br /> <

2011-05-12 22:57:00 91

原创 笔试题——输出循环小数的循环节

求一个分数对应小数的循环节。、思路:我们分别用x和y表示分子和分母,先求出整数部分x div y和余数部分x mod y,那么小数部分就是重复将余数部分乘以10再进行整除运算和求余运算,直到出现循环或余数为0时结束。我们不妨从余数入手,因为小数部分整除的结果是由上一次运算的余数决定的,如果某一次运算产生的余数跟前面产生的余数相同,则说明循环开始。参考代码:#include#define mn 1000void main(){ int i,m,n,r,t; int p[mn],q[mn]

2011-05-12 20:24:00 8758 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除