simulink中mask设置_(实现BPSK学习Verilog)1. Simulink仿真实现

628fbbe201566bbe2cc4d46e5ceff8e9.png

欢迎关注BUG记录知乎专栏BUG记录公众号,关注BUG记录公众号回复101获取本文使用的Simulink仿真文件

24f95314313370c673658270ade533b1.png
微信号:BugRec

由于最近研究某个高速接口没什么实质性的突破,实在写不出太好的东西,所以就写点更为基础的东西分享给大家,顺带着自己也回忆回忆,防止自己西瓜也没捡到,芝麻也丢了。

这个系列是以前通信原理课程的课设,通过实现BPSK可以学习到Simulink的使用仿真,m序列的verilog实现,Vivado/Xilinx的IP核调用,数据截位,查看数据波形等。

本次文章记录的是BPSK的Simulink实现,会重点介绍几个Simulink模块的作用。


相移键控(BPSK)主要是利用载波的相位变化传递数字信息,传递过程中振幅和频率保持不变。通常使用初始相位0和pi分别表示二进制的“0”和“1”;

c1721ac8b3bcbb2bfbfa15b924c87c9a.png
相位变化 图1

64ae0e1f66feb138ce3d3f3ba8b996af.png
基带信号示意图

从《通信原理》关于BPSK的讲解中可以知道,BPSK的调制方式有模拟调制方法和键控法;我们选择模拟调制,并使用Simulink做仿真,框图如下:

6d3cd40bedfbd1cb2803cb5c45d1ff26.png

接下来对各个主要模块的讲解:

  1. Random Integer

95f2c4f286482b304924caf4c6a1f138.png

伪随机数发生器,可以通过Set size限定随机数的上限,下限为0;伪随机数不是真的随机数,具有很长的周期,它的周期跟Initial seed有关;Sample time控制输出数据的周期;

f7a5cb30d977d51698b60066ea1ff562.png
产生的伪随机信号

这个模块作用是产生一个随机序列,在FPGA中将使用m序列模块实现其功能;

2. 符号映射模块

这个模块在Random Integer后3个小模块,伪随机数发生器输出的0,1经过减0.5后成为-0.5,0.5,乘2之后为-1,1;

也就是0 映射到-1,1映射到1;

这么做的原因是为了简化BPSK的过程,

由上面这个公式可以知道,当需要发送初始相位π时,只需要将cos(wt)乘以-1;这里我们假设的是发送“0”时初始相位为π,发送1时初始相位为0,如果想要保持与上图1一样的初始相位,可以使用乘以-2代替乘以2,实现0 映射到1,1映射到-1;

d2582c3eca093f62e68860358d8db980.png
符号映射之后的基带信号

注意当产生QPSK等信号时,就不能采用这种方法,需要使用到IQ两路信号产生基带信号。

3. 升采样及基带滤波模块

Simulink的例子中,伪随机信号发生器的符号速率为1Mbps,经过Zero-Order Hold模块将前面模块产生的模拟信号转换为数字信号,采样率为50MHz;

由于伪随机信号发生器及符号映射模块产生的信号为-1和1,产生信号是矩形信号,而根据傅里叶变换的知识可以知道,矩形信号的频谱是基波加上一系列奇次谐波,为了减小基带信号的信号带宽,我们需要使用低通滤波器尽量滤去谐波分量,保留矩形信号的基波;

f2480f417e8a4825c630c3b89313328c.png
FIR滤波后的基带信号

75013eb3b677690bcd811cd8a824bb51.png
FIR设置界面

Digital Filter Design设置界面很简单,勾选Lowpass,选择FIR,选择阶数128,窗函数选择Blackman,截止频率与采样率之比为2:50;数字滤波器采样率和截止频率的单位不重要,两者之间的比率较为重要;而例子中此时信号为50MHz,所以截止频率为2MHz;

这个模块在FPGA中将使用相应的IP核实现功能;

4.上变频模块

因为基带信号的频率较低,实际应用中考虑到天线长度,信号频谱利用等原因,需要使用上变频将信号搬移到较高频率,我们在仿真过程中将基带信号搬移到10MHz,这就需要将基带信号与10MHz的正弦波相乘;

7f5e7c761298edf5b7594500cfa58bf7.png
Sine Wave设置

Sine Wave模块的设置较为简单,设置好幅度Amplitude,频率Frequency,初始相位Phase和采样率Sample time后;通过Product模块将其与基带信号相乘,输出就是BPSK的仿真信号;

