BrettG

Excluding Cells from the Exported System Files

Discussion created by BrettG on Sep 6, 2010

A new feature, which will be available in the SigmaStudio version 3.2 release, allows the user to selectively exclude algorithms from appearing in the exported system files. This can be useful, for example, if only some of the controls in a project need to be controlled by the end user.

 

For example, in the following project, there are two user-controllable algorithms: a filter and a volume control.

ScreenHunter_04 Sep. 07 10.54.jpg

In the exported system files, references to both the filter and the volume control are made.

 

/*
* File:           C:\Users\bgilders\Desktop\Exclude\Include_IC_1_PARAM.h
*
* Created:        Tuesday, September 07, 2010 10:55:06 AM
* Description:    Include:IC 1 parameter RAM definitions.
*
* This software is distributed in the hope that it will be useful,
* but is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* This software may only be used to program products purchased from
* Analog Devices for incorporation by you into audio products that
* are intended for resale to audio product end users. This software
* may not be distributed whole or in any part to third parties.
*
* Copyright © 2010 Analog Devices, Inc. All rights reserved.
*/
#ifndef __INCLUDE_IC_1_PARAM_H__
#define __INCLUDE_IC_1_PARAM_H__


/* Module Non Modulo Location Start - Non Modulo Location Start*/
#define MOD_NONMODULOLOCATIONSTART_COUNT               1
#define MOD_NONMODULOLOCATIONSTART_DEVICE              "IC1"
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_ADDR 0
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_FIXPT 0x000001F6
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_VALUE SIGMASTUDIOTYPE_INTEGER_CONVERT(502)
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_TYPE SIGMASTUDIOTYPE_INTEGER

/* Module Filter - Medium Size Eq*/
#define MOD_FILTER_COUNT                               5
#define MOD_FILTER_DEVICE                              "IC1"
#define MOD_FILTER_ALG0_STAGE0_A1_ADDR                 8
#define MOD_FILTER_ALG0_STAGE0_A1_FIXPT                0x00F294EF
#define MOD_FILTER_ALG0_STAGE0_A1_VALUE                SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1.8951700997919)
#define MOD_FILTER_ALG0_STAGE0_A1_TYPE                 SIGMASTUDIOTYPE_FIXPOINT
#define MOD_FILTER_ALG0_STAGE0_A2_ADDR                 9
#define MOD_FILTER_ALG0_STAGE0_A2_FIXPT                0xFF8B5334
#define MOD_FILTER_ALG0_STAGE0_A2_VALUE                SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-0.911523447875689)
#define MOD_FILTER_ALG0_STAGE0_A2_TYPE                 SIGMASTUDIOTYPE_FIXPOINT
#define MOD_FILTER_ALG0_STAGE0_B0_ADDR                 10
#define MOD_FILTER_ALG0_STAGE0_B0_FIXPT                0x00800000
#define MOD_FILTER_ALG0_STAGE0_B0_VALUE                SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1)
#define MOD_FILTER_ALG0_STAGE0_B0_TYPE                 SIGMASTUDIOTYPE_FIXPOINT
#define MOD_FILTER_ALG0_STAGE0_B1_ADDR                 11
#define MOD_FILTER_ALG0_STAGE0_B1_FIXPT                0xFF0D6B11
#define MOD_FILTER_ALG0_STAGE0_B1_VALUE                SIGMASTUDIOTYPE_FIXPOINT_CONVERT(-1.8951700997919)
#define MOD_FILTER_ALG0_STAGE0_B1_TYPE                 SIGMASTUDIOTYPE_FIXPOINT
#define MOD_FILTER_ALG0_STAGE0_B2_ADDR                 12
#define MOD_FILTER_ALG0_STAGE0_B2_FIXPT                0x0074ACCC
#define MOD_FILTER_ALG0_STAGE0_B2_VALUE                SIGMASTUDIOTYPE_FIXPOINT_CONVERT(0.911523447875689)
#define MOD_FILTER_ALG0_STAGE0_B2_TYPE                 SIGMASTUDIOTYPE_FIXPOINT

/* Module Volume - Single Volume Control*/

#define MOD_VOLUME_COUNT                               2
#define MOD_VOLUME_DEVICE                              "IC1"
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_ADDR            13
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_FIXPT           0x00800000
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_VALUE           SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1)
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_TYPE            SIGMASTUDIOTYPE_FIXPOINT
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_ADDR            14
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_FIXPT           0x00800000
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_VALUE           SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1)
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_TYPE            SIGMASTUDIOTYPE_FIXPOINT

#endif

This allows the system designer to implement controls for both the filter and the volume control in their microcontroller code.

 

However, if the filter were to be set at a fixed value, requiring no user control, then it can be "excluded" in SigmaStudio by right-clicking it and selecting Exclude from Export Files.

ScreenHunter_05 Sep. 07 10.55.jpg

The cell will now have a small orange halo, which indicates that it will not appear in exported system files.

ScreenHunter_06 Sep. 07 10.55.jpg

 

The resulting exported system files include information for the volume control, but make no reference to the filter cell.

 

/*
* File:           C:\Users\bgilders\Desktop\Exclude\Exclude_IC_1_PARAM.h
*
* Created:        Tuesday, September 07, 2010 10:55:42 AM
* Description:    Exclude:IC 1 parameter RAM definitions.
*
* This software is distributed in the hope that it will be useful,
* but is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*
* This software may only be used to program products purchased from
* Analog Devices for incorporation by you into audio products that
* are intended for resale to audio product end users. This software
* may not be distributed whole or in any part to third parties.
*
* Copyright © 2010 Analog Devices, Inc. All rights reserved.
*/
#ifndef __EXCLUDE_IC_1_PARAM_H__
#define __EXCLUDE_IC_1_PARAM_H__


/* Module Non Modulo Location Start - Non Modulo Location Start*/
#define MOD_NONMODULOLOCATIONSTART_COUNT               1
#define MOD_NONMODULOLOCATIONSTART_DEVICE              "IC1"
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_ADDR 0
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_FIXPT 0x000001F6
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_VALUE SIGMASTUDIOTYPE_INTEGER_CONVERT(502)
#define MOD_NONMODULOLOCATIONSTART_NON_MODULO_LOCATION_START_TYPE SIGMASTUDIOTYPE_INTEGER

/* Module Volume - Single Volume Control*/
#define MOD_VOLUME_COUNT                               2
#define MOD_VOLUME_DEVICE                              "IC1"
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_ADDR            13
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_FIXPT           0x00800000
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_VALUE           SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1)
#define MOD_VOLUME_ALG1_GAIN1940ALGNS2_TYPE            SIGMASTUDIOTYPE_FIXPOINT
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_ADDR            14
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_FIXPT           0x00800000
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_VALUE           SIGMASTUDIOTYPE_FIXPOINT_CONVERT(1)
#define MOD_VOLUME_ALG0_GAIN1940ALGNS1_TYPE            SIGMASTUDIOTYPE_FIXPOINT

#endif

Outcomes