【数据采集专栏】触发模式的设计

目录

简介

实现原理


简介

单次触发(FiniteTrig):在该触发方式下,仅在搜索到指定的触发条件时,才进行一次触发和采集,然后停止。该触发方式适用于只需要单次采集特定事件并对采集结果进行分析的情况;

正常触发(NormalTrig):在该触发方式下,仅在搜索到指定的触发条件时,才进行触发和采集。该触发方式适用于低重复率信号;

自动触发(AutoTrig):在该触发方式下,如果未到指定的触发条件,将强制进行触发和采集以显示波形。该触发方式适用于未知信号电平或需要显示直流的场景

实现原理

FiniteTrig 单次触发

抓单次瞬态脉冲

抓上电 / 掉电波形

抓单次异常事件

色选机:单次物料测试

NormalTrig 正常触发

低速率、间歇性信号

随机脉冲

不想看到空波形

没触发就不采集,节省资源

AutoTrig 自动触发

调试未知信号

直流信号(不会触发边沿)

示波器必须一直显示波形

找不到触发时强制刷新

module trig_ctrl

(input wire clk,

input wire rst_n,

input wire trig_cond, // 触发条件满足

input wire 1:0 trig_mode,// 00:Finite 01:Normal 10:Auto

output reg capture_en // 采集使能

);

localparam FINITE = 2'b00;

localparam NORMAL = 2'b01;

localparam AUTO = 2'b10;

reg 1:0 state;

reg 23:0 timeout_cnt; // 自动触发超时计数器

always @(posedge clk or negedge rst_n) begin

if(!rst_n) begin

state capture_en timeout_cnt

end

else begin

case(state)

0: begin // 等待触发

timeout_cnt

if(trig_cond) begin

// 检测到真实触发

capture_en state

end

else if(trig_mode == AUTO && timeout_cnt > 1000000) begin

// 自动触发:超时强制采集

capture_en state

end

end

1: begin // 正在采集

capture_en

case(trig_mode)

FINITE: state NORMAL: state AUTO: state

endcase

end

2: begin // 单次触发完成,停止

capture_en

end

endcase

end

end

endmodule

相关推荐
FPGA小迷弟7 小时前
FPGA 应用技术能力的完整闭环(1-4)
fpga开发·dsp开发·fpga·sdr·无线电
Eloudy10 小时前
FPGA 开发与 IC 数字前端设计
fpga开发
tju新生代魔迷12 小时前
Verilog HDL 学习笔记(十八)| 附录C:关键字、系统任务和编译指令
fpga开发
free-elcmacom15 小时前
FPGA学习笔记<1>FPGA的开发流程
fpga开发·硬件工程·hdl
明德扬15 小时前
AD9653单通道波形怎么看?幅度、频率与基础测量入门
学习·fpga开发·fpga
ERROR:9916 小时前
GPT Images 2.5将手稿转时序图效果不佳
fpga开发
尤老师FPGA17 小时前
声学相机介绍
fpga开发
科恒盛远1 天前
ZU902 FMC194 可编程宽带信号源实测
fpga开发·硬件工程·信号处理
大盛供应链·卢生1 天前
哪些国产芯片可以替代进口芯片,哪些替代不了
fpga开发·容器
ALINX技术博客1 天前
跨越 1819 公里,ALINX 携 AI 异构平台、电子后视镜及 HIL 仿真方案亮相深圳国际电子展
ai·fpga开发·汽车