这个模块在FPGA中将使用相应的IP核实现功能;

5. 输出结果

05ef000539782dd087e028d9e6cb40f1.png
射频频谱图

43647537fd1fdd95b8420bf933838c7d.png
信号眼图

通过伪随机信号发生器,符号映射,FIR滤波,上变频模块后,一个完整的BPSK信号产生了;

虽然这整个仿真过程可能不够严谨,但我们的重心在于verilog实现,接下来会依次讲到相应模块的verilog实现,在这个过程中我回忆和巩固自己所学的知识,欢迎大家关注。

如果对这个Simulink有更好的改进方法方案可以留言一起谈论,欢迎大家点赞收藏留言讨论交流。


万物皆可卷积:(LVDS差分信号简单处理)5. 使用OSERDES发送高速串行数据​zhuanlan.zhihu.com
07b2ee22fb2d376304c407d76a061421.png
万物皆可卷积:SPI发送协议的STM单片机实现- 利用CubeMx控制WS2812灯带​zhuanlan.zhihu.com
c73101bcd8ce045061aa76e5fd84ae6e.png
万物皆可卷积:(LVDS差分信号简单处理)4. 使用ISERDES接收高速串行数据​zhuanlan.zhihu.com
07b2ee22fb2d376304c407d76a061421.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/533712.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

arima模型_[不说人话系列]-ARIMA模型

看文献的时候看到几个统计推理的模型,想要大概了解,想做个系列,记录自己胡说八道的数理笔记过程。如有错误,感谢您指正。文前感谢冯小姐详细认真的技术援助!1- 名称简称:ARIMA模型英文名:Auto r…

pcb天线和纯铜天线_如何简化天线设计?相控阵波束成形IC来助您

为提高性能,无线通信和雷达系统对天线架构的需求不断增长。只有那些功耗低于传统机械操纵碟形天线的天线才能实现许多新的应用。除了这些要求以外,还需要针对新的威胁或新的用户快速重新定位,传输多个数据流,并以超低的成本……正…

c语言贪吃蛇_C语言贪吃蛇完整代码

#include #include #include //windows编程头文件#include #include //控制台输入输出头文件#ifndef __cplusplustypedef char bool;#define false 0#define true 1#endif//将光标移动到控制台的(x,y)坐标点处void gotoxy(int x, int y){COORD coord;coord.X x;coord.Y y;Se…

上海市计算机一级客观题,2012年上海市高校计算机等级考试(一级)模拟卷客观题...

