88
VAB TM Starter’s Guide Visual Application Builder VAB Starter’s Guide May 2005 371603A-01

VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

  • Upload
    haanh

  • View
    239

  • Download
    2

Embed Size (px)

Citation preview

Page 1: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

VABTM

Starter’s GuideVisual Application Builder

VAB Starter’s Guide

May 2005 371603A-01

Page 2: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Support

Worldwide Technical Support and Product Information

ni.com

National Instruments Corporate Headquarters

11500 North Mopac Expressway Austin, Texas 78759-3504 USA Tel: 512 683 0100

Worldwide Offices

Australia 1800 300 800, Austria 43 0 662 45 79 90 0, Belgium 32 0 2 757 00 20, Brazil 55 11 3262 3599, Canada 800 433 3488, China 86 21 6555 7838, Czech Republic 420 224 235 774, Denmark 45 45 76 26 00, Finland 385 0 9 725 725 11, France 33 0 1 48 14 24 24, Germany 49 0 89 741 31 30, India 91 80 51190000, Israel 972 0 3 6393737, Italy 39 02 413091, Japan 81 3 5472 2970, Korea 82 02 3451 3400, Lebanon 961 0 1 33 28 28, Malaysia 1800 887710, Mexico 01 800 010 0793, Netherlands 31 0 348 433 466, New Zealand 0800 553 322, Norway 47 0 66 90 76 60, Poland 48 22 3390150, Portugal 351 210 311 210, Russia 7 095 783 68 51, Singapore 1800 226 5886, Slovenia 386 3 425 4200, South Africa 27 0 11 805 8197, Spain 34 91 640 0085, Sweden 46 0 8 587 895 00, Switzerland 41 56 200 51 51, Taiwan 886 02 2377 2222, Thailand 662 278 6777, United Kingdom 44 0 1635 523545

For further support information, refer to the Technical Support and Professional Services appendix. To comment on National Instruments documentation, refer to the National Instruments Web site at ni.com/info and enter the info code feedback.

© 1991–2005 National Instruments Corporation. All rights reserved.

Page 3: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Important Information

WarrantyThe media on which you receive National Instruments software are warranted not to fail to execute programming instructions, due to defects in materials and workmanship, for a period of 90 days from date of shipment, as evidenced by receipts or other documentation. National Instruments will, at its option, repair or replace software media that do not execute programming instructions if National Instruments receives notice of such defects during the warranty period. National Instruments does not warrant that the operation of the software shall be uninterrupted or error free.

A Return Material Authorization (RMA) number must be obtained from the factory and clearly marked on the outside of the package before any equipment will be accepted for warranty work. National Instruments will pay the shipping costs of returning to the owner parts which are covered by warranty.

National Instruments believes that the information in this document is accurate. The document has been carefully reviewed for technical accuracy. In the event that technical or typographical errors exist, National Instruments reserves the right to make changes to subsequent editions of this document without prior notice to holders of this edition. The reader should consult National Instruments if errors are suspected. In no event shall National Instruments be liable for any damages arising out of or related to this document or the information contained in it.

EXCEPT AS SPECIFIED HEREIN, NATIONAL INSTRUMENTS MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. CUSTOMER’S RIGHT TO RECOVER DAMAGES CAUSED BY FAULT OR NEGLIGENCE ON THE PART OF NATIONAL INSTRUMENTS SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER. NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING FROM LOSS OF DATA, PROFITS, USE OF PRODUCTS, OR INCIDENTAL OR CONSEQUENTIAL DAMAGES, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. This limitation of the liability of National Instruments will apply regardless of the form of action, whether in contract or tort, including negligence. Any action against National Instruments must be brought within one year after the cause of action accrues. National Instruments shall not be liable for any delay in performance due to causes beyond its reasonable control. The warranty provided herein does not cover damages, defects, malfunctions, or service failures caused by owner’s failure to follow the National Instruments installation, operation, or maintenance instructions; owner’s modification of the product; owner’s abuse, misuse, or negligent acts; and power failure or surges, fire, flood, accident, actions of third parties, or other events outside reasonable control.

CopyrightUnder the copyright laws, this publication may not be reproduced or transmitted in any form, electronic or mechanical, including photocopying, recording, storing in an information retrieval system, or translating, in whole or in part, without the prior written consent of National Instruments Corporation.

TrademarksNational Instruments, NI, ni.com, and LabVIEW are trademarks of National Instruments Corporation. Refer to the Terms of Use section on ni.com/legal for more information about National Instruments trademarks.

Other product and company names mentioned herein are trademarks or trade names of their respective companies.

Members of the National Instruments Alliance Partner Program are business entities independent from National Instruments and have no agency, partnership, or joint-venture relationship with National Instruments.

PatentsFor patents covering National Instruments products, refer to the appropriate location: Help»Patents in your software, the patents.txt file on your CD, or ni.com/patents.

WARNING REGARDING USE OF NATIONAL INSTRUMENTS PRODUCTS(1) NATIONAL INSTRUMENTS PRODUCTS ARE NOT DESIGNED WITH COMPONENTS AND TESTING FOR A LEVEL OF RELIABILITY SUITABLE FOR USE IN OR IN CONNECTION WITH SURGICAL IMPLANTS OR AS CRITICAL COMPONENTS IN ANY LIFE SUPPORT SYSTEMS WHOSE FAILURE TO PERFORM CAN REASONABLY BE EXPECTED TO CAUSE SIGNIFICANT INJURY TO A HUMAN.

(2) IN ANY APPLICATION, INCLUDING THE ABOVE, RELIABILITY OF OPERATION OF THE SOFTWARE PRODUCTS CAN BE IMPAIRED BY ADVERSE FACTORS, INCLUDING BUT NOT LIMITED TO FLUCTUATIONS IN ELECTRICAL POWER SUPPLY, COMPUTER HARDWARE MALFUNCTIONS, COMPUTER OPERATING SYSTEM SOFTWARE FITNESS, FITNESS OF COMPILERS AND DEVELOPMENT SOFTWARE USED TO DEVELOP AN APPLICATION, INSTALLATION ERRORS, SOFTWARE AND HARDWARE COMPATIBILITY PROBLEMS, MALFUNCTIONS OR FAILURES OF ELECTRONIC MONITORING OR CONTROL DEVICES, TRANSIENT FAILURES OF ELECTRONIC SYSTEMS (HARDWARE AND/OR SOFTWARE), UNANTICIPATED USES OR MISUSES, OR ERRORS ON THE PART OF THE USER OR APPLICATIONS DESIGNER (ADVERSE FACTORS SUCH AS THESE ARE HEREAFTER COLLECTIVELY TERMED “SYSTEM FAILURES”). ANY APPLICATION WHERE A SYSTEM FAILURE WOULD CREATE A RISK OF HARM TO PROPERTY OR PERSONS (INCLUDING THE RISK OF BODILY INJURY AND DEATH) SHOULD NOT BE RELIANT SOLELY UPON ONE FORM OF ELECTRONIC SYSTEM DUE TO THE RISK OF SYSTEM FAILURE. TO AVOID DAMAGE, INJURY, OR DEATH, THE USER OR APPLICATION DESIGNER MUST TAKE REASONABLY PRUDENT STEPS TO PROTECT AGAINST SYSTEM FAILURES, INCLUDING BUT NOT LIMITED TO BACK-UP OR SHUT DOWN MECHANISMS. BECAUSE EACH END-USER SYSTEM IS CUSTOMIZED AND DIFFERS FROM NATIONAL INSTRUMENTS' TESTING PLATFORMS AND BECAUSE A USER OR APPLICATION DESIGNER MAY USE NATIONAL INSTRUMENTS PRODUCTS IN COMBINATION WITH OTHER PRODUCTS IN A MANNER NOT EVALUATED OR CONTEMPLATED BY NATIONAL INSTRUMENTS, THE USER OR APPLICATION DESIGNER IS ULTIMATELY RESPONSIBLE FOR VERIFYING AND VALIDATING THE SUITABILITY OF NATIONAL INSTRUMENTS PRODUCTS WHENEVER NATIONAL INSTRUMENTS PRODUCTS ARE INCORPORATED IN A SYSTEM OR APPLICATION, INCLUDING, WITHOUT LIMITATION, THE APPROPRIATE DESIGN, PROCESS AND SAFETY LEVEL OF SUCH SYSTEM OR APPLICATION.

Page 4: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

© National Instruments Corporation v VAB Starter’s Guide

Contents

Chapter 1Getting Started with VAB

Installation .....................................................................................................................5Running VAB for the First Time...................................................................................6Verifying DSK Operation ..............................................................................................6What to Do First ............................................................................................................7System Requirements ....................................................................................................7

Chapter 2VAB Design Environment

Work Area......................................................................................................................9VAB Toolbar .................................................................................................................9

Customizing Your Menu .................................................................................9Status Line .....................................................................................................................10Block Worksheet............................................................................................................11

Positioning and Sizing a Block Worksheet .....................................................11Naming a Block Worksheet.............................................................................11Closing a Block Worksheet .............................................................................11

The Active Worksheet ...................................................................................................11Hierarchy Blocks ...........................................................................................................12

Chapter 3Menu Commands

File Menu Commands....................................................................................................15New..................................................................................................................15Open ................................................................................................................15Close ................................................................................................................16Save .................................................................................................................16Save As............................................................................................................16Print .................................................................................................................16Print Preview ...................................................................................................16Print Setup .......................................................................................................16Send .................................................................................................................16Recent Files .....................................................................................................17Exit ..................................................................................................................17

Edit Menu Commands ...................................................................................................17Undo ................................................................................................................17Redo.................................................................................................................17

Page 5: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Contents

VAB Starter’s Guide vi ni.com

Cut................................................................................................................... 17Copy ................................................................................................................ 17Paste ................................................................................................................ 17

View Menu Commands................................................................................................. 18Toolbar ............................................................................................................ 18Statusbar.......................................................................................................... 183-Dimensional Icon......................................................................................... 18Channel Arrows .............................................................................................. 18Channel Labels................................................................................................ 18Block Labels ................................................................................................... 18Line Labels...................................................................................................... 18User Controls .................................................................................................. 18Project Tabs..................................................................................................... 19Zoom ............................................................................................................... 19Layers.............................................................................................................. 19

Control Menu Commands ............................................................................................. 19Setup................................................................................................................ 19Connect ........................................................................................................... 20Disconnect....................................................................................................... 21Conditional Connect ....................................................................................... 21Conditional Disconnect................................................................................... 21Parameter Connect .......................................................................................... 21Parameter Disconnect ..................................................................................... 21Delete .............................................................................................................. 21Set Compile Order .......................................................................................... 21Text Box.......................................................................................................... 22Compile ........................................................................................................... 22Reset................................................................................................................ 22Run .................................................................................................................. 22Frame Step ...................................................................................................... 22Single Step ...................................................................................................... 22Stop ................................................................................................................. 23Set Frame Step ................................................................................................ 23Show Status (Turbo Mode On When Disabled) ............................................. 23

Blocks Menu Commands .............................................................................................. 23Select Blocks................................................................................................... 23Add New Block............................................................................................... 24Auto Build Menu ............................................................................................ 24

DSP Target Menu Commands....................................................................................... 24Default Driver ................................................................................................. 25Load with Default Driver ................................................................................ 26DSP-Based Variables ...................................................................................... 26

Page 6: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Contents

© National Instruments Corporation vii VAB Starter’s Guide

Driver Files......................................................................................................26Help...................................................................................................26Initialization ......................................................................................26Output................................................................................................27Revision History ...............................................................................27

Driver Globals .................................................................................................27Driver Setup.....................................................................................................28Link Files.........................................................................................................28Import File .......................................................................................................29Export Application ..........................................................................................30Memory ...........................................................................................................31

Copy ..................................................................................................31Dump.................................................................................................32Fill .....................................................................................................33Load ..................................................................................................34Plot ....................................................................................................34Search................................................................................................36Map ...................................................................................................36Usage.................................................................................................37

Symbols ...........................................................................................................38Profile ..............................................................................................................39Syncs................................................................................................................40Interrupts..........................................................................................................41Statistics...........................................................................................................42DSP Control.....................................................................................................42

Tools Menu Commands.................................................................................................43Stand-Alone Application Builder ....................................................................43Block Wizard...................................................................................................43ANSI C Code Generator..................................................................................43Filter Design Utility.........................................................................................43Scientific Calculator ........................................................................................43Customize Tools..............................................................................................43

Options Menu Commands .............................................................................................44External I/O Menu Commands........................................................................44

External Input Connection ................................................................44External Output Connection..............................................................44

Stop On Warning.............................................................................................44Snap To Grid ...................................................................................................45Solid Grid ........................................................................................................45Set Icon & Display Size ..................................................................................45Set System Colors and Fonts...........................................................................45Customize Toolbars.........................................................................................45

Page 7: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Contents

VAB Starter’s Guide viii ni.com

Project............................................................................................................................ 46Undo Buffer Size ............................................................................................ 46PC-Based Variables ........................................................................................ 46Previous Level................................................................................................. 46Security/Permissions....................................................................................... 46Properties ........................................................................................................ 46

Window Menu Commands............................................................................................ 46Cascade ........................................................................................................... 46Tile Horizontally ............................................................................................. 47Tile Vertically ................................................................................................. 47Arrange Icons .................................................................................................. 47Refresh Display............................................................................................... 47Close All ......................................................................................................... 47Opened Files ................................................................................................... 47

Help Menu Commands.................................................................................................. 47Contents .......................................................................................................... 47Search for Help On ......................................................................................... 48How to Use Help............................................................................................. 48Block Function Reference............................................................................... 48Tip of the Day ................................................................................................. 48About............................................................................................................... 48

Other Commands........................................................................................................... 49Block Annotation ............................................................................................ 49Block Parameter Setting.................................................................................. 49Block Description ........................................................................................... 49

Chapter 4Working with Block Components

