이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
Truth Table
조건, 결정, 동작으로 의사 결정 로직 표현
라이브러리:
Stateflow
설명
Truth Table 블록은 테이블 형식으로 조합 논리 설계를 구현합니다. Truth Table 블록을 사용하여 결함 검출 및 관리와 모드 전환에 대한 의사결정을 모델링할 수 있습니다. 자세한 내용은 Use Truth Tables to Model Combinatorial Logic 항목을 참조하십시오.
제어 논리를 구현하기 위해 Truth Table 블록은 MATLAB®을 동작 언어로 사용합니다.
Truth Table 블록 속성은 진리표가 Simulink® 모델과 상호작용하는 방법을 지정합니다. 속성 인스펙터, 모델 탐색기 또는 진리표 속성 대화 상자에서 이러한 속성을 수정할 수 있습니다. 자세한 내용은 항목을 참조하십시오. 또는 Stateflow.TruthTableChart
객체를 사용하여 프로그래밍 방식으로 Truth Table 블록 속성을 수정할 수도 있습니다. Stateflow® 프로그래밍 인터페이스에 대한 자세한 내용은 Overview of the Stateflow API 항목을 참조하십시오.
예제
Home Climate Control Using the Truth Table Block
Model a home climate control system by using a Truth Table block.
포트
입력
u — 입력 포트
스칼라 | 벡터 | 행렬
기호 창에서 입력 데이터를 생성하면 Stateflow가 입력 포트를 생성합니다. 사용자가 생성하는 입력 데이터는 상응하는 입력 포트를 가지는데, 이는 데이터 생성 후에 나타납니다.
데이터형: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
| string
출력
y — 출력 포트
스칼라 | 벡터 | 행렬
기호 창에서 출력 데이터를 생성하면 Stateflow가 출력 포트를 생성합니다. 사용자가 생성하는 출력 데이터는 상응하는 출력 포트를 가지는데, 이는 데이터 생성 후에 나타납니다.
데이터형: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| Boolean
| fixed point
| enumerated
| bus
| string
파라미터
코드 생성 탭의 파라미터는 Simulink Coder™ 또는 Embedded Coder®를 필요로 합니다.
기본
포트 레이블 표시 — 포트 레이블을 표시하는 방법 선택
FromPortIcon
(디폴트 값) | 안 함
| FromPortBlockName
| SignalName
Truth Table 블록 아이콘에 포트 레이블을 표시하는 방법을 선택합니다.
안 함
포트 레이블을 표시하지 않습니다.
FromPortIcon
상응하는 포트 아이콘에 신호 이름이 표시되면 Truth Table 블록에 신호 이름을 표시합니다. 그렇지 않으면 포트 블록 이름을 표시합니다.
FromPortBlockName
상응하는 포트 블록의 이름을 Truth Table 블록에 표시합니다.
SignalName
신호 이름이 있으면 포트에 연결된 신호 이름을 Truth Table 블록에 표시합니다. 그렇지 않으면 상응하는 포트 블록의 이름을 표시합니다.
프로그래밍 방식 사용
파라미터: ShowPortLabels |
유형: string형 스칼라 또는 문자형 벡터 |
값: "none" "FromPortIcon" | "FromPortBlockName" | "SignalName" |
디폴트 값: "FromPortIcon" |
읽기/쓰기 권한 — 차트 내용에 대한 액세스 선택
ReadWrite
(디폴트 값) | ReadOnly
| NoReadOrWrite
차트 내용에 대한 사용자 액세스를 제어합니다.
ReadWrite
차트 내용을 열고 수정할 수 있습니다.
ReadOnly
차트를 열 수 있지만 수정할 수는 없습니다. 차트가 블록 라이브러리에 있는 경우 차트에 대한 링크를 만들고 열 수 있으며 차트의 로컬 복사본을 만들고 수정할 수 있지만, 권한을 변경하거나 원본 라이브러리 인스턴스의 내용을 수정할 수는 없습니다.
NoReadOrWrite
차트 열거나 수정할 수 없습니다. 차트가 라이브러리에 있는 경우 모델에 차트에 대한 링크를 만들 수 있지만 열거나 수정하거나 권한을 변경하거나 차트의 로컬 복사본을 만들 수는 없습니다.
프로그래밍 방식 사용
파라미터: Permissions |
유형: string형 스칼라 또는 문자형 벡터 |
값: "ReadWrite" | "ReadOnly" | "NoReadOrWrite" |
디폴트 값: "ReadWrite" |
대수 루프 발생 최소화 — 대수 루프 제거 제어
끄기 (디폴트 값) | 켜기
- 끄기
아토믹 서브차트를 포함하는 인위적 대수 루프의 제거를 시도하지 않습니다.
- 켜기
아토믹 서브차트를 포함하는 인위적 대수 루프의 제거를 시도합니다.
프로그래밍 방식 사용
파라미터: MinAlgLoopOccurrences |
유형: string형 스칼라 또는 문자형 벡터 |
값: "off" | "on" |
디폴트 값: "off" |
샘플 시간 — 시간 간격 지정
-1
(디폴트 값) | [Ts 0]
차트의 모든 블록이 같은 레이트로 실행되어야 하는지 또는 다른 레이트로 실행될 수 있는지 지정합니다.
차트의 블록이 다른 레이트로 실행될 수 있는 경우 차트 샘플 시간을 상속됨(
-1
)으로 지정합니다.모든 블록이 같은 레이트로 실행되어야 하는 경우 해당 레이트에 상응하는 샘플 시간을 샘플 시간 파라미터 값으로 지정합니다.
차트의 블록 중 어느 하나라도 다른 샘플 시간(
-1
또는inf
이외)을 지정하면, 모델을 업데이트하거나 시뮬레이션할 때 Simulink에 오류 메시지가 표시됩니다. 예를 들어 차트의 모든 블록이 초당5
회 실행되어야 한다고 가정하겠습니다. 이 횟수를 위해 차트의 샘플 시간을0.2
로 지정합니다. 이 예에서, 차트의 블록 중 어느 하나라도0.2
,-1
또는inf
이외의 샘플 시간을 지정하는 경우, 모델을 업데이트하거나 시뮬레이션할 때 Simulink에 오류가 표시됩니다.
-1
상속되는 샘플 시간을 지정합니다. 차트의 블록이 다른 레이트로 실행될 수 있는 경우 이 샘플 시간을 사용하십시오.
[Ts 0]
주기적 샘플 시간을 지정합니다.
프로그래밍 방식 사용
파라미터: SystemSampleTime |
유형: string형 스칼라 또는 문자형 벡터 |
값: "-1" | "[Ts 0]"
|
디폴트 값: "-1" |
코드 생성
함수 패키징 — 코드 형식 선택
자동
(디폴트 값) | 인라인
| 재사용 불가 함수
| 재사용 가능 함수
아토믹(비가상) 서브차트에 대한 생성 코드 형식을 선택합니다.
자동
Simulink Coder가 모델에 존재하는 차트 인스턴스의 유형과 수를 기반으로 시스템에 가장 적합한 형식을 선택합니다.
인라인
Simulink Coder가 무조건 차트를 인라인 처리합니다.
재사용 불가 함수
Simulink Coder가 별도의 파일에 별도의 함수를 명시적으로 생성합니다. 이 설정이 있는 Truth table 블록은 함수 인터페이스 (Simulink) 파라미터 설정에 따라 인수를 가질 수도 있는 함수를 생성합니다. 파라미터 함수 이름 (Simulink) 및 파일 이름(확장자 없음) (Simulink)을 사용하여 각각 생성된 함수와 파일의 이름을 지정할 수 있습니다. 이러한 함수는 재진입이 불가능합니다.
재사용 가능 함수
모델에 차트의 여러 인스턴스가 포함된 경우 Simulink Coder가 차트 코드의 재사용을 허용하는, 인수를 포함한 함수를 생성합니다.
이 옵션은 인수를 포함한 함수를 생성합니다. 이 함수는 참조된 모델 전반에 차트의 여러 인스턴스를 포함하는 모델 참조 계층 구조의 생성 코드에서 차트 코드의 재사용을 허용합니다. 이 경우 차트는 라이브러리에 있어야 합니다.
팁
차트의 여러 인스턴스를 하나의 재사용 가능 함수로 표현하려는 경우 각 인스턴스를
자동
또는재사용 가능 함수
로 지정할 수 있습니다. 둘 다 사용하면 각 지정마다 하나씩 두 개의 재사용 가능 함수가 생성되므로 하나만 사용하는 것이 가장 좋습니다. 이러한 선택의 결과는 재사용이 불가능한 경우 달라집니다.자동
을 선택하면 차트 코드의 함수 또는 파일 이름을 제어할 수 없습니다.재사용 가능 함수
옵션과자동
옵션 모두 차트의 여러 인스턴스가 존재하는지 여부와 코드를 재사용할 수 있는지 여부를 결정합니다. 코드를 재사용할 수 없는 경우 옵션은 다르게 작동합니다. 이 경우자동
은 인라인 처리된 코드를 생성하거나 인라인 처리가 금지된 상황인 경우 각 차트 인스턴스에 대해 별도의 함수를 생성합니다.생성 코드가 소스 컨트롤 상태에 있는데
재사용 가능 함수
를 선택했다면 파일 이름 옵션을서브시스템 이름 사용
,함수 이름 사용
또는사용자 지정
으로 설정해야 합니다. 그렇지 않으면 모델을 수정할 때마다 코드 파일의 이름이 변경되어 파일에 대한 소스 컨트롤을 방해합니다.
종속성
이 파라미터는 Simulink Coder를 필요로 합니다.
이 파라미터를
재사용 불가 함수
또는재사용 가능 함수
로 설정하면 다음 파라미터가 활성화됩니다.함수 이름 옵션
파일 이름 옵션
초기화/종료 함수의 메모리 섹션(Embedded Coder와 ERT 기반 시스템 타깃 파일이 필요)
실행 함수의 메모리 섹션(Embedded Coder와 ERT 기반 시스템 타깃 파일이 필요)
이 파라미터를
재사용 불가 함수
로 설정하면 별도의 데이터를 갖는 함수가 활성화됩니다(Embedded Coder용 라이선스와 ERT 기반 시스템 타깃 파일이 필요).
프로그래밍 방식 사용
파라미터: RTWSystemCode |
유형: string형 스칼라 또는 문자형 벡터 |
값: "Auto" | "Inline" | "Nonreusable function" | "Reusable function" |
디폴트 값: "Auto" |
확장 기능
C/C++ 코드 생성
Simulink® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
HDL 코드 생성
HDL Coder™를 사용하여 FPGA 및 ASIC 설계를 위한 VHDL, Verilog 및 SystemVerilog 코드를 생성할 수 있습니다.
HDL Coder™는 HDL 구현과 합성된 논리에 영향을 주는 추가 구성 옵션을 제공합니다.
HDL 코드 생성을 위한 Truth Table 블록에서 조정 가능형 파라미터를 사용할 수 있습니다. 자세한 내용은 Generate DUT Ports for Tunable Parameters (HDL Coder) 항목을 참조하십시오.
이 블록에는 단일 디폴트 HDL 아키텍처가 있습니다.
ConstMultiplierOptimization | 정준부호숫자(CSD: Canonical signed digit) 또는 인수분해된 CSD 최적화입니다. 디폴트 값은 |
ConstrainedOutputPipeline | 기존 지연을 설계 내부로 이동하여 출력에 배치하는 레지스터의 개수입니다. 분산된 파이프라이닝은 이러한 레지스터를 다시 분산하지 않습니다. 디폴트 값은 |
DistributedPipelining | 파이프라인 레지스터 분포 또는 레지스터 타이밍 재지정입니다. 디폴트 값은 |
InputPipeline | 생성된 코드에 삽입할 입력 파이프라인 단계의 개수입니다. 분산된 파이프라이닝과 제약이 있는 출력 파이프라이닝은 이러한 레지스터를 이동할 수 있습니다. 디폴트 값은 |
InstantiateFunctions | 각 함수에 대해 VHDL® |
LoopOptimization | 루프 풀기 또는 루프 스트리밍을 수행하거나, 루프를 최적화하지 않습니다. 디폴트 값은 |
MapPersistentVarsToRAM | 영구 배열을 RAM에 매핑합니다. 디폴트 값은 |
OutputPipeline | 생성된 코드에 삽입할 출력 파이프라인 단계의 개수입니다. 분산된 파이프라이닝과 제약이 있는 출력 파이프라이닝은 이러한 레지스터를 이동할 수 있습니다. 디폴트 값은 |
ResetType | 재설정 논리 생성을 억제합니다. 디폴트 값은 |
SharingFactor | 단일 공유 리소스에 매핑할, 기능적으로 동일한 리소스의 개수입니다. 디폴트 값은 0입니다. Resource Sharing (HDL Coder) 항목도 참조하십시오. |
VariablesToPipeline | 경고
지정된 MATLAB 변수 하나 또는 여럿의 출력에 파이프라인 레지스터를 삽입합니다. 변수 목록을 문자형 벡터로 지정하고, 공백을 사용하여 변수를 구분합니다. |
PLC 코드 생성
Simulink® PLC Coder™를 사용하여 Structured Text 코드를 생성할 수 있습니다.
고정소수점 변환
Fixed-Point Designer™를 사용하여 고정소수점 시스템을 설계하고 시뮬레이션할 수 있습니다.
버전 내역
R2006a 이전에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)