2012年上海市高校计算机等级考试(一级)模拟卷客观题 (5页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!11.9 积分关于防火墙,以下说法不正确的是____A____。下列属于视频制作的常用软件的…

百度云盘云知梦php_教你搭建私有云盘,简单快速,完全傻瓜式!不限速,永久有效!...

免费的云盘服务有很多,但是总感觉把重要文件存在上面不安全,动不动就跑路或者限速。辛辛苦苦收集的学习资料,一夜直接可能就会付诸东流。最稳妥的方式是存放在本地硬盘中,但是要进行共享或者不同设备之间进行交换,就显…

结束 txt进程_Python多进程抓取拉钩网十万数据

转载:Python多进程抓取拉钩网十万数据准备安装Mongodb数据库其实不是一定要使用MongoDB,大家完全可以使用MySQL或者Redis,全看大家喜好。这篇文章我们的例子是Mongodb,所以大家需要下载它。在Windows中。由于MongoDB默认的数据目录…

计算机休眠怎么唤醒,电脑休眠后,就无法唤醒了?怎么办?快速教你解决这个问题...

电脑是目前人们生活、工作中使用最多的电子产品之一,我们都经常会使用到电脑。但是如果电脑在一段时间后不使用,电脑就会自动进入休眠状态,而在进入休眠状态的之后,只有当我们将电脑唤醒了,电脑才能够回到菜单界面当中…

python爬虫爬取音乐单曲_Python爬取qq音乐的过程实例

一、前言qq music上的音乐还是不少的,有些时候想要下载好听的音乐,但有每次在网页下载都是烦人的登录什么的。于是,来了个qqmusic的爬虫。至少我觉得for循环爬虫,最核心的应该就是找到待爬元素所在url吧。二、Python爬取QQ音乐单曲…

python类定义的讲解_python面向对象、自定义类等使用实例讲解

python 面向对象相对别的语言来说缺少两个功能: 1、python不具备重载,重载是指在同一个类中,使得方法有相同的名称,但是有不同的参数列表,但由于python函数具有强大的参数处理功能,因此这不是一个问题。 2、…

ubutun 更换网络源_「ubuntu脚本1」开启ssh替换第三方源开启tab键补齐屏蔽nouveau

Ubuntu初始化脚本,安装显卡驱动专用初始化脚本替换apt源为国内清华源,增加docker-ce国内源开启tab键补齐桌面版开启ssh仅支持Ubuntu16/18桌面版安装gcc make屏蔽nouveau 自动重启服务器生效#!/bin/bash #检测网络是否通畅 ping -w 5 qq.com || { echo "网络异常,脚本终止&…

matlab meshgrid函数_matlab入门(三)图像可视化

matlab图像可视化基本要求(1)掌握图形窗口的创建与控制,以及图形窗口的基本操作;(2)熟练掌握二维和三维绘图基本的命令、线型控制;(3)初步掌握用特殊的图形来表现特殊数据的性质,如面积图、直方 图、饼图等。(4)掌握坐标轴的控制和…

hashmap remove 没释放内存_java从零开始手写 redis(13)HashMap 源码原理详解

为什么学习 HashMap 源码?作为一名 java 开发,基本上最常用的数据结构就是 HashMap 和 List,jdk 的 HashMap 设计还是非常值得深入学习的。无论是在面试还是工作中,知道原理都对会我们有很大的帮助。本篇的内容较长,建…

南京高中计算机老师,南京市教育局召开中小学教师信息技术应用能力提升工程2.0市级专家组工作会议...

2021年3月2日上午,南京市中小学教师信息技术应用能力提升工程2.0市级专家组工作会议在雨花台区教师发展中心召开。市教育局副局长祁寿东出席会议并讲话,市教研室、教科所、电教馆、教师发展学院主要负责同志,市级专家团队成员及各区教师发展中…

python计算执行时间的函数_[python] 统计函数运行时间

第一种: import time def time_me(fn): #fn 是要修饰/修改 的函数 def _wrapper(*args, **kwargs): #这个 _wrapper(*args, **kwargs) 则代指fn, *args 代表一般变量参数, **kwargs代表 字典,哈希等参数 start time.perf_counter() fn(*args…

arthas 排查内存溢出_Java 应用线上问题排查思路、常用工具小结

前言本文总结了一些常见的线上应急现象和对应排查步骤和工具。分享的主要目的是想让对线上问题接触少的同学有个预先认知,免得在遇到实际问题时手忙脚乱。毕竟作者自己也是从手忙脚乱时走过来的。只不过这里先提示一下。在线上应急过程中要记住,只有一个…

flutter listview 滚动到指定位置_Flutter 布局原理及实战

1. Flutter UI架构Flutter将视图数据抽象成为三个部分,即Widget树、Element树和RenderObject树。Widget树:控件的配置信息,不涉及渲染,更新代价极低。RenderObject树:真正的UI渲染树,负责渲染UI&#xff0c…

雷神开机logo更改_国产外星人雷神再发新品 911MT逐影者RTX2060光追游戏本评测

随着NVIDIA发布了笔记本20系显卡之后,宣示着全民进入了“RTX光线追踪时代”,各种新款的游戏也纷纷宣布支持“光线追踪”技术来吸引更多的玩家,似乎现在游戏本上没有个“RTX”贴纸就已经不好意思跟别人打招呼了。说到2019年的RTX新品&#xff…

AJAX框架衣柜内部布局,​最合理的衣柜内部布局解析,3大细节不容小觑

时常有业主或者朋友问小轻,最合理的衣柜内部布局应该是怎样的,确实这对于非业内人士一般都是不太清楚的,即使有的朋友已经有了丰富的生活经验,甚至是业内人士也不一定对此完全了解。那么到底最合理的衣柜内部布局是怎样的呢&#…

python爬取数据保存为csv时生成编号_将爬取到到数据以CSV格式存储

CSV文件存储 CSV,全称为Comma-Separated Values,中文可以叫做逗号分隔值或字符分隔值,其文件以纯文本形式存储表格数据。该文件是一个字符序列,可以由任意数目的记录组成,记录间以某种换行符分隔。每条记录由字段组成&…

博达3956交换机配置手册_网络设备维保浅谈之交换机维保

随着信息化的飞速发展,交换机作为信息流通的承载者,是应用最为广泛的网络设备之一,其作用不言而喻。因此,在日产使用中,要注意交换机这种核心的设备的维护与保养,以免引发故障。交换机运维需要注意哪些问题…