Group “A”
Brief Answer Questions:
1. What is the importance of complement in digital computers?
Ans: The importance of complement in digital computers are:
- Arithmetic operations.
- Logic operations
- Data representation.
2. What is the register value of A after arithmetic right shift if A= 10011100?
Ans:
3.What is the purpose of location counter in assembler?
Ans: The purpose of location counter in assembler are:
- Memory Allocation.
- Instruction Encoding.
- Symbol Resolution.
- Code Relocation.
- Error Detection.
4. How many bits are required to address 4096 bytes of memory?
Ans: 12 bits bits are required to address 4096 bytes of memory.
5. What is the meaning of dynamic microprogramming?
Ans: Dynamic microprogramming is a technique used in microprocessor design where the microinstructions, which control the operation of the microprocessor, are stored in a writable control store or control memory.
6. What is the purpose of strobe pulse in asynchronous data transfer?
Ans: The purpose of strobe pulse in asynchronous data transfer are:
- Data Validity.
- Timing Control.
- Noise Immunity.
7. Write the major difficulties that cause the instruction pipeline to deviation from normal operation.
Ans: The major difficulties that cause the instruction pipeline to deviation from normal operation are:
- Data Hazards.
- Resource Conflicts.
- Branch Prediction Failures.
- Branch Prediction Failures.
- Interrupts and Exceptions
8. What is the principle behind the implementation of cache memory?
Ans: The principle behind the implementation of cache memory are:
- Temporal Locality.
- Cache Hierarchy.
- Cache Replacement Policies.
9. What is the function of IOP?
Ans: The function of IOP are:
- Interface with Peripheral Devices.
- Data Transfer Control.
- Data Buffering.
- Device Management.
10. What is critical section ?
Ans: A critical section in computer programming is a part of a multi-process program that must not be concurrently executed by more than one process.
Group “B”
Exercise Problems:
11. The 8-bit registers AR,BR,CR and DR initially have following values:
AR =11110010, BR=11111111,CR =10111001 DR =1110101010
Determine the 8 -bit value in each register after the execution of the following sequence of micro operations:
AR-AR+BR
CR-CR V DR, BR-BR+1
AR-AR+CR,DR-DR+1
Ans:
12. Perform the operation (-19)*(+21) by using signed magnitude multiplication algorithm.
Ans:
13. Write a program loop, using a pointer and counter , that clears the content of hexadecimal locations 500 through 5FF to 0.
Ans:
14. Consider the following figure:
PC=300
R1= 500
What is the value in AC if the instruction is LDA 300 if the modes are:
i. Direct addressing
ii. immediate
iii. Indirect addressing.
iv. Register indirect if LDA (R1) is used
Ans:
15. What is associative memory? Given a cache memory with access time 200ns and RAM with access time 2000ns , if hit ratio is 90% calculated the average memory access time.
Ans: An associative memory can be considered as a memory unit whose stored data can be identified for access by the content of the data itself rather than by an address or memory location. In associative memory, the data is stored along with associated tags or keys, and retrieval is performed by specifying the content (or a portion of it) rather than a specific memory address.
SOLUTION:
AMAT(Average Memory Access Time) =Hit time +Miss rate× Miss penalty
Where:
- Hit time is the access time for cache memory.
- Miss rate is 1−Hit ratio1−Hit ratio, which represents the probability of a cache miss.
- Miss penalty is the additional time required when a cache miss occurs, which is the access time for RAM.
Given:
- Hit time = 200 ns (cache access time)
- Miss rate = 1 – Hit ratio = 1 – 0.90 = 0.10
- Miss penalty = 2000 ns (RAM access time)
Now, let’s plug these values into the formula:
AMAT=200 ns+0.10×2000 ns
AMAT=200 ns+0.10×2000 ns
AMAT=200Â ns+200Â ns
AMAT=400Â ns
So, the average memory access time (AMAT) is 400 ns.
Group “C”
Comprehensive Answer Questions:
16. What is the advantage of common bus system ? Explain with diagram. What is vector processing?
Ans: A common bus system, also known as a shared bus or system bus, is a communication pathway shared by multiple components within a computer system. Common bus systems play a crucial role in facilitating communication and data exchange between components within a computer system, enabling efficient operation and coordination of system resources.
The advantage of common bus system are:
- Simplicity: Common bus systems have a straightforward design with a single set of communication lines shared by all components. This simplicity reduces the complexity of the system architecture, making it easier to design, implement, and troubleshoot.
- Cost-Effectiveness: Implementing a common bus system is typically more cost-effective compared to alternative architectures such as point-to-point or crossbar systems. It requires fewer interconnects and routing resources, resulting in lower hardware costs.
- Flexibility: A common bus system allows for flexible connectivity between different components within the system. New devices or modules can be easily added to the bus without requiring significant changes to the overall system architecture, facilitating system expansion and scalability.
- Resource Sharing: With a common bus system, multiple devices can share resources such as memory or I/O interfaces. This promotes efficient resource utilization and maximizes system throughput by avoiding resource duplication.
- Ease of Troubleshooting: Troubleshooting and debugging in common bus systems are simplified because all communication between components occurs over the same bus. This makes it easier to monitor and analyze bus transactions, identify communication issues, and diagnose faults or errors within the system.
- Standardization: Common bus systems often adhere to standard protocols and interfaces, making them compatible with a wide range of devices and peripherals.
Vector processing, also known as vectorization, is a type of parallel computing paradigm that involves performing the same operation on multiple data elements simultaneously. In vector processing, a single instruction is applied to a group of data elements, known as a vector, in a coordinated and efficient manner.
17. How are priorities interrupt handled? What do you mean by instruction set completeness?
Ans: An interrupt tells the CPU that the device needs attention and that the CPU should stop any current activity and respond to the device. If the CPU is not performing a task that has higher priority than the priority of the interrupt, then the CPU suspends the current thread. Here’s are priorities interrupt handled are :
- Interrupt Prioritization: Each interrupt source in the system is assigned a priority level, often represented by a numerical value or priority code. Interrupts with higher priority levels are given precedence over those with lower priority levels.
- Interrupt Masking: The CPU’s interrupt controller or interrupt handling mechanism may include provisions for masking interrupts based on their priority levels. This means that interrupts with lower priority levels may be temporarily disabled or masked when higher-priority interrupts occur, ensuring that critical interrupts are serviced promptly.
- Priority-Based Interrupt Handling: When multiple interrupts are pending, the CPU’s interrupt handling routine selects the highest-priority interrupt that is currently active and services it first. Once the highest-priority interrupt is processed, the CPU may proceed to handle lower-priority interrupts in their respective order.
- Nested Interrupts: In systems that support nested interrupts, higher-priority interrupts can preempt the execution of lower-priority interrupt service routines. This allows for more efficient handling of time-critical events and ensures that higher-priority interrupts are not delayed by lower-priority interrupt processing.
- Interrupt Service Routine (ISR) Overhead: Interrupt service routines should be designed to execute quickly and efficiently, especially for high-priority interrupts. Minimizing the overhead of ISR execution helps reduce interrupt latency and ensures timely response to critical events.
Instruction set completeness, refers to the extent to which an instruction set architecture (ISA) provides a comprehensive set of instructions that can perform a wide range of tasks and operations required by software applications.
In summary, instruction set completeness is an important consideration in ISA design, as it directly impacts the expressiveness, efficiency, and versatility of the architecture for software development and execution. A more complete instruction set provides greater flexibility and capabilities for implementing diverse algorithms and applications.