DSK Memory ................................................................................................................ 51Choosing a Framesize for Your Block Components ...................................... 52How Many Blocks Can You Use in a Worksheet? ......................................... 52Using Native Blocks versus Vector-Based Blocks ......................................... 53

DSP-Based Native Blocks............................................................................................. 53Native Variable Operators .............................................................................. 54

Read Element At............................................................................... 54Variable Read ................................................................................... 54Variable Read with Offset ................................................................ 54Variable Write .................................................................................. 54Variable Write with Offset ............................................................... 54Write Element At.............................................................................. 55

DSP-Based Vector Block Components ......................................................................... 55PC-Based Block Components ....................................................................................... 55

Page 8: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Contents

© National Instruments Corporation ix VAB Starter’s Guide

DSK Hardware-Specific Blocks ....................................................................................55Transferring Data from the DSK to VAB for Display or PC-Based Processing ...........55Profiling Your Design....................................................................................................56

Chapter 5A Tutorial

Starting a VAB Session .................................................................................................57Selecting Block Components.........................................................................................58Establishing the Data Flow ............................................................................................59Changing a Block’s Parameters .....................................................................................61Running the Worksheet .................................................................................................61Using a Parameter Connect............................................................................................62Using Edit Cut/Copy/Paste/Undo ..................................................................................64Using Hierarchy in a Worksheet....................................................................................65Saving the Worksheet ....................................................................................................65

Chapter 6Sampled Data Acquisition Systems

A Sampled Signal ..........................................................................................................69Data Acquisition ............................................................................................................70Analog Signal Band Limiting ........................................................................................71

Appendix AVAB Mathematical Operators

Appendix BVAB Example Worksheets

Page 9: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

5

Getting Started with VAB The starting point for your DSP development

Congratulations! With your copy of Visual Application Builder (VAB) software, you will soon be introduced to a powerful visual DSP design environment. This software is intended to allow you to easily create your own DSP algorithms for use on Texas Instruments DSK hardware.

Visual DSP design is a methodology of developing DSP algorithms and systems graphically by simply connecting functional block components together with point-and-click methods. As you will see from the use of VAB, algorithms can be built-up extremely quickly and efficiently. For those of you who are using a the DSK DSP board, you will be able to create real-time DSP implementations and experience an incredibly efficient means of graphical programming � without having to write any source code at all! Imagine � actually programming a DSP without having to use C or assembly language. This is the power that VAB gives to you.

This user manual will provide the basic information needed to run VAB. This chapter provides software installation instructions, steps to take first, and an overview of the VAB tools that are available. Further chapters will provide tutorial and reference information, including block component descriptions.

Installation Installation of the VAB software requires a CD-ROM drive and a hard drive partition with approximately fifty megabytes of available space. Follow these directions to install the VAB software onto your hard disk.

To install VAB

1. Make sure that your computer and monitor are turned on and that you have installed Microsoft Windows (95/98/NT).

2. Insert the Hyperception VAB installation CD-ROM into your CD-ROM drive. The VAB installation will be invoked automatically unless the CD-ROM Autorun option has been disabled.

If the Autorun feature has been disabled you can begin manual installation by following steps 3 & 4 below:

3. Move the mouse pointer to the Run... on the Start menu and click once to choose the Run command. The Run dialog box will appear on your screen.

4. Use the Browse option to select the VAB Setup.exe program from the VAB CD-ROM Disk1 folder.

5. As the VAB is installed, follow the instructions on your screen. The installation program will automatically detect whether or not you have enough space available on your hard drive.

Chapter

1 VAB allows you to easily create your

own designs for real-time use on the TI DSK hardware �

without ever having to write any C or

assembly source code!

After installation is complete, you can

select the VAB icon from the Start

Programs Hyperception folder,

or select the VAB button from the

HyperLAB toolbar.

Page 10: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

G E T T I N G S T A R T E D W I T H V A B

6

Running VAB for the First Time After you have completed the VAB installation you can select the VAB icon from either the newly installed �HyperLAB Taskbar� located at the top of your computer screen or directly from the Start Menu Hyperception folder. HyperLAB is a taskbar that appears on your Windows desktop after installation of the VAB software. It contains shortcut buttons to various tools/programs included with the VAB application. This taskbar will appear each time Windows is started.

When you run the VAB software for the first time the program will attempt to detect the DSK hardware. If the VAB cannot locate the DSK at the default location of LPT1, or if the DSK is not connected, or a problem is encountered, then VAB will issue a warning message. Next, VAB will perform a one-time build of its block components (this will occur regardless of whether or not VAB has located the DSK).

VAB initially will expect the DSK to be connected to LPT1. If you do receive a warning message and the VAB software cannot locate the DSK, then you should take steps to verify VAB�s LPT selection options (see next section). For example, if your DSK is connected to LPT2 then the VAB will initially not be able to communicate with it. You will need to take a moment to setup VAB and DSK communication settings. Information on doing this is described in the next section.

Verifying DSK Operation Remember that VAB has been designed to run on the DSK hardware. This means that you will need to have the DSK setup and connected to your computer�s parallel port in order for VAB to communicate to the DSP hardware. Please refer to the DSK documentation for information on properly connecting the DSK hardware to your computer.

VAB will not operate correctly if it cannot communicate to the DSK hardware. To verify that VAB can communicate to the DSK hardware you should select the VAB DSP Target Driver Setup... menu command. Selection of this command will result in the appearance of a dialog box that will allow you to select the proper LPT setting for your DSK.

VAB Driver Setup dialog box

You can determine whether or not the DSK is responding at the chosen LPT setting by using the Test button. This feature will attempt to find the DSK hardware at the LPT

Verify VAB�s LPT setting if the C31

DSK hardware does not respond.

Page 11: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

7

address you�ve selected. If the board is found, the test operation will continue by writing/reading DSK memory. If the test is successful, then the DSK is correctly responding to the VAB software, and you will see a message box similar to the one shown below:

Driver Test �Pass� Message Box

What to Do First After you have installed VAB onto your computer and verified that the DSK is responding, you are ready to get started. There are several ways in which you can begin using VAB. You can jump right in and start by running some of the sample worksheets that have been provided with the software. You might even feel more comfortable by working your way through the tutorial section in Chapter 5 to become acquainted with VAB�s features.

If you are using VAB with the DSK DSP board you will probably want to check out Chapter 2 (VAB Design Environment) and Chapter 4 (Block Components) for information about creating your own real-time algorithms on the DSK hardware. These chapters provide some useful instructions and explanations for using the real-time block components with the DSK hardware.

No matter which method of beginning suits your style, you will still want to read through the remaining chapters of the user manual for additional information and tips. It is advised that you read these chapters to facilitate your use of the VAB software.

System Requirements The VAB software program has been developed to run under Microsoft Windows 95, 98, and NT. The exact amount of extended memory required to run the application depends upon the particular application being run, the number of other applications being run, and the complexity of the work being done. In general, the following requirements must be met to correctly use VAB software with Microsoft Windows.

• A personal computer with Intel 80386 processor (or higher) with 4 MB or more of memory

• Microsoft Windows 95, Windows 98, or Windows NT

• A hard disk drive with ~5 MB of free space

• A CD-ROM Drive

Start by trying the example worksheets

provided, or create your own by following the

tutorial section.

Page 12: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

G E T T I N G S T A R T E D W I T H V A B

8

• A pointing device supported by Windows

Page 13: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

9

Chapter

2 VAB Design Environment Becoming familiar with the VAB visual design environment is the first step towards getting the most out of its powerful capabilities.

This chapter will discuss the user interface of the VAB visual design environment. This material is presented because a thorough understanding of how the VAB environment works is essential if you are to fully gain the benefits of this powerful development tool. Follow-on chapters will briefly discuss the VAB main menu and toolbar commands that are used to control the application.

Some of the key components discussed in this section are the VAB Work Area, the Toolbar, the Status Line, the Block Worksheet, and the Hierarchy Block Worksheet.

Work Area The VAB �Work Area� is used to organize individual block worksheets. The work area is located between the menu toolbar located at the top of the application and the status bar located at the bottom of the application. It is important to remember that the work area is used as a means of organizing worksheets, and is not an area to connect block component icons. (Connecting block components is performed in the worksheet.)

When you first run VAB, the program will automatically create an empty worksheet and place it into the work area for you.

VAB Toolbar The VAB menu commands are located beneath the VAB window caption bar and are arranged as selectable pull-down menus, each of which has a list of submenu commands. In addition to these menu commands, a toolbar with selectable button commands is available. The toolbar commands will perform exactly as their menu command counterparts, but provide an alternative method of VAB command selection.

The toolbar is initially located directly beneath the VAB menu commands, but can be repositioned anywhere in the VAB Work Area by simply dragging the toolbar into a new position. The toolbar can easily be �docked� by dragging it to the edge of any VAB window boundary.

VAB Toolbar

Customizing your Menu You may find it useful to customize the VAB menu to provide an easier access to VAB menu commands. By using a right-click of your mouse anywhere in the VAB work area you can cause the VAB Customize� option to appear. Selecting this option will bring up a dialog box in which you can choose those menu commands that you use most often. This will allow you

The VAB Work Area is a workspace that

holds many different block worksheets.

The VAB Toolbar can be positioned

anywhere in the Work Area by simply dragging it into

Page 14: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

10

to select VAB menu commands through use of a convenient right-click of the mouse as opposed to using either the VAB menu or toolbar.

Customize� right-mouse button command (entering user-selectable menus)

Customize� right-mouse button command (after user-selectable menus have been entered)

Status Line The VAB Status Line is located at the bottom of the application�s main window and is used to provide status information to you. The status line is organized into three areas each of which provides environment status messages.

The first section of the status line is used to show the current operational state of the application. When a block worksheet is run, a status message for each block component will be displayed when the block is processed. This status will indicate whether the block component is running, or if the block component has a warning message associated with it. When a block component is chosen from the Block Function Selector, a status message will indicate whether the block function was loaded successfully. In addition, clicking on a block icon in a worksheet will display a brief description of that particular block function. This section of the status display will be used for most general information and messages.

The second section of the Status Line is used to keep track of the number of PC-side frames that have been processed by VAB.

Page 15: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

11

The third section of the Status Line will similarly show the run duration of a block worksheet in seconds. Note that the speed at which a worksheet executes (on the PC-side) can be greatly speeded up by turning the status information to off via the Show Status menu command.

Block Worksheet The VAB visual design environment allows you to create individual Block Worksheets. A Block Worksheet is a window that serves as a workspace for your simulations, and may be thought of as being like a piece of paper in which an algorithm may be drawn. Each worksheet can contain many block components arranged in a structured algorithm. Also, each worksheet is capable of incorporating other block worksheets to provide a hierarchical1 design approach.

Block worksheet windows can be sized by dragging the corners of the worksheet, minimized by selecting the minimize box in the worksheet�s upper-right corner, restored by double-clicking the minimized block worksheet icon, and closed by selecting the worksheet�s system menu close command. Each block worksheet contains a caption bar, which will distinguish it from other worksheets in the work area.

When the VAB application is first run, an empty worksheet is automatically created in the work area. The worksheet will contain the name �Worksheet 1� in its caption bar. The figure above shows an empty block worksheet.

Positioning And Sizing A Block Worksheet You can drag the worksheet into position in the work area by selecting the worksheet�s caption bar. You can re-size the worksheet by selecting the corner of the worksheet and dragging it to a new size. The scroll bars of the worksheet will allow you to view sections that lie outside the current viewing area.

Naming A Block Worksheet The worksheet can be saved to a filename by use of the File Menu Save command. See section �File Menu Commands - Save�, in this user manual for more information on saving a block worksheet to a file.

Closing A Block Worksheet The block worksheet can be removed by choosing the worksheet�s system menu close command or by double-clicking the upper-left corner of the worksheet. It is not possible to close a worksheet while it is running.

The Active Worksheet The VAB visual design environment supports the use of multiple worksheets. However, only one worksheet can be active at a given time. When you select the �Run� command only the active worksheet will be processed. It is important to keep track of which worksheet is active. The active worksheet caption bar will be painted the same color as the work area caption bar. To select a worksheet as the active worksheet you can simply select the desired worksheet�s caption bar with a single-click of the left mouse button.

1 Please see section on Hierarchy Block Worksheets, later in this chapter.

A block worksheet is used to hold the block

components that make up the algorithm.

Page 16: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

12

When a worksheet is active, all block components, including hierarchy block, (see below) can run. If however, you select a hierarchy block as the active worksheet and then try to run the application, only the hierarchy block will run. You may find it helpful to always be aware of which worksheet is active by checking the VAB caption bar.

Hierarchy Blocks Any VAB block worksheet that has been inserted into another block worksheet is referred to as a �hierarchy block worksheet� or �hierarchy block�. The hierarchy block must have been created (typically with external inputs/outputs) and saved as a worksheet with file extension .LSS. At the time the worksheet is saved it is added to the VAB block component menu under a user-selected library, group, and function menu name. This block may then be used in worksheets in the same fashion as non-hierarchical block components. Hierarchy block worksheets must be designed with external connections if data is to be passed to/from other block components.

Conditional execution of hierarchy block components allows the hierarchy block to execute based on a user-specified expression. Hierarchy blocks can evaluate �if�, �while�, and �for� statements to determine if and how many times to run before returning control. To access this feature, create a hierarchy block as normal, and insert it into a worksheet, then right click on the hierarchy block and select the �Set Condition� menu option. A dialog box will then be displayed and allow a condition to be entered. The condition can be composed of any combination of project variables and the conditional and mathematical operators.

The syntax for the execution condition is the standard C syntax for �if� and �while� statements. The �for� statement is very similar to C syntax. The �for� statement is broken into three parts, the initialize statement, the loop condition statement, and the increment statement. The initialize statement is optional, but if present, it should be of the form <var>=<equation> where equation may be a single value or an expression. The loop condition is required, and can be any valid boolean expression supported. The increment statement is optional, but if present should be of the form <var>++, <var>--, <var>+=<equation>, <var>-=<equation>, or <var>=<equation> where <var> is a defined project variable and equation is a combination of project variables and/or constant values.

