微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 开始用fpga写adc 100M 8bit 数据采集控制器

开始用fpga写adc 100M 8bit 数据采集控制器

时间:10-02 整理:3721RD 点击:
开始先写一个adc的控制模块,大家帮帮忙看看!后面的再说。

第一个问题,我晶振是50M的,io口需要一个50MHZ的时钟信号,能不能用assign clkio=clk;阿?

要不加个OBUF?

回复得信元

小编好人,谢谢

实验室的女生,伤不起阿!adc的控制不难,但是与fifo结合起来就有点麻烦!控制部分时序我贴出来了。fifo存储部分还在看,希望有大神帮忙呢!感激不尽阿
]



module adc_save(clk,ioclk,datain,pd,rst_n);
input clk,rst_n;
input [7:0]datain;
output ioclk,pd;
reg ioclk,pd;
//reg [7:0]count;
reg [3:0]cnt;
reg [7:0]data_t;//temp_data

///////////////////initial

///////////////////
assign ioclk=clk;
always (posedge ioclk,negedge ioclk,negedge rst_n)
  begin
    if (!rst_n)
      begin
        pd<=0;
        cnt<=0;
        state<=sample;
      end
    case(state)
    sample:
       begin
         if (!ioclk)
           begin data_t<=datain;state<=save;end
         else begin state<=sample; end  
       end
    save:
      begin
        if (ioclk)
          begin
          ...
          end
      end   
  end
  
endmodule

ADC的时钟从哪里来的,要注意以下时钟同步的问题

adc  的时钟,就是阿!assign  ioclk=clk ,(50MHZ)

能不能用看你PCB是怎么做的,如果你把ADC的CLK接到了FPGA上那就可以这么用,不过最好是用PLL搞一下,这样相位会比较好弄

谢谢楼上。

是接到fpga的io上的。感觉用pll一下,相位考虑的好点。程序的健壮性好点。


为什么要用FIFO缓数据?要做不同时钟频率的数据读写吗?


恩,这两天出去的,没写程序。传过来的数据,要送给dsp处理。知道dsp core的处理速度,没那么快呢!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top