USBX

{title}

USBX는 Express Logic사의 고성능 USB Host, Device, On-The-Go(OTG) 임베디드 스택으로 완벽하게 ThreadX에 통합되며 ThreadX에서 지원하는 모든 프로세서에서 사용 가능합니다. ThreadX와 같이 USBX 또한 small footprint와 high-performance로 설계되었으며, USB Device 또는 Windows/Apple/Linux desktop 상의 USB 인터페이스에서 요구되는 Deeply Embedded Applications에 이상적인 제품입니다.

USBX SNAPSHOT

  • Small-footprint (small as 10KB, automatic scaling)
  • Fast execution
  • Supports all popular processors and tools (see below)
  • Passed USB-IF USBCV Test
  • Passed OTG Protocol Test (OPT)
  • TraceX system analysis support
  • Host, Device, and OTG support
  • Extensive Device Class support: CDC, HID, PIMA, RNDIS, STORAGE
  • Extensive Host Class support: ASIX, AUDIO, CDC, HID, HUB, PIMA, PRINTER, PROLIFIC, STORAGE
  • Full Source Code
  • Royalty-Free

Small Footprint

USBX 는 C 라이브러리 처럼 구동됩니다. 즉, Application 에서 사용된 기능들만 가지고 최종 이미지로 만들어 내기 때문에 사용하지 않은 기능들은 자동으로 배제시켜 Compact 한 이미지를 만들어 낼 수 있습니다.

Microcontrollers 상에서 USBX의 최소 Footprint는 10KB보다 작습니다!

Easy To Use

USBX는 매우 사용하기 쉽습니다. USBX의 API 이름은 알파벳으로 정렬된 것이 아닌 일반적인 다른 USB 제품들의 함수이름을 사용하고 있어서 USB APIs 직관적으로 이해하기 쉽습니다. 그리고, UX_API.H 한줄을 Application software에 Include하면 Application objects에 USBX 라이브러리들도 함께 링크가 되어 바로 사용할 수 있습니다 – it’s that simple!

#include “tx_api.h”
#include “fx_api.h”
#include “ux_api.h” <– 한줄 추가하면 끝!

/* Define demo thread information. */
#define UX_DEMO_STACK_SIZE 2048

Major Features

  • Available for host, device, and OTG
  • USB low speed, full speed and high speed are supported
  • Supports all embedded CPUs
  • Supports many USB host/device controllers in discrete or IP form integrated with a SOC including Synopsis, Philips, Atmel, NEC…
  • Supports most of the standard USB class drivers including mass storage, printer, HID, Audio, Hub, RNDIS, Data Pump, PTP, PictBridge, …
  • Can be ported to different CPU and memory architecture.
  • Integrated with Express Logic components (FileX and NetX)
  • USBX Host mode

    USBX Host mode는 Application이 USB devices(USB keyboard, a USB printer or USB Flash disk)와 통신할때 사용됩니다.
    USBX host는 아래와 같이 3 components로 나눠집니다 :

    • USBX Core Stack은 USB 장치 삽입시 검출과 USB에서 이용할 수 있는 모든 Protocols(Control, Bulk, Interrupt and Isochronous) 제거시에 반응을 합니다. 모든 장치를 제대로 검출하고, “플래그 앤 플레이” 기능으로 디바이스에 맞는 USB Class driver 찾는 것을 Core Stack단에서 보장합니다.
    • 특정 USB Host Chip 또는 특정 USB Host IP를 지원하는 USB Controller driver단입니다. USBX는 OHCI와 EHCI 그리고, 추가적으로 필립스 또는 다른 칩벤더들에서 생산한 USB Chip 등과 같은 USB Standards를 지원합니다. 이로써, Single host system에서 Multiple host controllers를 갖는 것이 가능하게 된 것입니다.
    • 각각의 USB 장치의 첫 연결에 대해 반응하는 USB Class Driver(s)입니다. USB Class에서는 HID, Printer, Storage 등 과 같은 Standard category 또는 특별한 Device로 나뉠 수 있습니다. 그리고, USBX Host Mode에서는 Cascading Hubs, Multiple configuration devices, Composite device 등을 지원할 수 있습니다.(*composite:합성의)

    USBX Device mode

    USBX Host mode는 Application이 USB devices(USB keyboard, a USB printer or USB Flash disk)와 통신할때 사용됩니다.
    USBX Device Mode는 Application에서 Windows/Apple/Linux desktop상에서 통신할때에 요구됩니다. 이러한 경우의 Embedded Device는 USB 장치 혹은 Slave로 연결되도록 고려하고 있습니다.
    아래와 같이 USB Device 측면에 대한 Architecure의 구조는 단순하지만 호스트와 비슷합니다.

    • USB Host enumeration 요청들을 처리하기 위한 USBX device core stack 단입니다.
    • 특정한 USB device chip 또는 특정한 USB device IP를 지원하는 USB Device Controller driver 단입니다.
    • Host에 의해서 각각의 USB 장치의 첫 연결에 대해 반응하는 USB Device driver Class 단입니다.
    • USBX Device mode에서는 Multiple configurations, Multiple interfaces, Multiple alternate settings을 포함하는 complex device framework을 지원할 수 있습니다.

    USBX OTG mode

    USBX는 On-The-Go(OTG) mode를 지원합니다.
    2개의 OTG-equipped controllers 간에 Host/Device(arbitration performed automatically as each connection is made)로 통신할 수 있습니다. 이것은 USB를 통해서 다른 장치에 접속하는 Host 또는 Device처럼 동작하는 게 가능하다는 것입니다.

    USBX Processor Support

    Licensing Overview

    USBX는 Royalty free 제품이고 라이센스 계약을 하셔야 합니다.
    당사로 연락주시면 라이센스별 허용범위 및 가격 등에 대한 정보를 상세하게 알려드리겠습니다. 감사합니다.

    Company : 이노에스제이(주)
    Tel : 02-6268-4500
    E-mail : info@innosj.com