Modules

Driver

class basil.HL.gpio.gpio(intf, conf)[source]

GPIO interface

reset()[source]

Soft reset the module.

Driver

class basil.HL.spi.spi(intf, conf)[source]

Implement serial programming interface (SPI) driver.

get_data(size=None, addr=None)[source]

Gets data for incoming stream

get_en()[source]

Gets state of enable.

get_repeat()[source]

Gets Number of repetitions of sequence with delay ‘wait’ (if 0 –> repeat forever)

get_size()[source]

Get size of shift register length

get_wait()[source]

Gets time delay between repetitions in clock cycles

is_done()[source]

Get the status of transfer/sequence.

reset()[source]

Soft reset the module.

set_data(data, addr=0)[source]

Sets data for outgoing stream

set_en(value)[source]

Enable start on external EXT_START signal (inside FPGA)

set_repeat(value)[source]

If 0: Repeat sequence forever Other: Number of repetitions of sequence with delay ‘wait’

set_size(value)[source]

Number of clock cycles for shifting in data ex. length of matrix shift register (number of pixels daisy chained)

set_wait(value)[source]

Sets time delay between repetitions in clock cycles

start()[source]

Starts the shifting data

Driver

class basil.HL.seq_gen.seq_gen(intf, conf)[source]

Sequencer generator controller interface for seq_gen FPGA module.

Driver

class basil.HL.pulse_gen.pulse_gen(intf, conf)[source]

Pulser generator

get_en()[source]

Return info if pulse starts with a fixed delay w.r.t. shift register finish signal (true) or if it only starts with .start() (false)

set_delay(value)[source]

Pulse delay w.r.t. shift register finish signal [in clock cycles(?)]

set_en(value)[source]

If true: The pulse comes with a fixed delay with respect to the external trigger (EXT_START). If false: The pulse comes only at software start.

set_repeat(value)[source]

Pulse repetition in range of 0-255

set_width(value)[source]

Pulse width in terms of clock cycles

start()[source]

Software start of pulse at random time

Driver

class basil.HL.seq_rec.seq_rec(intf, conf)[source]

Sequencer receiver controller interface for seq_rec FPGA module.

Driver

class basil.HL.cmd_seq.cmd_seq(intf, conf)[source]

FEI4 Command Sequencer Controller Interface for cmd_seq FPGA module.

Driver

class basil.HL.fei4_rx.fei4_rx(intf, conf)[source]

FEI4 receiver controller interface for fei4_rx FPGA module

Driver

class basil.HL.fast_spi_rx.fast_spi_rx(intf, conf)[source]

Fast SPI interface

reset()[source]

Soft reset the module.

Driver

class basil.HL.tlu.tlu(intf, conf)[source]

TLU controller interface

Driver

class basil.HL.tdc_s3.tdc_s3(intf, conf)[source]

TDC controller interface

Driver

class basil.HL.sram_fifo.sram_fifo(intf, conf)[source]

SRAM FIFO controller interface for sram_fifo FPGA module.

property FIFO_INT_SIZE

Get FIFO size in units of integers (32 bit).

fifo_sizeint

FIFO size in units of integers (32 bit).

get_FIFO_INT_SIZE()[source]

Get FIFO size in units of integers (32 bit).

fifo_sizeint

FIFO size in units of integers (32 bit).

get_data()[source]

Reading data in SRAM.

arraynumpy.ndarray

Array of unsigned integers (32 bit).

get_fifo_int_size()[source]

Deprecated Get FIFO size in units of integers (32 bit).

fifo_sizeint

FIFO size in units of integers (32 bit).

get_fifo_size()[source]

Deprecated Get FIFO size in units of bytes (8 bit).

fifo_sizeint

FIFO size in units of bytes (8 bit).

get_read_error_counter()[source]

Deprecated Get read error counter.

fifo_sizeint

Read error counter (read attempts when SRAM is empty).

get_size()[source]

Deprecated

Driver

class basil.HL.fadc_rx.fadc_rx(intf, conf)[source]

Fast ADC channel receiver

set_align_to_sync(value)[source]

Align data taking to a synchronization signal, reset signal is the synchronization signal (hard coded connection in Verilog source code)

set_single_data(value)[source]

Driver

class basil.HL.i2c.i2c(intf, conf)[source]

Implement master i2c programming interface driver.

property is_ready
raises ExceptionType

IOError

Transfer not acknowledged.

read(addr, size)[source]

Read access.

Parameters
  • addr (char) – i2c slave address

  • size (int) – size of transfer

Returns

data byte array

Return type

array.array(‘B’)

write(addr, data)[source]

Write access.

Parameters
  • addr (char) – i2c slave address

  • data (iterable) – array/list of bytes

Return type

None