基于Verilog HDL设计的自动数据采集系统
wait_ad:if(rd_adc)
beginpresent=read_ad;wr_adc=0;end
read_ad:if(int_adc)
beginpresent=reset_ad:rd_adc=1;end
endcase
end
endmodule
3.3数据采集系统
MAX196模块和状态机模块组成高层模块——自动采样系统,通过模块实例的调用和端口映射语句实现模块的组合。特别设定输出信号int_adc,可使仿真波形看得更加清楚。程序说明如下:
Modulesimuadc(clk,reset,rd_adc,wr_adc,int_adc);//系统模块
Outputrd_adc,wr_adc,int_adc;
Inputclk,reset;
Regrd_adc,wr_adc,int_adc;
Adcadcmax196(reset,rd_adc,wr_adc,int_adc);//A/D芯片模块
Fsmfsmasp(int_adc,clk,reset,rd_adc,wr_adc);//状态机模块
endmodule
3.4仿真图形
图5为采集系统的时序仿真图。CLK是系统外部时钟,用于控制采样频率;RESET接外部复位信号,可以控制采样的起始时刻;MAX196的WR_ADC、RD_ADC、INT_ADC分别与逻辑芯片EPM7128的控制引脚相连接。仿真图表明,复位后,只要有CLK时钟输出,A/D转换将连续进行,转换数据依次存入FIFO,当FIFO满时,向DSP发出断请求,DSP及时响应并启动DMA高速读入FIFO中的值,由于DSP读入的速度足够快,因此A/D转换并不需要停顿,从而实现实时采样和实时处理。
本文提出的自动采集系统采用CPLD芯片,用硬件描述语言设计自动状态机,实现硬件控制数据采集和存储。目前采集系统应用于DSP应用板卡上,免去了DSP监控A/D芯片的时间,使信号处理系统能高效地完成复杂的随机共振系统的研究。实际应用证明该采集系统工作非常稳定,若采用更高数据转换速度的A/D芯片、频率更高的系统时钟,可以进一步提高系统的数据采集速度。
《基于Verilog HDL设计的自动数据采集系统(第4页)》
本文链接地址:http://www.oyaya.net/fanwen/view/174920.html
beginpresent=read_ad;wr_adc=0;end
read_ad:if(int_adc)
beginpresent=reset_ad:rd_adc=1;end
endcase
end
endmodule
3.3数据采集系统
MAX196模块和状态机模块组成高层模块——自动采样系统,通过模块实例的调用和端口映射语句实现模块的组合。特别设定输出信号int_adc,可使仿真波形看得更加清楚。程序说明如下:
Modulesimuadc(clk,reset,rd_adc,wr_adc,int_adc);//系统模块
Outputrd_adc,wr_adc,int_adc;
Inputclk,reset;
Regrd_adc,wr_adc,int_adc;
Adcadcmax196(reset,rd_adc,wr_adc,int_adc);//A/D芯片模块
Fsmfsmasp(int_adc,clk,reset,rd_adc,wr_adc);//状态机模块
endmodule
3.4仿真图形
图5为采集系统的时序仿真图。CLK是系统外部时钟,用于控制采样频率;RESET接外部复位信号,可以控制采样的起始时刻;MAX196的WR_ADC、RD_ADC、INT_ADC分别与逻辑芯片EPM7128的控制引脚相连接。仿真图表明,复位后,只要有CLK时钟输出,A/D转换将连续进行,转换数据依次存入FIFO,当FIFO满时,向DSP发出断请求,DSP及时响应并启动DMA高速读入FIFO中的值,由于DSP读入的速度足够快,因此A/D转换并不需要停顿,从而实现实时采样和实时处理。
本文提出的自动采集系统采用CPLD芯片,用硬件描述语言设计自动状态机,实现硬件控制数据采集和存储。目前采集系统应用于DSP应用板卡上,免去了DSP监控A/D芯片的时间,使信号处理系统能高效地完成复杂的随机共振系统的研究。实际应用证明该采集系统工作非常稳定,若采用更高数据转换速度的A/D芯片、频率更高的系统时钟,可以进一步提高系统的数据采集速度。
《基于Verilog HDL设计的自动数据采集系统(第4页)》