With this feature it is possible to cause a hierarchy block to never run or to never stop running. In either case the Stop command will terminate the worksheet even if the hierarchy block has been set to run in an infinite loop.

In addition to the functions and operators listed in Appendix A, the following relational operators have been added greater than (>), greater than or equal (>=), less than (<), less than or equal (<=), equal (==), and not equal (!=).

Examples:

for(index=0; index<10; index++) - This statement causes the hierarchy block to execute 10 times each cycle. As the hierarchy block runs, the value of variable index ranges from 0 to 9.

if(index<5) � This statement causes the hierarchy block to run if and only if the value of variable index is less than 5.

Hierarchy blocks can be setup to evaluate

�if�, �while�, and �for� statements to

determine the number of times to run before

returning control.

NOTE: This conditional execution

feature is not available in VAB. Please contact

Hyperception for information on

products that do provide this capability.

Page 17: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

13

while(index != 3) � This statement causes the hierarchy worksheet to execute while the variable index does not equal 3. Please note, if the hierarchy worksheet does not modify the variable index, then this is an infinite loop that will never return control, however, the stop button will still halt the worksheet.

if(0) � This statement causes the hierarchy worksheet to never run.

Page 18: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

14

Page 19: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

15

Menu Commands VAB Menu Commands

The VAB menu commands are located beneath the main window caption bar and are arranged as selectable pull-down menus. Each of these menus contains a list of submenu commands. This starter�s guide will list some of the common commands and include File, Edit, View, Control, Blocks, DSP Target, Tools, Options, Project, Window, and Help. Selection of the menu names or use of the keyboard accelerator controls (pressing the Alt key and the letter shown underlined) will also allow you to access the commands.

In addition to the menu commands, a toolbar with selectable button commands is available. The toolbar is initially located directly underneath the VAB menu, but you can move it to any location by simply dragging it to a new position with the mouse. The toolbar commands perform exactly as their menu command counterparts, but provide an easier method of selection. To select a command from the toolbar place the mouse cursor over the desired command button and choose it with a single-click of the left button of the mouse. You will notice that a description of the command will be displayed on the VAB Status line whenever the mouse cursor is placed over a toolbar button.

Note: Not all menu commands are active in VAB. Some menu items will appear �grayed-out� and will not be user-selectable. Hyperception does offer other software products that do provide access to these commands. If you would like to receive information on these products please contact Hyperception.

File Menu Commands The file menu is shown either by clicking on the VAB File menu name or by pressing Alt+F.

New New (Ctrl+N, Toolbar button): The New command will create a new (empty) worksheet. The new block worksheet will become the active worksheet and will be displayed as the top-most worksheet window. No filename is associated with the new worksheet until it is saved. Its caption bar will be shown as:

Worksheet x

where x is the assigned number of the block worksheet.

Open Open (Ctrl+O, Toolbar button): The Open command will load an existing worksheet file into the work area. After selecting the Open command a dialog box labeled Open will appear. After selecting a file and clicking the OK button the application will load the chosen worksheet file. Its caption bar will be shown as:

filename.ext

Chapter

3 Not all menu

commands listed here are active in VAB.

Some menu items will appear as �grayed-out�. These menu

commands are available in other

Hyperception software products. Please feel

free to contact Hyperception for

additional information on these products.

Page 20: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

16

where filename.ext is the selected worksheet filename.

Close Close: The Close command will close the current worksheet. If you have made any changes to the worksheet you will be prompted to save the worksheet; otherwise, the worksheet will be closed immediately.

Save Save (Ctrl+S, Toolbar button): The Save command will save the active block worksheet to a file. Upon selection of this command a dialog box labeled Save will appear. You will be able to specify a path and filename for the worksheet (.LST or .LSS) file. If the worksheet you are saving is a Hierarchy worksheet (has external inputs or outputs) then VAB will prompt you to enter a library, group, and menu name of the hierarchy worksheet.

Save As... Save As: The Save As command allows you to specify a path and a new filename for an existing worksheet. Upon selection of this command, a dialog box labeled Save As will appear. After selecting the name of the worksheet and clicking the OK button, VAB will save the new worksheet.

Print Print (Ctrl+P, Toolbar button): The Print command will print the active worksheet. When choosing this command, a basic menu is presented where you may customize the following fields:

Print Quality ( High / Medium / Low / Draft ): Specifies the printing quality to be used.

Copies: Specifies the number of copies of the worksheet to be printed.

The Print Range and Collate Copies commands cannot be changed since the Print command only prints one worksheet at a time.

Print Preview Print Preview: Switches to a preview screen where the worksheet is displayed as it will appear as hardcopy.

Print Setup Print Setup: The Print Setup command allows you to select the printer to where the active worksheet will be printed. Parameters that can be changed include the orientation, size and source of the paper.

Send� Send�: The Send command is available if a compatible electronic mail system is in place. With this command, you can send the current worksheet to another user electronically.

Page 21: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

17

Recent Files [Recent Files]: This part of the File Menu lists the four most recent worksheets that have been active. The Recent Files list will initially appear empty until you have loaded some worksheets.

Exit Exit: Exits the application and returns to the Windows desktop or the most current application.

Edit Menu Commands The edit menu commands are used to cut, copy and paste block(s) and data line connections between the active worksheet and other opened worksheets. You can quickly duplicate a single block or several blocks by using the edit commands Copy and Paste. An Undo command is also provided to reverse the last edit menu command�s action.

To select an object or group of objects, you simply draw a box around the objects of interest. Drawing the selection box is accomplished by positioning the mouse cursor and then holding the left mouse button down while dragging to a desired location. Upon releasing the left mouse button, all objects completely within the selection box will be highlighted. The highlighted objects can then be moved into a new position, copied, or cut. Individual objects can be selected by left-clicking on the object. Both drawing boxes and selecting individual objects are done in Setup Mode.

Undo Undo (Ctrl+Z): The Undo command reverses, or undoes, the last command�s action.

Redo Redo (Ctrl+Y): The Redo command reverses, or undoes, the last Undo command�s action.

Cut Cut (Ctrl+X): The Cut command removes the selected object(s) and places them in the edit/paste buffer.

Copy Copy (Ctrl+C): The Copy command places a copy of the selected object(s) and places them in the edit/paste buffer.

Paste Paste (Ctrl+V): The Paste command places the object(s) saved in the edit/paste buffer with the Cut or Copy commands on the active worksheet.

Page 22: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

18

View Menu Commands The view menu commands are used to customize the user interface to show and remove the status bar and tool bars. The status bar is located at the bottom of the screen, and the toolbars are initially located at the top.

Toolbar Selecting this menu command will cause the toolbar to be hidden or displayed.

Statusbar Selecting this menu command will cause the status bar to be hidden or displayed.

3-Dimensional Icon 3-Dimensional Icon (Ctrl+3, Toolbar button): The 3-Dimensional Icon command toggles icon display between two and three dimensional icons. Repeated selection of this command will alternate between the two icon styles. This command option does not affect the performance of any block, but allows for customizing the application. In addition to its keyboard accelerator control, the 3-D icon command can be accessed through the pull down menu or through its toolbar button.

Channel Arrows Channel Arrows: The Channel Arrows command toggles channel arrow display between triangular shaped arrows and rectangular connection pads.

Channel Labels Channel Labels: The Channel Labels commands toggles the display of tool-tip controls that appear over the block when the application is in one of the connect modes. The channel labels are defined in each individual block�s resource file and assist in determining which channel is being connected.

Block Labels Block Labels: The Block Labels commands toggles the display of the block labels which appear beneath each block in the worksheet.

Line Labels Line Labels: The Line Labels command toggles the display of the line labels, which appear along the longest segment in the line.

User Controls Maximize User Controls: The Maximize User Controls command will toggle user control blocks between maximized and iconic representations.

Page 23: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

19

Project Tabs Project Tabs: Toggles the display of the project's tab view of the active worksheet. The Project Tab for a worksheet contains information on the block components used and lists hierarchy information.

Zoom� Zoom �: The zoom command displays a dialog box and allows the user to select the zoom size used by the print and print preview commands.

Layers� The Layers command is used to perform various layer-related functions. There are several commands in a sub-menu displayed by the Layers command. The following sections describe each of the commands.

View All Layer�: The View All Layers command activates all the layers available to be seen. A check-mark will appear by all the layers being displayed.

All Layers Off�: The All Layers Off command deactivates all the layers available from being seen. The check-mark will be removed from all the layers being displayed.

Send to Layer�: The Send to Layer command allows the user to highlight a block or group of blocks and send them to another layer. A dialog box will appear and the user can choose which layer or layers to receive the highlighted block or blocks.

AND/OR Layer�: The AND/OR Layer command appears as either AND Layer or OR Layer. Selecting AND Layer activates all layers containing a chosen block or set of blocks to be seen. Selecting OR Layer activates all layers to be seen.

Customize�: The Customize command allows the user to select the number of layers to be used. This command also allows for labeling each layer.

Control Menu Commands The Control menu is used to control the mode and execution of the VAB environment. The Control menu has four sections that control the mode, compilation, execution, and execution options for the VAB environment.

Setup Setup (Alt+Shift+S, Toolbar button): The Setup command places the environment in setup mode. The mouse cursor will be shown as an arrow. This allows you to double-click or right-click on an abject to modify it�s parameter setup and also to establish the placement of individual or groups of block functions within the block worksheet. Block functions can be relocated in the worksheet by selecting the block(s) with the mouse cursor and while holding the left button of the mouse down move the block into the desired position.

Page 24: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

20

Connect Connect (Alt+Shift+C, Toolbar button): The Connect command places the environment in Connect mode. This will allow for the connection of individual block functions within the worksheet. The mouse cursor will be shown as a cross-hair cursor labeled either �SOURCE� or �DEST� and is dependent upon whether the next connection is for a source block or a destination block. It is important to follow the correct connection scheme. For example, an input signal generator block connected to an output single-channel display block would use the �SOURCE� cursor to select the signal generator block, and the �DEST� cursor to select the single-channel display block.

When connecting from a source or to a destination block with more than one channel, the distinction among channels is accomplished by proximity (vertically oriented) to the desired channel. For example (see diagram), if there are two channels to select between, the cursor should be located within the block icon boundaries, vertically closest to the desired channel arrow.

The process of establishing the �Data Flow Relationship� among blocks is typically referred to as �connecting� blocks. You will need to enter the Connect mode when attempting to connect block components together. After selecting the Connect mode, the cursor will change to a target cursor with the label �Connect�. As the name implies, you should connect (by clicking once) on either the source or destination channel of the desired block component.

After the source channel is selected, the cursor immediately changes to a target with the word �Dest� under the target. Now the user should connect, by clicking once, to the destination channel of the particular destination block. A line will be drawn immediately to indicate the data flow relationship that has just been established. This process should be repeated until all channels are connected.

As the figure below shows, each block icon, or bitmap, is split into the source side (left half) and the destination side (right half). You can connect from source to destination or from destination to source and this is dependent upon which half of the block is first clicked. The cursor will change and be labeled either �SOURCE� or �DEST�; this is dependent upon whether the next connection is for a source block or a destination block. It is possible to connect to multiple destinations by first left-clicking on the source block and then using the right mouse button to click on the intended destination blocks.

Channel 1 Region

Channel 2 Region

Note: Block Connections must be made within the Block Icon

Channel 1 Region

Channel 2 Region

BLOCK CHANNEL CONNECTIONS

BlockIcon

Channel 3 Region

Destination RegionSource Region

Block showing source/destination regions with multiple block input/output channels

A block component can be resized to provide for

easier connection. Simply drag the block

into the desired position with the mouse.

You can connect to multiple destination

blocks by first using a left-click to select the source

block, and then use a right-click on each of the

destination blocks.

Page 25: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

21

Disconnect Disconnect (Alt+Shift+D, Toolbar button): The Disconnect command places the VAB environment into a disconnect mode. This will allow for the disconnection of individual block functions within the worksheet. The mouse cursor will be shown as a cross-hair cursor labeled either �SOURCE� or �DEST� depending on whether the next disconnection is for a source block or a destination block.

Conditional Connect Conditional Connect (Ctrl+Shift+C, Toolbar button): The Conditional Connect command connects a block as an operator such that the first element in the source output frame determines the run state of the destination block. Conditional connections are red (default) in color and connect to the top of destination blocks to distinguish them from standard data connections and parameter connections.

Conditional Disconnect Conditional Disconnect (Ctrl+Shift+D): The Conditional Disconnect command removes a conditional connection.

Parameter Connect Parameter Connect (Ctrl+Alt+Shift+C, Toolbar button): The Parameter Connect command controls a block�s parameters such that the first element in the source output frame determines the run state of the selected parameter of the destination block. Parameter connections are initially green (default) in color and connect to the bottom of destination blocks to distinguish them from standard data connections and conditional connections.

When you have established a parameter connection, a dialog box will appear in which you can select which of the connected block�s setup parameter to affect.

Parameter Disconnect Parameter Disconnect (Ctrl+Alt+Shift+D): The Parameter Disconnect command removes a parameter assignment (green) connection.

Delete Delete (Delete or DEL depending on keyboard, Toolbar button): The Delete command places the environment in Delete mode. This will allow for the removal of individual block functions from the block worksheet. In addition to deleting blocks, any connection between blocks may also be deleted. When in the delete mode, the mouse cursor will appear as an �arrow and a pair of scissors�. To remove a block or connection, place the mouse cursor over the object to be removed and select the left button of the mouse. Any highlighted objects selected in Delete mode will be removed to the Paste buffer.

Set Compile Order Set Compile Order: The Set Compile Order command allows the user to manually set the compile order of the blocks. This information is saved in the list file so that the integrity of the design is preserved. When this option is selected the compilation sequence is delineated by the use of numeric labels that are attached to the individual block icons.

The Conditional Connect mode is a very powerful

feature that allows a block function�s data output to

control whether or not another block (or group of blocks) will be executed in

a worksheet.

The Parameter Connect mode allows any block�s

