Step 1: Problem Definition.
A pipeline system comprises 4 segments, each with a 20 ns processing time. This system handles 100 sequential tasks. In contrast, a non-pipeline system processes each task in 4 times the segment duration, equating to 80 ns per task. The objective is to determine the speedup achieved by the pipeline system compared to the non-pipeline system.
Step 2: Non-Pipeline System Processing Time.
The total time for 100 tasks in the non-pipeline system is calculated as:\[t_n = k t_p \times n = 4 \times 20 \, \text{ns} \times 100 = 8000 \, \text{ns}.\]
Step 3: Pipeline System Processing Time.
The first task in the pipeline system requires \( 4 \times 20 \, \text{ns} = 80 \, \text{ns} \). Subsequent tasks are processed concurrently, with each taking 20 ns. Therefore, the total time for 100 tasks is:\[t_p = t_p + (n - k) t_p = 80 \, \text{ns} + (100 - 4) \times 20 \, \text{ns} = 80 \, \text{ns} + 1920 \, \text{ns} = 2000 \, \text{ns}.\]
Step 4: Speedup Calculation.
Speedup is computed as the ratio of the non-pipeline time to the pipeline time:\[\text{Speedup} = \frac{t_n}{t_p} = \frac{8000 \, \text{ns}}{2000 \, \text{ns}} = 4.\]
Step 5: Conclusion.
The speedup of pipeline processing over an equivalent non-pipeline processing is 4.
The major difficulties that cause the instruction pipeline to deviate from its normal operation are:
(A) Resource conflicts
(B) Stack operation
(C) Data dependency
(D) Branch difficulties
from the options given below: Choose the correct answer from the options given below: