基于sigma-delta和MASHIII调制器的频率合成器simulink建模与仿真

目录

1.算法运行效果图预览

2.算法运行软件版本

3.部分核心程序

4.算法理论概述

4.1 Sigma-Delta调制器原理

4.2 数学模型

4.3 噪声整形

4.4 MASH III调制器原理

4.5 基于Sigma-Delta和MASH III的频率合成器

5.算法完整程序工程


1.算法运行效果图预览

      其误差当系统进入稳定状态的时候,频率误差就小于1E-9,并且随着频率的增加,其稳定性将更好。

2.算法运行软件版本

matlab2022a

3.部分核心程序

...........................................................................
window  = hann(length(yout));
[Pyy,w] = periodogram(yout,window,100000);
PSD2    = 1/M+1/100*(2*(w)).^4;
Len     = length(PSD2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure;
semilogx(w/pi,10*log10(pi*Pyy),'b');
hold
semilogx(w(Len/100:Len)/pi,10*log10(PSD2(Len/100:Len)),'k','linewidth',2);
grid on
xlabel('Normalized Frequency (x\pi rad/sample)')
ylabel('Power/frequency(dB/rad/sample)');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
figure;
plot(yout,'linewidth',2);
grid on;
xlabel('times');
ylabel('sigmadelta调制器输出');
grid onfigure;
hist(yout,5)
xlabel('output yout')
ylabel('number of occurance');figure;
plot(yout2(1:3*Len/4),'linewidth',2);
grid on;
xlabel('times');
ylabel('V');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%分析频率稳定度
Fre = yout3;
K   = 1;
t1  = yout3(1:end-K);
t2  = yout3(K+1:end);Err = abs(t1-t2)./t1;
ttt = Err(20:end);
idx = find(ttt==0);
ttt(idx)=[];figure;
loglog(ttt,'linewidth',2);
grid on;
xlabel('times');
ylabel('频率稳定度');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%最后进行杂散分析
N        = 16;             %累加器的位数;
K        = fix((2^N)*0.2); %频率控制字,即累加的步长;
D        = 8;             %8bit DAC
g        = gcd(K,2^N);
pe       = 2^N/(g);
n        = 1:pe;
pp       = pe+1;          %频谱分析点数
add_y    = mod(n*K,2^N);  %累加器的输出表达式;%设定量化区间
pat             = -1 + 1/ (2^ (D - 1) ):1/ (2^ (D - 1) ):1 - 1/ (2^ (D -1) ); 
%设定量化码本值
codebook        = -1 + 1/ (2^D):1/ (2^(D - 1) ) :1 - 1/ (2^D); 
rom_x           = cos(2*pi*add_y/(2^N));
[index,quants2] = quantiz(rom_x,pat,codebook);
[Pzz,wz]        = periodogram(quants2,[],'onesided',pp);figure; 
psdplot(Pzz/max(Pzz),wz);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
37_001m

4.算法理论概述

        频率合成器是现代无线通信系统中的关键组件,用于生成精确且可调的频率信号。基于Sigma-Delta(Σ-Δ)调制器和MASH III(Multi-stage noise shaping and High-order single-loop)调制器的频率合成器结合了两种技术的优势,提供了高分辨率和低噪声的性能。

4.1 Sigma-Delta调制器原理

         Sigma-Delta调制器(Σ-Δ ADC)以其高分辨率和内在的噪声整形特性而著称。在频率合成器中,Σ-Δ调制器用于将低频的模拟信号或相位误差转换为高速的单比特数据流。

          Σ-Δ调制器通常由一个差分器、一个积分器(或多个积分器)、一个量化器和一个反馈DAC(数模转换器)组成。

          Σ-Delta调制器的工作原理基于过采样和噪声整形。输入信号与反馈信号之差被积分,然后量化。量化产生的误差被反馈回输入端,形成闭环系统。

4.2 数学模型

Σ-Delta调制器的数学模型可以用以下差分方程表示:

Y[n] = X[n] + (1 - Z^-1) * E[n]

其中,Y[n]是输出信号,X[n]是输入信号,E[n]是量化误差,Z^-1表示单位延迟。

4.3 噪声整形

        噪声整形是Σ-Δ调制器的关键特性,它将量化噪声推向高频,从而在低频范围内实现高信噪比(SNR)。

4.4 MASH III调制器原理

        MASH III调制器是一种多级噪声整形和高阶单环结构,结合了多级Σ-Δ调制器的优点。MASH III调制器由多个级联的Σ-Δ调制器组成,每一级都有自己的量化器和反馈DAC。每一级的输出都被下一级用作输入的一部分,从而形成级联结构。最后一级的输出经过一个数字误差校正滤波器(DECF),以消除前面各级产生的量化噪声。MASH III调制器的数学模型相对复杂,涉及到多级Σ-Δ调制器的联合分析和数字滤波器的设计。

       通过精心设计的噪声整形和误差消除机制,MASH III调制器能够在保持高分辨率的同时,显著降低带内噪声。

4.5 基于Sigma-Delta和MASH III的频率合成器

        结合Σ-Δ调制器和MASH III调制器的频率合成器,通常用于实现高分辨率的频率控制和低噪声性能。这种合成器可以用于各种应用,包括无线通信、音频处理和传感器接口。基于Σ-Δ和MASH III的频率合成器通常包括一个相位累加器、一个Σ-Δ调制器、一个MASH III调制器和一个DAC。

         相位累加器根据所需的频率生成相位值,这些值被Σ-Δ调制器转换为高速数据流。然后,MASH III调制器对这些数据流进行进一步处理,以消除量化噪声并提高分辨率。最后,DAC将这些数字信号转换为模拟信号。

        基于Sigma-Delta和MASH III调制器的频率合成器结合了两种先进技术的优势,提供了高分辨率和低噪声的性能。这种合成器在无线通信、音频处理和传感器接口等领域具有广泛的应用前景。通过精心设计和优化,可以实现出色的杂散性能、快速的频率切换和低功耗操作。

5.算法完整程序工程

OOOOO

OOO

O

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

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

相关文章

Django(五)

员工管理系统(部门管理) 1.新建项目 2.创建app python manage.py startapp app012.1 注册app 3. 设计表结构(django) from django.db import modelsclass Department(models.Model):"""部门表"""title models.CharFiel…

sentinel相关问题及答案(2024)

数据结构和算法 1、什么是哨兵值?它在算法中是如何使用的? 哨兵值是在计算中用作标记或信号的特殊值,通常用于指示数据结构的边界或结束,或者作为检测特定条件的触发器。在算法中,哨兵值的使用可以简化代码并提高效…

熟悉HBase常用操作

1. 用Hadoop提供的HBase Shell命令完成以下任务 (1)列出HBase所有表的相关信息,如表名、创建时间等。 启动HBase: cd /usr/local/hbase bin/start-hbase.sh bin/hbase shell列出HBase所有表的信息: hbase(main):001:0> list(2)在终端输出指定表的所有记录数据。 …

数据通讯平台建设方案(物联网数据采集平台)

1.数据通讯平台 软件开发全资料获取:软件项目开发全套文档下载_软件项目技术实现文档-CSDN博客 1.1.1.系统概述 对不同的数据协议、数据模式进行采集适配。基于XX智慧平台统一数据交换标准,与第三方系统对接,实现数据交换;实现不…

【金猿CIO展】是石科技CIO侯建业:算力产业赋能,促进数字经济建设

‍ 侯建业 本文由是石科技CIO侯建业撰写并投递参与“数据猿年度金猿策划活动——2023大数据产业年度优秀CIO榜单及奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 是石科技(江苏)有限公司成立于2021年,由国家超级计算无锡中心与…

ECharts 实现省份在对应地图的中心位置

使用 ECharts 下载的中国省市区的json文件不是居中的(如下图所示),此时需要修改json文件中的 cp 地理位置,设置成每个省份的中心位置 {"type": "FeatureCollection","features":[{ "type": "Feature"…

flask web学习之模板(二)

文章目录 一、模板结构组织1.1 局部模板1.2 宏1.3 模板继承 二、模板进阶2.1 空白控制2.2 加载静态文件2.3 消息闪现2.4 自定义错误页面2.5 在js和css中使用Jinja2 一、模板结构组织 1.1 局部模板 当多个独立模板中都会使用同一块HTML代码时,我们可以把这部分代码…

牛客刷题:BC45 小乐乐改数字(中等)

自我介绍:一个脑子不好的大一学生,c语言接触还没到半年,若涉及到效率等问题,各位都可以在评论区提出见解,谢谢啦。 该账号介绍:此帐号会发布游戏(目前还只会简单小游戏)&#xff0c…

如何在 NestJS 中使用 TypeORM 实现多数据库连接配置

前言 当你打算在一个 NestJS 应用中操作多个数据库时,TypeORM 提供了优雅而强大的解决方案。在本教程中,我们将一步步了解如何在 NestJS 项目中配置 TypeORM 以使用多个数据库。 实现步骤 一、创建 NestJS 项目 如果你还没有一个 NestJS 项目&#x…

P9 视频码率及其码率控制方式

前言 从本章开始我们将要学习嵌入式音视频的学习了 ,使用的瑞芯微的开发板 🎬 个人主页:ChenPi 🐻推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ 🔥 推荐专栏2: 《Linux C应用编程(概念类)_C…

《微信小程序开发从入门到实战》学习七十五

6.8 文件API 6.8.4 删除文件API 使用wx.removeSavedFile可删除小程序中保存的本地文件。示例代码如下: // 获取文件列表 wx.getSavedFileList({ success(res) { if (res.fileList.length > 0) { // 删除第一个文件 wx.removeSavedFile({ filePath: res.fileLis…

react中使用 react-draggable 问题总结

react-draggable 是在使用 React 时经常用到的拖拽库,不过在使用时,下面是一些常见的问题,做此记录 1、在移动端中使用 react-draggable 进行拖拽操作时,在拖拽内部onClick事件是失效的 解决方案:使用onTouchStart来替换onClick事…

外包做了1个月,技术退步一大半了。。。

先说一下自己的情况,本科生,20年通过校招进入深圳某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

Doris 在工商信息商业查询平台的湖仓一体建设实践(02)

信息服务行业可以提供多样化、便捷、高效、安全的信息化服务,为个人及商业决策提供了重要支撑与参考。本文以某工商信息商业查询平台为例,介绍其从传统 Lambda 架构到基于 Doris Multi-Catalog 的湖仓一体架构演进历程。同时通过一系列实践,展示了如何保证数据的准确性和实时…

Java课程设计个人博客

目录 引言:在此说明在本次课设过程中所遇到的困难! 一、项目搭建的问题 Q1:Web项目应用啥么编译器编写? Q2:如何创建Web项目(MAVEN)? Q3:Tomcat服务器开头控制台显示乱码如何解决? Q4:Tomcat服务器怎么设置项目的…

2024最新腾讯云CVM服务器和轻量应用服务器有什么区别?

腾讯云轻量服务器和云服务器CVM该怎么选?不差钱选云服务器CVM,追求性价比选择轻量应用服务器,轻量真优惠呀,腾讯云服务器网txyfwq.com活动 https://curl.qcloud.com/oRMoSucP 轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元…

过滤器和拦截器

上篇文章我们学习了 Session 认证和 Token 认证,这篇我们来学习一下过滤器和拦截器,过滤器和拦截器在日常项目中经常会用到。 一、过滤器 1.1、理论概念 过滤器 Filter 是 JavaWeb 三大组件(Servlet、Filter、Listener)之一&am…

Mac 环境多JDK安装与切换

一、下载jdk 去Oracle官网上下载想要安装的jdk版本,M芯片选择arm架构的.bmg格式的文件。 https://www.oracle.com/java/technologies/downloads/。 二、安装jdk 2.1 双击下载的文件,安装步骤一步步点继续就好。 2.2 安装完成后会在/Library/Java/JavaV…

【Linux Shell】9. 流程控制

文章目录 【 1. if else 判断 】1.1 if1.2 if else1.3 if elif else1.4 实例 【 2. case 匹配 】【 3. 循环 】3.1 for 循环3.2 while 循环3.3 until 循环3.4 无限循环3.5 跳出循环3.5.1 break 跳出所有循环3.5.2 continue 仅跳出当前循环 【 1. if else 判断 】 1.1 if fi 是…

国际新产品开发专业认证-NPDP

👑NPDP认证是美国产品开发管理协会(PDMA)所发起的新产品开发专业认证,是国际公认的wei一的新产品开发专业认证。 ✍🏻NPDP考试每年考2次,分别在每年的5月和11月。考试一共200道单选题,做对150道及格通过考试。 &#x…