이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
Gain
입력에 상수 곱하기

라이브러리:
Simulink /
Commonly Used Blocks
Simulink /
Math Operations
HDL Coder /
Commonly Used Blocks
HDL Coder /
HDL Floating Point Operations
HDL Coder /
Math Operations
설명
Gain 블록은 입력에 상수 값 또는 이득을 곱합니다. 입력과 이득은 각각 스칼라, 벡터 또는 행렬일 수 있습니다.
이득 파라미터에 이득 값을 지정합니다. 곱셈 파라미터를 사용하여 요소별 곱셈 또는 행렬 곱셈을 지정할 수 있습니다. 이 파라미터를 사용하여 행렬 곱셈을 지정할 경우 피승수의 순서를 나타낼 수도 있습니다.
이득은 가장 가까운 값으로 반올림하는 방법과 포화를 사용하여 오프라인에서 double형에서 블록 마스크에 지정된 데이터형으로 변환됩니다. 그런 다음 입력과 이득이 곱해지고, 그 결과가 지정된 반올림과 오버플로 모드를 사용하여 출력 데이터형으로 변환됩니다.
예제
SimpleGain
모델을 열고 시뮬레이션합니다.
mdl = "SimpleGain";
open_system(mdl)
sim(mdl);
이 모델은 다음 방정식을 나타냅니다.
Constant 블록은 Gain 블록에 상수 값 2
를 제공합니다.
Gain 블록은 입력에 5
를 곱합니다.
Display 블록에 곱셈 결과가 표시됩니다.
확장 예제
튀어 오르는 공 시뮬레이션
이 예제에서는 두 개의 튀어 오르는 공 모델을 사용하여 제논 동작으로 하이브리드 동적 시스템을 모델링하는 여러 접근 방식을 보여줍니다. 보통, 특정 하이브리드 시스템에서 유한한 시간 간격 내에 무한한 수의 이벤트가 발생할 때 이를 제논 동작이라고 합니다. 공의 에너지가 감소함에 따라, 공은 점점 더 짧은 시간 간격으로 지면과 충돌합니다.
질량-스프링-댐퍼 시스템에서 스틱-슬립 마찰과 강제 정지 모델링하기
이 예제에서는 스틱 슬립 운동의 강제 정지와 마찰 변화를 질량-스프링-댐퍼 모델에 통합할 수 있는 한 가지 방법을 보여줍니다.
폐루프 제어가 있는 엔진 시간 설정 모델
이 예제에서는 Model Engine Timing Using Triggered Subsystems 항목에서 설명되는 개루프 엔진 모델을 위한 폐루프 제어 알고리즘을 개발하고 구현하는 방법을 보여줍니다. 이 예제에서 모델 sldemo_enginewc
에는 부하 토크의 변경이 최소한의 영향을 미치도록 신속 스로틀 액추에이터를 사용하여 엔진 속도를 조절하는 제어기가 포함되어 있습니다. 제어기는 이산 PI 제어기를 사용하여 구현됩니다.
포트
입력
Gain 블록은 실수 값 또는 복소수 값 스칼라, 벡터 또는 행렬 입력을 받습니다. Gain 블록은 고정소수점 데이터형을 지원합니다. Gain 블록의 입력이 실수이고 이득이 복소수이면 출력은 복소수입니다.
데이터형: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
복소수 지원 여부: 예
출력
Gain 블록은 입력에 상수 이득 값을 곱한 값을 출력합니다. Gain 블록에 대한 입력이 실수이고 이득이 복소수이면 출력은 복소수입니다.
데이터형: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
복소수 지원 여부: 예
파라미터
블록 파라미터를 대화형 방식으로 편집하려면 속성 인스펙터를 사용합니다. Simulink® 툴스트립의 시뮬레이션 탭에 있는 준비 갤러리에서 속성 인스펙터를 선택하십시오.
기본
입력을 곱할 값을 지정합니다. 이득은 실수 값 또는 복소수 값 스칼라, 벡터 또는 행렬일 수 있습니다.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | Gain |
값: | '1' (디폴트 값) | real or complex-valued scalar, vector, or matrix in quotes |
다음 곱셈 모드 중 하나를 지정합니다.
요소별(K.*u)
— 입력의 각 요소에 이득의 각 요소를 곱합니다. 입력과 이득의 차원이 같도록 필요한 경우 블록은 확장을 수행합니다.행렬(K*u)
— 입력을 두 번째 피연산자로 하여 입력과 이득에 대해 행렬 곱셈을 수행합니다.행렬(u*K)
— 입력을 첫 번째 피연산자로 하여 입력과 이득에 대해 행렬 곱셈을 수행합니다.행렬(K*u)(u 벡터)
— 입력을 두 번째 피연산자로 하여 입력과 이득에 대해 행렬 곱셈을 수행합니다. 이 모드는 차원이 결정되는 방식을 제외하고Matrix(K*u)
와 동일합니다.K
가m-by-n
행렬이라고 가정해 보겠습니다.Matrix(K*u)(u vector)
는 입력을 길이가n
인 벡터로, 출력을 길이가m
인 벡터로 설정합니다. 반대로Matrix(K*u)
는 전파를 사용하여 입력과 출력의 차원을 결정합니다.m-by-n
이득 행렬의 경우 입력은n-by-q
행렬로 전파될 수 있고 출력은m-by-q
행렬이 됩니다.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | Multiplication |
값: | 'Element-wise(K.*u)' (디폴트 값) | 'Matrix(K*u)' | 'Matrix(u*K)' | 'Matrix(K*u) (u vector)' |
샘플 간의 시간 간격을 지정합니다. 샘플 시간을 상속하려면 이 파라미터를 -1
로 설정하십시오. 자세한 내용은 샘플 시간 지정하기 항목을 참조하십시오.
종속성
이 파라미터는 -1
이외의 값으로 설정한 경우에만 표시됩니다. 자세한 내용은 Blocks for Which Sample Time Is Not Recommended 항목을 참조하십시오.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | SampleTime |
값: | "-1" (디폴트 값) | scalar or vector in quotes |
신호 특성
소프트웨어에서 검사하는 출력 범위의 하한 값입니다.
이 최솟값을 사용하여 다음 작업이 수행됩니다.
일부 블록에 대해 파라미터 범위 검사(Specify Minimum and Maximum Values for Block Parameters 참조).
시뮬레이션 범위 검사(Specify Signal Ranges 및 Enable Simulation Range Checking 참조).
고정소수점 데이터형의 자동 스케일링.
모델에서 생성한 코드 최적화. 이 최적화 작업은 알고리즘의 코드를 제거하고, SIL 또는 외부 모드 같은 일부 시뮬레이션 모드의 결과에 영향을 줄 수 있습니다. 자세한 내용은 Optimize using the specified minimum and maximum values (Embedded Coder) 항목을 참조하십시오.
팁
출력 최솟값은 실제 출력 신호를 포화시키거나 자르지 않습니다. 대신 Saturation 블록을 사용하십시오.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | OutMin |
값: | '[]' (디폴트 값) | scalar in quotes |
소프트웨어에서 검사하는 출력 범위의 상한 값입니다.
이 최댓값을 사용하여 다음 작업이 수행됩니다.
일부 블록에 대해 파라미터 범위 검사(Specify Minimum and Maximum Values for Block Parameters 참조).
시뮬레이션 범위 검사(Specify Signal Ranges 및 Enable Simulation Range Checking 참조).
고정소수점 데이터형의 자동 스케일링.
모델에서 생성한 코드 최적화. 이 최적화 작업은 알고리즘의 코드를 제거하고, SIL 또는 외부 모드 같은 일부 시뮬레이션 모드의 결과에 영향을 줄 수 있습니다. 자세한 내용은 Optimize using the specified minimum and maximum values (Embedded Coder) 항목을 참조하십시오.
팁
출력 최댓값은 실제 출력 신호를 포화시키거나 자르지 않습니다. 대신 Saturation 블록을 사용하십시오.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | OutMax |
값: | '[]' (디폴트 값) | scalar in quotes |
출력의 데이터형을 선택합니다. 유형은 상속되거나 직접 지정되거나 Simulink.NumericType
과 같은 데이터형 객체로 표현될 수 있습니다.
상속된 옵션을 선택하면 블록은 다음과 같이 동작합니다.
상속: 내부 규칙을 통해 상속
— 소프트웨어는 임베디드 타깃 하드웨어의 속성을 고려하면서도 수치적 정확도와 성능, 생성된 코드 크기 간에 균형을 이루도록 데이터형을 선택합니다. 임베디드 타깃 설정을 변경할 경우 내부 규칙을 통해 선택된 데이터형이 변경될 수 있습니다. 예를 들어 블록이int8
형의 입력을int16
형의 이득에 곱하고ASIC/FPGA
가 타깃 하드웨어 유형으로 지정된 경우 출력 데이터형은sfix24
입니다.지정되지 않음(32비트 일반으로 간주됨)
, 즉 일반 32비트 마이크로프로세서가 타깃 하드웨어로 지정된 경우 출력 데이터형은int32
입니다. 타깃 마이크로프로세서에서 제공된 어떤 워드 길이로도 출력 범위를 수용할 수 없는 경우 소프트웨어는 진단 뷰어에 오류를 표시합니다.상속: MSB 유지
– 소프트웨어는 전체 연산 범위를 유지하는 데이터형을 선택한 다음, 출력 정밀도를 임베디드 타깃 하드웨어에 적합한 크기로 줄입니다.팁
생성된 코드의 효율성을 높이려면 정수 오버플로 시 포화를 선택 해제합니다.
이 규칙으로 인해 오버플로가 생성되는 일은 없습니다.
상속: 스케일링 일치
– 소프트웨어는 스케일링이 입력 유형의 스케일링과 일치하는 데이터형을 선택합니다. 전체 유형 범위가 임베디드 타깃 하드웨어에 적합하지 않은 경우 범위가 축소되어 임베디드 타깃 하드웨어에 적합한 유형이 생성됩니다. 이 규칙으로 인해 오버플로가 생성될 수 있습니다.항상 코드 효율성과 수치적 정확도를 동시에 최적화할 수 있는 것은 아닙니다. 이러한 내부 규칙이 수치적 정확도 또는 성능의 특정 요건에 부합되지 않으면 다음 옵션 중 하나를 사용하십시오.
명시적으로 출력 데이터형을 지정합니다.
상속: 입력과 동일
을 간단히 선택합니다.명시적으로
fixdt(1,32,16)
같은 디폴트 데이터형을 지정한 다음, 모델의 데이터형을 제안하는 고정소수점 툴을 사용합니다. 자세한 내용은fxptdlg
(Fixed-Point Designer) 항목을 참조하십시오.고유한 상속 규칙을 지정하려면
상속: 역전파를 통해 상속
을 사용하고 Data Type Propagation 블록을 사용합니다. 이 블록의 사용 방법에 대한 예는 Signal Attributes 라이브러리의 Data Type Propagation Examples 블록에서 볼 수 있습니다.
상속: 역전파를 통해 상속
— 구동 블록의 데이터형을 사용합니다.상속: 입력과 동일
— 입력 신호의 데이터형을 사용합니다.
종속성
입력값이 단정밀도보다 작은 부동소수점 데이터형인 경우 상속: 내부 규칙을 통해 상속
출력 데이터형은 단정밀도보다 작은 부동소수점 출력 유형 상속 구성 파라미터의 설정에 따라 달라집니다. 데이터형을 인코딩하는 데 필요한 비트 수가 단정밀도 데이터형을 인코딩하는 데 필요한 32비트보다 작으면 데이터형은 단정밀도보다 작습니다. 예를 들어, half
형과 int16
형은 단정밀도보다 작습니다.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | OutDataTypeStr |
값: | 'Inherit: Inherit via internal rule' (디폴트 값) | 'Inherit: Keep MSB' | 'Inherit: Match scaling' | 'Inherit: Inherit via back propagation' | 'Inherit: Same as input' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
블록에 지정한 출력 데이터형이 고정소수점 툴에 의해 재정의되지 않도록 방지하려면 이 파라미터를 선택합니다. 자세한 내용은 Use Lock Output Data Type Setting (Fixed-Point Designer) 항목을 참조하십시오.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | LockScale |
값: | 'off' (디폴트 값) | 'on' |
고정소수점 연산의 반올림 모드를 지정합니다. 자세한 내용은 반올림 모드 (Fixed-Point Designer) 항목을 참조하십시오.
블록 파라미터는 표현 가능한 가장 가까운 값으로 항상 반올림됩니다. 블록 파라미터의 반올림 동작을 제어하려면 마스크 필드에 MATLAB® 반올림 함수를 사용하여 표현식을 입력하십시오.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | RndMeth |
값: | 'Floor' (디폴트 값) | 'Ceiling' | 'Convergent' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
오버플로 시 포화시킬지 아니면 래핑할지를 지정합니다.
on
— 오버플로 시 데이터형이 표현할 수 있는 최솟값 또는 최댓값으로 포화됩니다.off
— 오버플로 시 데이터형이 표현할 수 있는 적절한 값으로 래핑됩니다.
예를 들어, 부호 있는 8비트 정수 int8
이 표현할 수 있는 최댓값은 127입니다. 블록 연산 결과가 이 최댓값보다 크면 8비트 정수 오버플로가 발생합니다.
이 파라미터를 선택하면 블록 출력이 127에서 포화됩니다. 마찬가지로 블록 출력은 최소 출력값 -128에서 포화됩니다.
이 파라미터를 선택 해제하면 오버플로를 일으키는 값이
int8
형으로 해석되어 의도치 않은 결과가 발생할 수 있습니다. 예를 들어,int8
형으로 표현된 130(2진수 1000 0010)의 블록 결과는 -126입니다.
팁
모델에 오버플로가 발생할 가능성이 있고 생성된 코드에서 포화 보호를 명시적으로 지정하려는 경우 이 파라미터를 선택해 보십시오.
생성된 코드의 효율성을 최적화하려면 이 파라미터를 선택 해제하는 것이 좋습니다. 이 파라미터를 선택 해제하면 블록이 범위를 벗어난 신호를 처리하는 방법을 과도하게 지정하는 일이 방지됩니다. 자세한 내용은 Troubleshoot Signal Range Errors 항목을 참조하십시오.
이 파라미터를 선택하는 경우 출력이나 결과뿐만 아니라 블록의 모든 내부 연산에 포화가 적용됩니다.
일반적으로 코드 생성 프로세스는 오버플로가 발생할 가능성이 없는 경우를 감지할 수 있습니다. 이 경우, 코드 생성기는 포화 코드를 생성하지 않습니다.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | SaturateOnIntegerOverflow |
값: | 'off' (디폴트 값) | 'on' |
지정할 데이터 범주를 선택합니다.
상속
— 데이터형에 대한 상속 규칙.Inherit
를 선택하면 오른쪽에 있는 두 번째 메뉴/텍스트 상자가 활성화되며, 여기서 상속 모드를 선택할 수 있습니다.내장
— 내장 데이터형.Built in
을 선택하면 오른쪽에 있는 두 번째 메뉴/텍스트 상자가 활성화되며, 여기서 내장 데이터형을 선택할 수 있습니다.고정소수점
— 고정소수점 데이터형.고정소수점
을 선택하면 고정소수점 데이터형을 지정하는 데 사용할 수 있는 추가 파라미터가 활성화됩니다.표현식
— 데이터형으로 평가되는 표현식.Expression
을 선택하면 오른쪽에 있는 두 번째 메뉴/텍스트 상자가 활성화되며, 여기에 표현식을 입력할 수 있습니다.
자세한 내용은 Specify Data Types Using Data Type Assistant 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 데이터형 도우미를 표시합니다 버튼을 클릭하십시오.
이 신호에 맞는 데이터형 재정의 모드를 선택합니다.
상속
을 선택하면 Simulink는 컨텍스트, 즉 신호를 사용하는 Simulink의 블록,Simulink.Signal
객체 또는 Stateflow® 차트에서 데이터형 재정의 설정을 상속합니다.끄기
를 선택하면 Simulink는 컨텍스트의 데이터형 재정의 설정을 무시하고 신호에 대해 지정된 고정소수점 데이터형을 사용합니다.
자세한 내용은 Simulink 문서의 Specify Data Types Using Data Type Assistant 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 모드를 내장
또는 고정소수점
으로 설정하십시오.
팁
사용자가 데이터형 재정의를 적용할 때 개별 데이터형에 대해 데이터형 재정의를 끄면 그 설정이 모델에 대한 데이터형보다 우선시 됩니다. 예를 들어, 이 옵션을 사용하여 데이터형이 데이터형 재정의 설정과 관계없이 다운스트림 블록의 요구 사항을 충족하는지 확인할 수 있습니다.
고정소수점 데이터가 부호 있는 데이터인지 또는 부호 없는 데이터인지를 지정합니다. 부호 있는 데이터는 양수 값과 음수 값을 표현할 수 있지만, 부호 없는 데이터는 양수 값만 표현합니다.
부호 있음
- 고정소수점 데이터를 부호 있음으로 지정합니다.부호 없음
- 고정소수점 데이터를 부호 없음으로 지정합니다.
자세한 내용은 Specify Data Types Using Data Type Assistant 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 모드를 Fixed point
로 설정하십시오.
양자화된 정수를 저장하는 워드의 비트 크기를 지정합니다. 자세한 내용은 Specifying a Fixed-Point Data Type 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 모드를 고정소수점
으로 설정하십시오.
고정소수점 데이터 스케일링 방법을 지정하면 오버플로 조건이 발생하지 않도록 방지하고 양자화 오차를 최소화할 수 있습니다. 자세한 내용은 Specifying a Fixed-Point Data Type 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 모드를 고정소수점
으로 설정하십시오.
고정소수점 데이터형의 기울기를 지정합니다. 자세한 내용은 Specifying a Fixed-Point Data Type 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 스케일링을 기울기 및 편향
으로 설정하십시오.
고정소수점 데이터형의 편향을 임의의 실수로 지정합니다. 자세한 내용은 Specifying a Fixed-Point Data Type 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 스케일링을 기울기 및 편향
으로 설정하십시오.
고정소수점 데이터형의 소수부 길이를 양의 정수 또는 음의 정수로 지정합니다. 자세한 내용은 Specifying a Fixed-Point Data Type 항목을 참조하십시오.
종속성
이 파라미터를 활성화하려면 스케일링을 이진 소수점
으로 설정하십시오.
파라미터 특성
이득의 최솟값을 지정합니다. 디폴트 값은 []
(지정되지 않음)입니다. 소프트웨어는 이 값을 사용하여 다음 작업을 수행합니다.
파라미터 범위 검사(Specify Minimum and Maximum Values for Block Parameters 참조)
고정소수점 데이터형의 자동 스케일링
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | ParamMin |
값: | '[]' (디폴트 값) | scalar in quotes |
이득의 최댓값을 지정합니다. 디폴트 값은 []
(지정되지 않음)입니다. 소프트웨어는 이 값을 사용하여 다음 작업을 수행합니다.
파라미터 범위 검사(Specify Minimum and Maximum Values for Block Parameters 참조)
고정소수점 데이터형의 자동 스케일링
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | ParamMax |
값: | '[]' (디폴트 값) | scalar in quotes |
이득 파라미터의 데이터형을 지정합니다.
파라미터 데이터형을 상속: 내부 규칙을 통해 상속
으로 설정하면 현재 이득 값에 표시되는 내부 발견법을 기반으로 Gain 블록이 데이터형을 선택할 수 있고, 현재 이득 값을 나타내는 최대 정밀도 데이터형이 제공됩니다. 다이어그램을 업데이트하면 소프트웨어는 이득 값 3
에 맞고 정밀도는 높으며 범위 손실이 없는 데이터형을 유추합니다. 예를 들어 이 발견법을 사용할 경우 지정된 이득 값이 3
이면 Gain 블록은 sfix32_En29
의 선택된 데이터형을 유추합니다. 결과적으로 이 유추된 데이터형은 4
보다 큰 값을 유지할 수 없습니다. 시뮬레이션 동안 이득 값을 6
으로 조정하면 선택된 데이터형에서 오버플로가 발생하고 예상치 못한 동작이 발생합니다.
이 파라미터 데이터형 설정으로 파라미터를 조정하는 중에 파라미터 최솟값 파라미터와 파라미터 최댓값 파라미터를 지정하십시오. 이러한 설정을 통해 소프트웨어는 시뮬레이션 중에 사용자가 원하는 값의 범위를 알 수 있습니다. 또한 소프트웨어는 지정된 범위 내에서 이득 값을 안전하게 조정할 수 있을 만큼 충분한 범위를 가진 최대 정밀도 데이터형을 제공할 수 있습니다.
프로그래밍 방식의 사용법
프로그래밍 방식으로 블록 파라미터 값을 설정하려면 set_param
함수를 사용하십시오.
파라미터: | ParamDataTypeStr |
값: | 'Inherit: Inherit via internal rule' (디폴트 값) | 'Inherit: Same as input' | 'Inherit: Inherit from 'Gain'' | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
블록 특성
데이터형 |
|
직접 피드스루 |
|
다차원 신호 |
|
가변 크기 신호 |
|
영점교차 검출 |
|
확장 기능
C/C++ 코드 생성
Simulink® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
HDL Coder™는 HDL 구현과 합성된 논리에 영향을 주는 추가 구성 옵션을 제공합니다.
HDL 코드 생성을 위한 Gain 블록에서는 조정 가능형 파라미터를 사용할 수 있습니다. 자세한 내용은 Generate DUT Ports for Tunable Parameters (HDL Coder) 항목을 참조하십시오.
ConstMultiplierOptimization | 설명 |
---|---|
none (디폴트 값) | 기본적으로 HDL Coder는 CSD 또는 FCSD 최적화를 수행하지 않습니다. Gain 블록에 대해 생성된 코드에는 곱셈기 연산이 포함되어 있습니다. |
csd | 이 옵션을 지정할 경우 생성된 코드는 정준부호숫자(CSD: Canonical Signed Digit) 기법을 통해, 모델에 사용된 영역을 줄이면서 클록 속도를 유지하거나 높입니다. CSD는 곱셈기 연산을 덧셈과 뺄셈 연산으로 바꿉니다. CSD는 이진수를 최소 개수의 0이 아닌 숫자로 표현함으로써 상수 곱셈에 필요한 덧셈 연산 개수를 최소화합니다. |
fcsd | 이 옵션은 인수분해된 CSD(FCSD: Factored CSD) 기법을 사용합니다. 이는 피연산자의 특정 인수에서 곱셈기 연산을 시프트 연산과 덧셈/뺄셈 연산으로 바꾸는 기법입니다. 대개 이러한 인수는 소인수이지만, 영역 축소에 도움이 되는 2의 거듭제곱에 가까운 숫자일 수도 있습니다. FCSD를 사용하면 클록 속도는 줄어들지만 영역을 크게 축소할 수 있습니다. |
auto | 이 옵션을 지정할 경우 코더는 CSD 최적화 또는 FCSD 최적화 중에서 선택합니다. 코더는 필요한 가산기 개수를 기준으로, 가장 영역 효율적인 구현을 생성하는 최적화를 선택합니다. |
일반 | |
---|---|
ConstMultiplierOptimization | 정준부호숫자(CSD) 또는 인수분해된 CSD 최적화. 디폴트 값은 |
ConstrainedOutputPipeline | 기존 지연을 설계 내부로 이동하여 출력에 배치하는 레지스터 개수입니다. 분산된 파이프라이닝은 이러한 레지스터를 다시 분산하지 않습니다. 디폴트 값은 |
DSPStyle | 곱셈기 매핑에 대한 합성 특성입니다. 디폴트 값은 |
InputPipeline | 생성된 코드에 삽입할 입력 파이프라인 단계의 개수입니다. 분산 파이프라이닝과 제약이 있는 출력 파이프라이닝은 이러한 레지스터를 이동할 수 있습니다. 디폴트 값은 |
OutputPipeline | 생성된 코드에 삽입할 출력 파이프라인 단계의 개수입니다. 분산 파이프라이닝과 제약이 있는 출력 파이프라이닝은 이러한 레지스터를 이동할 수 있습니다. 디폴트 값은 |
참고
이득 파라미터의 특정 값에 대해 네이티브 부동소수점은 곱셈기를 사용하는 대신 알고리즘을 다르게 구현합니다. 예를 들어, 이득 파라미터를 1
로 설정하면, 생성된 모델은 와이어를 사용하여 입력을 출력에 전달합니다. 이득 파라미터를 -1
로 설정할 경우, 생성된 모델은 입력 신호의 극성을 반전시키는 Unary Minus 블록을 표시합니다. 이 구현은 대기 시간과 타깃 플랫폼에서의 리소스 사용량을 줄입니다.
네이티브 부동소수점 | |
---|---|
HandleDenormals | HDL Coder가 설계에서 비정규 숫자를 처리하기 위한 추가 논리를 삽입하도록 할지 여부를 지정합니다. 비정규 숫자는 가수에 선행 0 없이 표현할 수 있는 가장 작은 부동소수점 숫자보다도 크기가 작은 숫자입니다. 디폴트 값은 |
LatencyStrategy | 부동소수점 연산자인 경우 설계 내 블록을 |
NFPCustomLatency | 값을 지정하려면 LatencyStrategy를 |
MantissaMultiplyStrategy | 코드 생성 중에 가수 곱셈 연산을 구현하는 방법을 지정합니다. 서로 다른 설정을 사용하여 타깃 FPGA 소자에서의 DSP 사용량을 제어할 수 있습니다. 디폴트 값은 |
이 블록은 복소 신호를 위한 코드 생성을 지원합니다.
PLC 코드 생성
Simulink® PLC Coder™를 사용하여 Structured Text 코드를 생성할 수 있습니다.
고정소수점 변환
Fixed-Point Designer™를 사용하여 고정소수점 시스템을 설계하고 시뮬레이션할 수 있습니다.
버전 내역
R2006a 이전에 개발됨
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- 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)