data output to directly modify any other block�s

function parameters.

Page 26: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

22

Text Box Text Box (Toolbar Button): The Text Box command allows you to create a text box object that can be placed anywhere in the worksheet. The text box allows you to select the font, color, and size of the text and can be moved anywhere in the worksheet. This command is useful for providing a means of adding annotation to the worksheet.

Compile Compile (Ctrl+F8, Toolbar button): The Compile menu command will re-sequence the block functions of the active block worksheet. Re-sequencing is necessary after adding block functions to a worksheet or after changing data flow relationships within a worksheet.

Reset Reset (Shift+F5, Toolbar button): The Reset command resets all time dependent parameters of the active block worksheet. Parameters such as file and frame position will be set to their respective beginning locations.

Run Run (Ctrl+F5, Toolbar button): The Run menu command will cause the VAB environment to run the active worksheet. The environment will continue to run the active worksheet until halted with the Stop command or the Escape key on the keyboard. If the Show Status menu option has been selected, then each block will be highlighted as it is executed. A red highlight indicates that the block has all the input data and the function of that block is being performed properly. A yellow highlight indicates that at least one input channel has no valid data or an error occurred in the block�s algorithm and the operation is suspended for this execution cycle.

Frame Step Frame Step (F12, Toolbar button): The Frame Step command will cause the execution of N frames of the active block worksheet and then halt. Continuing to select the Frame Step command will result in the next N frames of data to be processed. This command can be thought of as a �Run N Frames� command, and is useful for monitoring the algorithm in closer detail (frame-by-frame analysis when the frame step is set to 1 [default]). The frame step can be changed from its initial value of 1 through the Set Frame Step command described below. The framesize used during frame stepping is determined by the framesize parameter setup of the block functions used in the worksheet.

Single Step Single Step (F10): The Single Step command will cause a single block function in a worksheet to be executed. The initial use of this command will only highlight the first block to execute (a yellow line will be drawn around the block) without actually executing the block function. Subsequent single step commands will execute the highlighted block function, and then highlight (without executing) the next block to be executed. Hierarchical blocks are executed completely.

Page 27: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

23

Stop Stop (Esc, Toolbar button): The Stop command allows you to interrupt the execution of the worksheet when it is running.

Set Frame Step Set Frame Step: The Set Frame Step command is used to modify the frame step parameter for use with the Frame Step command described earlier. The default value is 1, but this may be changed between the values of 1 and 2^30 inclusive.

Show Status (Turbo mode on when disabled) Show Status: The Show Status command is used to toggle between notification modes. When Show Status is enabled, status information will be displayed during the execution of the simulation. Statistics such as current processing block, time, frame updates, warnings, errors, and function execution status will be displayed. Your worksheet will perform more slowly than with status disabled. When status is disabled (default, Turbo Mode), simulations run much faster; this is quite useful for long running simulations, or non-frame based (point-by-point) types of problems.

Blocks Menu Commands The Blocks menu is used to select blocks for placement on the active worksheet, add a new block to the Block Function Selector, and provide an auto-build of the block function list.

Select Blocks� Select Blocks� (Ctrl+B, Toolbar button): The Select Blocks� command activates the Block Function Selector tool. This allows blocks to be selected for placement on the active worksheet or on the hot list toolbar.

The Block Function Selector allows you to choose from several function libraries. Some of these libraries include Simulation, Real-time, Matrix, Image Processing, Instrumentation, and User Controls. Optional libraries are available for those products that do not include libraries you may want, including Advanced Transmission, Advanced Speech, and Image Processing. Please contact Hyperception should the need arise for additional libraries. Users can create their own function libraries as well by making their own custom block components with the Block Wizard tool.

The Block Function Selector tool provides several function groups, each containing block functions. You can scroll through the group and function lists. If the left mouse button is clicked on a group, then all the functions in that group will appear in the function list. A function can also be selected with a single mouse click.

There are several ways to select groups and functions in addition to a single mouse click. If you hold the mouse button down and scroll through either list, you can select multiple items at one time. You can select multiple items individually by holding the Ctrl key down while you click on an item. You can also use the Shift key to select all items from the last highlighted item to the selected item.

If you double-click on a function, that function�s block is placed in the upper left corner on the active worksheet. If you choose, you may also Drag and Drop functions from the Block Function Selector window directly to the worksheet and place the blocks

Worksheets will execute faster when the Show

Status option is disabled.

In addition to using the Block Function

Selector, you can also create your own

floating tool palettes that contain block

components of your choice. This allows you

to conveniently select those block

components that you use most frequently.

Page 28: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

24

where they need to be. Highlighted functions can also be added to the worksheet by clicking on the Add to Worksheet button.

The list of highlighted function groups can be cleared with the Clear Group List button, and all function groups can be selected to display all available block functions with the Select All Groups button.

Add New Block� Add New Block� The Add New Block� command allows new block components to be added to the Block Function Selector tool list so they can be used in within the environment. When the Add New Block command is selected, a file selection dialog box will appear. Select the new DLL or LSS file(s) to add and click on OK. The newly added block function will then appear in the desired library and function group.

Auto Build Menu� Auto Build Menu� (Ctrl+F7) The Auto Build Menu� command rebuilds the Block Function Selector tool�s group and function lists. It searches specified directories for all block DLL�s and LSS files. For each block DLL or LSS file that it finds, it adds the block�s library, group and function information to the menu.

DSP Target Menu Commands The VAB DSP Target menu provides several commands that allow you to control and observe any of the DSP resources in your system. This section identifies and describes the commands that are available for use with DSP hardware.

The DSP Target menu is shown either by clicking on the DSP Target menu name or by pressing ALT+D.

The following is a short summary of the DSP Target menu commands.

Default Driver Selects the default DSP driver used for subsequent commands

DSP-Based Variables� Defines any DSP-based variables used in a worksheet design

Driver Files Displays driver-related files

Help Displays real-time driver on-line help

Initialization Displays real-time driver initialization

Output Displays several types of real-time driver output files

Revision History Displays driver�s revision history

Driver Globals Selects global options for specific DSP or all DSPs

Driver Utilities Selects utilities provided by default driver

Driver Setup Setup the selected DSP board driver with the current system configuration

Page 29: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

25

Link Files Selects files used by the driver�s internal linker

Import File Imports external executable, object and symbol files into DSP memory

Export Application Exports the real-time application to an executable DSP COFF file

Memory Various DSP memory options

Copy Copies DSP memory range to specified address

Dump Dumps DSP memory range to screen or file

Fill Fills DSP memory with specified data pattern

Load Loads DSP memory with ASCII, binary or COFF file data

Plot Plots DSP memory range in a variety of formats

Search Searches DSP memory for specified data pattern

Map Display/edit current DSP memory map

Usage Displays current memory map usage

Symbols Displays symbolic information for the worksheet compiled to the selected DSP target

Profile Displays block and DSP profiling information

Syncs Display block synchronization (Sync In/Sync Out) information

Interrupts Displays blocks that are tied to DSP interrupts

Statistics Displays statistics about the current DSP resource

DSP Control Control selected DSP (run, stop, reset)

The following sections provide detailed descriptions of these DSP Target menu commands.

Default Driver... The Default Driver menu command is used to select the default DSP board driver that will be used by all functions in the DSP Target menu and all real-time blocks. When this command is selected, a dialog box similar to the one below will appear:

Page 30: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

26

Selection of the Default DSP Board Driver

The dialog box contains a single combo box that allows you to select the default DSP board driver for all other DSP Target menu functions

In addition to the DPS Target menu functions, new blocks added to a worksheet will use this default DSP driver. The default DSP driver may be overridden at the block level by changing the block function�s selected DSP driver.

Load with Default Driver When this option is selected, as indicated by an adjacent check mark, all blocks will be loaded with the default driver selected. This option is useful for seamlessly porting a VAB design from one DSP hardware platform to another.

DSP-Based Variables� Selecting this VAB menu command will bring up a dialog box that lists all currently defined DSP-based variables available for use in a worksheet. You can enter variable names, initial values, data type, and data size. You can reference these DSP-based variables with individual block components in your worksheet design.

Driver Files... The Driver Files command is used to display driver-related driver files including on-line help, initialization, output and revision history files. The ability to display various drivers� files directly from VAB is useful because it eliminates the need to leave the VAB environment to display or print the files. The following sections describe each of the menu items.

Help

The Help command invokes the Windows help engine with the on-line help file for the currently selected VAB real-time driver. Help can also be invoked from VAB�s Help menu.

Initialization

The Initialization command displays the current driver�s initialization file, which provides all DSP board configuration information for that driver.

Page 31: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

27

Output

The Output command displays various types of real-time driver output files such as interrupt table, memory map, profile, system statistics, symbol table, sync table and memory map usage files for user analysis. The comprehensive system statistics are not displayed on the screen, so this it is helpful to be able to display statistics files directly from VAB.

Revision History

The Revision History command displays a list of the default driver�s revision history. This information is useful because it quickly identifies recent driver enhancements and problem fixes.

Driver Globals... The Driver Globals command is used to select options that are global to a specific DSP resource. When this command is selected, a dialog box similar to the one below will appear (DSP drivers may support different global options):

Driver Global Configuration

The Driver Globals dialog box provides several options that can be applied to a single DSP resource or all DSP resources controlled by the selected default DSP board driver. A single DSP resource is selected by scrolling through the �Board� and �DSP� numbers. The scrolling will automatically limit your selection to your system configuration, so if you have only one board installed, the board number will not scroll. Similarly, if a board only has one DSP, then the DSP number will not scroll. If the �All� checkbox is selected, all global options will be applied to all the DSPs in the system controlled by the driver.

When the �Force Interrupt� checkbox is selected, the complete VAB worksheet running on the selected DSP resource can be tied to a specific interrupt so that it only executes when an the interrupt occurs. The interrupt is selected with the adjacent combo box that provides a list of all DSP interrupts.

Page 32: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

28

When the �Profile DSP� checkbox is selected, the complete DSP algorithm will be profiled. This profile information can be obtained from any block�s DSP Information dialog box or from the Real-time �Profile...� command.

When the �Force Block Profile� checkbox is selected all blocks will be profiled without having to activate each block�s profile mode individually. This profile information can be obtained from the blocks� Block Information dialog boxes or from the Real-time �Profile...� command.

The �Compilation Target� can be selected to be DSP memory or PC memory. When DSP memory is selected, a DSP board must be installed in the system because all memory accesses will be attempted to the DSP�s memory. When PC memory is selected (Virtual DSP mode), all memory accesses will be to a DSP memory image stored in the PC�s memory, so a board is not required.

Other global options that may appear are driver-dependent and are described in the specific driver�s documentation.

Driver Setup... The Driver Setup� menu command allows you to select the proper configuration for each DSP resource in your system. A memory test option is also provided for a convenient method of determining whether or not the DSP board is responding at the chosen settings.

Upon selection of the DSP Target Driver Setup� menu option, a dialog box similar to the one shown below will appear.

Driver Setup Dialog Box

The �Driver Info� button can be pressed to determine the driver�s version number and date.

Link Files... The Link Files command is used to select the files used by the DSP board driver�s built-in linker to allocate memory and resolve external references. When this command is selected, a dialog box similar to the one below will appear:

Page 33: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

29

Link File Configuration

Link files can include object, library, and linker command files. These files can be selected for a specific DSP resource or for all DSP resources managed by the default DSP board driver. Since each DSP resource is handled independently you may have one DSP that uses one run-time library and another DSP that uses a different one. You can also assign the same link files to all DSP resources by selecting the �All� checkbox.

You may add and delete files, or even clear the link file list completely, by using the respective dialog box buttons. After you have selected all the link files you can accept them by clicking on �OK�. If you want to discard your changes, you can exit by clicking on �Cancel�. The selected link files will be used during the next VAB compilation.

If you compile a real-time worksheet without adding all of the files that are required to resolve external references a warning will be displayed. You can add the required files by using the Link Files... command.

Import File... The Import File command is used to import executable, object, and symbolic information files. When this command is selected, a dialog box similar to the one below will appear:

Page 34: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

30

Import File Dialog Box

You can load an external executable or object file into the selected DSP�s memory allowing external applications that were not created with VAB to be executed and tested. Note that this may require that you modify the real-time memory-map for the selected target DSP board in order to provide correct segment names and addressing (see Memory Map section which follows). The external application can be controlled using the Real-time Control functions to run, stop and reset the selected DSP.

You can also load ASCII symbolic information files containing symbol names and symbol values to resolve external symbols in special cases.

Export Application... The Export Application command is used to export the current real-time VAB design to an executable DSP application that can be ported to an embedded system or other platform. The output COFF file can be used to program a PROM, load a DSP target via a host, loaded into a simulator or loaded into target hardware with a emulator/debugger.

Note - The Export Application... command is a very powerful feature of Hypersignal RIDE. Real-time algorithms can be created within RIDE and then exported to a COFF output file. This DSP executable file is produced just as if you had written the source code yourself, and then used a DSP assembler/linker/compiler to create it.

Because the real-time memory map is user-configurable, and the real-time driver supports virtual DSP mode with no DSP board in the system, applications can be

exported to any target hardware.

The application export capability eliminates the need for the intermediate C code generation step, which is required to export non-real-time designs.

The following figure shows that the only user input required to export an application is a filename. By clicking on the Export button, the complete real-time VAB application is export for external use.

Page 35: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

31

Export Application Dialog Box

Memory... The Memory command is used to perform various DSP memory-related functions. There are several commands available in a sub-menu displayed by the Memory command. The following sections describe each of the memory commands.

Copy

The Copy command is used to copy a range of DSP memory to another area of DSP memory. When this command is selected, a dialog box similar to the one below will appear:

Memory Copy Dialog Box

The specific DSP resource is selected by choosing the board and DSP numbers. The source and destination addresses and the length of the block of memory to copy are selected.

Page 36: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

32

Dump

The Dump command is used to dump memory from the specified DSP resource to the screen or a file. When this command is selected, a dialog box similar to the one below will appear:

