# WEIGHTED_SUM

NAME

SYNOPSIS

DESCRIPTION

FUNCTIONS

PINS

## NAME

weighted_sum
− convert a group of bits to an integer

## SYNOPSIS

**loadrt
weighted_sum wsum_sizes=***size[,size,...]*

Creates
weighted sum groups each with the given number of input bits
(*size*).

## DESCRIPTION

This component
is a "weighted summer": Its output is the offset
plus the sum of the weight of each TRUE input bit. The
default value for each weight is 2^n where n is the bit
number. This results in a binary to unsigned conversion.

There is a
limit of 8 weighted summers and each may have up to 16 input
bits.

## FUNCTIONS

**process_wsums
(requires a floating point thread)**

Read all input values and
update all output values.

## PINS

**wsum.***N***.bit.***M***.in**
bit in

The *m*’th input of
weighted summer *n*.

**wsum.***N***.hold**
bit in

When TRUE, the *sum*
output does not change. When FALSE, the *sum* output
tracks the *bit* inputs according to the weights and
offset.

**wsum.***N***.sum**
signed out

The output of the weighted
summer

**wsum.***N***.bit.***M***.weight**
signed rw

The weight of the
*m*’th input of weighted summer *n*. The
default value is 2^*m*.

**wsum.***N***.offset**
signed rw

The offset is added to the
weights corresponding to all TRUE inputs to give the final
sum.