Sundance SMT9650 User Manual

S M T 9 6 5 0 User Guide
3 . 0
1 of 36
SMT9650
USER GUIDE
Copyright © Sundance
All rights reserved. No part of this document may be reproduced, translated, stored
in a retrieval system, or transmitted, in any form or by any means, electronic,
mechanical, photocopying, recording or otherwise, without prior written permission
of the owner.
Note:
If this copy is no longer in use, return to sender.
Document No.
Revision
Date
Page
S M T 9 6 5 0 User Guide
3 . 0
2 of 36
APPROVAL PAGE
Name Signature Date
AUTHOR/S
Name Signature Date
Peter Robertson 4 Dec 2006
Document No.
Revision
Date
Page
S M T 9 6 5 0 User Guide
3 . 0
3 of 36
DOCUMENT HISTORY
Date Initials Revision Description of change
6 Dec 2006 PSR 0.1 Initial Draft
22 Dec 2006 PSR 1.0 Various corrections and extra pictures added
26 Dec 2006 PSR 2.0 Updated and extra demo description added
29 Dec 2006 PSR 3.0 Revised extra demos
Document No.
Revision
Date
Page
S M T 9 6 5 0 User Guide
3 . 0
4 of 36
TABLE OF CONTENTS
1 INTRODUCTION ................................................................................................................................................................... 5
2 PREREQUISITES .................................................................................................................................................................. 5
3 OVERVIEW ............................................................................................................................................................................ 5
4 CONSTRAINTS ...................................................................................................................................................................... 6
1.1 SIZE CONSTRAINT .................................................................................................................................................................... 6
1.2 ORDERING CONSTRAINT ............................................................................................................................................................ 6
5 LABVIEW INTERFACE ....................................................................................................................................................... 7
6 DEMONSTRATION 1 ........................................................................................................................................................... 8
1.3 SIMULINK MODEL .................................................................................................................................................................. 10
1.4 PARS MODEL ..................................................................................................................................................................... 10
1.5 THE PRE-BUILT TASKS ........................................................................................................................................................... 11
1.5.1. Config364 .................................................................................................................................................................. 11
1.5.2. silo2switch ................................................................................................................................................................. 12
1.5.3. chan2mux .................................................................................................................................................................. 13
1.6 BUILDING THE DEMONSTRATION .............................................................................................................................................. 14
1.7 RUNNING THE DEMONSTRATION ............................................................................................................................................... 14
1.8 INTERNAL DETAILS ................................................................................................................................................................ 16
7 DEMONSTRATION 2 ......................................................................................................................................................... 17
8 DEMONSTRATION 3 ......................................................................................................................................................... 23
9 ACRONYMS AND ABBREVIATIONS ............................................................................................................................. 25
10 KNOWN ISSUES ................................................................................................................................................................ 25
11 COPYRIGHT ...................................................................................................................................................................... 26
12 LICENSE AGREEMENT .................................................................................................................................................. 27
13 INSTALLATION ................................................................................................................................................................ 30
14 ACKNOWLEDGEMENT .................................................................................................................................................. 36
Document No.
Revision
Date
Page
S M T 9 6 5 0 User Guide
3 . 0
5 of 36

1 INTRODUCTION

The SMT9650 is a software package that allows Labview to be used with code executing on hardware made up from combinations of DSP and FPGA modules. The code is generated from Simulink models using PARS, a development tool that uses 3L Diamond to create multiprocessor applications.

2 PREREQUISITES

You need the following software to have been installed before you can use the SMT9650:
Labview (version 8.0 or later)
Matlab & Simulink
PARS
3L Diamond DSP & 3L Diamond FPGA (V3.1.4 or later)
This document assumes that you are familiar with these software components.

3 OVERVIEW

An application built with the SMT9650 comprises two parts: a Labview front-end running on a PC and a DSP application1 running in attached hardware.
The Labview front-end uses custom Virtual Instruments (VIs) to load the DSP application and communicate with it. The nature of the communication between the PC and the attached hardware is invisible to the user; the various combinations permitted by Sundance hardware (host comport or USB connection, for example) are managed by the underlying systems software.
1
To keep the text simple, this document will use the term “DSP application” to mean an application suitable for a
multiprocessor system comprising both DSP and FPGA components.
Document No.
Revision
Date
Page
S M T 9 6 5 0 U s e r G u i d e
3 . 0
6 of 36

4 CONSTRAINTS

Labview and Simulink have different models of computation, and two constraints are necessary in order to allow them to cooperate.

1.1 SIZE CONSTRAINT

The size of arrays handled by Labview VIs is determined by the source of the data; for the input instruments this will be Simulink (from the DSPs) and for the output instrument it will be Labview. When running a system entirely within either the Simulink or Labview environments, matching of data sizes is mostly done for you. In the hybrid environment of the SMT9650, you must make sure that array sizes match the requirements of the data destination manually.