Memory Dump Dialog Box

The specific DSP resource is selected by choosing the board and DSP numbers. The destination of the memory dump can either be the screen or a file. If a file is the destination, a browse box is activated to allow the filename to be selected. ASCII, binary, and COFF filenames default to .ASC, .BIN, and .OBJ file extensions respectively.

Six types of data formats are supported: hexadecimal, unsigned integer, integer, float, character and instruction. The start address and length of the memory dump must also be specified.

The following is an example memory dump. Note that the data format can be user modified from within the memory dump display.

Page 37: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

33

Memory Display Dialog Box

Fill

The Fill command is used to fill a range of the specified DSP resource�s memory with a selected data pattern. When this command is selected, a dialog box similar to the one below will appear:

Memory Fill Dialog Box

Page 38: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

34

The specific DSP resource is selected by choosing the board and DSP numbers. The remaining parameters define the memory fill operation. The memory type (if applicable for the specific DSP) can either be program or data memory. The data type can be integer, float or instruction (if applicable). The address is where the fill will start. The fill value is the data value that will be written into the DSP�s memory. The length defines the size of the memory fill.

Load

The Load command is used to load a file of data at a specified address in a DSP resource�s memory. When this command is selected, a dialog box similar to the one below will appear:

Memory Load Dialog Box

The specific DSP resource is selected by choosing the board and DSP numbers. The file format for the source data can be ASCII, binary or COFF format. The file data will be imported and stored in the selected DSP�s memory at the specified address.

Plot

The Plot command is used to plot a range of the DSP resource�s memory. When this command is selected, a dialog box similar to the one below will appear:

Page 39: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

35

Memory Plot Dialog Box

The DSP memory range is defined with a starting memory address and length. The data type of the memory region must be defined as integer or float. The update mode can be manual or automatic. In manual mode, the plot will only update when selected by the user from the plot�s menu. In automatic mode, the plot updates as fast as it can. Automatic mode is useful for monitoring a data that is constantly changing. If the DSP is not running, or the data is not changing, manual mode is sufficient.

There are several different types of plots available which are user-configurable. The following is an example memory plot.

Example Memory Plot Display

Page 40: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

36

Search

The Search command is used to search the DSP resource�s memory for a specified data pattern. When this command is selected, a dialog box similar to the one below will appear:

Memory Search Dialog Box

The specific DSP resource is selected by choosing the board and DSP numbers. You can choose the search criteria applicable to the selected DSP such as the memory type (data or program), data type (integer or float), address range and search value.

A search can be initiated by clicking on the First Match or Next Match buttons to find the first occurrence or next occurrence of the search value within the selected address range. The result of the search is displayed in the Search Result area of the dialog box.

Map

VAB maintains a memory map for the target DSP. VAB uses the memory map is used when the real-time algorithm is executed by the target DSP.

The Map memory command allows you to display and modify the DSP�s current memory map. When this command is selected, a dialog box similar to the one below will appear:

Page 41: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

37

Memory Map Dialog Box

The specific DSP resource is selected by choosing the appropriate board and DSP target numbers. The memory map output lists the available system memory including memory section names, start addresses, end addresses and memory types.

Any of the memory segments listed in the memory-map can be modified. By double-clicking on a segment name, a dialog box will appear in which the modifications would be made. The memory-map does not allow you to overlap segments. It is quite helpful to calculate the desired address locations first, clear the memory map, and then make the new changes.

The memory map dialog box�s File menu allows a memory map to be saved to a file and read from a file. This can be quite convenient for situations where individual real-time worksheets require unique memory-maps. For example, a worksheet that requires a very large delay value might assign the HEAP segment to be much larger than normal. Also, if the target DSP hardware has more memory, you can take advantage of it by adding it to the memory-map. The Edit menu allows memory segments to be added, cleared, deleted and modified. Additionally, a default memory map can be selected.

Usage

The Usage memory command displays a DSP resource�s current memory map usage. When this command is selected, a dialog box similar to the one below will appear.

Page 42: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

38

Memory Usage Dialog Box

The memory map usage shows each memory segment�s name, start address, size, and amount of memory used in both absolute addresses and percent. A summary of total memory is displayed at the bottom of the dialog box.

Symbols... The Symbols command is used to display the symbolic information for all of the blocks that are selected in the real-time block worksheet. When this command is selected, a dialog box similar to the one below will appear:

Page 43: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

39

Symbol Table Dialog Box

The symbol table includes a list of symbol names along with their values and memory segments in which they were defined. A summary of the total number of symbols and user-defined symbols is provided at the bottom of the display. This symbolic information can be used in conjunction with a DSP debugger to analyze code at the assembly level.

The memory content of a referenced symbol can be displayed by double-clicking on the symbol�s name. This is convenient for viewing assembly language op-codes or checking on variable contents.

Profile... The Profile command is used to display the profiling information for all of the blocks selected for profile. Each block can be selected to operate in profile mode; this allows you to determine the processing time of the block. Additionally, the �Driver Globals...� command can be used to force a profile of all blocks and the complete DSP algorithm. When the �Profile...� command is selected, a dialog box similar to the one below will appear:

Page 44: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

40

Profile Dialog Box

The specific DSP resource is selected by choosing the board and DSP numbers. The profile information provides the total number of times that each block has been executed, the number of DSP clock cycles for a single block execution, and the total number of DSP clock cycles that each block executed.

The profiling mode is useful in calculating how many clock cycles a particular block function requires. This information can be helpful in determining how much processing time is available.

Syncs... The Syncs... real-time menu command is used to display the use of all synchronization flags that are active on the selected DSP. Synchronization flags allow blocks to run at different rates allowing VAB to support multi-rate processing.

In each block�s parameter dialog box, the block can be selected to control a SYNC OUT signal and/or monitor a SYNC IN signal. Blocks may use the SYNC OUT signal to notify other blocks when output data is valid. Blocks may use the SYNC IN signal to monitor the output syncs from other blocks. There are numerous sync flags from which to choose. Currently the only VAB supplied real-time block functions that provide SYNC OUT signals are the hardware-specific A/D block functions. Users can create their own real-time blocks that allow for SYNC OUT flag generation.

Page 45: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

41

When an A/D (or user-created) function is set to generate a SYNC OUT signal, any block function which sets its SYNC IN flag to match will only execute when the sync flag is valid. In this way, a block or series of blocks can be setup such that they do not repeatedly process the same frame of data, and will only execute when a new frame of data is available.

Sync information can be either written to a file or displayed on the screen. The sync table includes the sync number, name, address, direction, function name and function address. The sync table provides a quick way to see what blocks on the specified DSP are synchronized. The following shows the output of a typical sync table.

Example Sync Table

The name of the sync flag is obtained by a block function from the respective driver�s initialization file. The sync names are arbitrary, so you can rename them if desired by editing the appropriate real-time driver initialization file. The direction of a sync flag can either be an output (O) or and input (I). In the case of an output sync, the block must be written to provide output sync information. For example, A/D conversion and buffer blocks provide output sync information because their outputs are only available at certain times. In the case of an input sync flag, the associated functions will only execute when the selected sync flag is set active by another block that sets the SYNC OUT flag.

Interrupts... The Interrupts... menu command is used to display the list of block functions that are tied to DSP interrupts on the selected DSP resource. In each block�s parameter dialog box, the block can be selected to execute only when a specific interrupt occurs. A single

Page 46: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

42

block or several blocks can be tied to a single interrupt to form an interrupt service routine.

The interrupt table includes the DSP�s interrupt number and name, the interrupt handler entry address, the block functions that are tied to the specific interrupt, and the address of the code associated with each block. The number and names of interrupts are processor-dependent, but the interrupt table maintains a consistent format regardless of the DSP type.

Statistics... The Statistics... real-time menu command can be used to display statistical information about the selected DSP resource such as its memory map, memory allocation, block allocation and miscellaneous DSP-specific information. When this command is selected, a dialog box similar to the one below will appear:

Statistics Dialog Box

DSP Control... The DSP Control... real-time menu command provides the ability to control the selected DSP resource by placing it in the reset, run, or hold mode of operation. These DSP control functions are intended to control execution of external COFF files that are loaded into DSP memory using the �Import File...� command. When the DSP resource is selected, a control dialog box such as the one below will be displayed.

When a specific DSP resource is selected via the OK button, a floating palette of DSP control buttons is displayed, which allows direct control of the DSP resource. These control buttons will vary depending on the driver selected.

Page 47: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

43

Tools Menu Commands The Tools menu contains commands that allow you to run other applications directly from within the VAB environment. The default Tools menu includes the Stand-alone Application Builder, Block Wizard, Filter Design utility, the ANSI C Source Code Generator, and the Windows Calculator applications. If any of the tools are not installed, the application menu entree will be grayed out. Otherwise, if you select a tool from the Tools menu, the tool will be invoked.

Stand-Alone Application Builder A demonstration version of the HAppI Wizard run-time application builder has been included with the Standard Editions of all the Hypersignal visual design environments. You will be able to use this Wizard to produce time-limited, standalone Windows applications from your visual design worksheets.

Block Wizard The Block Wizard is included as a standard tool with all editions of the Hypersignal visual design environments and allows you to create your own block functions.

ANSI C Code Generator The ANSI C Code Generator is included in all Hypersignal Block Diagram, Hypersignal RIDE, and Hypersignal ImageDSP Enterprise Editions. However, if you did not purchase an Enterprise Edition you can still purchase the ANSI C Code separately. If the C Code Generator has previously been installed then you can launch it by choosing this menu command. For more details regarding the ANSI C Code Generator please contact Hyperception.

Filter Design Utility The Filter Design utility allows you to create FIR and IIR filter coefficient files that can be used by block components. The Filter Design utility was created to allow users to quickly and easily create Digital Filters for use in DSP applications without requiring the user to be an expert in DSP or in digital filters. Simply by providing the high-level design information for a particular filter, the filter design utility will produce the digital filter coefficients in an ASCII text file which may be used for real-time/simulation directly in the Hypersignal environment, or in the user�s own application. The Hypersignal filter design utility may be easily invoked by selecting the Filter Design menu selection under the Tools main menu. Additionally, if the HyperLAB task bar is being used the Filter Design utility may be invoked by simply clicking on the filter design icon. After the filter design utility is invoked, the user may start designing digital filters.

Scientific Calculator The Windows calculator can conveniently be selected from this menu command.

Customize Tools Choosing this menu command will allow you to customize the Tools menu with the insertion of additional applications.

Page 48: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

44

Options Menu Commands The Options menu contains commands that allow you to add external I/O connections for hierarchy block creation, change the user interface configuration, and add new functions to the Function menu.

External I/O Menu Commands External I/O: The External I/O menu commands are used to define the external inputs and outputs for a worksheet used in hierarchical design. The defined inputs and outputs will appear on the single hierarchy block icon and can be connected to other blocks in another worksheet.

External Input Connection

External Input Connection (Alt+Shift+I): Selection of the External Input Connection command will result in a dialog box labeled External Input Configuration. Enter the desired number of channels, not to exceed 256, into the edit control box provided. Selection of the OK button will cause the block worksheet to be re-drawn with the input connections added at the left of the worksheet. Before the worksheet can be used as a hierarchy block worksheet the input connections must be connected to a destination within the worksheet.

External Output Connection

External Output Connection (Alt+Shift+O): Selection of the External Output Connection command will result in a dialog box labeled External Output Configuration. Enter the desired number of channels, not to exceed 256, into the edit control box provided. Selection of the OK button will cause the block worksheet to be re-drawn with the output connections added at the right of the worksheet. Before the worksheet can be used as a hierarchy block worksheet the output connections must be connected to a source within the worksheet.

Stop On Warning Stop on Warning (Ctrl+W, Toolbar button): The Stop On Warning command allows you to decide whether you want the environment to notify you when there is a block function warning. For example: If you try to add a ramp generator and a sine generator, the program will stop on the ADD block if the framesize or the sample rates of the two blocks are non-equal. The ADD block will show a yellow border around it�s icon and a warning message will be displayed in the status area. The following is a list of warning messages that the environment might display:

end of file error executing user algorithm arithmetic error in user algorithm data conversion error overflow data type error sampling frequency error data precision not supported initialization error framesize mismatch Warning in User Block

Page 49: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

45

Stop On Warning is on by default when you open the environment. It can be toggled between ON/OFF by using the pull-down Options menu, by pressing �Ctrl+W� or by clicking on its toolbar button. If Stop On Warning is turned off, the yellow border will still appear in the appropriate block - but the program will still run, which in some cases could result in a subsequent error message.

Snap To Grid Snap to Grid (Ctrl+G, Toolbar button): The Snap To Grid allows for placing (or removing) a positioning grid from the active worksheet. To alternate between Snap To Grid and free form block placement, you may use the pull-down menu, press �Ctrl+G�, or click on the grid toolbar button.

Solid Grid Solid Grid: The Solid Grid command toggles between having solid grid lines and just pixels at each intersection of a line. The default setting for Solid Grid is set to off.

Set Icon & Display Size Set Icon & Display Size: The Set Icon & Display Size allows for conveniently setting the icon and display size for all blocks on the worksheet. In addition, this command sets the spacing used to display the positioning grid. The icon width and icon height parameters are used to set the vertical and horizontal spacing of the grid.

Set System Colors and Fonts Set System Colors and Fonts: The Set System Colors and Fonts command is a user-friendly interface to change the colors of the components within the environment. By changing the values of each one of the basic Red-Green-Blue colors from 0 to 255, the following elements� colors may be customized:

Main Frame Work Areas Connection Lines Control Lines Channel Labels Grid Lines Channel Labels Grid Styles Channel Label Sizes

Customize Toolbars� Customize Toolbars�: The Customize Toolbars command allows for customizing a new or existing toolbar with block functions. When this menu command is chosen, a dialog box appears in which you can select from all function library groups. By �grabbing� a block function�s icon with the left mouse button, you can drag it into the work area. By placing the selected icon onto a toolbar and then releasing the left mouse button, you will cause the corresponding block function to appear in the toolbar. Placing the icon outside of a toolbar will cause a new toolbar to be created.

