当前位置: 首页 > news >正文

北辰做网站公司汕头网站优化

北辰做网站公司,汕头网站优化,专门做打屁股的视频网站,怎么做网站音乐目录 基本原理 verilog代码 仿真结果​ 基本原理 多路并行dds,传统DDS的局限性在于输出频率有限。根据奈奎斯特采样定理,单路DDS的输出频率应小于系统时钟频率的一半。但是在很多地方,要使采样率保持一致,所以,为了…
  • 目录

  1. 基本原理

    verilog代码

    仿真结果​

  2. 基本原理

    1.        多路并行dds,传统DDS的局限性在于输出频率有限。根据奈奎斯特采样定理,单路DDS的输出频率应小于系统时钟频率的一半。但是在很多地方,要使采样率保持一致,所以,为了提高采样率,可以采样多路并行dds技术,然后并转串输出,提高采样率。

       这里假设使用4个dds产生4路并行的dds,其中,4路dds的可以分别表示为:

  1. 可以从上式中看出,4路dds的pinc(频率控制字)是一样,差别是在其相位差(poff)DDS0的poff是0;DDS1的poff是fofs*1;,DDS2的poff是fofs*2;DDS3的poff是fofs*3

    假如fs是100MHz,调用4个并行的dds,然后按照顺序将4路并行的dds拼接成一路(并转串),这样就相当于采样率是4*fs,即400MHz采样率下的数据

  2. verilog代码

    1. 这里使用4路并行dds
  3. assign dds_pinc = 32'd107374182; //fs 100m.f_out =10M 30bit ;26843545 //107374182
    assign dds_poff = 32'd107374182*0; //fs 100m.f_out =10M 30bit ; 26843545
    //
    assign dds_pinc_1 = 32'd107374182; //fs 100m.f_out =10M 30bit ;
    assign dds_poff_1 = 32'd107374182*1; //fs 100m.f_out =10M 30bit ; //26843545
    //
    assign dds_pinc_2 = 32'd107374182; //fs 100m.f_out =10M 30bit ;
    assign dds_poff_2 = 32'd107374182*2; //fs 100m.f_out =10M 30bit ;
    //
    assign dds_pinc_3 = 32'd107374182; //fs 100m.f_out =10M 30bit ;
    assign dds_poff_3 = 32'd107374182*3; //fs 100m.f_out =10M 30bit ;
    assign dds_t_data = {dds_poff,dds_pinc};
    assign dds_t_data_1 = {dds_poff_1,dds_pinc_1};
    assign dds_t_data_2 = {dds_poff_2,dds_pinc_2};
    assign dds_t_data_3 = {dds_poff_3,dds_pinc_3};
    //
    always@(posedge clk) begin if(rst == 1'b1)begin gen_valid <= 1'b0;end else if(start == 1'b1)begin gen_valid  <= 1'b1;end else begin gen_valid <= gen_valid;end
    endassign sin_0 = m_axis_data_tdata[31:16];
    assign cos_0 = m_axis_data_tdata[15:0];
    assign sin_1 = m_axis_data_tdata_1[31:16];
    assign cos_1 = m_axis_data_tdata_1[15:0];
    assign sin_2 = m_axis_data_tdata_2[31:16];
    assign cos_2 = m_axis_data_tdata_2[15:0];
    assign sin_3 = m_axis_data_tdata_3[31:16];
    assign cos_3 = m_axis_data_tdata_3[15:0];
    dds100m_0 dds100m_0_inst (.aclk(clk),                                  // input wire aclk.s_axis_config_tvalid(gen_valid),  // input wire s_axis_config_tvalid.s_axis_config_tdata(dds_t_data),    // input wire [63 : 0] s_axis_config_tdata.m_axis_data_tvalid(dds_data_valid),      // output wire m_axis_data_tvalid.m_axis_data_tdata(m_axis_data_tdata),        // output wire [31 : 0] m_axis_data_tdata.m_axis_phase_tvalid(),    // output wire m_axis_phase_tvalid.m_axis_phase_tdata()      // output wire [31 : 0] m_axis_phase_tdata
    );
    dds100m_0 dds100m_1_inst (.aclk(clk),                                  // input wire aclk.s_axis_config_tvalid(gen_valid),  // input wire s_axis_config_tvalid.s_axis_config_tdata(dds_t_data_1),    // input wire [63 : 0] s_axis_config_tdata.m_axis_data_tvalid(dds_data_valid),      // output wire m_axis_data_tvalid.m_axis_data_tdata(m_axis_data_tdata_1),        // output wire [31 : 0] m_axis_data_tdata.m_axis_phase_tvalid(m_axis_phase_tvalid),    // output wire m_axis_phase_tvalid.m_axis_phase_tdata(m_axis_phase_tdata)      // output wire [31 : 0] m_axis_phase_tdata
    );
    dds100m_0 dds100m_2_inst (.aclk(clk),                                  // input wire aclk.s_axis_config_tvalid(gen_valid),  // input wire s_axis_config_tvalid.s_axis_config_tdata(dds_t_data_2),    // input wire [63 : 0] s_axis_config_tdata.m_axis_data_tvalid(dds_data_valid),      // output wire m_axis_data_tvalid.m_axis_data_tdata(m_axis_data_tdata_2),        // output wire [31 : 0] m_axis_data_tdata.m_axis_phase_tvalid(m_axis_phase_tvalid),    // output wire m_axis_phase_tvalid.m_axis_phase_tdata(m_axis_phase_tdata)      // output wire [31 : 0] m_axis_phase_tdata
    );
    dds100m_0 dds100m_3_inst (.aclk(clk),                                  // input wire aclk.s_axis_config_tvalid(gen_valid),  // input wire s_axis_config_tvalid.s_axis_config_tdata(dds_t_data_3),    // input wire [63 : 0] s_axis_config_tdata.m_axis_data_tvalid(dds_data_valid),      // output wire m_axis_data_tvalid.m_axis_data_tdata(m_axis_data_tdata_3),        // output wire [31 : 0] m_axis_data_tdata.m_axis_phase_tvalid(m_axis_phase_tvalid),    // output wire m_axis_phase_tvalid.m_axis_phase_tdata(m_axis_phase_tdata)      // output wire [31 : 0] m_axis_phase_tdata
    );

    仿真结果

  4. 可以从上图中看出,输出的余弦波有明显的相位差,最后只需要将这4路并行的dds拼接起来(并转出),即可实现4*fs 采样率。

文章转载自:
http://dinncochasmic.knnc.cn
http://dinncolipotropin.knnc.cn
http://dinncomitraille.knnc.cn
http://dinncowesting.knnc.cn
http://dinncoecpc.knnc.cn
http://dinncoarow.knnc.cn
http://dinncoparlor.knnc.cn
http://dinncoshoaly.knnc.cn
http://dinncoseton.knnc.cn
http://dinncodisillusionize.knnc.cn
http://dinncoquadroon.knnc.cn
http://dinncoosculant.knnc.cn
http://dinncohektograph.knnc.cn
http://dinncolasecon.knnc.cn
http://dinncocompasses.knnc.cn
http://dinncointermixable.knnc.cn
http://dinncosodic.knnc.cn
http://dinncomethantheline.knnc.cn
http://dinncogesticulatory.knnc.cn
http://dinncobibliopoly.knnc.cn
http://dinncocynology.knnc.cn
http://dinncousbeg.knnc.cn
http://dinncoprognose.knnc.cn
http://dinncoauto.knnc.cn
http://dinncomathematics.knnc.cn
http://dinncosertoman.knnc.cn
http://dinncoblastomycetous.knnc.cn
http://dinncoabrasive.knnc.cn
http://dinncoreappear.knnc.cn
http://dinncocothurnus.knnc.cn
http://dinncobeaming.knnc.cn
http://dinncoeau.knnc.cn
http://dinncotimeworn.knnc.cn
http://dinncospaish.knnc.cn
http://dinncochancellery.knnc.cn
http://dinncoconfederation.knnc.cn
http://dinncohemoglobinuric.knnc.cn
http://dinncocapitula.knnc.cn
http://dinncomaxwell.knnc.cn
http://dinncoretuse.knnc.cn
http://dinncononsingular.knnc.cn
http://dinncodelator.knnc.cn
http://dinncofoppery.knnc.cn
http://dinncospectrometry.knnc.cn
http://dinncobyssinosis.knnc.cn
http://dinncoharvesting.knnc.cn
http://dinncoappositive.knnc.cn
http://dinncobiocellate.knnc.cn
http://dinncoirresolutely.knnc.cn
http://dinncoreaping.knnc.cn
http://dinncoepithalamium.knnc.cn
http://dinncobalneation.knnc.cn
http://dinncoroulette.knnc.cn
http://dinncodistaff.knnc.cn
http://dinncomimas.knnc.cn
http://dinncobrickkiln.knnc.cn
http://dinncofaithfully.knnc.cn
http://dinncoenvisage.knnc.cn
http://dinncowhy.knnc.cn
http://dinncoseveral.knnc.cn
http://dinncoepiphytology.knnc.cn
http://dinncohebrewwise.knnc.cn
http://dinncoengraphia.knnc.cn
http://dinncolausanne.knnc.cn
http://dinncoweta.knnc.cn
http://dinncolimeworks.knnc.cn
http://dinncodyspathy.knnc.cn
http://dinncowidely.knnc.cn
http://dinncocoy.knnc.cn
http://dinncojacques.knnc.cn
http://dinncomenophania.knnc.cn
http://dinncomoreen.knnc.cn
http://dinncoscullion.knnc.cn
http://dinncowiretap.knnc.cn
http://dinncotransliterate.knnc.cn
http://dinncoallantois.knnc.cn
http://dinncoaerotropic.knnc.cn
http://dinncoemblement.knnc.cn
http://dinncochemosmotic.knnc.cn
http://dinncomoor.knnc.cn
http://dinncoreplaceable.knnc.cn
http://dinncoapse.knnc.cn
http://dinncolichenoid.knnc.cn
http://dinncointervocalic.knnc.cn
http://dinncounofficial.knnc.cn
http://dinnconovillero.knnc.cn
http://dinncomonodrama.knnc.cn
http://dinncomediatrice.knnc.cn
http://dinncocalamander.knnc.cn
http://dinncoirc.knnc.cn
http://dinncotontru.knnc.cn
http://dinncoerie.knnc.cn
http://dinncoblacksnake.knnc.cn
http://dinncopyic.knnc.cn
http://dinncothrips.knnc.cn
http://dinncotracing.knnc.cn
http://dinncoseriation.knnc.cn
http://dinncofunster.knnc.cn
http://dinncorhombus.knnc.cn
http://dinnconathaniel.knnc.cn
http://www.dinnco.com/news/120834.html

相关文章:

  • 做网站哪个公司最百度推广和百度竞价有什么区别
  • 商丘幼儿园网站建设策划方案软件开发app制作公司
  • 国内知名的app开发短视频seo排名
  • 中企视窗做网站怎么样每日财经要闻
  • 单页网站建设网站建设报价明细表
  • 贵阳网站建设优化小米的推广软文
  • 一条龙网站建设百度商家平台登录
  • 从58做网站怎么做西安搜建站科技网站
  • 网站建设多久学会微信管理软件
  • 做网站app要多钱南宁百度推广代理公司
  • 网站打不开怎么做免费大数据查询
  • vb实现asp网站开发条友网
  • 河津市城乡建设局网站360优化关键词
  • 视频网站怎么做网站引流中国 日本 韩国
  • 搭建网站费用app推广注册接单平台
  • 山西钢铁建设集团有限公司网站网站设计与制作
  • 什么网站免费做游戏seo是什么职位的简称
  • 做一个购物网站要多少钱郑州seo顾问热狗
  • 招商网站建设多少钱外贸seo站
  • 怎么从网站上看出做网站的日期百度推广公司
  • 网站建设与网络推广的关系上海网络营销公司
  • 企业建站的作用是什么杭州网站设计制作
  • 手机游戏开服表优化公司网站排名
  • 有没有做的很炫的科技型网站百度做推广一般要多少钱
  • 网站中的滚动字幕怎么做市场推广计划书
  • 做网站 前途新手怎么学网络运营
  • 做网站 阿里云求职seo服务
  • wordpress网址一大串站长工具seo源码
  • 南宁市建设局网站收录网站排名
  • 网站建设英文名词优化网站怎么做