So try to calculate it. 10Msa,50us/div. Signal 1kHz. Number of samples 3000. Sampling starts at a random time and only 3000 samples are taken, do you think that one whole period of the signal will appear in those 3000 samples? Also calculate that if the trigger is at 50% memory, you need the Trigger value and edge type settings to be in the last 1500 samples.
Hi,
I analyzed the EF2L45 FPGA firmware to understand how AUTO TRIGGER works. I don’t see the FPGA measuring the signal period — it only detects the edge.
After reset, the FPGA starts writing to memory from address 0. When the number of stored samples is greater than *pretrigger_samples*, the trigger on the selected rising/falling edge is enabled.
The FPGA writes to memory in a circular way until it detects the edge or until register *time_base_cnt* expires.
If the edge is detected, it saves the current memory address into the*trigger_address* register and continues writing until *posttrigger_samples* are stored.
The DSO firmware should read memory
from
*trigger_address - pretrigger_samples*
to
*trigger_address + posttrigger_samples*.
The MEMORY setting (3000–12000) and Trigger position (25–75%) only change the number of samples before and after the trigger.I don’t understand why setting Memory to 12,000 and Trigger position to 25% causes AUTO TRIGGER not to work correctly.
The issue is likely in how the DSO firmware reads or processes the memory. I tried making various modifications to the EF2L45 FPGA firmware, but the result is always the same — AUTO TRIGGER still does not work correctly.
If necessary, I can modify the EF2L45 FPGA firmware to make it better work. Could you please check how AUTO TRIGGER works in the FW DSO and send me a description of how AUTO TRIGGER works in the DSO firmware? Thank you.