This menu command is useful for creating toolbars that contain the block functions that you most commonly use.

Page 50: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

46

Project The following menu commands are contained in the Project menu: Undo Buffer Size�, Variables�, Previous Level�, Security/Permissions�, and Properties. Each of these menu options is discussed below:

Undo Buffer Size� Undo Buffer Size�: The Undo Buffer Size command displays a dialog box that allows for setting the size of the undo buffer. The number in the dialog box represents the number of commands that should be stored in the undo and redo buffers during cut/copy/paste edit commands.

PC-Based Variables� Variables�: The Variables command allows for adding, modifying, and viewing the global variables defined for the current project.

Previous Level� Previous Level�: The Previous Level command takes you up a level in hierarchy and makes the parent worksheet the active worksheet.

Security/Permissions� Security/Permissions�: The Security/Permissions command allows for setting passwords for Read/Write protection. This option is useful in situations where you do not want worksheets (which may be a top-level worksheet or hierarchy file) to be modified.

Properties� Properties�: The Properties command allows for accessing the worksheet properties. If the block is a hierarchy block, the library, group, and block name information is displayed in the dialog box.

Window Menu Commands The Window menu commands control the display of the worksheet windows. Every top-level and hierarchy worksheet has its own window which can be displayed in various ways. You can cascade, tile and close all the open worksheets using these Window menu commands.

Cascade Cascade: The Cascade command cascades all the open windows so that the are placed on top of one another with their title bars showing for selection. The active worksheet is shown with a highlighted title bar.

Page 51: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

47

Tile Horizontally Tile Horizontally: The Tile Horizontally command tiles all the open worksheet windows horizontally so that they can all be displayed simultaneously. The active worksheet is shown with a highlighted title bar.

Tile Vertically Tile Vertically: The Tile Vertically command tiles all the open worksheet windows vertically so that they can all be displayed simultaneously. The active worksheet is shown with a highlighted title bar.

Arrange Icons Arrange Icons: The Arrange Icons command aligns all the minimized worksheets� icons at the bottom of the work area. When a worksheet is minimized, it is represented as an icon on the work area. This command is useful to organize worksheet icons.

Refresh Display Refresh Display: The Refresh Display command forces the environment to repaint the current worksheet.

Close All Close All: The Close All command closes all the open worksheet windows. If a worksheet has been modified without being saved, the environment prompts whether to save the worksheet file before closing the window.

Opened Files Opened Files: At the bottom of the Window menu, a list of currently opened worksheets is displayed. You can move from one worksheet window to another quickly by selecting from this list. If the windows are cascaded, the selected worksheet is brought to the top and becomes the active worksheet. If the windows are tiled, the selected worksheet becomes the active worksheet.

Help Menu Commands The Help Menu commands provide on-line help for VAB application. There are various levels of help available and includes the standard product help, block component reference, upgrade information, and other relevant information about the environment. This comprehensive help system is composed of several individual help files.

Contents Contents: This menu selection brings up the main help page for the environment. From this main help page, a variety of top-level help areas using the Hot Key text (typically green colored) may be selected. In turn, these top level help areas will provide further information and possibly additional Hot Key text fields allowing you to navigate to an appropriate section regarding a particular question.

Page 52: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

48

Search for Help On Search for Help On: The Search for Help On menu item brings up the standard help search mechanism which allows for quick study of all help topics contained within the main Help file. You can either browse through the list of main help entrees, or simply start typing the first few characters of the item in question. Once the initial help entree is selected, all help topics associated with that selection may be displayed in the second help window. Finally, by either double-clicking on a particular topic, or selecting the topic and pressing the �Go to� button, you are lead to more detailed information regarding that topic.

How to Use Help How to Use Help: The standard windows help file is brought up from this menu selection. This help file allows for getting more information regarding the standard Windows Help System. It explains in detail how you can navigate through help files to locate information more quickly and efficiently.

Block Function Reference Block Function Reference: The function reference help system allows for more detailed information on each of the block functions. This help system provides an alpha key selection section to allow for discriminating alphabetically among all of the functions, and then use Hot Key text to quickly locate the information regarding a specific block function. Certain block functions may even include bitmap example worksheets that demonstrate the usage of the block function in a complete worksheet.

Tip of the Day Tip of the Day: The Tip of the Day brings up a window with bits of helpful information. There is a box that can be checked denoting whether or not to see the Tip of the Day every time the application is started. Note that when the Tip of the Day is selected, you will not be able to invoke a worksheet by selecting its filename. For example, if you double-click on a worksheet�s .LST filename icon, this will cause the application to be launched. If Tip of the Day is NOT selected, then the chosen worksheet will automatically be loaded. Otherwise, the Tip of the Day will be displayed and no worksheet will be loaded.

About� This menu selection brings up a modal dialog box that provides information regarding the product name, version number, the user name, serial number, and other relevant details regarding this particular software application. This is useful for determining the serial number and product name when contacting Hyperception Technical Support.

Page 53: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

49

Other Commands There are other commands available that are not located in the menu or toolbar commands. This section briefly describes those commands.

Block Annotation By pointing to a block�s label or line connection in a worksheet, and double-clicking the left mouse button or single-clicking the right mouse button, the user may modify the text label associated with that block. If the worksheet is then saved, any modified block labels will also be saved. This is useful for documenting a worksheet to be more meaningful with respect to a particular application.

Block Parameter Setting By pointing to a block icon in a worksheet and double-clicking on the left mouse button, or single-clicking with the right mouse button, the block will display its parameter dialog box, such that the user may modify parameters for that instance of the block. Upon saving the worksheet, all block parameters for each block instance are saved.

In the case of user control blocks, the user control block must be maximized (not shown as an icon, see the View User Controls menu command above) before access to its parameters may be granted. Once the user control is maximized, double-clicking on its caption bar will bring up the parameter dialog box (if any) for that particular user control.

Block Description By pointing to a block icon in a worksheet, and single-clicking on the left mouse button, a brief description for that block is obtained. This description will show up in the status line, and may give some aid to the user regarding the function of that block.

Page 54: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

M E N U C O M M A N D S

50

Page 55: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

51

Working with Block Components Some suggestions for using the basic building blocks in your design

When you are using VAB to create your own real-time designs for use on the Texas Instruments DSK hardware you will find that working with block components will become a common aspect to building-up a worksheet. Therefore, you will need to understand some basic issues with regard to using block components in your design.

This chapter is not intended to cover such items as connecting blocks, or setting a block�s user-parameters (you can refer to other chapters of this manual for this type of information). Rather, its purpose is to help you understand how best to use the block components in the construction of your VAB designs. There are several useful guidelines to follow (or at least keep in mind) when building your worksheets, and these suggestions will be presented here.

DSK Memory First, it is important to keep in mind memory limitations of your particular DSK hardware. For the purpose of this section, let�s use the C31 DSK as an example. The C31 DSK hardware contains a limited amount of memory. In fact, the only memory available on the DSK is that of the on-chip memory of the TMS320C31 DSP chip. This memory space is what the VAB program uses when building your algorithm for use by the DSP. To best take advantage of this memory, you will need to understand how VAB uses the available memory space. [Note: You can purchase a SuperDSK board that will provide your C31 DSK hardware with lots of external memory; this allows you to create much larger programs within VAB. Please check VAB�s on-line Help for information about the SuperDSK.]

You should be aware that the on-chip memory is a fixed size of 2K words of memory. Of this space, the VAB program requires that an on-board program, or kernel, be resident in memory. This allows VAB to transfer data to and from the DSK hardware. While this is important it does come at a cost of a reduced available amount of memory on the DSK hardware.

Each DSP-based block component that you use in your worksheet design takes up some memory of the DSK. For example, a block component has associated with it a section of code that is executed by the DSP. Also, a block component may allocate a region of memory for storage of any of its unique working parameters (e.g. a Sine generator contains information on such parameters as amplitude and frequency settings). Some blocks may require a region of memory for data storage. All of this memory use adds up � especially quickly when you consider the memory limitation imposed by the DSK hardware.

So, how can we best take advantage of the limited amount of memory left over for creating real-time algorithms? You will find that there are tradeoffs you can make when making a VAB worksheet. Here are several ideas to consider when constructing a worksheet:

Chapter

4

The C31 DSK contains only on-chip DSP

memory. This places some restrictions on

the way you build-up a VAB worksheet when designing for the C31

DSK hardware.

Page 56: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

W O R K I N G W I T H B L O C K C O M P O N E N T S

52

• Choosing a framesize for your block components

• How many blocks can you use in a worksheet?

• Using Native Blocks versus Vector-based Blocks

Choosing a Framesize for your Block Components A framesize can be associated with a block component. Typically block components that are of a signal generator nature (e.g. Sweep Generator, DSK A/D, etc.) will require that a framesize be specified. The block�s framesize determines the size of the block�s memory buffer output. The framesize can be chosen to be a value of 1 (point-by-point processing), or it can be chosen to be larger. It is important that you understand the consequences of selecting the framesize parameter in your worksheet design.

When you specify a block component to have a certain framesize, the VAB program will allocate a region of memory based upon the chosen value. Most block components that are designed to perform some process (blocks that require an input connection and will generate a desired output based upon the block�s function) will operate on the framesize that has been specified by a block component that serves as its input. (This is not the case for Native block components - they operate on a framesize of 1 [see below].)

What this boils down to is that every block component in your worksheet will allocate memory for its output buffer. The size of this buffer is determined by the block�s framesize. For example, if a Sine Generator uses a framesize of 100 points and is connected to five vector-based block components then you will quickly exceed the amount of memory VAB provides for buffer storage. Remember: each process-type block will try to allocate a buffer of data that is based upon the framesize of the input block component.

A common VAB Error Message if too much memory is used

If you choose to use a framesize of 1 and would like to also upload data for display in VAB, you may wish to consider using a buffered approach to transferring data to the host PC. This can be accomplished by using a buffer hierarchy block component.

How many Blocks can You use in a Worksheet? Remember that you are limited to a small amount of memory. If you use many different block components in your design then you will use more memory than if you had used many block components of the same type. This is because VAB will not replicate sections of code associated with a duplicated block component. However, if many different block components are used then VAB will need to place all relevant sections of code for each unique block type into DSP memory for subsequent program execution.

Using a large framesize will quickly use up

memory on the C31 DSK. You should

consider using a smaller framesize and using

buffering to upload data for display in VAB. Also,

you may want to consider using the SuperDSK card to provide additional

external memory for your C31 DSK. This will give you lots of room to

work.

You can use the DSP Target menu�s

Memory Usage� command to see how

much C31 DSK memory your

worksheet design is using.

Page 57: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

53

You can use VAB�s DSP Target menu�s Memory Usage command to check the DSK memory resources. DSK memory associated with block components typically use mostly memory in VAB�s .text segment.

DSP Target menu�s Memory Usage command

Using Native Blocks versus Vector-based Blocks The Native block components (see section below) take up less space than the Vector-based block components, but will only operate on a point-by-point basis. The Vector-based blocks can handle working with a larger framesize, but take up more memory than their native block counterparts.

Typically, given the small amount of available memory, you will find that working with a combination of native block components and vector-based components may provide the best scenario for fitting a design into DSK memory. By choosing to work on a point-by-point basis (i.e. a framesize of 1) you will be able to fit more block components into your worksheet design.

DSP-Based Native Blocks The VAB program includes several powerful block components that are referred to as �Native� block functions. The native blocks have been designed to provide fast

VAB does not allow you to modify the

memory map used. Hyperception does

offer other products that do provide this

capability. If you are interested in this

feature please contact Hyperception for

information.

Page 58: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

W O R K I N G W I T H B L O C K C O M P O N E N T S

54

execution on the DSP with no overhead associated with using them in your design. In addition to their inherent speed, these blocks take up very little memory space. Both of these features make the use of native block components ideal for the DSK and the VAB program.

When using native blocks it is important to understand that these blocks only operate on a single data point. That is, they expect to operate on a framesize of one. If larger frames of data are passed to a native block only the first data point will be processed. If you are using native block components with vector block components (see below) you should take care to make sure that the vector-based block components have been setup to operate on a framesize of 1.

Native Variable Operators The DSP-based Native Variable Operators group of block components will allow you to easily make use of DSP variables in your worksheet design. These powerful block components are described below. It is recommended that you load and run several of the VAB examples to see how these block components can be used in a worksheet design.

Read Element At

This block component reads the element at the specified address and offset of a variable array. This block outputs a single value located at the address, specified in the first input, plus the offset, specified in the second input. Most commonly, this block is used to access an element within an array of data where the array address is connected to the first input and the array index is connected to the second element. Note - the inputs and outputs of this block are treated as scalar values and not as vectors.

Variable Read

This function provides the value of a particular real- time global variable. The current value of the variable is available from this block, and when the block is running, changing this value causes an instantaneous one- time download of the new value. The initial value of the variable is also accessible from this block. Note - the outputs of this block are treated as scalar values and not as vectors.

Variable Read with Offset

This function provides the value of a real- time global variable using an offset from the base of the variable, or variable array. This block outputs the element at the offset, specified on the input channel, from the initial starting address of the variable array. Note - the inputs and outputs of this block are treated as scalar values and not as vectors.

Variable Write

This function stores the input value in the variable specified. This block can be thought of as an assignment operator, as it replaces the current value of the variable with whatever is connected to the input channel. Note - the inputs of this block are treated as scalar values and not as vectors.

Variable Write with Offset

This function stores the value, (contained on the first input channel), at the offset, (specified by the second input channel), relative to the starting address of the variable array specified. Most often, this block is used to write values to different locations

Page 59: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

55

within an array of values. Note - the inputs of this block are treated as scalar values and not as vectors.

Write Element At

This function stores the value, at the first input, at the address created from the second and third input channels. The second input is a base address and the third input is an offset from the base address. Note - the inputs of this block are treated as scalar values an not as vectors.

