VisualApplets의 User Interface

VisualApplets는 프로그래밍이나 스크립팅이 필요 없는 앱릿 설계를 위한 그래픽 사용자 인터페이스를 제공합니다. 직관적인 워크플로를 통해 사용자는 코드를 작성하지 않고도 복잡한 이미지 처리 설계를 생성할 수 있습니다. 이 툴은 프로그래밍 백그라운드가 없는 사용자도 쉽게 사용할 수 있도록 설계되었습니다.

또한 VisualApplets는 스크립트나 명령줄 작업을 선호하는 사용자를 위해 'Command Line Options' 및 스크립팅 옵션도 제공합니다.

Main Window

VisualApplets 메인 창은 다음과 같은 바와 패널로 구성됩니다.

Main Program Window

그림 3: 메인 프로그램 창


메인 메뉴 바를 통해 프로그램 기능에 직접 액세스할 수 있습니다. 중요한 기능에 빠르게 액세스하려면 툴바 버튼을 사용하십시오. Settings → System Settings → Common에서 툴바 아이콘의 크기를 변경할 수 있습니다.

세 개의 패널은 각기 다른 정보와 가능성을 제공합니다:

  • Design 패널: Design 패널에는 VisualApplets 프로젝트가 표시됩니다. 항상 하나의 메인 디자인 창이 존재하지만, 프로젝트 구조에 따라 여러 개의 하위 창을 함께 사용할 수 있습니다. Window 메뉴에서 여러 뷰(바둑판식 배열, 계단식 배열, 탭 뷰)를 선택할 수 있습니다. Window → Diagram Windows (Ctrl+F8)에 있는 메뉴 항목을 사용하여 현재 작업하려는 디자인 다이어그램 창을 쉽게 선택할 수 있습니다.

  • Information 패널: 메인 프로그램 창의 기본 설정에서 Information 패널은 항상 표시됩니다. 탭 뷰로 다음과 같은 다양한 정보 창을 제공합니다.

    • Project Info

    • Module Info

    • Parameter Info

    • DRC Log

    • Build Log

    • Help

    (각 정보 창에 대한 자세한 내용은 아래를 참조하십시오.)

  • Library 패널: 메인 프로그램 창의 기본 설정에서 Library 패널은 항상 표시됩니다. 탭 뷰로 세 개의 라이브러리 창을 제공합니다.

    • Operator Library: Operator Library는 VisualApplets 오퍼레이터, 즉 개별 이미지 처리 함수를 포함하는 하위 라이브러리의 모음입니다.

    • User Library: User Library에는 사용자가 정의한 오퍼레이터 조합(계층형 상자)이 포함된 사용자 정의 라이브러리가 포함될 수 있습니다. 자세한 내용은 'User Libraries'를 참조하십시오.

    • Custom Library: Custom Library로 오퍼레이터를 가져오는 방법에 대해서는 'Custom Operator Libraries'를 참조하십시오.

[팁] 특정 연산자

오퍼레이터 라이브러리에 표시되는 일부 오퍼레이터는 현재 설계 중인 플랫폼에서 지원되지 않을 수 있습니다. 지원되지 않는 오퍼레이터는 회색으로 표시되어 현재 디자인 구성에서 사용할 수 없음을 나타냅니다.

현재 선택된 대상 하드웨어 플랫폼에 대해 운영자가 없습니다.

그림 4: 현재 선택한 타겟 하드웨어 플랫폼에서 사용할 수 없는 오퍼레이터


Information Panel

이 항목에서는 Information Panel에 대한 정보를 제공합니다. Information Panel에는 다음과 같은 뷰가 포함됩니다.

Information Panel

그림 5: Information Panel


Project Info

'프로젝트 정보' 창에는 현재 프로젝트에 대한 정보가 요약되어 있습니다.

Project Info

그림 6: Project Info


