Operator FIRoperatorNxM

Operator Library: Filter

FIRoperatorNxM 연산자는 매개변수로 설정 가능한 계수와 입력 커널 요소의 곱의 합을 계산합니다. 계수는 Coefficients 파라미터를 사용하여 정의할 수 있습니다.

예를 들어 살펴보겠습니다. 수직 에지를 검출하기 위한 다음과 같은 Sobel 필터 계수 H가 있다고 가정해 보겠습니다.

이 필터는 다음 이미지 I에 적용됩니다.

위치 I(2,2) = 31인 픽셀에 대해 출력 O에서 다음과 같은 결과를 얻습니다.

필요한 입력 커널을 생성하려면 FIRkernelNxM, LineNeighboursNx1 또는 PixelNeighbours1xM과 같은 연산자를 사용하십시오.

Operator 제한 사항

  • ImageWidth < 2*Parallelism are not allowed

  • 빈 이미지, 즉 픽셀이 없는 이미지는 허용되지 않습니다.

  • 빈 라인이나 길이가 다른 라인은 허용되지 않습니다.

I/O Properties

Property Value
Operator Type O
Input Link I, 커널 입력
Output Link O, data output

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 63] unsigned, [2, 63] signed auto1
Arithmetic {unsigned, signed} auto2
Parallelism any as I
Kernel Columns any 1
Kernel Rows any 1
Img Protocol {VALT_IMAGE2D, VALT_LINE1D, VALT_PIXEL0D} as I
Color Format VAF_GRAY as I
Color Flavor FL_NONE as I
Max. Img Width any as I
Max. Img Height any as I

1

필요한 출력 Bit Width는 입력 Bit Width, Arithmetic 및 계수로부터 자동으로 결정됩니다.

출력 Bit Width는 64 bit를 초과할 수 없습니다.

2

출력 Arithmetic은 입력 Arithmetic과 계수로부터 자동으로 결정됩니다. 입력이 signed이거나 계수 중 하나 이상이 signed인 경우 출력도 signed가 됩니다.

Parameters

Coefficients
Type static/dynamic 읽기/쓰기 매개변수
Default identity
Range

이 파라미터는 필터 커널의 계수를 정의합니다. Signed 및 unsigned 정수 값이 허용됩니다.

연산자의 입력 커널 크기가 변경되면 계수도 변경됩니다. 입력 커널 크기를 변경한 후 계수를 확인하십시오.

계수 값으로 인해 출력 Bit Width가 64 bit를 초과해서는 안 됩니다.

CoefficientsType
Type static parameter
Default SIGNED
Range SIGNED, UNSIGNED

이 파라미터는 계수의 signed 여부를 정의합니다.

이것은 동적 계수에 대해서만 평가됩니다. 정적 계수는 항상 signed입니다.

CoefficientsMaxBits
Type static parameter
Default 16
Range [2, 16]

이 파라미터는 동적 계수의 크기를 비트 단위로 정의합니다. 정적 계수에는 사용되지 않습니다.

이 값을 줄이면 리소스를 절약할 수 있습니다. 예상되는 모든 동적 계수에 충분한 크기로 설정해야 합니다. 이 파라미터는 정적이며 런타임 중에 변경할 수 없습니다.

ImplementationType
Type static parameter
Default LUT
Range (AUTO, EmbeddedALU, LUT)

Parameter ImplementationType은 연산자의 구현 전략, 즉 연산자 구현에 사용되는 로직 요소를 결정합니다.

다음 값 중 하나를 선택할 수 있습니다.

AUTO: 연산자가 인스턴스화될 때, 연결된 링크의 파라미터 설정을 기반으로 최적의 구현 전략이 자동으로 선택됩니다.

EmbeddedALU: LUT 기반이 아닌 FPGA의 임베디드 산술 로직 요소를 연산자가 사용합니다.

LUT: 연산자가 FPGA의 LUT 로직을 사용합니다.

[참고] 일반적으로 AUTO 사용

일반적으로 이 파라미터는 AUTO로 설정해야 합니다. 디자인에서 특정 종류의 FPGA 리소스가 부족해지는 등의 특수한 경우에 EmbeddedALU 및/또는 LUT 값을 사용하여 FPGA 리소스 관리에 수동으로 영향을 줄 수 있습니다.

사용 예제

다음 예시에서 operator FIRoperatorNxM의 사용법을 보여줍니다.