Download presentation
Presentation is loading. Please wait.
1
Vinculum II Product Training
FAE Training – June 2010
2
Agenda Day 1 10:30 – 10:45 Introduction and housekeeping 10:45 – 11:45
VNC2 Introduction Kulraj Purewal Lunch 12:30 – 13:45 VNC2 Hardware 14:00 – 15:00 VNC2 Software Tool Chain and demo 15:15- 16:30 VNC2 Firmware – RTOS, drivers and VNC1L Firmware Support 16:30 – 17:15 VNC2 evaluation modules. Day 2 9:00 – 9:15 Vinculum II tool chain installation Gordon Lunn 9:15 – 11:00 Lab demos Break 11:15 – 12:30 Continue with Lab work. 13:00 – 14:00 Sales collateral. Key sales messages, FAQs. Wrap-up. 14:00 – 16:00 Open session.
3
Vinculum II Product Overview
FAE Training – June 2010
4
Contents Vinculum II (VNC2) Firmware & Tools VNC2 Applications
Evaluation Boards Summary
5
VNC2: Product Introduction
VNC2 is a programmable USB Host / Slave controller with embedded microprocessor core. Designed to provide powerful, programmable USB Host / Slave capability within embedded applications. VNC2 is FTDI’s 2nd generation of dual USB Host / Slave controllers. Enhanced features and capabilities over VNC1L: Upgraded CPU offering increased the processing power. Programmability, supports user customised firmware. Hardware acceleration of USB processing. Multiple interfaces Software design tools and development resources to enable faster time to market, as well as provide a low-risk easy to adopt solution. Information in VNC2 Data Sheet: Vinculum II Embedded USB Host Controller IC 16 bit uC as opposed to 8 bit uC. 256k Flash as opposed to 64k Flash 16k RAM as opposed to 4k RAM
6
VNC2: Architecture Two independent USB Host / Slave interfaces.
16-bit Harvard architecture MCU core. 48MHz Operation 256KBytes Flash Memory for firmware storage. 16KBytes RAM. Interrupt and timer interfaces
7
VNC2: Architecture Interfaces: UART SPI Slave SPI Master FIFO mode
8 PWM blocks GPIO Debug Interface 4 DMA engines for managing I/O transfers UART – Traditional interface for communicating with an embedded CPU device. Supports transfers up to 6MBaud SPI – 2x SPI slave. 4-wire interface, popular device interconnect. SPI can be used to drive display controllers. SPI master can also be used for SD card type interfaces Supports following modes: Full duplex, half duplex, half duplex (3-bits), and unmanaged mode. 1 SPI master port – Supports full and half duplex communications. 1 slave select pin. FIFO – Fast data communication interface, connects to PLD to FPGA type devices. ‘245’ implementation similar to other FTDI products. - Asynchronous and synchronous modes supported. - Asynchronous mode: 10Mbps max transfer rate - Synchronous mode: 48MBytes/s PWM – Pulse width modulation. Traditionally used to control motors. Allows the device to be used to connect to motorised or mechanical devices. - 8 PWM channels - 16-bit counter, trigger inputs. - Interrupt control - Generate 4 outputs with output enable. GPIO – Connect input / output devices to VNC2. Support up to 40 GPIO. Can be used with interrupts. Debug Interface – Single pin, supports half duplex operation at 1Mbps. UART style interface 8 data bits, 1 start bit and 1 stop bit. DMA Engines – Designed to manage data transfers between interfaces and memory and memory to memory. 4 DMA engines allow 2 interfaces to be used at the same time where 1 engine is used for TX and another for RX. Limited internal buffer memory within the device.
8
VNC2: USB Support VNC2 has two independent USB Host / Slave interfaces
USB 1.1 & USB 2.0 compliant interfaces. Supports 1.5Mb/s (Low Speed) and 12Mb/s (Full Speed) transactions. Supports 4 transfer types of the USB specification. Interrupt transfers: Bulk: Isochronous: Control USB Host capability Modelled on OHCI Host controller specification. Provides capability comparable to USB Host controller found on a PC. Very powerful, autonomous host engine, uses minimal CPU resources. Timely, reliable transfers, eg keyboard and mouse. Large blocks of data less time critical eg Printers, FT232R. Defined bandwidth & latency eg. Webcams. Used for device configuration and enumeration. Slide detailing USB support. 2 independent USB Host / Slave channels. Both channels are independent and therefore one port can be used as a host while the other can be used a slave. USB Transfers – Main change is the introduction of isochronous transfers opening up the use of the device for web cam or similar types of applications. USB Host capability OHCI host controller used, which is comparable to the type of USB host controller found in a PC. The advantage of this type of controller is that the USB processing is done in the controller, thus freeing up the CPU for user application processing. USB controller is not fully OHCI compliant, so customers cannot integrate their own OHCI drivers. Discussed later.
9
VNC2: Power Operation Low power operation. 4 Power modes.
Operating Mode Power Mode Power Consumption 48 MHz Normal 25mA 24 MHz Low-power 12-14mA (est) 12 MHz Lowest-power mode 8mA Fourth mode is a suspend mode, consuming ~150uA. I/O multiplexing, enables different interfaces to be supported on device I/O pins, providing added device flexibility. 48MHz / 25mA 12MHz / 8mA
10
VNC2: Packages LQFP and QFN have same pin assignments.
Device/Package VNC1 VNC2 Comments LQFP – 32 pin LQFP – 48 pin See app note AN_118 on migrating from VNC1L to VNC2 LQFP – 64 pin QFN – 32 pin QFN – 48 pin QFN – 64 PIN No sync FIFO in 32 pin package. LQFP and QFN have same pin assignments. The groupings are used by the IO_MUX to define the actual pin functionality. 2 USB ports, power and ground are available on all packages
11
VNC2 to VNC1L Summary Feature VNC1L VNC2 USB Mode 2 x USB 2.0 Host / Slave Transfer Modes Bulk / Interrupt Bulk / Interrupt / Isochronous CPU 8-bit Harvard architecture 16-bit Harvard architecture Memory RAM 4KBytes 16KBytes E-FLASH 64KBytes 256KBytes Interfaces UART, SPI slave, FIFO UART, 2 x SPI (slave), SPI (master), FIFO, PWM, Debug Pre-compiled firmware Yes Tools for creating own firmware No Configuration Ports UART, USB (after initial programming) UART or Debug port. Package 48-pin LQFP 32 pin LQFP/QFN, 48-pin LQFP/ QFN, 64-pin LQFP, QFN USB processing moved to hardware, freeing up CPU cycles 48-pin LQFP backwards compatible with VNC1L
12
Vinculum II Firmware
13
Introduction Major new feature of VNC2 is ability to support user developed firmware. Opens up many new potential uses and applications for VNC2. A new firmware development model has been adopted for VNC2. Based on a modular, layered architecture for maintainability and ease of use. Model split into 4 categories: VNC2 real-time operating system (RTOS) VNC2 device drivers. User applications – Tool Chain. Precompiled Firmware (same as VNC1L). Firmware model is consistent with traditional embedded systems design approach. Introduction on VNC2 firmware. Main point is that VNC2 supports user developed firmware. In order to support this FTDI have developed a new firmware support model which is based around an RTOS, device drivers, tool chain for user application development and pre-compiled firmware as in VNC1L. With the exception of the pre-compiled firmware the FTDI approach is consistent with the approach used when designing with traditional embedded processor systems. Developers of the VNC2 will be comfortable with the concept of an RTOS and device drivers.
14
(IDE, C Language Development)
Architecture FTDI Supplied Content User Application Math Stdio Stdlib Libraries Device Manager (IDE, C Language Development) Vinculum II Toolchain FS Upper Level Drivers FS Kernel Services SD Card BOMS HID HUB CDC This diagram shows the modular design of Vinculum II firmware. FTDI supplies drivers for all hardware interfaces available on Vinculum II. In addition, FTDI provides drivers for many standard USB device classes such as BOMS, HID, HUB, CDC and more. FS = File System (e.g. FAT, exFAT, ext2, ….. ) Tightly integrated with Drivers for performance FT232 Hardware Interface Drivers SPI Slave SPI Master USB Host USB Slave UART FIFO Vinculum II Hardware 14
15
Traditional embedded systems architecture.
VNC2 Firmware RTOS VNC2 RTOS provides a range of low-level management services to a firmware application. Functions: managing multiple threads, scheduling, interrupt handling, monitor application and CPU usage. Device Manager Manages access to device interfaces via drivers. Provides common interface for accessing interfaces. User application development via Vinculum II Toolchain Traditional embedded systems architecture.
16
Vinculum II Development Tools
17
Software Development Tool Chain
VinL VinC Firmware & Libraries Tool chain VinAsm VinDbg Source Files Vinculum II Chip Here is the block diagram for the IDE. As you can see in the diagram it acts as the mediator between the different components of software development. It gets the source files of the user and using the tools compile, assemble and link it together with the firmware and libraries (if necessary) to create the final executable ROM file and by using the debugger, programs and debugs the Vinculum II hardware. This is done with the least amount of user intervention as possible thus expediting the software development process VinIDE
18
Integrated Development Environment
Provides the environment to develop Vinculum II-based applications Easy-to-use GUI based environment, incorporates ability to edit, build and debug projects. Command line tools available. Integrates RTOS and drivers. Has many of the features of commercial IDEs used in the industry today The IDE is developed specifically for the Vinculum II chip to make it easier for those who want to develop software for the chip. It provides a handy user interface for faster and easier development rather than to write lengthy and sometimes difficult scripts to build your projects. The IDE allows you to do all that with just a click of your mouse. It takes from the developer the burden of having to configure the tools as well as the firmware thus making it easier to focus more on their applications The IDE provides most of the functionalities that are available with the other IDEs for the customer to use
19
VinIDE Ribbon Toolbar Watch Window Project Manager Source Editor
Memory Window Here is a screenshot of the main window of the IDE with the major components. The following slide will discuss these components and what they do Breakpoint Window Messages Window
20
Software Development Flow
Typical development flow: *.bin/*.rom file IDE *.obj file *.asm file V2CL Linker Assembler COMPILER Takes output from previous and generates file to be loaded into device. VinL Code is translated into low-level device commands. VinASM User writes code in ‘C’ language. VinC Debugger Code running in device. Verify code operation on device. VinDbg
21
Vinculum II Software VinC VinASM VinL
ANSI C compatible compiler with extended language features for VNC2 device. Carries out validation and compilation of C programs. ANSI C library support. VinASM Assembler tool used to convert compiler generated assembly code into object code. Disassembly used during code debug. VinL Linker, carries out code linking and code optimisation functions. Generates ROM/Binary output for device. ELF / DWARF2 compatible reports generated for external tool analysis. Vinculum II comes with a C language compiler known as VinC. VinC is an ANSI C compatible compiler with few customizations to provide better memory utilization. In addition, VinC also support some language level enhancement of ANSI C: to support Harvard memory architecture, to access and modify hardware I/O Ports, to support for Bit-Operations with ports and variables, to support for Inline Assembly. VinC implements validation of input c programs for syntax, semantics and type errors and reports them to the user. It proceeds with the compilation only when the validation is successful. VinC defines a formal calling convention; this allows creating projects with C, ASM programs and call them from one another
22
Vinculum II Software VinDbg – Debugger Tool
Allows debug of software code running on VNC2 device, via device Debug pin Supports standard code debugger features. Set and clear breakpoints. Walk-through code: Step-in, step-out, step-over and single step through code. Halt the program from executing. On screen editing of data value. Debugger requires hardware debug circuitry on VNC2 hardware. Breakpoints: One of the many basic feature of a debugger are Setting and Clearing a breakpoint. Breakpoints are intentional stopping or pausing place in a program where the user can inspect the program to find out whether the it functions as expected. Program Flow Control: Next are the Program flow controls. Program flow controls are controls where the user can go thru the source codes line-by-line and can inspect the values of the variables as the user steps thru the codes. It can also inform the user if the program executes or goes thru the expected lines of code. Step-in into a function will single-steps through instructions in the program, and enters each function call that is encountered. Step-out a function will execute the program out of a function call, and stops on the instruction immediately following the call to the function. Using this command, you can quickly finish executing the current function after determining that a bug is not present in the function. Step-over a function. If this command is used when you reach a function call, the function is executed without stepping through the function instructions. Single Stepping of code will single-steps through instructions in the program Halt the program from executing: At any desired point, the user can halt the program execution and inspect the program whether it functions as expected by examining the values of the variable and checking if it steps-thru the expected line of code. Support for On-Screen Editing of data-value: While on debugging mode or at halt, the user can manually change the value of the variables. It will give the developer an opportunity to observe an alternate program outcome by changing the value of the variables. Support for Multi-Level Debugging: Vinculum II Debugger support multi-level debugging. It will allow the user to debug both in C and assembly language code.
23
Pre-compiled Firmware
Range of VNC1L style firmware images will be released for VNC2. V2DAP: Disk and peripherals. Currently in development. V2MUSIC: planned V2DPS: planned Firmware will be supplied as a full source project as an application example. Number of additional examples: GPS Logger HelloWorld StillImage Capture Generic USB Host USB Slave Kitt LED demo Philosophers, multithread example. HID class
24
Vinculum II Applications
25
Vinculum Target Applications
VNC2 is targeted to provide programmable USB capability for embedded applications. Typical applications Adding USB Host capability to an embedded product. Connect a USB Flash drive to MCU/PLD/FPGA – data storage and firmware updates. USB Flash drive / SD card interfaces. Data backup/copier, eg Flash disk to Flash disk / SD card. Target applications in consumer, communications industrial and medical applications.
26
VNC2: Typical Applications
Consumer Electronics USB Flash drive data storage or firmware updates. Digital camera to USB Flash drive or similar USB client device interface. MP3 Player to USB Flash drive or other USB client device interface. Provide connectivity to iPOD / iPhone style devices. TV, PVR, Set Top Box – USB Flash drive. USB webcam. Flash drive to SD Card data transfer. Health monitors – Sports watches, training aids.
27
VNC2: Typical Applications
Communications Wireless Interfaces – 3G / Bluetooth. USB wireless process controller. Telecom system calls logging to replace printer log. Mobile phone to USB Flash drive. GPS to mobile phone interface. GPS tracker with USB Flash disk storage. Geo-tagging of photos – GPS location linked to image. Industrial & Medical Instrumentation USB Flash drive. Smart meters. Data-logger USB Flash drive. Scanners and cameras. …… more
28
VNC2 Application Examples
VMUSIC - VNC1L based design. MCU can reads music files from flash disk via VNC1L MCU controls playback via VNC1L via SPI interface. Support via VMSC firmware
29
VNC2 Application Examples
VMUSIC – VNC2 Upgraded Design. VNC2 replaces VNC1L and MCU to provide music playback and control New interfaces add extra capability, eg OLED display. VNC2 replaces VNC1L and MCU.
30
VNC2 Application Examples
GPS Module Design. VNC2 connects to GPS receiver. GPS data can be sent to USB Flash disk or to a PC for analysis using Map software. Other USB connection can be used for communications connectivity. GPS Logging featured in Vinculum Software Examples
31
Vinculum II Evaluation Boards
32
VNC2 Development Modules
V2-EVAL Complete evaluation and prototyping kit. 2 x USB type ‘A’ connectors, headers for access to interfaces, external power supply and prototyping area. VNC2 accessed via daughterboard site. V2DIP1/V2DIP2 Modules Compact, easy-to-integrate modules 0.1” pitch headers provide access to VNC2 device interfaces. VNC2 Debug Module Designed for loading and debugging firmware on VNC2
33
SUMMARY
34
Device Schedule VNC2 Rev A devices samples available now.
Errata TN_118: SPI slave unmanaged mode only available. Evaluation boards stock: V2_EVAL board with various daughter boards. V2DIP1 / V2DIP2 modules. VNC2 Debug module. VNC2 Rev B devices available in August.
35
Technical Collateral VNC2 Chip VNC2 evaluation modules
Datasheet. Errata. AN_118 Migration Guide. TN_108 VNC Chipset Comparison. VNC2 evaluation modules V2-EVAL datasheet. V2DIP1-32, V2DIP1-48, V2DIP1-64 datasheets. V2DIP2-32, V2DIP2-48, V2DIP2-64 datasheets. VNC2 Debug Module datasheet. Vinculum II Toolchain version 1.04 available. Contains many example projects. AN_137 IO Cell Description. AN_138 Debug Interface Description. AN_139 IOMUX Explained. AN_140 PWM Example.
36
Summary VNC2 is the second generation of FTDI’s Vinculum family of dual USB Host Controllers VNC2 handles the USB Host Interface and data transfer functions Encapsulates the USB device classes due to the inbuilt MCU and embedded Flash memory VNC2 handles the FAT File structure communicating via UART, SPI or parallel FIFO interfaces via a simple to implement command set when interfacing to mass storage devices such as USB Flash drives
37
Summary VNC2 provides a new cost effective solution for providing USB Host capability into products that previously did not have the hardware resources available VNC2 is available in Pb-free (RoHS compliant) compact 64-Lead LQFP, 64-Lead QFN, 48-Lead LQFP, 48-Lead QFN, 32-Lead LQFP and 32-Lead QFN packages. VNC2 comes with an extensive set of Tools, Firmware and Libraries (all FOC). VNC2 customer evaluation boards plus single and dual USB channel development modules are available to enable rapid development. Information in VNC2 Data Sheet: Chapter 4: Function Description
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.