다음과 같은 정보가 제공됩니다:

  • 이름: 프로젝트 이름 (=파일 이름)

  • 생성 날짜: 생성된 날짜

  • 최종 수정일: 마지막 수정 날짜

  • Version: 프로젝트의 버전 번호입니다. 이 항목은 Design → Project Details 메뉴에서 편집할 수 있습니다('Project Properties' 참조).

  • Description: 프로젝트에 대한 설명입니다. 이 항목은 Design → Project Details 메뉴에서 편집할 수 있습니다('Project Properties' 참조).

  • Type: 대상 하드웨어에서 현재 사용 중인 FPGA 유형을 표시합니다('Target Hardware Porting' 참조).

  • Target Runtime: 대상 런타임을 표시합니다('Target Runtime' 참조).

  • Design Rules Check Level 1: 발견된 오류 또는 성공적인 수행 상태를 나타냅니다('Design Rules Check' 참조).

  • Hardware Applet: 하드웨어 애플릿의 존재 여부를 나타냅니다. VisualApplets에서 이전에 해당 프로젝트의 HAP 파일을 생성한 경우 이 항목이 선택됩니다.

  • Resources: 리소스 추정 결과를 표시합니다. 'FPGA Resource Estimation'도 참조하십시오.

  • System: 발견된 Xilinx 버전, 사용 가능한 Framegrabber SDK 버전 및 Framegrabber SDK 설치 디렉토리를 표시합니다. 이 정보는 VisualApplets에서 HAP를 빌드하고 최종 HAP를 출력하는 데 사용됩니다. 자세한 내용은 'Build'를 참조하십시오.

Module Info

Module Info 창에는 프로젝트에 사용된 모든 모듈의 목록이 표시됩니다(창의 입력 필드가 비어 있는 한). 이 목록은 프로젝트의 계층 구조에 따라 구성됩니다.

Module Search

그림 7. 모듈 검색


Module Info 창에서는 특정 모듈이나 모듈 유형을 쉽게 검색할 수 있습니다. 이는 대규모 디자인 작업 시 매우 유용합니다. 검색을 시작하기 전에 필터 설정을 지정해야 합니다.

  • 모듈에 지정한 개별 이름으로 검색하려면 "Names"를 활성화합니다.

  • 모듈 유형(현재 인스턴스를 검색 중인 오퍼레이터의 이름)으로 검색하려면 "Types"를 활성화합니다.

Module Search

그림 8. 모듈 검색


이제 검색어를 입력할 수 있습니다. 이름의 일부만 입력해도 충분합니다. Module Info 창에 나열된 모듈 중 하나를 클릭하면 해당 디자인 창이 (디자인 패널에서) 포커스되며, 모듈이 선택되어 강조 표시됩니다.

Parameter Info

Parameter Info 뷰에는 활성 디자인의 모든 파라미터와 그 오퍼레이터가 표시됩니다. Parameter Info 뷰에서 직접 파라미터를 편집할 수도 있습니다.

Parameter Info

그림 9. 파라미터 정보


Parameter Info 뷰는 파라미터, 파라미터 값 또는 오퍼레이터 이름을 검색할 수 있는 검색 기능을 제공합니다. Runtime Parameter Only 필터를 사용하면 동적 파라미터, 즉 런타임 중에 편집할 수 있는 파라미터만 표시할 수 있습니다.

DRC Log

DRC Log 창에는 마지막 디자인 규칙 검사 결과가 표시됩니다. 경고/오류 메시지 아래에 나열된 모듈 이름 중 하나를 클릭하면 해당 디자인 창이 (디자인 패널에서) 포커스되며, 모듈이 선택되어 강조 표시됩니다.

DRC Log Information

그림 10. DRC 로그 정보


Build Log

The Build Log 창에는 마지막 빌드 결과가 표시됩니다.

Build Log Information

그림 11. 빌드 로그 정보


Help

Help 창은 개별 오퍼레이터에 대한 문맥에 맞는 도움말을 제공합니다.

문맥별 도움말을 열려면 다음 중 하나를 수행할 수 있습니다.

  1. 디자인에서 정보를 확인하려는 오퍼레이터를 직접 선택하고 F1을 눌러 Help 창에서 해당 정보를 열고 표시합니다.

  2. Operator Library 창에서 오퍼레이터를 선택합니다. Help 창에는 항상 현재 선택 항목에 대한 도움말이 표시됩니다.

예: MergeKernel 연산자에 대한 정보 표시

그림 12. 예시: MergeKernel 오퍼레이터에 대한 정보 표시


다른 창에서 F1을 누르거나 도움말 버튼을 클릭하면 현재 선택한 창 또는 기능에 대한 문맥별 사용자 설명서 도움말이 열립니다. 물론 이 사용자 문서에서 직접 오퍼레이터 도움말에 액세스할 수도 있습니다. Operator Reference를 참조하십시오.

Library Panel

라이브러리 패널에는 탭 뷰로 Operator Library 창, User Library 창 및 Custom Library 창이 표시됩니다.

모든 라이브러리(Operator Library, User Library, Custom Library 및 그 하위 라이브러리 전체)는 트리 구조로 구성됩니다. 각 라이브러리에는 오퍼레이터가 포함되어 있습니다.

