Block Preview

Introduction

This block performs a bit slicing operation on standard (non-TM) data streams. It extracts a contiguous range of bits specified by Start Bit (MSB) and Stop Bit (LSB).

$$ \mathrm{OUT}(n) = \mathrm{IN}(n)[\text{StartBit} : \text{StopBit}] $$

Pin Description

IN Input Variable bit BIT VECTOR
Input binary data (non-TM). Bits indexed from 0 (LSB) to N-1 (MSB).
Default: Must be connected
OUT Output Variable bit BIT VECTOR
Sliced output (non-TM), combinational (zero latency).

Properties

Input Size NumberOfBits

Set the input word size in bits

Number of bits per input sample. Range: 2 – 128.

Default: 16

Range: 2 – 16384

Start Bit StartBit

Slicing MSB

MSB of extracted slice. Range: 0 – 127 (must be ≥ Stop Bit).

Default: 7

Range: 0 – 16384

Stop Bit StopBit

Slicing LSB

LSB of extracted slice. Range: 0 – 127 (must be ≤ Start Bit).

Default: 0

Range: 0 – 16384

Functional description

Extracts bits from the input: $y = x[\text{high} : \text{low}]$

Output width = |Start Bit - Stop Bit| + 1

Example

16-bit input 1010110011001100:

  • Start=11, Stop=4 → Output (8 bits) = 10110011
  • Start=7, Stop=0 → Output (8 bits) = 11001100 (lower byte)

Timing

Purely combinational with zero latency.