摘要: Main函数 1 static void Main(string[] args) 2 { 3 //初始化数据库 4 var customers = new[] { 5 new { CustomerID = 1, FirstName = "Orlando", LastName = "Gee", 6 CompanyName = "A Bike Store" }, 7 new { CustomerID = 2, Fir... 阅读全文
posted @ 2012-03-12 13:18 hercMoray 阅读(232) 评论(0) 推荐(1) 编辑
摘要: 本来一直纠结解调起始点判断,因为一旦起始点判别和调制的时候有偏差,那么结果就会产生整体的错位。现在忽然醒悟,所以解调和调制时序上务必要同步,这样才能正确的识别并还原出原序列。 阅读全文
posted @ 2011-08-05 10:37 hercMoray 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 对应于前面所写的16-qam调制,着手对应的解调。 阅读全文
posted @ 2011-08-05 10:30 hercMoray 阅读(981) 评论(2) 推荐(0) 编辑
摘要: 4-PAM,脉冲幅度调制,输入序列首先经过串并转化,然后根据输入选择对应的幅度,尝试输出正负值。主要是为了满足16-QAM的需要。和之前的一样,结果输出都会延后一个周期。幅值会额外输出一次00的结果,也就是-3。4 pam 1 module pam(clk,en,x,rg_x,y,count 2 ); 3 input clk; 4 input en; 5 input x; //输入串行数据 6 output [1:0] rg_x; //串行转化后的2位并行数据 7 output [2:0] y; //4-PAM输出幅值 8 output count; ... 阅读全文
posted @ 2011-08-04 11:08 hercMoray 阅读(824) 评论(0) 推荐(0) 编辑
摘要: 思路1:正交调幅法——实现16QAM调制,可以理解为时相位相差90度的两个正弦波的4PAM叠加。4比特输入经过2->4进制转化得到两路2比特输入,然后分别经过4PAM后叠加所得输出即为16QAM调制结果。具体程序稍后编写。思路2:复合相移法——可以借助前面编写的QPSK,相当于两路幅度不同的QPSK的叠加,比如幅度分别取1和3 。思路1正交调幅法的设计方案:两正弦波相位差90°,因此至少采用4分频(360°/4=90°,在只考虑上升沿置位的情况下)。为了使得输出波形富有正负幅值的特点,因此我生成的波是有正负的!!!非平常的1、0振幅波。思路1的16-QAM调 阅读全文
posted @ 2011-08-04 10:05 hercMoray 阅读(3381) 评论(0) 推荐(0) 编辑
摘要: 之所以之前会有一位的延迟,导致y第一位的丢失,主要是因为start信号的延迟置位所引起的,因此可以把start信号设置为线型变量。qpsk解调1.1 1 module dqpsk(clk,y,en,x,count,rg_y,rg_x 2 ); 3 input clk; //时钟信号 4 input y; //接收到的调制信号 5 input en; //使能信号 6 output x; //输出解调结果 7 output [2:0] count; //计数 8 output [7:0] rg_y; //8bit寄存器,用来存放连续的8位调制信号 9 output [1:0] rg_x; //2 阅读全文
posted @ 2011-08-03 15:09 hercMoray 阅读(681) 评论(1) 推荐(0) 编辑
摘要: 一开始接收到的y都是0,从y变成1开始,说明收到的是调制信号了,其中收到的前8个时钟周期的是初始当输入信号是00时候的调制信号,但是我们可以利用它作为我们解调的开始。当y变成1,则启动模8计数器,将y依次左移入8 bit寄存器,共8次,从而得到连续的8位y信号,然后根据其选择对应的解调信号输出以clk为单位,则对应为:(左边为收到的调制信号,右边为解调输出)1111 0000——0000 00000011 1100——1111 00000000 1111——1111 11111100 0011——0000 1111dqpsk 1.0 1 module Dqpsk_1(clk,y,en,x,co 阅读全文
posted @ 2011-08-03 14:27 hercMoray 阅读(763) 评论(0) 推荐(0) 编辑
摘要: 输入x,串行输入;首先串行输入经过串并转化,从而每两比特组成一个符号,然后产生相位分别为0,45,90,135的不同波形,按照2bit的符号选择相应的输出。程序采用8分频,所得输出y会延后对应的输入x8个clk周期(由于是8分频,8个周期对应1个符号,也就是2个比特,因此输入x每一个比特持续4个周期)View Code 1 //要得到45度相位差别的四个波形,则优先??虑8进制,初始en=0,在en=1时进行赋值 2 module QPSK(clk,x,en,y,yy,quad,xx,count); 3 4 input x; //输入信号x 5 input en; //使能信号 6 input 阅读全文
posted @ 2011-08-03 12:25 hercMoray 阅读(2518) 评论(3) 推荐(0) 编辑