Instrument configuration
Overview
The config.yml file in a directory indicates the root of an instrument.
Usage
Invoke make with CONFIG=path/to/config.yml.
File content
The instrument configuration file has the following mandatory fields:
name: instrument nameboard: board directory - thePARTfile in a directory indicates the root of a boardmemory: list of addresses referred each as a set ofnameandoffsetcontrol_registers: list of control registersstatus_registers: list of status registerscores: list of FPGA cores directories - thecore_config.tclfile in a directory indicates the root of an FPGA corexdc: list of xdc filesdrivers: list of C++ drivers filesweb: list of web files for the web-based interface
The instrument configuration file has the following optional fields:
parameters: dictionary of parameters used for the memory configurationmodules: list of FPGA modules - the reference must be to theconfig.ymlfile located in the FPGA module directory
Important note
Paths are relative to the root of Koheron SDK directory.
Paths referring to the root of the instrument start with ./.
Example
Overview
name: instrument
board: boards/red-pitaya
Boards are available in Koheron SDK boards directory.
Memory
parameters:
fclk0: 200000000
dac_width: 14
adc_width: 14
n_dac: 2
n_adc: 2
memory:
- name: control
offset: '0x60000000'
range: 4K
- name: status
offset: '0x50000000'
range: 4K
control_registers:
- led
- dac[n_dac]
status_registers:
- adc[n_adc]
Parameters can be used as arguments of the memory addresses and registers.
e.g. adc[n_adc] defines 2 status registers (n_adc = 2).
FPGA
cores:
- fpga/cores/axi_ctl_register_v1_0
- fpga/cores/axi_sts_register_v1_0
- fpga/cores/dna_reader_v1_0
xdc:
- ./constraints.xdc
Cores are available in Koheron SDK fpga/cores directory.
Drivers
drivers:
- server/drivers/common.hpp
- ./driver.hpp
Drivers are available in Koheron SDK server/drivers directory.
Web user interface
web:
- ./web/index.html
- web/koheron.ts
- ./web/instrument.ts
- ./web/app.ts
- ./web/control.ts
- ./web/main.css
Web files are available in Koheron SDK web directory.