DSP-Based Vector Block Components Vector-based block components allow you to specify a framesize parameter, and are capable of operating on frames of data larger than (or equal to) a size of 1. Typically these block components will take up more memory space than their Native block counterparts, but will allow you to work on arrays of data (as opposed to operating on a sample by sample basis).

If you specify the framesize of a Vector-based block component to be equal to a value of 1 then you will be able to combine them with VAB�s Native block components.

PC-Based Block Components PC-based block components rely upon the host PC to perform the algorithm processing. These block components cannot be used directly with DSP-based Native and Vector block components. However, VAB does allow you to transfer data from the DSP-side up to the PC-side for subsequent PC-based processing and display.

Examples of PC-based block components include VAB�s Display blocks.

DSK Hardware-Specific Blocks There are two block components that are specific to the DSK hardware. These blocks are the DSK A/D and DSK D/A block components. These block functions are located in VAB�s DSP-Based Vector Library in the RT DSK Hardware Functions group.

You can use a single A/D block in a worksheet, a single D/A block in a worksheet, or a combination of an A/D block and a D/A block in a worksheet.

The maximum framesize for these blocks has been set to 32.

Transferring Data from the DSK to VAB for Display or PC-based Processing You may wish to upload data from a DSP-based block component for subsequent PC-based processing or display in VAB. However, VAB will not allow you to directly connect a DSP-based block component to a PC-based block component.

VAB does provide one unique block component that provides a means of transferring data from the DSP-side (DSK) up to the PC-side (VAB). This is easily accomplished through use of the RT DSP-to-PC Upload block component.

Page 60: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

W O R K I N G W I T H B L O C K C O M P O N E N T S

56

The DSP-to-PC Upload block component can be selected into your worksheet design by using the Block Function Selector to choose its function name from the DSP-Based Vector Library�s RT Data Transfers group. It is recommended that you load and run several of the VAB examples for a demonstration on how to use the DSP-to-PC Upload block component in your worksheet design.

Profiling your Design The VAB design environment allows you to find out exactly how much time your algorithm takes to run on the DSK. There are two methods of obtaining the number of instruction cycles used by your design. The first method is to use the DSP Target menu�s Profile� command to display relevant information about your design. The second method is to use the RT Profile block component to display the profile information.

Displaying DSP Profile Information

Page 61: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

57

A Tutorial Getting up to speed with VAB

This chapter is designed to get you up and running with the VAB software as quickly as possible. You may find it helpful to follow the tutorial along and actually re-create the demonstrations presented here with your VAB software and DSK hardware. This way you will actually be able to learn how to use VAB more easily and quickly. If you desire to re-create the demonstrations shown in this tutorial you should verify that your DSK is properly communicating with VAB before proceeding (see Chapter 1 for information on verifying VAB / DSK communications).

Several of the more commonly used commands will be presented in this chapter as are some of the common steps used in creating your own worksheets.

It�s recommended that in addition to this section, you read through the rest of this user manual for further information and additional suggestions.

The steps listed in this tutorial show how to:

1. Start a new VAB worksheet session

2. Select block components

3. Establish data flow connections

4. Change a block�s parameters

5. Run the worksheet

6. Using a Parameter Connect

7. Use edit cut/copy/paste/undo functions

8. Use hierarchy in a worksheet

9. Save the Worksheet

Starting a VAB Session The first step in creating a block diagram real-time design with VAB is to start a new worksheet. A worksheet is a window which serves as a work space for your applications, and may be thought of being like a piece of paper in which a block diagram may be drawn. Each worksheet can contain many different block components that are arranged in a structured block diagram algorithm.

Many worksheets can be opened and maintained while in the VAB environment, but only the worksheet chosen as the active worksheet can be executed. The active worksheet filename is displayed in the VAB application caption bar. Choosing the File menu New

Chapter

5 Chapter

5

Page 62: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

A T U T O R I A L

58

command will cause an empty worksheet to be loaded. It is in this window where you will place your block components.

If you desire to re-create the demonstration shown in this tutorial you should select the VAB File New menu command to bring-up an empty worksheet. This will produce a VAB worksheet similar to the figure shown below:

VAB with an Empty Worksheet

Selecting Block Components Block components can be placed onto the active worksheet by using the Block Function Selector tool, or by using VAB�s block component Toolbars. Choosing the VAB Blocks menu Select Blocks... command will cause the Block Function Selector dialog box to appear. The Block Toolbars will appear as �dockable� toolbars in the VAB work area.

Block components are arranged into many different group categories. These categories are shown in the Group List box. Choosing a function group will cause all functions within that group to be added to the Function list box. De-selecting the group will remove all corresponding block functions from the Function list.

By selecting the Add to Worksheet button all blocks in the Function List will be added to the active worksheet. Single block functions can be selected into the worksheet by double-clicking the block function name, or by simply dragging the name of the block component into the worksheet. Upon selection of the desired block components their associated icons will appear in the worksheet.

When you are done selecting blocks, you should click on the close button. You may add more blocks later so you do not have to choose all blocks at once. In the figure below we

First position the block components in the

worksheet, and then connect them together

to establish the data flow.

Page 63: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

59

have added several block components into the worksheet by dragging them into position from the Block Function Selector (if you use the Add to Worksheet option, or use VAB�s Block Toolbars, then the blocks will appear in the upper-left area of the active worksheet). The blocks used here are the RT Sine Generator, RT DSP-to-PC Upload, DSK D/A, and the 1 Channel X Display.

Selecting Block Components into the Active Worksheet

Establishing the Data Flow Once you have selected the block components onto the worksheet you will need to establish the block diagram�s data flow. This is accomplished by using the mouse to arrange the block icons in the worksheet to form an algorithm or process. The business of establishing the data flow relationship among blocks is typically referred to as �connecting� blocks.

When the blocks have been positioned on the worksheet, you need to connect the blocks to form the algorithm. This is done while operating in the Connect mode. VAB can be placed into Connect mode by selecting the Mode menu connect command. When this mode is selected, the mouse cursor will change to a target cursor labeled either �SOURCE� when choosing a source block icon, or �DEST� when choosing a destination block icon. Positioning the target cursor over a block component and clicking the mouse button will cause a connection to be made. Placing the mouse cursor in the right-half of a block will specify a Source connection; a cursor placed into the left-half of a block will define a destination connection.

Once the blocks in the worksheet have been connected, the worksheet needs to be compiled. Compilation determines the order in which individual blocks will execute, and can be performed through use of the Compile menu command. Compilation of the

Using the right mouse button during

connection will allow you to connect a single

source block to many destination blocks

without re-establishing the source block.

Page 64: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

A T U T O R I A L

60

worksheet should be done after all block components have been positioned and connected.

Channel 1 Region

Channel 2 Region

Note: Block Connections must be made within the Block Icon

Channel 1 Region

Channel 2 Region

BLOCK CHANNEL CONNECTIONS

BlockIcon

Channel 3 Region

Destination RegionSource Region

Block showing source/destination regions with multiple block input/output channels

As the figure above shows, each block icon, or bitmap, is split into the source side (left half) and the destination side (right half). You may connect from source to destination or from destination to source; this is dependent upon which half of the block is clicked first. The cursor will change and be labeled either �SOURCE� or �DEST� depending on whether the next connection is for a source block or a destination block. It is possible to connect to multiple destinations by first left-clicking on the source block and then using the right mouse button to click on the destination side of each block intended to be a destination. It is important to follow the correct connection scheme. For example, an input signal generator block connected to an output single-channel display block would use the �SOURCE� cursor to select the signal generator block, and the �DEST� cursor to select the single-channel display block.

Establishing the Data Flow by Connecting Block Components

Block connections can be made from both

Source-Destination and Destination-Source

directions.

Page 65: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

61

Changing a Block�s Parameters In most cases you will want to select the setup parameters for the block functions in your worksheet. You can modify the setup parameters for a block function by first double-clicking the block function icon with the left mouse button. This will cause the block�s setup parameter dialog box to appear (if the box has any parameters which can be changed). The parameters that can be entered are dependent upon the block function chosen. Selecting the dialog box OK button will keep any changes made.

Changing the Block Component User Parameters

Running the Worksheet After you have arranged the block icons and established the data flow by connecting the blocks together you can run the worksheet. The VAB run commands can be located in the Run menu.

The Run menu command will cause the active worksheet to be executed. VAB will continue to run the active worksheet until you halt its execution through use of the Stop menu command.

If the Show Status selection has been made, then each block function in the worksheet will be highlighted as it is executed. A red highlight box around a block function is used to indicate a successful execution of the block. A yellow highlight box is used to indicate a warning message; for example, when a block has not been connected and the worksheet is run, a warning yellow highlight is issued.

Running the worksheet demonstration built in the previous section will result in the graphical display of a sine waveform, and the continuous generation of a tone at the

Using the Parameter Connect feature is

another way to change a block�s parameters.

Page 66: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

A T U T O R I A L

62

DSK�s D/A output. If you have a speaker connected to your DSK then you will hear the output as the worksheet is running.

Running the Worksheet

Using a Parameter Connect Sometimes it is useful to modify the setup parameters of a block component as the algorithm is actually running on the DSP. VAB provides this capability by allowing you to �Parameter Connect� one block component to other block components with the capability of adjusting their individual setup parameters.

We�ll add the use of a Parameter Connect to the demonstration worksheet built in the previous sections. First, stop VAB if it is currently running. Next select the Horizontal Slider from the Block Function Selector to place the user control block component onto the worksheet. This particular block has two parts associated with its use: the block component icon, and a �horizontal slider� window. The slider window will only be displayed if VAB�s Maximize User Controls� menu toolbar button has been selected.

The first thing to do is to adjust the setup parameters for the controlling block (i.e. the Horizontal Slider block) component. This is accomplished by double-clicking on the block icon to bring up the block�s setup parameter dialog box. Enter the desired parameter information. For our demonstration we will use the slider to control the Sine block�s frequency parameter. We�ll want the Sine block�s frequency to range between 0 Hz and the Nyquist rate (half of the Sine block�s sample rate). Sine the Sine block has previously been setup to use a global variable named Sample Rate we�ll use this in the setup of our slider block (as shown below).

Page 67: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

63

Horizontal Slider Setup Parameters

After you have selected the controlling block�s setup parameters you should enter the VAB Parameter Connect mode via the VAB menu or toolbar command. Once you have chosen Parameter Connect mode you can select the Horizontal Slider as the Source block. Note that the source block will be used as the controlling block component. The first data value output from this block will be used to adjust the setup parameters of the block to be controlled. Now select the Sine Generator block component as the block to be controlled. This is accomplished by using a mouse click to select the Sine Generator block icon in the worksheet. Doing this will cause a dialog box to appear. This dialog box lists all of the setup parameters for the Sine Generator block component. For this example select the Frequency parameter name from the dialog box.

Parameter Connecting the Horizontal Slider to the Sine Generator

Page 68: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

A T U T O R I A L

64

After you have chosen the Frequency parameter from the dialog box the Horizontal Slider block component will be �Parameter Connected� to the Sine Generator block. This is indicated by a green line connection between the Horizontal Slider icon and the underside of the Sine Generator block icon.

Now you are ready to run the worksheet. Select the Run menu command or toolbar counterpart. The algorithm will begin running as before. However, this time you have direct control over the frequency being generated by the Sine Generator block component. Use the mouse to adjust the slider bar. In addition to seeing the waveform data update you will actually hear the frequency change on a speaker if your DSK is connected to a speaker.

This is just a simple example of how to make a parameter connection between two block components. You can use parameter connect logic with the output of real-time block components (native or vector-based) in addition to the PC-side component method demonstrated here.

Performing �On-the-fly� Adjustments of a Block Component�s Setup Parameter

Using Edit Cut/Copy/Paste/Undo The VAB Edit commands are used to cut, copy, and paste block components in a worksheet. You can quickly duplicate a single block or group of blocks (with line connections intact) by using the edit commands Copy and Paste. An Undo command is also provided to reverse the last edit menu command�s action.

You can select any object in a VAB worksheet by highlighting it with the mouse. You can do this by selecting the objects individually (if you hold the Ctrl key down while clicking you can

Page 69: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

65

select more than one object), or by selecting a group of objects (hold the left mouse button down while dragging a target window around the objects in question).

When an object or group of objects is highlighted you can use the VAB Edit Cut/Copy/Paste/ Undo commands. Use of these commands will make it easier to design your worksheets.

Using Hierarchy in a Worksheet Hierarchical design is allowed within the VAB environment. This provides for a worksheet of block components to be used itself as a block component in a higher-level worksheet. And that higher-level worksheet could in turn be used within an even higher-level worksheet, and so on. This effectively allows for n-level hierarchical design.

You can make a hierarchy worksheet by adding external I/O connections to a worksheet. This is accomplished by using VAB�s External I/O Options menu command.

Creating a Hierarchy Worksheet with 2 External Inputs, and Selecting 1 External Output

You will need to save the hierarchy worksheet before you can use it as its own block component in a new worksheet design. See the next section for information on saving a worksheet.

Saving the Worksheet When you have finished with a block worksheet you may want to save it for retrieval at a later date. You�ll probably find it convenient if you create a special directory to hold your block worksheets. This way, you�ll know were to find them when you need them.

Page 70: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

A T U T O R I A L

66

VAB contains its worksheet examples in the default location of the C:\Program Files\Hyperception\VAB\Examples directory.

You can save your worksheets through use of the File menu Save command and Save As... command. When you select either of these commands while working with an unsaved worksheet a dialog box will appear in which you can provide a name and path for your worksheet. You will not need to provide a filename extension when saving a worksheet. The default filename extension of .LST is used. VAB supports the use of long filenames (see figure below).

Saving a VAB worksheet

When saving a Hierarchy worksheet you will need to provide some additional information.

Page 71: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

67

Saving a Hierarchy Worksheet

Page 72: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

A T U T O R I A L

68

Page 73: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

69

Chapter

6 Sampled Data Acquisition Systems A brief overview of some basic Digital Signal Processing concepts for beginners