구조의 시각화 방식은 "Tree", "List" 또는 "Icon" 뷰를 선택하여 변경할 수 있습니다.

‘Operator Library’가 전시된 도서관 패널

그림 13. Operator Library가 표시된 Library 패널


검색 필드에 검색어를 입력하여 목록에서 필요한 오퍼레이터만 필터링할 수 있습니다. 예를 들어 Camera를 입력하면 이름에 camera가 포함된 모든 오퍼레이터가 나열됩니다.

Operator Library

Operator Library는 VisualApplets 오퍼레이터, 즉 개별 이미지 처리 함수가 포함된 하위 라이브러리의 모음입니다.

Operator Library 창에서 오퍼레이터 이름을 클릭하고 정보 패널의 Help 탭을 클릭하면 각 오퍼레이터에 대한 자세한 정보를 확인할 수 있습니다.

‘Operator Library’가 전시된 도서관 패널

그림 14. Operator Library가 표시된 Library 패널


다이어그램에 새 오퍼레이터를 추가하는 방법은 'Inserting Operators'를 참조하십시오. 모든 오퍼레이터에 대한 자세한 문서는 Operator Reference에 나와 있습니다.

User Library

User Library에는 사용자가 정의한 오퍼레이터 조합(계층형 박스)이 포함된 사용자 지정 라이브러리가 포함될 수 있습니다. 자세한 내용은 'User Libraries'를 참조하십시오.

Custom Library

Custom Library로 오퍼레이터를 가져오는 방법은 'Custom Operator Libraries'를 참조하십시오.

프로그램 창 사용자 지정

VisualApplets의 기본 프로그램 창을 개인 취향에 맞게 조정하는 다양한 옵션이 있습니다.

도구 모음 사용자 지정

도구 모음은 드래그 앤 드롭으로 재배치하거나 마우스 오른쪽 버튼을 클릭하여 추가하거나 제거할 수 있습니다.

메인 프로그램 창의 기본 설정 복원

실수로 창이나 도구 모음을 원하지 않는 방식으로 배치한 경우 Window → Reset Dock Windows ( Ctrl+O )을 선택하여 기본 설정으로 복원할 수 있습니다.

다이어그램 탭을 별도의 창으로 도킹 해제

기본 창의 Design Panel에 있는 다이어그램 탭을 도킹 해제하여 디자인 내용이 플로팅 창에 나타나도록 할 수 있습니다. 이 기능을 사용하면 여러 화면을 사용하여 디자인을 편집할 수 있습니다. 이 기능은 세 가지 방법으로 액세스할 수 있습니다.

  1. 컨텍스트 메뉴를 통한 방법:

    1. 탭을 마우스 우클릭합니다.

    2. Float를 클릭합니다.

    컨텍스트 메뉴를 통한 도킹 해제

    그림 15. 컨텍스트 메뉴를 통한 도킹 해제


  2. Float 버튼 사용:

    1. 탭 위에 마우스를 올려 Close 버튼 왼쪽에 있는 Float 버튼이 나타나도록 합니다.

    2. Float 버튼을 클릭합니다.

    Float 버튼을 통한 도킹 해제

    그림 16. Float 버튼을 통한 도킹 해제


  3. 마우스 왼쪽 버튼 더블 클릭:

    1. 탭을 마우스 왼쪽 버튼으로 더블 클릭합니다.

도킹이 해제된 다이어그램 창은 일반 Windows 창처럼 자유롭게 사용하고 배치할 수 있습니다.

[참고] 창 상태가 저장되지 않음

디자인을 저장할 때 창 상태는 저장되지 않습니다. 따라서 디자인을 불러올 때 도킹이 해제된 창은 표시되지 않습니다.

이는 도킹이 해제된 창을 닫는 Back 및 Forward 기능에도 적용됩니다.

플로팅 창을 다시 도킹하려면 도킹 해제된 창의 툴바에 있는 Dock 버튼을 사용합니다. 이 버튼을 누르면 다이어그램 창이 활성 디스플레이 영역의 마지막 위치에 다시 도킹됩니다.

플로팅 창 다시 도킹

그림 17. 플로팅 창 다시 도킹


메인 창 내에서 디자인 패널 분할

기본 창 내에서 Design Panel을 분할하여 다이어그램 탭을 기본 창에 나란히 표시할 수 있습니다. 이 기능을 사용하면 여러 다이어그램 탭을 동시에 보고 편집할 수 있습니다.

Design Panel을 분할하려면:

  1. 이동하려는 다이어그램 탭을 마우스 우클릭합니다. 컨텍스트 메뉴가 열립니다.

  2. Move To Other View를 선택합니다.

    분할 보기 열기

    그림 18. 분할 보기 열기


