def TBGenDeclarations():
    """
	Return a comment string for simple TBGen scenario comment.
	"""
    return """
-- ########### TBGEN signals ###########################################################
type EMU_INDEXES is (
CONTROLLER,
-- Add here generic emulators you need in your testbench
EMU_GPIO,
EMU_PATTERN_GENERATOR
);

-- For each emulator (except controller), use following syntax to get its index in the type (to update)
constant EMU_GPIO_IND              : integer := EMU_INDEXES'pos(EMU_GPIO);
constant EMU_PATTERN_GENERATOR_IND : integer := EMU_INDEXES'pos(EMU_PATTERN_GENERATOR);

-- NB_EMU should take the value of the highest index of the type (to update)
constant NBEMU : integer := EMU_PATTERN_GENERATOR_IND;

-- Semaphores useful for TBGEN emulators synchronization with scheduler
signal ArraySemaphore : t_ArraySemaphore(NBEMU downto 1);
signal ArraycontSigs  : std_logic_vector(NBEMU downto 1) := (others => '1');

-- Stimulis files paths (to update)
constant STIMULI_CTRL     : string := "./files_stimulis/" & scenario & "_" & mode & "/Scheduler.txt";
constant STIMULI_GPIO     : string := "./files_stimulis/" & scenario & "_" & mode & "/GPIO.txt";
constant STIMULI_PATTERN_GENERATOR     : string := "./files_stimulis/" & scenario & "_" & mode & "/PATTERN_GENERATOR.txt";

-- GPIO signals, directly fed by data customized in emuGPIO_TSA_pkg
signal gpio1 : std_logic_vector(NB_GPIO-1 downto 0)   := gpio_init;

"""