One of the fastest growing areas of high technology today is the field of digital signal processing (DSP): the use of digital computers, microprocessors, specialized signal processing ICs and other digital machines to process physical signals that vary with time or space. The rapidly increasing level of interest in digital signal processing is largely a matter of economics. The proliferation of low-cost, flexible, personal computers has created an unprecedented number of opportunities to develop and apply DSP techniques to areas that can benefit from digital signal analysis. Also the advent of fast, inexpensive digital signal processor ICs has allowed entry into real-time product realms which were once ruled exclusively by analog systems. Additionally DSPs have allowed into product areas formerly served less effectively by slower microprocessors, or those areas with high data rate requirements that are only now economically feasible to develop.

The flexibility and power of digital signal processing makes it a tool well suited for dealing with an increasing number of applications. However, no matter what the application, actual real-world signals must be in a form the digital machine can accept before any processing can take place. The form a signal must assume prior to digital signal processing is the subject of sampled-data systems. This section is not meant by any means to be a highly technical or rigorous explanation of sampling theory, but rather to present some very general concepts about sampled data acquisition systems. The interested reader is encouraged to delve into the myriad books on the subjects of sampled data systems and digital signal processing in general.

A Sampled Signal A sampled signal is usually meant to be a representation of some physical quantity sampled at different points in time. Sampling simply means to measure the signal at an instance in time. For example, an electric signal might be 5 Volts at one instant and 5.1 Volts slightly later. In the real world, or "analog" world, the signal is continuous -- it has a value at every instant in time -- and in this example, is required by the laws of physics to transition continuously from 5 Volts to 5.1 Volts. In the digital world, the signal is defined only at the sample times. Thus the digital machine knows only that the signal was 5 Volts at some point in time and 5.1 Volts some interval later. Obviously, the digital machine could sample the signal faster and faster until its representation of the signal approached the analog version. However, if a digital device were somehow constructed that could sample the signal continuously, it would have no processing time left over to work on the samples it obtained. Thus, the trick is to sample fast enough to obtain a reasonable facsimile of the signal, yet slow enough to have time left over to do some real work (signal processing). When the work to be performed on the signal in order to extract or determine desired results can be done for infinitely long periods, with no loss or skipping of sample values, then the system is said to be operating in "real-time". The slowest rate at which a digital machine can sample the analog signal and still maintain an accurate representation of it has been the subject of much study, and is discussed briefly under "data acquisition", below. In short, the slowest rate depends on

Page 74: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

S A M P L E D D A T A A C Q U I S I T I O N S Y S T E M S

70

the signal itself -- how abruptly it changes, forcing the digital machine to obtain new samples to stay current.

Most often, sampling is performed at regular intervals -- the rate of sampling is constant. This is known as "periodic sampling". Periodic sampling greatly simplifies digital analysis, as will soon be apparent (all Hyperception waveform processing functions assume periodic sampling). A sampled signal is usually referred to as a "discrete time sequence", where the sequence values are defined only at the sample times. The sampled signal should not be thought of as having zero value at all other points in time, however -- the sampled signal simply is not represented between samples.

Data Acquisition Data acquisition is a term used to describe the process of "sampling" a signal (capturing a sequence of numbers for a digital machine to work with, as described above) from a real-world system. In many cases, the signal captured represents the physical quantity of electric voltage, for two reasons:

1) Most signals of another type can be readily transformed into voltage, through the use of transducers such as microphones, thermistors, light-sensitive diodes, piezoelectric material, etc.

2) There exist many inexpensive devices that perform periodic time sampling of voltage and are compatible with digital computers.

In the field of digital signal processing, the transformation from a continuous analog signal to a discrete sequence is usually referred to as analog-to-digital conversion (A/D conversion). There currently exists a wide variety of A/D systems exists for use with the IBM PC/XT/AT and compatible machines. Usually these systems include a plug-in circuit card and software, such as Hypersignal, that allows convenient data acquisition and storage on disk for subsequent processing and analysis. In the case of Hypersignal software, various real-time processing options are also available, allowing signal modification or information extraction to be performed prior to display or disk storage.

In order to set up a data acquisition system it is important to know some information about the signal to be captured. The most important characteristic is the bandwidth of the signal. The bandwidth of a signal refers to the difference between the highest frequency at which the signal can change, and the lowest. Since many signals may not change at all for some length of time (zero frequency is sometimes known as "DC"), bandwidth often refers simply to the maximum signal frequency component. Frequency, an oft-used term in digital signal processing, may be thought of as the rate at which a signal changes values. The maximum signal frequency occurs when a signal changes from its lowest possible value to its highest possible value or vice versa in the smallest amount of time. In mathematical terms, one divided by this minimum time interval is the maximum signal frequency. Thus, frequency is expressed in units called Hertz (Hz), where 1 Hz is 1/1sec.

Once the bandwidth of the signal is known, it is possible to determine the minimum rate at which the signal can be sampled (the maximum time interval between adjacent time samples) and still be truly representative of the continuous analog time signal.

One may ask what is to be gained by sampling at the minimum rate. There are two very important resources that almost always need to be conserved including processor time between samples for actual digital signal processing work, and processor memory storage for samples. The minimum rate of sampling is known as the Nyquist Frequency (Fs), and is related to the inherent bandwidth (BW) in the signal to be sampled. This relationship can be expressed mathematically by the following equation:

Page 75: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

71

Fs>>2*BW

This rather famous equation states that the continuous signal must be sampled at a rate that exceeds at least twice its bandwidth in order to arrive at an equivalent sampled version of the signal. This relationship is of fundamental importance in setting up a data acquisition system.

Analog Signal Band Limiting A logical question might now be: How does one guarantee a limit on the bandwidth of a signal? In fact, most signals are "band limited" prior to analog-to-digital conversion because of the input device from which they originate or the analog circuitry through which they must subsequently travel. In many cases, natural band limiting is in effect because the transducer, or input device, being used has an inherent band limit. Some examples of this might be a microphone that cannot pick up frequencies higher than 20 kHz or a telephone circuit that drops off sharply after 3.5 kHz simply because of the type and length of wire used to carry its signals. Another example would include a light-sensitive diode with a switching speed limited by the molecular structure and length of electron travel path in the silicon used to build it. Sometimes, the A/D system used will provide additional, active band limiting circuitry, which may even provide for an adjustable band limit frequency. Usually, this is done using what is known as a lowpass filter (anti-aliasing filter), which "passes" frequencies below a certain "cutoff frequency" and blocks those frequency components above. Theoretically this cutoff frequency may be sharply defined, but in practice sharp cutoff frequencies are difficult to achieve. Because of this, it is usually a good idea to set the sampling frequency somewhat higher, say 20-30 % higher, than the Nyquist Frequency, to allow for too-high frequencies that are near the specified filter bandwidth but not completely blocked.

Once you have an appropriate A/D system producing samples of a band limited signal at a sufficient sampling rate, you have crossed the analog-digital boundary and entered the world of digital signal processing. The information contained in the original continuous analog signal still exists, but in an equivalent form -- one that digital machines and their programs, such as Hyperception�s Hypersignal software products, can deal with.

Page 76: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

S A M P L E D D A T A A C Q U I S I T I O N S Y S T E M S

72

Page 77: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

73

VAB Mathematical Operators Descriptions of the VAB Mathematical Operators

This section is intended to serve as a source of information about the mathematical operators that can be used in the VAB environment. These operators give added power to each block component. Contained in this section will be a list of the operators along with descriptions of each one.

The operators seen here are usable in any block parameter where numerical data is required. In addition, any global worksheet variables that are defined may also be used in conjunction with these operators.

In the example shown below the Maximum Frequency parameter of a Sweep generator block component has been defined to be the Sample Rate divided by a value of 2.0. This produces a result of the swept sine wave sweeping from 0 Hz to the half of the specified Sample Rate. The Sample Rate PC-based global variable can be user-changed without requiring any modifications to the entered mathematical operator. This example is a simple one, but demonstrates how one can make use of a mathematical operator. More complex equations can of course be constructed by the user. It is NOT necessary to use variable names when using the mathematical operators. However, it is sometimes convenient to create Variables that are based upon mathematical operators, and that reference other Variable names.

Example: Max. Frequency is defined to be Sample Rate / 2.0

Appendix

A

Page 78: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B M A T H E M A T I C A L O P E R A T O R S

74

Operator Description

+ Adds two values together

- Subtracts the second value from the first or in the case of a single operand, it returns the additive inverse of the operand

* Multiplies two numbers

/ Divides the first value by the second; returns an integer result

% The result of the modulus operator (%) is the remainder when the first value is divided by the second

& Logical AND

| Logical OR

^ The exclusive-OR operator (^) compares each bit of its first operand to the corresponding bit of its second operand. If one bit is 0 and the other bit is 1, the corresponding result bit is set to 1. Otherwise, the corresponding result bit is set to 0

~ The bitwise-complement (or bitwise-NOT) operator produces the bitwise complement of its operand. The operand must be of integral type. This operator performs usual arithmetic conversions; the result has the type of the operand after conversion.

<< The bitwise shift operators shift their first operand left (<<) by the number of positions the second operand specifies.

>> The bitwise shift operators shift their first operand right (<<) by the number of positions the second operand specifies.

abs(x) Calculates the absolute value

acos(x) Calculates the arccosine

asin(x) Calculates the arcsine

atan(x) Calculates the arctangent

cos(x) Calculates the cosine

cosh(x) Calculates the hyperbolic cosine

(double)x This type cast operator converts a value to a double value

(float)x This type cast operator converts a value to a float value

exp(x) Calculates the exponential

Page 79: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

75

(int)x This type cast operator converts a value to a integer value

(long)x This type cast operator converts a value to a long value

log(x) Calculates logarithm

log10(x) Calculates logarithm base 10

min(x,y) Returns the smaller of two values

max(x,y) Returns the larger of two values

Pi Pi is a mathematical constant equal to approximately 3.1415926535897932.

pow(x,y) Raises x to the power of y

rand() Generates a random number

round(expression[,decimalplaces])

Returns a number rounded to a specified number of decimal places. If decimalplaces is omitted, expression is returned as an integer.

sin(x) Calculates the sine

sinh(x) Calculates the hyperbolic sine

sqrt(x) Calculates the square root

tan(x) Calculates the tangent

tanh(x) Calculates the hyperbolic tangent

trunc(x) Returns the integer portion of a number

The following operators are only available in those blocks that allow the operator to specify a difference equation to be used. The two blocks that currently support this feature are the Variable Signal Generator and Difference Equation blocks.

Operator Description

m Ever increasing value, it gets reset when the Reset button is pressed.

n Range from 0-(Framesize-1)

x Input channel 0

x1 Input channel 0

Page 80: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B M A T H E M A T I C A L O P E R A T O R S

76

x2 Input channel 1

y Output channel 0

y1 Output channel 0

Page 81: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

77

Appendix

B VAB Example Worksheets Several Useful Examples

We have included several sample worksheets with VAB to help you learn how to create your own real-time block diagram worksheets for use on the different Texas Instruments DSK platforms. These examples have been grouped into some of the following application areas: DSP, Image, Miscellaneous, Music, Speech, and Telecom. Depending on which DSK platform you installed for, there may be additional or different examples than what is listed here.

The interested user is encouraged to load and run the example worksheets that are included with the VAB program. The default installation folder for the example worksheets is

C:\Program Files\Hyperception\VAB\Examples

The examples that are installed with the different DSK platforms should load and run on the DSK hardware without problem. They should appear similar to the screen shots shown in this Appendix.

DTMF Generator

DTMF Generation Example

Page 82: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B E X A M P L E W O R K S H E E T S

78

Variable DTMF

Variable DTMF Example

Fourier Series

Fourier Series Example

Page 83: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

79

Heterodyne Example

Heterodyne Example

IIR Elliptic Filter

IIR Elliptic Filter with Biquads

Page 84: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B E X A M P L E W O R K S H E E T S

80

IIR Highpass Filter

IIR Chebyshev Highpass Filter Example

Image Edge Detector

Image Edge Detection

Page 85: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

81

Pitch Bending

Chord Construction Music Example

Three Octave Chords

Real-time Chord Generation Music Example

Page 86: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B E X A M P L E W O R K S H E E T S

82

Random Number Generator

Random Number Generator Example

Reverb

Simple Reverberation Example

Page 87: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

V A B � S T A R T E R � S G U I D E

83

Spectral Inversion

Spectral Inversion Example

Square Wave Generator

Squarewave Generator Example

Page 88: VAB Starter's Guide - National Instruments©National Instruments Corporation v VAB Starter’s Guide Contents Chapter 1 Getting Started with VAB Installation 5 Running VAB for the

Technical Support and Professional Services

Visit the following sections of the National Instruments Web site at ni.com for technical support and professional services:

• Support—Online technical support resources at ni.com/support include the following:

– Self-Help Resources—For answers and solutions, visit the award-winning National Instruments Web site for software drivers and updates, a searchable KnowledgeBase, product manuals, step-by-step troubleshooting wizards, thousands of example programs, tutorials, application notes, instrument drivers, and so on.

– Free Technical Support—All registered users receive free Basic Service, which includes access to hundreds of Application Engineers worldwide in the NI Developer Exchange at ni.com/exchange. National Instruments Application Engineers make sure every question receives an answer.

For information about other technical support options in your area, visit ni.com/services or contact your local office at ni.com/contact.

• Training and Certification—Visit ni.com/training for self-paced training, eLearning virtual classrooms, interactive CDs, and Certification program information. You also can register for instructor-led, hands-on courses at locations around the world.

• System Integration—If you have time constraints, limited in-house technical resources, or other project challenges, National Instruments Alliance Partner members can help. To learn more, call your local NI office or visit ni.com/alliance.

If you searched ni.com and could not find the answers you need, contact your local office or NI corporate headquarters. Phone numbers for our worldwide offices are listed at the front of this manual. You also can visit the Worldwide Offices section of ni.com/niglobal to access the branch office Web sites, which provide up-to-date contact information, support phone numbers, email addresses, and current events.