그 결과 다이어그램 탭이 기본 창에 나란히 표시됩니다.

분할 보기

그림 19. 분할 보기


분할 보기를 종료하려면 컨텍스트 메뉴에서 Move All To Other View를 선택합니다. 이렇게 하면 선택한 디스플레이 영역의 모든 다이어그램 창 탭이 다른 디스플레이 영역으로 이동합니다.

[참고] 창 상태가 저장되지 않음

디자인을 저장할 때 창 상태는 저장되지 않습니다. 따라서 디자인을 불러올 때 분할 보기는 유지되지 않습니다.

이는 분할 보기를 닫는 Back 및 Forward 기능에도 적용됩니다.

File -> Recent Designs 아래의 파일 수

VisualApplets는 File → Recent Designs를 통해 최근에 연 VisualApplets 파일(*.va) 목록을 제공합니다. 표시되는 실제 파일 수를 구성할 수 있습니다.

최근에 연 파일이 몇 개 표시될지 지정하려면 다음과 같이 하십시오.

  1. 메뉴 Settings → System settings로 이동하여 Common 범주를 선택합니다.

  2. Recent designs에서 표시할 파일 수(최대 24개)를 지정합니다.

  3. OK(을)를 눌러 확인합니다.

최근 디자인 표시 개수 구성

그림 20. 최근 디자인 표시 개수 설정


다중 프로세스

VisualApplets 프로젝트에는 여러 프로세스가 포함될 수 있습니다. 프로세스는 다이어그램의 최상위 수준이며 임의의 수의 연산자와 계층형 상자(hierarchical boxes)를 포함할 수 있습니다. 각 프로세스는 개별적으로 시작하고 중지할 수 있습니다.

프로세스 4개를 사용하는 좋은 예는 4대 카메라 애플리케이션입니다. 예를 들어 examples\Acquisition\BasicAcquisition\iF-CXP12-Q\QuadCXP12x1AreaGray8.va 예제를 참조하십시오. 다음 그림을 살펴보십시오. 각 프로세스에 카메라, 버퍼, DMA 연산자가 포함된 4개의 프로세스가 표시되어 있습니다.

4개의 프로세스가 있는 Applet

그림 21. 4개의 프로세스가 있는 Applet


Applet을 사용할 때 4개의 프로세스, 즉 4대의 카메라 모두를 개별적으로 시작하고 중지할 수 있습니다. 4대의 카메라가 모두 동일한 프로세스에 있는 경우, 프로세스의 모든 DMA를 항상 시작해야 하므로 동시에 시작하고 중지해야 합니다.

하드웨어에서 VisualApplets 앱릿을 사용하는 방법에 대한 자세한 내용은 '하드웨어에서 앱릿 실행(Running Your Applet on Hardware)' 섹션 및/또는 Framegrabber SDK documentation을 참조하십시오.

프로세스 관리

새 프로세스를 추가하려면 Design → New Process를 클릭하거나 Edit 도구 모음에서 아이콘을 선택합니다.

새 프로세스 생성

그림 22. 새 프로세스 생성


프로세스를 제거하려면 먼저 해당 프로세스에 속하는 다이어그램 창을 선택한 다음 Design → Remove Process를 선택하거나 Edit 도구 모음에서 아이콘을 선택합니다.

프로세스는 항상 인덱스 0으로 시작하며 오름차순이어야 합니다. 프로세스가 제거되면 인덱스가 더 높은 프로세스가 이동하여 빈 자리를 채웁니다(Fill).

키보드 단축키

아래에서 VisualApplets에서 사용할 수 있는 모든 단축키 목록을 확인할 수 있습니다.

Main Program Window

단축키 메뉴 항목
Ctrl+N File → New Project
Ctrl+O File → Open Project
Ctrl+S File → Save Project
Ctrl+P File → Print Visible Diagram
Ctrl+Q File → Quit Application
Ctrl+Z Edit → Undo
Ctrl+Shift+Z Edit → Redo
Ctrl+Z Edit → Undo
Ctrl+X Edit → Cut
Ctrl+C Edit → Copy
Ctrl+V Edit → Paste
Del Edit → Delete
F2 Edit → Rename Module
Ctrl+I Design → Add Operator
Mouse 3+ Design → Add Operator
Ctrl+F Design → Search Module
F9 Analysis → Start Simulation
Ctrl+F7 Analysis → Design Rules Check Level 1
Ctrl+F8 Analysis → Design Rules Check Level 2
F7 Build → Build
F5 Build → Start microDisplay
F11 View → Full screen
Ctrl++ View → Zoom In Diagram
Ctrl+- View → Zoom Out Diagram
Ctrl+Mouse wheel up View → Zoom In Diagram
Ctrl+Mouse wheel down View → Zoom Out Diagram
Ctrl+Return View → Zoom Reset
Backspace View → Window Up
Ctrl+Space View → Toggle Hand/Selection Tool
Ctrl+Arrow Right Window → Next Diagram
Ctrl+Arrow Left Window → Previous Diagram
Drag+Drop 프로젝트 파일을 메인 창에 드래그하여 놓을 수 있습니다.

