이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
멀티레이트 모델링(멀티태스킹 모드, 베어 보드, OS 없음)
이 모델은 멀티레이트 이산 시간 모델(운영 체제가 없는 타깃)에 맞게 구성된 멀티태스킹 베어보드 타깃에 대해 생성된 코드를 보여줍니다.
예제 모델 열기
예제 모델 MultirateMultitaskingBareBoard를 엽니다.
open_system('MultirateMultitaskingBareBoard')

예제 모델 살펴보기
이 모델에는 두 개의 샘플 시간이 포함되어 있습니다. Inport 블록 1과 Inport 블록 2는 각각 1초 및 2초의 샘플 시간을 지정하며, 이는 모델 구성 파라미터 주기적 샘플링 시간 제약 조건의 설정을 통해 적용됩니다. 이 솔버는 멀티태스킹 방식으로 설정되어 있으므로, 1초 태스크가 2초 태스크를 선점할 때 데이터 무결성이 보장되도록 하기 위해서는 레이트 변경 블록이 필요합니다. Simulink® 및 Simulink Coder™는 항상 적절한 레이트 변경을 보장합니다. 이 모델은 명시적 레이트 변경 블록을 지정합니다. 또는 Simulink에서 모델 구성 파라미터 데이터 전송을 위한 레이트 변경 자동 처리를 설정하면 이 블록이 자동으로 삽입될 수도 있습니다.
이 모델은 다이어그램이 업데이트될 때 샘플 시간별 색상을 표시하도록 구성되어 있습니다. 이를 확인하려면 모델을 연 후 Ctrl+D를 눌러 다이어그램을 새로 고침하십시오. 범례를 표시하려면 Ctrl+J를 누르십시오. 빨간색은 모델에서 가장 빠른 이산 샘플 시간, 녹색은 두 번째로 빠른 샘플 시간을, 노란색은 혼합된 샘플 시간을 나타냅니다.
데이터 전송에 관한 가정
작업 간 데이터 전송의 작동 원리:
데이터 전환은 단일 읽기 작업과 단일 쓰기 작업 사이에서 발생합니다.
바이트 크기의 변수에 대한 읽기 또는 쓰기 작업은 아토믹입니다.
두 태스크가 데이터 전달을 통해 상호작용할 때, 그중 하나만이 다른 하나를 선점할 수 있다.
주기적인 작업의 경우, 실행 속도가 빠른 작업이 실행 속도가 느린 작업보다 우선순위가 높으며, 실행 속도가 빠른 작업은 항상 실행 속도가 느린 작업을 선점합니다.
작업은 단일 프로세서에서 실행됩니다. 시간 분할은 허용되지 않습니다.
프로세스가 중단되거나 다시 시작되지 않습니다(특히 작업 간에 데이터가 전송되는 동안에는).