摘要: 之所以之前会有一位的延迟,导致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 阅读(2519) 评论(3) 推荐(0) 编辑