This tutorial explains how to set up and operate the Oscilloscope block in Sci-Compiler on the DT1260 (or similar supported hardware). The Oscilloscope functionality lets you observe analog (and digital) signals directly from within the Sci-Compiler environment, using the Resource Explorer.


1. Instantiating the Oscilloscope Block

  1. Open your project in Sci-Compiler.
  2. From the Toolbox, drag and drop the Oscilloscope block onto the schematic.
  3. Connect the block’s inputs (A0, D0, etc.) to the signals you want to measure.
    • For analog signals, wire a 16-bit data bus into A0.
    • For digital signals, wire single-bit lines into D0, D1, D2, D3.

Schematics of the design
Schematics of the design

Oscilloscope Properties

  • Number of inputs: How many analog channels you want (up to 32).
  • Number of samples per: The size of the capture buffer (e.g. 512, 1024, etc.).
  • Analog Channel Word: Typically 16 bits.
  • Digital Inputs: Choose Enabled if you plan to capture D0–D3 digital lines.

2. Assigning Memory Addresses

After placing and configuring the block:

  1. Go to Page bottom menu → Memory Map.
    Memory Map Menu
    Memory Map Menu
  2. Click Refresh and then Auto Assign.
    • Sci-Compiler assigns a base address for the Oscilloscope registers.
    • You will see something like Oscilloscope_0 under your address list.

Address editor
Address editor


3. Compiling and Programming the Board

  1. Compile your project (Generate Bitstream).
  2. Program the FPGA on the DT1260 (or other device) with the resulting bitstream.

4. Connecting the Signal Under Test

To view a real signal in the oscilloscope:

  1. Physically connect your signal source to an analog input on the DT1260 front panel (for example, CH1).
  2. If your signal is fast or you want precise measurements, set the input impedance to 50 Ω (if supported).

(In many demo setups, a simple pulse or PWM block on the same FPGA design is routed externally via a front-panel connector to provide a test signal.)


5. Opening the Oscilloscope Tool

Once the board is programmed:

  1. Open Resource Explorer in Sci-Compiler.

Locate Resource Explorer link
Locate Resource Explorer link

  1. Make sure you are Connected to the board (via USB/Ethernet).

    Connect to the device DT1260
    Connect to the device DT1260

  2. Under Available Resources, expand OscilloscopeOscilloscope_0.

    Locate oscilloscope
    Locate oscilloscope

  3. Right-click Oscilloscope_0 and select View.

This launches the Oscilloscope window.


6. Configuring the Oscilloscope

OScilloscope Screen
OScilloscope Screen

In the Oscilloscope GUI, you can control:

  1. Channel Selection

    • Check or uncheck Channel 1, Channel 2, etc. to display the desired analog signals.
  2. Trigger Mode

    • Auto: The scope triggers automatically (free running).
    • Single: Captures one event and stops.
    • Normal: Arms the scope and waits for a trigger, then captures.
  3. Trigger Source

    • Free Running: No specific source; triggers periodically.
    • Channel 1 (or other channels): Use an analog threshold on that channel.
    • External: If you connected a trigger signal externally (START pin).
    • Digital x: Trigger on a digital line transition.
  4. Trigger Edge

    • Rising: Trigger on a rising crossing.
    • Falling: Trigger on a falling crossing.
  5. Trigger Level (lsb)

    • Sets the threshold (in ADC counts) for analog triggers.
  6. Decimator

    • Divides the sampling rate. A decimator of 1 = full speed; 2 = half speed, etc.
  7. Pre Trigger (%)

    • Determines how much data is displayed before the trigger point within one capture window.

How Triggers Work

  • Auto (Freerunning)
    The scope continuously captures data without waiting for a specific event. This may cause a waveform to appear “random” or unstable if it’s a periodic signal.

  • Trigger on Channel
    The scope waits until the signal on that channel crosses the Trigger Level on the chosen Trigger Edge, then captures data. This produces a stable waveform display for repetitive signals.


7. Viewing the Waveform

  • Click the Play (▶) button to start the acquisition.
  • Adjust the Trigger Level to catch the amplitude of your signal.
  • If you want a single snapshot, choose Trigger Mode: Single. After capture, the scope will pause until re-armed.

You should now see your analog waveform in the color-coded traces (e.g., Channel 1 in blue, Channel 2 in green).

Example: Triggering on Channel 1

In our example, we will trigger on Channel 1 (analog input) with a Rising Edge trigger.

Externally connect with a Lemo the signal in output from I/O 1 to the channel 1 of the digitizer.

Cable connection
Cable connection

Configure the trigger as follows:

  • Trigger Mode: Auto
  • Trigger Source: Channel 1
  • Trigger Edge: Rising
  • Trigger Level: 2200

Click the Play (▶) button to start the acquisition

Trigger the input signal
Trigger the input signal


8. Additional Tips

  1. Autoscale: You can check AutoScale so the oscilloscope automatically adjusts the vertical scale.
  2. Sample Depth: The maximum number of points displayed equals the configured buffer size (e.g., 1024 samples).
  3. Digital Channels: If you connect D0–D3 signals, you can also see digital waveforms in the same capture window, displayed as 0/1 logic levels.
  4. Software or External Trigger: If you prefer to programmatically arm and trigger the scope, you can write to the registers described in the .json file. The GUI simply offers a friendly front-end.

9. Summary

  1. Add the Oscilloscope block to your design, configure inputs/buffer size.
  2. Assign addresses in the Memory Map.
  3. Compile and Program the board.
  4. Open Resource Explorer and the Oscilloscope GUI.
  5. Set trigger modes, sources, and levels to stabilize your display.
  6. Observe the waveforms in real time.

The Oscilloscope tool provides a convenient way to visualize signals—analog or digital—directly inside Sci-Compiler, making it easier to debug and test designs without needing external measuring equipment.