---
title: "Crosspoints and three-stage switching"
subject: "Telecommunications"
chapter: 4
key: "semester_8/telecommunications:crosspoint-switching-array"
source: https://www.bctengineer.com/q/semester_8/telecommunications/crosspoint-switching-array
site: BCT Engineering
---

# Crosspoints and three-stage switching

Telecommunications · Chapter 4: Digital Switching

- Asked in: 2081 Bhadra, 2+6 marks
- Video: [Switching Engineering - Cross-points and Number of Switches - Calculations](https://www.youtube.com/watch?v=Bbm3lKI7O5Y) — KINEMARC
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_8/telecommunications/crosspoint-switching-array
- Whole chapter: https://www.bctengineer.com/md/semester_8/telecommunications/chapter-4

## Question

What do you know about cross point and switching array in switching structure? Explain three stage switching and calculate how many cross point used in three stage switching.

## Short answer

A crosspoint is a basic switching element connecting an input to an output; a switching array is a matrix of crosspoints. Three-stage switching divides N lines into groups of n, with k middle arrays. Total crosspoints = 2Nk + k(N/n)^2. For N=128, n=8, k=15 (non-blocking), this gives 7680 crosspoints, less than a single-stage 128×128 (16384).

## Answer

#### Crosspoint and switching array
A **crosspoint** is the basic switching element at the intersection of an input line and an output line; when it is closed (a relay contact, reed or electronic gate) it connects that input to that output. A **switching array (matrix)** is a rectangular arrangement of crosspoints with $N$ inputs and $M$ outputs ($N \times M$ crosspoints); any input can be connected to any free output. A single-stage $N \times N$ array needs $N^2$ crosspoints (or $N(N-1)/2$ if folded), which grows too quickly for large exchanges.

```text
        out1 out2 out3
 in1 ----x----x----x---
 in2 ----x----x----x---    x = crosspoint
 in3 ----x----x----x---
```

#### Three-stage switching
The $N$ inputs are divided into groups of $n$.
```text
  first stage      middle stage     third stage
 (N/n arrays,     (k arrays,       (N/n arrays,
   n x k)        N/n x N/n)          k x n)
 n -->[n x k]--+->[N/n x N/n]--+-->[k x n]--> n
 n -->[n x k]--+->[N/n x N/n]--+-->[k x n]--> n
   ...         +->   ...       +-->   ...
 n -->[n x k]--+->[N/n x N/n]--+-->[k x n]--> n
  (every first-stage array has one link to
   every middle array, and so on)
```
- **Stage 1:** $N/n$ arrays, each $n \times k$.
- **Stage 2:** $k$ arrays, each $\frac{N}{n} \times \frac{N}{n}$.
- **Stage 3:** $N/n$ arrays, each $k \times n$.

Each input reaches any output through any one of the $k$ middle arrays, so there are $k$ alternative paths. Total crosspoints:
$$
\begin{aligned}
N_x &= \underbrace{\tfrac{N}{n}(nk)}_{\text{stage 1}} + \underbrace{k\left(\tfrac{N}{n}\right)^2}_{\text{stage 2}} + \underbrace{\tfrac{N}{n}(kn)}_{\text{stage 3}} \\
&= 2Nk + k\left(\frac{N}{n}\right)^2
\end{aligned}
$$
If $k = 2n - 1$ the network is strictly non-blocking (Clos); if $k < 2n-1$ some blocking occurs but the cost is lower.

#### Example calculation
Take $N = 128$ lines, $n = 8$ (so $N/n = 16$), non-blocking $k = 2n - 1 = 15$:
$$
\begin{aligned}
\text{Stage 1} &= 16 \times (8 \times 15) = 1920 \\
\text{Stage 2} &= 15 \times (16 \times 16) = 3840 \\
\text{Stage 3} &= 16 \times (15 \times 8) = 1920 \\
N_x &= 2(128)(15) + 15(16)^2 = 7680
\end{aligned}
$$
A single-stage $128 \times 128$ switch would need $128^2 = 16\,384$ crosspoints. The three-stage switch saves about 53 % while still being non-blocking. Here $n = 8 = \sqrt{N/2}$ is the optimum, and the result equals $4N(\sqrt{2N} - 1) = 4(128)(15) = 7680$.

**Answer: 7680 crosspoints for a 128-line non-blocking three-stage switch (vs 16 384 single-stage).**

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. How many crosspoints does a single-stage N x N array need?
   A. N
   B. N^2
   C. 2N
   D. N log N
   Answer: B. Every input needs a crosspoint to every output, so N x N = N^2, which grows too quickly for large exchanges. (Key point: Single-stage crosspoints)

2. In a three-stage network, what are the array sizes of stages 1, 2 and 3?
   A. n x n, k x k, n x n
   B. N x k, k x k, k x N
   C. n x k (N/n arrays), (N/n)x(N/n) (k arrays), k x n (N/n arrays)
   D. k x n, n x k, k x n
   Answer: C. Stage 1 has N/n arrays of n x k, stage 2 has k arrays of (N/n) x (N/n), stage 3 has N/n arrays of k x n. (Key point: Three-stage structure)

3. For N = 128, n = 8, k = 15, how many crosspoints are needed?
   A. 16384
   B. 3840
   C. 1920
   D. 7680
   Answer: D. 2Nk + k(N/n)^2 = 2(128)(15) + 15(16)^2 = 3840 + 3840 = 7680, about half of 16384. (Key point: Worked example)

## Related in Telecommunications

- [Switching functions and three-stage crosspoints](https://www.bctengineer.com/question.md?key=semester_8%2Ftelecommunications%3Aswitching-functions-crosspoints-4x4) — Telecommunications, chapter 4, asked 2×
- [PCM switching and three-stage crosspoints](https://www.bctengineer.com/question.md?key=semester_8%2Ftelecommunications%3Apcm-switching-crosspoints-4x5) — Telecommunications, chapter 4
- [Digital exchange and three-stage crosspoints](https://www.bctengineer.com/question.md?key=semester_8%2Ftelecommunications%3Adigital-exchange-crosspoints) — Telecommunications, chapter 4
- [Crosspoints in three-stage switch (4 inputs, 5 arrays)](https://www.bctengineer.com/question.md?key=semester_8%2Ftelecommunications%3Acrosspoints-4-input-5-second) — Telecommunications, chapter 4, asked 2×
- [TST vs STS and three-stage design](https://www.bctengineer.com/question.md?key=semester_8%2Ftelecommunications%3Atst-sts-design-crosspoints) — Telecommunications, chapter 4
- [Design 200×200 three-stage switch](https://www.bctengineer.com/question.md?key=semester_8%2Ftelecommunications%3Athree-stage-200x200-clos) — Telecommunications, chapter 4

## Related in other subjects

- [Structure versus array](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Astructure-vs-array) — Computer Programming, chapter 8, asked 4×
- [Structure vs array; accessing members](https://www.bctengineer.com/question.md?key=semester_1%2Fcomputer_programming%3Astructure-vs-array-access-members) — Computer Programming, chapter 8
