Computer Architecture.imp.assgn
Computer Architecture.imp.assgn
The functional components of a computer can be broadly categorized into four main categories:
* These components are responsible for receiving data from the outside world and converting it
into a format that the computer can understand.
* Mouse: Enables users to navigate and interact with graphical elements on the screen.
* Scanner: Scans physical documents and converts them into digital images.
* Touchscreen: Allows users to interact with the computer by touching the screen.
* The CPU is the brain of the computer, responsible for executing instructions and performing
calculations.
* The CPU's speed is measured in hertz (Hz), which indicates the number of cycles it can perform
per second.
**3. Memory:**
* Memory stores data and instructions that the CPU needs to access.
* Random Access Memory (RAM): Volatile memory that is used to store data that the CPU is
currently working on.
* Read-Only Memory (ROM): Non-volatile memory that stores permanent data, such as the
computer's BIOS.
* These components are responsible for displaying or presenting the results of the computer's
processing.
* **Storage Devices:** Hard disk drives (HDDs), solid-state drives (SSDs), and optical drives store
data for long-term storage.
* **Network Interface Cards (NICs):** Enable the computer to connect to a network and
communicate with other devices.
Q3. What is control unit? Describe hardwired control and microprogrammed control in brief.
Q4. What are the types of memory? Describe primary and secondary memory in brief.
**Types of Memory**
There are two main types of memory in a computer system: primary memory and secondary
memory.
* Volatile, meaning its contents are lost when the computer is turned off.
* Used to store data that the CPU is currently working on, such as program instructions, data, and
operating system files.
* Subdivided into:
* **DRAM (Dynamic Random Access Memory):** The most common type of primary memory,
known for its high density and relatively low cost.
* **SRAM (Static Random Access Memory):** Faster than DRAM but more expensive and
consumes more power.
* Used to store data permanently, even when the computer is turned off.
* Includes:
* **Hard Disk Drives (HDDs):** Magnetic storage devices that store data on rotating platters.
* **Solid-State Drives (SSDs):** Use flash memory to store data, offering faster performance
and higher durability compared to HDDs.
* **Optical Drives:** Use lasers to read and write data on discs, such as CDs, DVDs, and Blu-ray
discs.
**Key Differences:**
|---|---|---|
| Volatility | Volatile (data lost when power off) | Non-volatile (data retained when power off) |
| Use | Stores data for immediate use by the CPU | Stores data for long-term storage |
In summary, primary memory is used for short-term storage and direct access by the CPU, while
secondary memory is used for long-term storage and has a lower access speed. The choice of
memory type depends on the specific requirements of the application, such as speed, capacity,
and cost.
Q5. What are the input devices and output devices? Describe few major input and output devices
in brief.
**Parallel Computing**
**Flynn's Classification**
Flynn's classification is a widely used taxonomy for categorizing parallel computer architectures
based on the number of instruction streams and data streams they can process simultaneously. It
divides parallel computers into four categories:
- This is a sequential architecture where a single processor executes a single instruction stream
on a single data stream.
- This architecture involves a single instruction stream operating on multiple data streams
simultaneously.
- It is well-suited for tasks that involve repetitive operations on large datasets.
- This architecture involves multiple instruction streams operating on a single data stream.
- It is less common and often used in specialized applications like array processors.
- This is the most flexible and widely used parallel architecture, where multiple processors
execute multiple instruction streams on multiple data streams.
* **Big data analytics:** Processing large datasets for insights and patterns.
Parallel computing has become increasingly important in various fields due to its ability to
accelerate computations and handle large-scale problems efficiently.
Q7. Describe the Characteristics of RISC and CISC computer Architecture.
Q8. What is parallelism and pipelining? Describe or compare with key aspects.
Parallelism and pipelining are two techniques used to improve the performance of computer
systems. They both involve executing multiple instructions or tasks simultaneously, but they differ
in their approaches.
**Parallelism**
* **Goal:** To increase the overall throughput and speed of a system by dividing the workload
among multiple processing units.
* **Types:**
* **Task-level parallelism:** Dividing a task into smaller subtasks that can be executed
independently on different processors.
**Pipelining**
* **Definition:** Pipelining involves dividing a task into a sequence of stages and processing each
stage of multiple instructions simultaneously.
**Key Differences:**
|---|---|---|
| **Level** | Can be at instruction, data, task, or process level. | Typically at the instruction level.
|
| **Efficiency** | Can achieve significant speedup for tasks that can be parallelized. | Improves
throughput by overlapping instructions. |
**In summary:**
* Both techniques can significantly enhance the performance of computer systems, but they have
different approaches and requirements.
Q9. What are the instruction types? Describe Zero address, one address, two address and three
address instructions with example.
**Instruction Types**
In computer architecture, instructions are the basic commands that a processor can execute. They
can be classified based on the number of operands (data items) they operate on:
1. **Zero-Address Instructions:**
```
PUSH 10
PUSH 20
ADD // Adds the top two values on the stack (10 + 20)
```
2. **One-Address Instructions:**
- These instructions specify one operand, which is typically a register or memory location.
```
LOAD R1, 10
LOAD R2, 20
ADD R1, R2 // Adds the values in R1 and R2, storing the result in R1
```
3. **Two-Address Instructions:**
- These instructions specify two operands, which can be registers or memory locations.
**Example:**
```
ADD R1, R2 // Adds the values in R1 and R2, storing the result in R1
4. **Three-Address Instructions:**
- These instructions specify three operands, allowing for more complex operations in a single
instruction.
- Examples: `MOVE R1, R2, R3` (move the value in R2 to R1, and store the original value in R3)
**Example:*
```
ADD R1, R2, R3 // Adds the values in R2 and R3, storing the result in R1
```
**Note:** The choice of instruction type depends on the specific architecture of the processor.
Some architectures may use a combination of these types or have variations of them.
Q10. What is instruction cycle? Describe fetch instruction cycle and execute instruction cycle.
Q11. What is instruction cycle? Describe fetch cycle and execute cycle.