Knowledge Base

Welcome to OPAL-RT’s Knowledge Base

OPAL-RT offers a repository of support information for optimal use of its technology.

Please note that OPAL-RT knowledge base is not fully optimized for mobile platforms.

For optimal experience, use a desktop computer.

Reference Number: AA-02059 // Views: 123 // Created: 2022-01-19 09:14:19 // Last Updated: 2022-01-20 05:33:25
General Article
HYPERSIM MMC6: More information about configuration files


In HYPERSIM, IO Configuration and sensor management have two ways:

1. Through IO files, details refer to this KB:

2. IO Interface OPAL-RT Board (IO GUI HYPERSIM 2019.1+):

With provided HYPERSIM MMC6 demo model (Attached to the end of this KB) works with the first methods and it contains the following files:

 hyServMain.cfg /export/local/ssr/hyconfig This file should point to the *.io file /export/local/ssr/hyconfigIO/Sensors configuration 
 VC707_hy_MMC6.opal /export/local/ssr/hyconfigFPGA user configuration file for MMC model 
 VC707_hy_MMC_v6_Bitstream.opal /export/local/ssr/hyconfigFPGA bitstream configuration file for MMC model  (matched with .bin file)
 MMC_Config_V3.opal /export/local/ssr/hyconfig For MMC license control

Details regarding to HYPERSIM MMC and demo MMC-HVDC please refer to attached OP203_8_MMC_Hypersim_201907.pdf

DIL Structure

Compare to general IO file system, HYPERSIM MMC model has an extra file MMC_Config_V3.opal for license control:

Fig. 1 HYPERSIM DIL structure

The DIL file structure showing in details in the files were highlighted in yellow.

Fig. 2 HYPERSIM MMC6 configuration file relationships

In the .io file, it specified:

  • DataInProcess interact with the Model block setting:

1. Sensor number enable sensors in sensor form assign IO type and IO number
2. MMC_Param_Data_ x _ y Details about how to proper set it please refer to

  • dataInExchanger transfers the sensor and MMC Parameter information to the FPGA through the variables, which are the ports used in the corresponding bitstream (.bin), defined in the bitstream.opal, :

Fig. 3 A glance of MMC FPGA model (1 converter)

Details for the MMC FPGA model please refer to the training slides module 5 in the installation folder: C:\OPAL-RT\MMC\v2.6.0\docs\pdf\training

1. DataIn/DataOut

2LoadIn_x : receives system parameters from CPU to FPGA. LoadIn_0,1 are the ports for 1 converter, the demo contains another converter that LoadIn_2,3 is present

3. MMCInfo_x  Specify 3 license feature (licname):



Normally 2 items specified for 1 MMC block (include Valve and Valve controller): 


The Demo provided is HVDC and contains 2 MMCs (2 converter in the bin file), so an extra group of MMCinfo is also specified as MMCInfo_2, MMCInfo_3.

The XSG_CELLS_PER_VALVE licCount should always be modified to the same value authorized in the license. 

The XSG_MMC_VALVES and XSG_MMC_VALVE_CONTROLLERS licCount should be set to 3 for STATCOM and 6 for MMC.

In authorized license, the value of XSG_MMC_VALVES and XSG_MMC_VALVE_CONTROLLERS are the total number allow to use in one model. For each time MMCInfo_x is called in the .io file, it's corresponding licCount value will be checked and added together. The sum should be smaller than the value allowed in the license.


in Fig. 4. The XSG_CELLS_PER_VALVE licCount in MMCInfo_x (x=0,1,2,3) should all be changed from 128 to 1600, which is the value allowed in the license.

The licCount for XSG_MMC_VALVES and XSG_MMC_VALVE_CONTROLLERS should be set to 3 for STATCOM and 6 for MMC.

So in total, MMCInfo_0,1,2,3 is called one time, 6 MMC Valves *2 (MMCInfo_0,2) < 36 and 6 MMC Valve controllers*2 (MMCInfo_1,3) < 36.