保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

基于Verilog HDL设计的自动数据采集系统


DL语言等。其中VerilogHDL语言具有结构清晰、文法简明、功能强大、高速模拟和多库支持等优点,被近90%的半导体公司使用,成为一种强大的设计工具。
  
  3.1用VerilogHDL语言描述MAX196
  
  用VerilogHDL程序描述MAX196模块,可以把模块用于采集系统的仿真,以验证状态机设计的正确性。该模块主要有三个输入信号和一个输出信号,与芯片的控制信号是一致的。程序说明如下:
  
  moduleadc(reset,rd_adc,wr_adc,int_adc);
  
  inputreset,rd_adc,wr_adc;
  
  outputint_adc;
  
  regint_adc;
  
  always@(posedgewr_adcornegedgerd_adcornegedgereset)
  
  begin
  
  if(!reset)int_adc=1;
  
  elseif(rd_adc==0)beginint_adc=1;end
  
  elsebegin#10int_adc=0;end
  
  end
  
  endmodule
  
  3.2用VerilogHDL语言描述自动状态机
  
  自动状态机有三个输入信号和两个输出信号,输入信号中clk由DSP系统输出以控制采样速度,reset信号复位自动状态机,int_adc是A/D芯片转换结束的响应信号;输出信号rd_adc、wr_adc控制A/D芯片的转换开始和数据的读出,以及控制FIFO将数据写入FIFO。程序说明如下:
  
  modulefsm(int_adc,clk,reset,rd_adc,wr_adc);
  
  outputrd_adc,wr_adc;
  
  inputint_adc,clk,reset;
  
  regrd_adc,wr_adc;
  
  
  
  
  reg[1:0]present;
  
  parameterreset_ad=2'h0,start_ad=2'h1,wait_ad=2'h2,read_ad=2'h3;
  
  always@(posedgeclkornegedgereset)
  
  if(reset)beginpresent=reset_ad;rd_adc=1;wr_adc=0;end
  
  else
  
  begin
  
  case(present)
  
  reset_ad:if(rd_adc)
  
  beginpresent=start_ad;wr_adc=1;end
  
  start_ad:if(int_adc)
  
  beginpresent=wait_ad:rd_adc=0;end
  

《基于Verilog HDL设计的自动数据采集系统(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/174920.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。