RIMB의 특성 정의

Rational® Rhapsody® 구현 블록(RIMB)에서 입력한 오브젝트는 원자 소프트웨어 컴포넌트 유형을 구현할 수 있습니다.

프로시저

  1. 다음 방법 중 하나를 사용하여 Rational Rhapsody 구현 블록을 작성하십시오.
    • ARBMTPackages 카테고리의 패키지에 있는 Rational Rhapsody 구현 블록 다이어그램의 경우 그리기 도구 모음에서 Rational Rhapsody 구현 블록 도구 를 선택하고 그리기 영역에서 다이어그램을 클릭하십시오.
    • ARBMTPackages 카테고리에서 패키지를 마우스 오른쪽 단추로 클릭하고 새로 추가 > AR3x_BMT > RIMB를 선택하십시오.
  2. Rational Rhapsody 구현 블록의 일반 기능을 정의하십시오.
    참고: Rational Rhapsody 구현 블록은 클래스와 유사하므로 기능 창의 일반 탭에서 여러 동일한 필드를 사용합니다. Rational Rhapsody 구현 블록의 일반 탭에 있는 다음 필드는 Rational Rhapsody 구현 블록과 관련하여 설명되거나 해당 구현 블록에만 적용됩니다.
    • 동시성: Rational Rhapsody 구현 블록을 정의할 때 동시성 필드를 활성으로 설정해야 합니다. 이 설정은 해당 Rational Rhapsody 구현 블록에서 입력되는 각 오브젝트와 관련하여 실행 가능 항목을 작성하도록 지정합니다. 실행 가능 항목의 기능은 Rational Rhapsody 구현 블록의 doExecute 메소드입니다.
      • 동시성이 “활성”으로 설정되면 대화 상자의 맨 아래에 활성 정책이 지정되어야 합니다. 활성 정책은 RTE가 RIMB의 “doExecute”를 호출하는 경우를 판별합니다. 정책 필드는 “비동기”이거나 “주기적”입니다. 정책 필드가 “비동기”인 경우에는 액세스 및 활성화 탭에서 실제 활성화 정책을 정의해야 합니다. 아래 내용을 참조하십시오. 정책 필드가 “주기적”인 경우에는 기간 및 지연이 지정되어야 합니다.
      • 동시성이 “순차”로 설정된 경우 RIMB를 여전히 실행 관리자로 설정할 수 있습니다. 이는 해당 RIMB에서 입력한 각 오브젝트에 이벤트 큐가 있으며 해당 상태 차트 및 그 파트를 관리함을 의미합니다. 그러나 동시성이 활성 상태가 아니면 “doExecute”에 적용할 실행 가능 항목이 작성되지 않고 사용자 코드가 호출 여부를 결정합니다.

      원하는 수만큼 활성 오퍼레이션을 RIMB에 추가할 수 있습니다. 새로 추가 기능을 통해 브라우저에서 추가를 수행합니다. 활성 오퍼레이션마다 오퍼레이션을 수행하는 AUTOSAR 실행 가능 항목이 생성됩니다. 상태 차트 실행을 포함하여 RIMB 내부의 모든 동작은 활성 오퍼레이션을 통해 호출됩니다. 코드를 사용하여 활성 오퍼레이션을 구현할 수 있지만 Rhapsody에서는 몇몇 도움말 함수를 생성하여 상태 차트를 원활하게 실행할 수 있도록 합니다.

      각 활성 오퍼레이션의 기능 대화 상자에서 활성화 정책을 지정해야 합니다. 이는 활성 RIMB의 경우와 동일하게 수행됩니다. 활성화는 “주기적”이거나 “비동기”여야 합니다. 활성화가 “주기적”인 경우 기간 및 지연이 지정되어야 합니다. “비동기”인 경우에는 RIMB의 액세스 및 활성화 탭에서 활성화 정책을 정의해야 합니다.

      또한 기능 대화 상자에서 “보호됨” 필드를 선택해야 합니다. 모든 보호된 활성 오퍼레이션은 상호 배타적입니다. 보호된 오퍼레이션과 관련하여 생성된 모든 실행 가능 항목이 “내부에서 실행”으로 지정되는 전용 AR 독점 영역을 통해 이를 구현합니다.

    • 액세스 및 활성화: 활성화 정책을 지정해야 합니다. 이 정책은 런타임 환경(RTE)이 Rational Rhapsody 구현 블록의 doExecute 메소드를 호출하는 경우를 판별합니다. 정책 필드에서 비동기 또는 정기를 선택합니다.
      액세스 및 활성화 탭을 사용하여 다음 작업을 수행합니다.
      • 비동기 활성 요소의 활성화 정책을 지정합니다.
      • 활성 요소가 액세스하는 포트의 요소를 지정합니다.
      참고: 액세스 모드(암시적 또는 명시적)는 여기가 아니라 RIMB 인터페이스의 속성 레벨에서 지정됩니다. 액세스 사실만 여기서 지정됩니다.
      각 비동기 활성 오퍼레이션(RIMB가 활성 비동기인 경우 RIMB 포함)의 활성 정책이 이 탭에 정의되어 있어야 하며 그렇지 않으면 오퍼레이션이 실행되지 않습니다.
      • 활성 요소 열에서 모든 활성 오퍼레이션이 나열되어 있는 드롭 다운 목록에서 활성 요소를 선택하십시오. RIMB가 활성인 경우 RIMB도 나열됩니다. 이런 경우 실행 가능 항목과 연관된 함수는 RIMB의 doExecute입니다.
      • 활성화 정책 열에서 활성화 정책을 선택하십시오. 활성화 정책은 RTE 이벤트의 유형에 해당합니다. “시작…” 정책은 RTE가 대기 지점에서 활성 요소를 시작함을 의미합니다. 이 행이 활성화 정책이 아니라 액세스를 정의하도록 되어 있는 경우에는 “N/A”를 선택하십시오.
        참고: 활성화 정책이 “데이터 수신 이벤트” 또는 “데이터 수신 이벤트에서 시작”인 경우 이 행에서 데이터 요소에 대한 액세스 및 활성화 정책을 모두 정의합니다.
      • 컨텍스트 열에서 지정된 활성화 정책 또는 액세스와 관련된 데이터 요소 또는 오퍼레이션이 있는 포트를 선택하십시오. 드롭 다운 목록에 표시되는 포트는 선택된 활성화 정책에 따라 필터링됩니다. 또는 “모두”를 선택하십시오. 이는 이 행에 정의된 활성화 정책 또는 액세스가 모든 포트의 모든 요소와 관련 있음을 의미합니다.
      • 요소 열에서 컨텍스트 열에 지정된 해당 포트를 입력하는 인터페이스에 대한 데이터 요소 또는 오퍼레이션을 선택하십시오. 또는 “모두”를 선택하십시오. 이는 이 행에 정의된 활성화 정책 또는 액세스가 컨텍스트 열에 지정된 포트의 모든 요소와 관련 있음을 의미합니다. 컨텍스트 열이 “모두”로 지정된 경우에는 요소 열도 “모두”여야 합니다.
      참고: 주어진 활성 요소는 테이블에서 둘 이상의 행을 가질 수 있습니다. 이런 경우 정의된 활성화 정책 및 액세스는 모든 행의 합계입니다.
      • 정책 필드가 비동기로 설정되어 있는 경우 액세스 & 활성화 탭에서 실제 활성화 정책을 정의합니다. 자세한 내용은 비동기 활성 요소에 대한 액세스 및 활성화 정책 지정의 내용을 참조하십시오.
      • 정책 필드가 정기로 설정되어 있는 경우 일반 탭의 활성화 섹션에서 기간, 오프셋 및 지속 기간을 지정합니다.
    • 보호됨: 이 필드에서 보호되는 모든 활성 오퍼레이션이 상호 배타적이 되도록 지정할 수 있습니다. 이 조치는 보호된 오퍼레이션에 대해 생성된 모든 실행 가능 항목이 "내부 실행"으로 지정된 전용 AUTOSAR 독점 영역에서 구현됩니다.

    활성 오퍼레이션은 Rational Rhapsody 구현 블록에서 중심적인 역할을 수행합니다. 활성 오퍼레이션은 AUTOSAR 실행 가능 항목으로 변환되며 런타임 환경(RTE)에서 직접 호출됩니다. 이는 구현 실행을 구동합니다. Rational Rhapsody 구현 블록에는 상태 차트, 속성, 오퍼레이션 및 기타 요소를 포함하여 일반 클래스에 있는 모든 항목이 포함될 수 있습니다. Rational Rhapsody 구현 블록은 동작 모델링 도구(BMT) 패키지에 정의되고 소프트웨어 컴포넌트 유형 내부에서 오브젝트로 인스턴스화됩니다.


피드백