1.2 ORDERING CONSTRAINT

The code generated by Simulink imposes a strict ordering constraint on the application; all input sources will be read before all output sinks are written. This means that the loop in Labview communicating with the DSP system must ensure that all the SMT9650 output VIs are executed before all of the input VIs. The simplest way to achieve this is to use a flat sequence and make sure that all your output VIs appear in one frame and all the input VIs appear in the next.
Document No.
Revision
Date
Page
S M T 9 6 5 0 U s e r G u i d e
3 . 0
7 of 36

5 LABVIEW INTERFACE

The Labview interface is presented as seven virtual instruments: one to load the Sundance hardware, three to get data from the DSP application, and three to send data to the DSP application. These instruments appear as User Libraries in the Labview Functions palette. You can display this palette by going to the
Block Diagram window and selecting View/Functions Palette.
From DSP is a folder with the three input instruments and To DSP is a folder with the three output
instruments. LOAD DSP.vi is the instrument used to send an application to the Sundance hardware.
The “get_...” instruments receive data from the DSP application in the form of arrays of values of the selected type; the size of array is determined by the DSP. For example, get_int.vi returns an array of 32-bit integers.
The “put_...” instruments send arrays of the selected type to the DSP application. For example, put_float.vi sends arrays of 32-bit floating point values. The size of array transmitted must match the expectation of the receiving DSP code.
Document No.
Revision
Date
Page
S M T 9 6 5 0 U s e r G u i d e
3 . 0
8 of 36

6 DEMONSTRATION 1

This demonstration shows how a simple DSP application generated using PARS can be combined with a front-end developed under Labview. TIt can be found in the \Demos\Demo1\ sub-folder of the SMT9650 installation folder; this will be C:\SundanceDSP\SMT9650\Demos\Demo1\ by default.
The hardware needed for this demonstration is pictured below.
There are two Sundance TIMs mounted on an SMT310Q carrier board: an SMT374 dual C6713 DSP module (root & node) and an SMT364 4-channel ADC module. Data are carried between these modules over comports and SDBs. The comport connections are built into the carrier, and an SMT596 SHB connector is used to join the SDBs of the two modules.
The logical connections are shown in the following diagram:
SMT310Q
SMT364SMT374
roo t nod e ADC
Host PC
3
41 1
0
compo rt conn ection
SDB conne ction
4
Document No.
Revision
Date
Page
S M T 9 6 5 0 U s e r G u i d e
3 . 0
9 of 36
The on-board comport connection between the STM374 and the SMT364 (CP:1 to CP:4) is enabled using the Sundance BoardInfo utility:
Select Tools and then Comport Switch. This will bring up the following display:
Click the square between TIM1 comport 1 and TIM2 comport 4 to make it display as ... as in the picture above, if necessary. This enables the required comport connection. Click OK and then OK again.
The demonstration can be tailored to run on different combinations of hardware modules and carrier boards by changing parameters in the model, as described in the PARS documentation.
Document No.
Revision
Date
Page
S M T 9 6 5 0 U s e r G u i d e
3 . 0
10 of 36

1.3 SIMULINK MODEL

1.4 PARS MODEL

The demonstration is an SMT364 ADC TIM communicating with an SMT374 TIM running three user tasks on two DSPs. Config364 runs on the node DSP and starts the ADC running as a counter. The remaining tasks run on the root DSP: Silo2switch gathers the ADC data and passes them to
chan2mux which splits out two channels of data. These two channels are then passed to the Host Task which uses Labview to display the data.
Document No.
Revision
Date
Page
S M T 9 6 5 0 U s e r G u i d e
3 . 0
11 of 36

1.5 THE PRE-BUILT TASKS

The demonstration uses three PARS pre-built (PB) tasks that have been developed to provide access to the SMT364 ADC: config364, silo2switch, and chan2mux.

1.5.1. Config364

This PB task configures an SMT364 ADC board. For more information about the SMT364, please refer to its user manual. This PB task is a wrapper around the Config364 tasks shipped with the SMT6045. For more information about how the task works and its parameters, please refer to the SMT6045 documentation. This PB tasks takes the following parameters:
Figure 1: Parameters window for Config364 task.
Place task on: specify which processor this task should be placed on.
Physical channel from SMT364. Define the physical channel connecting the SMT364 to the
processing board.
Physical channel to SMT364. Define the physical channel connecting the SMT364 to the
processing board. Normally this is the same as the previous parameter.
Use default values for ADC. If selected, any parameters entered for ADC registers are ignored
and the default values will be used.
ADC registers 0 to 4: values for ADC registers. Please refer to the SMT364 User Guide for an
explanation of these registers.
Document No.
Revision
Date
Page
Loading...
+ 25 hidden pages