표 1. 메인 프로그램 창 단축키 목록


Simulation Viewer

단축키 메뉴 항목
Ctrl+Q File → Exit Simulation Viewer
Ctrl+C Edit → Copy Image to Clipboard
Del Edit → Remove Selected Images
Ctrl+Del Edit → Remove all Images
왼쪽 화살표 Navigation → Previous Image
오른쪽 화살표 Navigation → Next Image
Ctrl++ View → Zoom In
Ctrl+Mouse wheel up View → Zoom In
Ctrl+- View → Zoom Out
Ctrl+Mouse wheel down View → Zoom Out
Ctrl+Mouse 3 View → Normal Size 1:1
F11 View → Full Screen
Ctrl+F View → Fit to Window
Ctrl+T 보기 → 매핑된 썸네일
Ctrl+R 보기 → 매개변수 초기화
Drag+Drop 시뮬레이션 뷰어(소스) 또는 시뮬레이션 소스 모듈에 이미지를 직접 끌어다 놓을 수 있습니다.

표 2. 시뮬레이션 뷰어 단축키 목록


명령줄 옵션

VisualApplets는 예를 들어 배치 스크립트에서 사용하거나 시스템 환경에 프로그램을 연결하기 위해 몇 가지 명령줄 인수를 제공합니다.

구문 형식은 다음과 같습니다.

<VISUALAPPLETSINSTALLDIR>\VisualApplets <-COMMAND> <ARGUMENTS>

예상되는 인수와 함께 명령이 다음 표에 나열되어 있습니다.

명령 줄 인수 및 의미

-file

지정된 Tcl 스크립트에 저장된 명령을 실행합니다.

인수:

  • Tcl 스크립트 파일 이름(*.tcl)

-compile

지정한 파일을 로드하고 Applet을 생성합니다. 디자인 규칙에 따라 디자인이 검사됩니다.

인수:

  • VisualApplets 디자인 파일 이름(*.va)

  • 결과 Applet 파일 이름(*.hap)

-sdk

Framegrabber SDK와 함께 Applet을 사용하기 위한 SDK 예제(C 소스 코드)를 생성합니다. 디자인 규칙에 따라 디자인이 검사됩니다.

인수:

  • VisualApplets 디자인 파일 이름(*.va)

  • Pixelplant Applet 파일 이름(*.hap)

-KeepSyntheseTraceFiles

하드웨어 Applet을 생성할 때의 추가 옵션입니다. 빌드가 완료된 후 추적 목적으로 (빌드 프로세스 중에 생성된) 임시 파일을 유지합니다.

<VA file name>

지정된 VisualApplets 디자인 파일을 로드합니다.

예를 들어, 탐색기에서 더블 클릭하여 파일을 열 때 *.va 또는 *.vad 할당하도록 지정할 때 사용됩니다.

인수:

  • VisualApplets 디자인 파일의 파일 이름(*.va 또는 *.vad)

표 3. 명령줄 옵션 및 해당 인수


인쇄 / 스크린샷

VisualApplets는 다이어그램 창을 인쇄하거나 해당 콘텐츠를 이미지로 시스템 클립보드에 복사하는 기능을 제공합니다. 인쇄/스크린샷 기능은 현재 선택된 다이어그램 창에 적용됩니다. 제한된 해상도로 인해 콘텐츠의 일부가 현재 화면에 맞지 않더라도, 모든 연산자와 링크를 포함한 전체 창이 출력 대상으로 선택됩니다.

인쇄를 시작하려면 필요한 다이어그램 창을 선택하고 File → Print ( Ctrl+P )을(를) 선택합니다. 디자인 크기가 자동으로 조절됩니다.

스크린샷을 생성하여 클립보드에 복사하려면 필요한 다이어그램 창을 선택하고 Edit → Screenshot to clipboard를 클릭합니다. 스크린샷을 이미지 파일로 직접 저장하려면 Edit → Screenshot to file을(를) 선택합니다.