毕业论文

打赏
当前位置: 毕业论文 > 电子通信 >

基于FPGA的多普勒滤波器设计+文献综述(6)

时间:2017-02-27 17:15来源:毕业论文
图3.3.2 Quartus II仿真结果 4 AD采样设计 4.1 AD7980芯片介绍 AD采样,即将时间和幅值上都连续的模拟电信号,在采样时钟的作用下,转换为二进制0、1,这些0和


图3.3.2  Quartus II仿真结果
4     AD采样设计
4.1  AD7980芯片介绍
   AD采样,即将时间和幅值上都连续的模拟电信号,在采样时钟的作用下,转换为二进制0、1,这些0和1就构成了数字信号。
采样时选用AD7980芯片,该芯片是一种快速、低功耗、单电源的16位模数转换芯片,采用2.5V模拟单电源供电,取其高8位作为FIR滤波器的输入信号。该芯片共有10个引脚:
REF:输入的参考电压(相对于地),范围是2.4V-5.1V。
VDD:电源输入
IN+:模拟输入端,其电压是相对于IN-的。IN+与IN-的差值电压等于VREF。
GND:接地端
CNV:转换输入端,该端口有很多功能。当输入上升沿时,控制该芯片转换并选择界面模式(part、chain or  )。当选择 模式时,STD在CNV为低电平时输出;当选择chain模式时,数据必须在CNV为高电平时读入。
STD:串行数据输出端。转换结果在该端口输出,且与SCK同步。
SCK:串行数据时钟输入端。当选择part模式时,转换结果有该时钟控制。
SDI:串行数据输入端。
VIO:输入/输出端口供电端,可工作于1.8V,2.5V,3V或5V电压。
该芯片工作时的模式图如下图4.1.1所示:
 
图4.1.1  AD7980芯片工作模式图
由图4.1.1可以发现,在cnv的下降沿SDO开始输出数据最高位,其他位将在SCK的下降沿输出。经过16 SCK的下降沿或CNV的变高时,以较早者为准,SDO的回报高阻抗。
4.2  采样率计算及控制程序设计
采样率要满足如下要求:
(1)  
(2)
由于我们要设计的FIR滤波器的输入为8位数据,所以采样输出也需设计为8位。用Verilog编写的对上述芯片的控制程序如下:
module sample(clk_20MHz,SDO,data_ad2,data_ad,rst,data_en,ad_cnv);
input clk_20MHz;
input SDO;
output[15:0] data_ad;
output[7:0]  data_ad2;
reg[15:0]  data_ad;
reg[2:0] state;
input rst;
input ad_cnv;
reg[1:0] SDO_state;
parameter hold=1,ready=2,reap=4;
reg[4:0] count;
output data_en;//indictor when reap is completion
reg data_en;
reg[1:0] ad_cnv_data;
always @(negedge clk_20MHz or negedge rst or posedge ad_cnv)
begin
  if ((!rst)||ad_cnv)
   begin  
    state<=hold;
    count<=5'b0;
    SDO_state<=2'b11;
    data_ad<=16'b0;
    data_en<=0;
    ad_cnv_data<=2'b11;
   end
   else      
      case(state)
        hold:
        begin      data_ad<=16'b0;
                   if(ad_cnv_data==2'b10)
                    begin state<=ready;
                          ad_cnv_data<=2'b00;
                     end
                   else begin
                          ad_cnv_data<={ad_cnv_data[0],ad_cnv}; // depending on ad7980 datasheet 基于FPGA的多普勒滤波器设计+文献综述(6):http://www.youerw.com/tongxin/lunwen_3506.html
------分隔线----------------------------
推荐内容