Конструктор компонента TLM

Сгенерированный компонент TLM имеет следующий прототип функции конструктора:

model_name_usertag_tlm(sc_core::sc_module_name module_name, ...
     eTimingType DefaultTiming = TIMED, 
   eModeType InputDefaultMode = AUTO, eModeType OutputDefaultMode = AUTO);

Где:

  • module_name является sc_core:: тип sc_module_name. Это - вектор символов, который содержит имя экземпляра.

  • DefaultTiming является eTimingType {СИНХРОНИЗИРОВАННЫЙ, UNTIMED}. Это определяет, синхронизирован ли компонент TLM или не синхронизирован в начале симуляции SystemC. По умолчанию компонент инициализирует DefaultTiming к СИНХРОНИЗИРОВАННОМУ, но можно изменить его на UNTIMED. Также во время симуляции, можно изменить синхронизацию компонента TLM путем вызова функционального SetTimingParam (eTimingType Тип).

  • InputDefaultMode является eModeType {MANUAL, АВТОМАТИЧЕСКИЙ}. Это определяет, является ли режим ввода компонента TLM ручным или автоматическим в начале симуляции SystemC (и также после того, как SystemC сбрасывает компонент). По умолчанию компонент TLM инициализирует InputDefaultMode к АВТОМАТИЧЕСКОМУ, но можно изменить его на MANUAL.

  • OutputDefaultMode является eModeType {MANUAL, АВТОМАТИЧЕСКИЙ}. Это определяет, является ли режим вывода компонента TLM ручным или автоматическим в начале симуляции SystemC (и также после того, как SystemC сбрасывает компонент). По умолчанию компонент TLM инициализирует OutputDefaultMode к АВТОМАТИЧЕСКОМУ, но можно изменить его на MANUAL.