m基于FPGA的数字下变频verilog设计
目录
1.算法描述
2.仿真效果预览
3.verilog核心程序
4.完整FPGA
1.算法描述
整个数字下变频的基本结构如下所示
NCO使用CORDIC算法,CIC采用h结构的CIC滤波器,HBF采用复用结构的半带滤波器,而FIR则采用DA算法结构。
这里,我们首先假设不考虑中频信号输入的载波频偏问题,即发送的中频频率和本地的载波频率是一致的。
为了验证系统的正确性,我们首先需要设计一个发送源,由于你要求的信号带宽为20M,
所以整个系统我们设计的系统参数为,中频为80M,A/D采样为60M。本地接收端的载波频率为20M。
即发送端通过80M的中频调制之后,信号的频谱会搬移到80M附近,然后接收端通过AD60M采样后,会将频谱搬移到20M附近,且不会发生混叠现象。
那么系统测试方案可以简化为,一个中心频率在20M附近的中频输入测试信号进行测试。
首先设计一个发送测试信号。
信号的基本结构如下所示:
我们首先在FPGA中设计这么一个结构得到中频测试信号,然后使用这个测试信号进行下变频测试。
整个系统的原理框图如下所示:
RTL图:
综合资源占用:
2.仿真效果预览
quartusii10.0,ModelSim-Altera 6.6d Starter Edition
3.verilog核心程序
module tops2(reset,clk,clk0,rst0,clk1,rst1,I0,phase0,phase1,Q0,cosr,I_cic,I_d,I_hb,I_out,Q_d,Q_out,R,sinr
);input wire reset;
input wire clk;
input wire clk0;
input wire rst0;
input wire clk1;
input wire rst1;
input wire [7:0] I0;
input wire [7:0] phase0;
input wire [7:0] phase1;
input wire [7:0] Q0;
output wire [7:0] cosr;
output wire [47:0] I_cic;
output wire [13:0] I_d;
output wire [31:0] I_hb;
output wire [15:0] I_out;
output wire [13:0] Q_d;
output wire [15:0] Q_out;
output wire [13:0] R;
output wire [7:0] sinr;wire [47:0] I_cic_ALTERA_SYNTHESIZED;
wire [31:0] I_hb_ALTERA_SYNTHESIZED;
wire [47:0] Q_cic;
wire [31:0] Q_hb;
wire [13:0] SYNTHESIZED_WIRE_0;
wire [13:0] SYNTHESIZED_WIRE_1;
wire [13:0] SYNTHESIZED_WIRE_2;
wire SYNTHESIZED_WIRE_3;
wire SYNTHESIZED_WIRE_4;
wire SYNTHESIZED_WIRE_5;
wire SYNTHESIZED_WIRE_6;assign I_d = SYNTHESIZED_WIRE_0;
assign Q_d = SYNTHESIZED_WIRE_1;
assign R = SYNTHESIZED_WIRE_2;cic_top b2v_inst(.i_clk(clk),.i_rst(reset),.i_din(SYNTHESIZED_WIRE_0),.o_clk16(SYNTHESIZED_WIRE_3),.o_dout(I_cic_ALTERA_SYNTHESIZED));defparam b2v_inst.WIDTH = 48;cic_top b2v_inst1(.i_clk(clk),.i_rst(reset),.i_din(SYNTHESIZED_WIRE_1),.o_clk16(SYNTHESIZED_WIRE_4),.o_dout(Q_cic));defparam b2v_inst1.WIDTH = 48;Rec b2v_inst12(.clk(clk1),.rst(rst1),.phase(phase1),.recs(SYNTHESIZED_WIRE_2),.Iss(SYNTHESIZED_WIRE_0),.Qss(SYNTHESIZED_WIRE_1));hb_filter_02 b2v_inst2(.i_clk(SYNTHESIZED_WIRE_3),.i_rst(reset),.i_din(I_cic_ALTERA_SYNTHESIZED[34:19]),.o_clk2(SYNTHESIZED_WIRE_5),.o_dout(I_hb_ALTERA_SYNTHESIZED));defparam b2v_inst2.h0 = 27316;defparam b2v_inst2.h1 = 20073;defparam b2v_inst2.h11 = 1238;defparam b2v_inst2.h13 = -1175;defparam b2v_inst2.h15 = -624;defparam b2v_inst2.h3 = -4745;defparam b2v_inst2.h5 = 965;defparam b2v_inst2.h7 = 667;defparam b2v_inst2.h9 = -1238;hb_filter_02 b2v_inst3(.i_clk(SYNTHESIZED_WIRE_4),.i_rst(reset),.i_din(Q_cic[34:19]),.o_clk2(SYNTHESIZED_WIRE_6),.o_dout(Q_hb));defparam b2v_inst3.h0 = 27316;defparam b2v_inst3.h1 = 20073;defparam b2v_inst3.h11 = 1238;defparam b2v_inst3.h13 = -1175;defparam b2v_inst3.h15 = -624;defparam b2v_inst3.h3 = -4745;defparam b2v_inst3.h5 = 965;defparam b2v_inst3.h7 = 667;defparam b2v_inst3.h9 = -1238;firfilter_da b2v_inst4(.CLK(SYNTHESIZED_WIRE_5),.Reset(reset),.DIN(I_hb_ALTERA_SYNTHESIZED[30:23]),.Dout(I_out));firfilter_da b2v_inst5(.CLK(SYNTHESIZED_WIRE_6),.Reset(reset),.DIN(Q_hb[30:23]),.Dout(Q_out));Trans b2v_inst6(.clock(clk0),.reset(rst0),.I(I0),.phase(phase0),.Q(Q0),.cosr(cosr),.r(SYNTHESIZED_WIRE_2),.sinr(sinr));assign I_cic = I_cic_ALTERA_SYNTHESIZED;
assign I_hb = I_hb_ALTERA_SYNTHESIZED;endmodule
01-115m
4.完整FPGA
V
m基于FPGA的数字下变频verilog设计相关推荐
- 基于FPGA的数字视频信号处理器设计(中)
今天给大侠带来基于FPGA的数字视频信号处理器设计,由于篇幅较长,分三篇.今天带来第二篇,中篇,视频信号概述和视频信号处理的框架.话不多说,上货. 之前也有图像处理相关方面的文章,这里超链接几篇,给各 ...
- 基于 FPGA 的数字抢答器设计
下面是基于 FPGA 的数字抢答器设计,在quartusII下,modelsim下仿真,编程语言VHDL. 1.抢答器的工作原理 主持人宣布可以抢答后,在 20s 的定时时间内若有人按键抢答,则这 ...
- 基于FPGA开发板使用Verilog设计PWM呼吸灯实验
基于FPGA开发板使用Verilog设计PWM呼吸灯实验 1,实验原理 2,实验模块设计 2.1 RTL设计,呼吸灯模块设计 2.2,测试数据,下载到FPGA开发板板级的数据 2.3,两个模块综合的n ...
- 基于FPGA的数字视频信号处理器设计(下)
基于FPGA的数字视频信号处理器设计(下) 今天给大侠带来基于FPGA的数字视频信号处理器设计,由于篇幅较长,分三篇.今天带来第三篇,下篇,程序测试与运行.话不多说,上货. 导读 图像是用各种观测系统 ...
- 基于FPGA的数字秒表的设计
应用VHDL语言设计数字系统,很多设计工作可以在计算机上完成,从而缩短了系统的开发时间,提高了工作效率.本文介绍一种以FPGA为核心,以VHDL为开发工具的数字秒表,并给出源程序和仿真结果. 1 系统 ...
- 基于FPGA的数字时钟的设计课设(HUAT)
目录 前言 一.数字时钟课设目标 二.部分代码 1.clock.v代码的编写 2.完整代码 3.仿真代码 总结 前言 学校黄老师的FPGA的设计课设,最后的课设为数字时钟,实现分时的计数功能,带有整点 ...
- 基于FPGA多通道数据采集系统verilog设计
本设计实现多通道数据采集系统,该系统包括多通道数据采集和数据传输,使用verilog语言设计. 本设计实现功能:采集8路16位的AD数据,并发送到串口助手. 该设计架构图如下: 顶层模块代码如下: m ...
- 基于FPGA的数字电子钟的设计与实现
背景:本实验所有结果基于Quartus II 13.1 (64-bit)实现,实验过程采用自下而上 2020年6月21日更新 我的实验报告,希望大家可以借鉴理解. 链接:https://pan.bai ...
- 基于FPGA的分形编码器verilog设计
目录 一.理论基础 二.核心程序 三.仿真测试结果 一.理论基础 分形图像编码是目前较有发展前途的图像编码方法之一, 也是目前研究较为广泛的编码方法之一.对其研究已有近十年的历史,其间,人们发现了它所 ...
最新文章
- R语言使用ggplot2包geom_jitter()函数绘制分组(strip plot,一维散点图)带状图(单色填充、分组颜色填充)实战
- python比较两个xml_python比较2个xml内容的方法
- Windows PE 第十章 加载配置信息
- *.zip、*.tar、*.tar.gz、*.tar.bz2、*.tar.xz、*.jar、*.7z
- 算法练习day17——190405
- windows2008 sp2 x64安装 ocs 2007 r2 笔记
- 现在学java的都是傻子?
- java exec waitfor,Java Process waitFor()方法与示例
- python脚本性能分析
- HTML fieldset 标签
- oracle 12c transaction guard,保障业务连续性的神器
- ResNet----残差结构
- win10系统dnf安装不上服务器失败,win10系统玩dnf图表系统组建失败怎么修复
- 02-客房预订系统数据库-用户和客房预订数据操作
- #CSDN软件工程师能力认证学习精选# Hadoop基础知识学习
- day07 c++复习 核心编程02 核心内容(1、友元 2、3、继承 )
- Java实习面试重点基础知识
- Swingbench 博客合集
- 4412 构造数组(区间合并)
- 三角函数π/2转化_@东莞同学,初中数学三角函数公式大汇总
热门文章
- (二)基于Multisim的电台发射系统:振幅调制器的设计
- 框架学习之Mave(一)
- 腾讯云下使用docker一步步虚拟出可运行的线上环境
- SNAT源地址转换基本概念以及应用
- Spring框架中用到的常用设计模式
- mysql for windows 5.7.19.0.msi官网下载地址
- 超详细,手把手教你用20行Python代码制作飞花令小程序!
- CCF 201412-3 集合竞价 90分代码 C++
- LPWA市场后起之秀 低功耗广域网技术ZETA抢攻物联网
- java俄罗斯方块实训心得_俄罗斯方块心得体会