CAHM Assignment No.3


Important questions for exam's point of view conducted by BTEUP.

1. What is number system? Explain with types.
2. What do you understand by Booth's Multiplication Algorithm? Explain with flowchart.
3. Multiply the following using Booth's.
  • (7) *(3) using register bit 5.
  • (-7)*(3) using register bit 5.
  • (15)*(-13) using register bit 5.
  • (-9)*(-13) using register bit 5.
4. Convert the following.
  • Decimal no. (.8125) into binary.
  • Binary no. (10100111010111101) into decimal, octal and hexadecimal.
  • Multiply 1101 with 10101111.
  • Divide 10101111 by 1101.
  • Subtract 25 from 39 using 2's complement. 
5. Explain microprocessor 8085 with pin diagram and architecture.
6. Explain microprocessor 8086 with pin diagram and architecture.
7. Explain multiprocessor system with its types and advantages.
8. Explain parallel processing with suitable diagram.
9. Explain time shared common bus with suitable diagram.
10. Explain different types of parallel processing.
11. Write short notes on following.
  • Crossbar Switch.
  • Multiport memory.
  • Interconnection network.
  • Multistage switching network.
  • Hypercube interconnection.
  •  Pipelining.


Half Adder and Full Adder.

Half Adder

  • Two binary inputs and two binary outputs are required for a half-adder circuit. While the output variable generates the total and carry, the input variable displays the augend and addend bits. 
  • By creating a truth table, we can comprehend how a half-adder works. A half-adder's truth table is as follows:

Truth table of Half Adder

  • 'x' and 'y' are the two inputs, and S (Sum) and C (Carry) are the two outputs.
  • The Carry output is '0' unless both the inputs are 1.
  • 'S' represents the least significant bit of the sum.
The simplified sum of products (SOP) expressions is:
  • S = x'y+xy', C = xy
The logic diagram for a half-adder circuit can be represented as:

Half Adder

Full Adder

  • This circuit needs three binary inputs and two binary outputs. The truth table for a full-adder is:
Truth table of Full Adder.
  • Two of the input variable 'x' and 'y', represent the two significant bits to be added.
  • The third input variable 'z', represents the carry from the previous lower significant position.
  • The outputs are designated by the symbol 'S' for sum and 'C' for carry.
  • The eight rows under the input variables designate all possible combinations of 0's, and 1's that these variables may have.
  • The input-output logical relationship of the full-adder circuit may be expressed in two Boolean functions, one for each output variable.
  • Each output Boolean function can be simplified by using a unique map method.

K-Maps for a full-adder:



The logic diagram for a full-adder circuit can be represented as:

 Full Adder.

Difference between the Half adder and full adder:

S.No.ParametersHalf AdderFull Adder
1.DescriptionHalf Adder is a combinational logic circuit that adds two 1-bit digits. The half adder produces a sum of the two inputs. A full adder is a combinational logic circuit that performs an addition operation on three one-bit binary numbers. The full adder produces a sum of the three inputs and carry value.
2.Previous carryThe previous carry is not used. The previous carry is used.
3.InputsIn Half adder, there are two input bits ( A, B).  In full adder, there are three input bits (A, B, C-in). 
4.OutputsThe generated output is of two bits-Sum and Carry from the input of 2 bits. The generated output is of two bits-Sum and Carry from the input of 3 bits.
5.Used asA half adder circuit cannot be used in the same way as a full adder circuit.  A full adder circuit can be used in place of a half adder circuit.
6.FeatureIt is simple and easy to implementThe design of a full adder is not as simple as a half adder.
7.Logical ExpressionLogical Expression for half adder is : S=a⊕b ; C=a*b.Logical Expression for Full adder is : S=a⊕b⊕Cin; Cout=(a*b)+(Cin*(a⊕b)).
8.Logic gatesIt consists of one EX-OR gate and one AND gate. It consists of two EX-OR, two AND gates, and one OR gate.
9.ApplicationsIt is used in Calculators, computers, digital measuring devices, etc. It is used in Multiple bit addition, digital processors, etc.
10.Alternate nameThere is no alternate name for half adder.Full adder is also known as ripple-carry adder.

Cross bar switch.

Crossbar Switch: What Does It Mean?
  • A crossbar switch channels data or signals between two distinct network nodes as part of a crossbar topology. 
  • The crossbar arrangement, which connects every component of an architecture to every other component, is a matrix in which every crossbar switch lies between two locations.
  • Crossbar design finds application in the manufacturing of chips and electronic systems as well as networking.
  • Several cross-points exist at the intersections of the paths used by the processor buses and memory modules in the Crossbar Switch system. 
  • The little square at each cross-point stands in for a switch that determines the route from a CPU to a memory module. 
  • Control logic is built into every switch point to configure the transfer channel between a memory and processor. It determines whether a given module is being addressed by computing the address that is inserted into the bus. 
  • Furthermore, it removes several priority-based requests for access to the same memory module.

  • Figure illustrates the functional design of a crossbar switch that is coupled to a single memory module. 
  • Multiplexers in the circuit choose the data, address, and control from a single CPU to communicate with the memory module. 
  • Priority levels were established by arbitration logic to choose one CPU among multiple CPUs attempting to access the same memory. 
  • The binary code generated by a priority encoder in the arbitration logic can be utilized by the multiplexers.
  • Each memory module in a crossbar switch system has its own path, which allows for simultaneous transfers from all of the modules. 
  • As a result, the hardware required to implement the switch can grow to be rather complicated and huge.

Multiprocessor and its Characteristics

What is multiprocessor?

  • A computer with multiple processors integrated into it is called a multiprocessor. The processors in a multiprocessor system may be able to communicate and work together at different stages of problem solving.
  • A multiprocessor system is made up of two or more CPUs. It's a system that links memory and I/O devices to two or more CPUs. A multiprocessor's input-output processor (IOP) or central processing unit (CPU) can both be referred to as "processors." 
  • On the other hand, a system with a single CPU and one or more lOPs is typically not classified as multiprocessor unless the IOP has computing power equivalent to that of a CPU. 
  • Most people think of a multiprocessor system as having multiple CPUs plus one or more lOPs for good measure. As previously mentioned, multiprocessor systems are classified as MIMD (multiple instruction streams, multiple data stream) systems.

Types of Multiprocessors

The following are the types of multiprocessors. 
  • Symmetric Multiprocessors
  1. In these systems, every CPU connects to the others and runs a comparable version of the operating system. Since all of the processors are peer-to-peer, there is no master-slave relationship among them.
  2. Symmetric multiprocessing Unix for the Multimax Computer is called Encore.
  • Asymmetric Multiprocessors
  1. Every CPU in an asymmetric system is assigned a certain duty. All instructions to the other processors are sent by a master processor. The relationship in an asymmetric multiprocessor system is master-slave.
  2. Before symmetric multiprocessors were developed, there was only one kind of multiprocessor available: asymmetric multiprocessors. Right now, this is also the less expensive option.
Multiprocessor

Multiprocessor Systems' Benefits

The potential benefits of multiprocessor systems are listed below. 
  • More reliable Systems:- In a multiprocessor system, the system won't stop working even if one processor fails. Graceful degradation is the capacity to function without interruption even in the event of hardware failure. In a multiprocessor system, the four processors that remain operational take over if one of the five processors fails. Consequently, the machine slows down instead of stopping entirely.
  • Increasing Throughout:- When several processors collaborate, the system's throughput rises, meaning more processes are completed in a given amount of time. For every N processors, the throughput rises by a factor of N.
  • More Economic Systems:- Multiprocessor systems are less expensive over time than single-processor systems because they share peripherals, power supplies, data storage, and other resources. It is better to schedule many processes on multiprocessor systems with shared data rather than on separate computers with distinct versions of the same data if several processes share it.

Characteristics of Multiprocessor

Parallel Computing:- 
  • This calls for the use of several processors at once. These processors are designed to perform a common task using a single architecture. 
  • Processors are typically the same and cooperate in a way that gives consumers the impression that they are the only users in the system. In actuality, though, a large number of people are actually using the system at once.
Distributed Computing:- 
  • This calls for the use of a processor network. Every processor in this network is capable of handling problems and can be viewed as a standalone computer. 
  • These processors are diverse, and they are often assigned to a single task.
Supercomputing:- 
  • Using the quickest computers possible, large and computationally challenging problems are solved in this way. 
  • Vector computers were used in supercomputing machines in the past, although most people now embrace parallel or vector computing.
Pipelining:- 
  • This approach breaks down a given task into multiple smaller tasks that need to be completed in a certain order. 
  • The functional units support the completion of every subtask. Each unit functions simultaneously and is connected serially.
Vector Computing:- 
  • It makes use of vector processors, which break up operations like "multiplication" into numerous steps and apply them to a stream of operands, or "vectors."

BIOS and its functions.

  • The software that a computer's microprocessor uses to boot up a machine after powering on is called BIOS, or basic input/output system. 
  • Additionally, it controls the data flow between the operating system (OS) of the computer and any connected hardware, including the hard drive, display adapter, keyboard, mouse, and printer.
  • In 1975, American computer scientist Gary Kildall first used the word BIOS
  • It was included to IBM's first personal computer in 1981, and over time, it became more and more common in other PCs, eventually becoming a necessary component of computers. 
  • Nevertheless, Unified Extensible Firmware Interface (UEFI), a more recent technology, has gained traction at the expense of BIOS (फिर भी, यूनिफ़ाइड एक्स्टेंसिबल फ़र्मवेयर इंटरफ़ेस (UEFI), एक नवीनतम तकनीक, ने BIOS की कीमत पर लोकप्रियता हासिल की है). 
  • By 2020, Intel plans to replace outdated BIOS systems with UEFI, retiring support for them. This was stated in 2017.
How does BIOS works?

  • Computers are provided with BIOS installed as firmware on a motherboard chip. An operating system, on the other hand, such as Windows or iOS, can be installed manually by the user or pre-loaded by the vendor or manufacturer. 
  • Erasable programmable read-only memory, or EPROM, is a chip that the CPU uses to access programs, including BIOS. 
  • Upon turning on a computer, the BIOS program—which is permanently stored in the same location on EPROM—takes control from the microprocessor.
  • First thing the BIOS does when a computer boots up is check to see if all the required attachments are inserted and working. A boot device is any piece of hardware that holds the files required for the computer to boot up. 
  • The BIOS loads the operating system (OS) or important portions of it into the computer's random access memory (RAM) from a hard drive or diskette drive (the boot device) after verifying and validating that the boot devices are operational.
The BIOS performs the four main functions:- identifying, configuring, testing, and connecting computer hardware to the operating system. The boot process is the name given to this sequence of events.
The four primary functions of BIOS each perform these tasks:

Power on Self-test (POST):- 
  • When a user turns on the computer, a set of diagnostic tests known as POST begin immediately. 
  • The real test may vary based on the BIOS settings. But the standard test also checks the disk drives, RAM, and keyboard. 
  • In the event that these tests are successful, the computer will boot up and load the operating system; if not, it will alert the user to the issues with a sequence of beeps before displaying an error message on the monitor.
Bootstrap loader:-
  • It finds the OS this way.
Programs and drivers:- 
  • This finds the drivers and applications that, once the OS is operational, interface with it.
Complementary Metal-Oxide Semiconductor (CMOS):- 
  • This software allows users to modify system and hardware configurations. The non-volatile memory of the BIOS is called CMOS.

Accessing BIOS:-

  • Users can use the BIOS Setup Utility to access and configure the BIOS. Depending on the computer being used, there are differences in how to access the BIOS Setup Utility. Nonetheless, users can typically access and configure BIOS using Setup Utility by following these steps:
  1. Turn off the computer or reset it.
  2. Look for a notification that reads "entering setup" or something similar when the computer restarts. The user must press the key that corresponds with that message in order to access system configuration. Here's an illustration of a message a user could see: "Press [key] to enter BIOS setup." The function keys (F1–F12) and Del, Tab, Esc, and other keys are frequently used as prompts.
  3. As soon as you see the prompt, tap the designated key.
Among other setup options, users can adjust the BIOS password, boot order, RAM settings, hardware settings, and boot device once they are in the BIOS Setup Utility.

  • Every PC user, whether aware of it or not, sees the BIOS screen every time they switch on their machine. The Basic Input/Output System (BIOS) is the name given by the manufacturer of the computer to the screen display. There are two primary types of BIOS, which are as follows:
UEFI: 
  • An acronym for Unified Extensible Firmware Interface, which supports disks up to 2.2 TB in size. 
  • Using the Master Boot Record, a more advanced GUID Partition Table technology than GPT, it manages disks. Moreover, the BIOS has never been utilized on an Apple Mac computer.
Legacy BIOS: 
  • Older motherboards employed the Legacy BIOS to power on computers. The inability of legacy BIOSes to manage or identify drives larger than 2.1 TB is one of its limitations. 
  • Nonetheless, it manages the communication between the CPU and the other parts.

BIOS vs UEFI

  • In most modern systems, UEFI will most likely be present instead of BIOS. That being said, what distinguishes UEFI from BIOS? Given how nearly identical their functions are, it can be challenging to distinguish between the two. Unified Extensible Firmware Interface, or UEFI for short, is the same as BIOS and serves as a software bridge between the operating system and the hardware.
  • When it comes to features and customization options, UEFI surpasses BIOS. The operating system can be loaded without the requirement for a separate bootloader program. Since it has native support for GPT, which BIOS cannot provide, it can handle hard disks that are larger than two Terabytes.

Arduino UNO and its types.

An Overview of Arduino Types

The Arduino board was created so that students studying electronics may utilize it for their projects. The Arduino boards are made available as open source hardware, enabling users to customize the boards and projects to suit their needs. This electronic platform has several connectors, LEDs, microcontrollers, and other components

The market is currently filled with a variety of Arduino board models, such as the Arduino UNO, Red Board, LilyPad Arduino, Arduino Mega, and Arduino Leonardo. Each of these Arduino boards has a unique set of features, characteristics, and applications. They are all utilized in various kinds of electronics projects.

They can be used to create straightforward everyday items or scientific tools for testing and performing mathematical operations. They are capable of running Windows, Linux, and Microsoft operating systems. Additionally, the Arduino IDE and Arduino Language—a C/C++ derivative—can be used to program the boards. After that, you can use one of Arduino's I/O ports to load the program code. 

1. Arduino UNO

  • In contrast to previous Arduino boards, the creation of the Arduino UNO board is regarded as revolutionary. 
  • This board has a lot of features that make it easier for the user to use it for their project. 
  • The Atmega16U2 microcontroller, which is used by the Arduino UNO, helps to boost transfer rates and has more memory than other boards
  • The Arduino UNO board does not require any additional hardware, like a joystick, mouse, keyboard, and many others. 
  • The Arduino UNO has two extra pins that are positioned next to the RESET pin in addition to the SCL and SDA pins.
  • The board has fourteen pins for digital input and output, of which six are utilized for PWM, six for analog inputs, a USB port, a reset button, and a power jack. 
  • A USB port on a computer can be used to connect the Arduino UNO board, and the computer can also supply power for the device. 
  • The 32 KB of flash memory that the Arduino UNO has, is utilized to store its data. 
  • Compatibility with different shields and the ability to be coupled with other Arduino devices is the Arduino UNO's other feature.

2. LilyPad Arduino

  • One other type of Arduino board that is thought to be appropriate for wearable and e-textile projects is the LilyPad Arduino. 
  • This board's rounded form reduces snagging, and connecting it to other devices is easy to do. 
  • The Arduino bootloader and Atmega328 microcontroller are used in this device. 

  • The board has big pin holes to facilitate easy connection to other devices and requires a power supply between 2 and 5 volts
  • This board is frequently used to operate a variety of devices, such as switches, lights, and motors. 

3. Arduino Mega

  • This board is regarded as a microcontroller since it contains an Atmega2560. 
  • It has a total of 54 input and output pins, of which 14 are used for PWM output, 4 for hardware ports, and 16 for analog inputs. 
  • A single USB port, an ICSP header, a power jack, and a single REST pin are also present on the board.
  • In addition, there are pins that function as 16 MHz crystal oscillators. 
  • Additionally, the board contains 256KB of flash memory, which is used to store data. 
  • The Arduino Mega board can be powered by a battery or an AC to DC adapter, and it can be connected to a computer system via a USB connection. 
  • Because the board has a lot of pins installed, it is appropriate for applications that need for a lot more pins.

4. Arduino Leonardo

  • This board is regarded as a microcontroller since it contains an Atmega32u4. It has a total of 20 digital input and output pins, of which 12 are analog inputs and 7 are used for PWM. 
  • The board also has a power jack, a single RESET button, and a micro USB port. A 16 MHz crystal oscillator is operated by additional pins.
  • The Arduino Leonardo board can be powered by a battery or an AC to DC adaptor, and it can be connected to a computer via a USB connection. 

  • The Arduino Leonardo microcontroller is equipped with an integrated USB connection, eliminating the need for an additional CPU. 
  • In comparison to other Arduino products, the Arduino Leonardo is regarded as one of the less expensive Arduino boards.

5. Arduino Red Board

  • Another variety of Arduino board is the Arduino Red board, which is programmed using the Arduino IDE and a small USB connection

  • The FTDI and USB chips are used by the Red board to connect to other devices. 
  • Red Board's design is so straightforward that integrating it with other projects is a breeze. 
  • All you need to do is plug in the red board, choose the right option, and upload the software quickly. 
  • The Arduino Red board's USB wire can be managed via the barrel jack.

6. Arduino Shields

  • When connecting additional Arduino boards, the Arduino shields are regarded as pre-built circuit boards
  • The Arduino shield, which is installed on top of Arduino boards, improves the board's capacity to connect to the internet, control motors and LCDs, and facilitate wireless communication. 



  • There are various kinds of shields that can be used. The Ethernet, GSM, Proto, and Wireless shields are among these. 
  • There are lots of Arduino shields types given below.

  1. Prototype Shield
  2. IO Expansion Shield
  3. Multifunction Shield
  4. LCD Shield
  5. Motor Driver Shield
  6. Joystick Shield
  7. Relay Shield
  8. 4×4 keypad Shield
  9. Capacitive Touchpad Shield
  10. Servo Motor Shield
  11. GSM/GPRS Shield
  12. Bluetooth Shield
  13. Ethernet Shield
  14. Wi-Fi Shield
  15. MP3 Player Shield
  16. Colour TFT Shield with Joystick
  17. TFT Touchscreen LCD Shield
  18. MicroSD Shield
  19. CAN-Bus Shield
  20. Xbee Shield
  21. GPS Shield
  22. NFC/RFID Shield
  23. USB Host Shield
  24. MQ2 Smoke Sensor Shield
  25. FM Radio Shield
  26. RS485 Shield
  27. Camera Shield
  28. Energy Shield
  29. NeoPixel Shield

7. Arduino Pro Mini

  • One of Arduino's first microcontroller boards, the Arduino Mini, has been replaced with the Arduino Pro Mini. 
  • This board's small size is one of its main benefits. It's simple to embed because to its compact package
  • It's a straightforward ATmega328 microcontroller board with an 8-bit design. 


  • Six PWM channels are available on its 14 digital I/O pins. It has six analog pins in addition. 
  • Its clock speed is 8 MHz, and its flash memory is 32 KB. It is available in 5V and 3.3V models. 
  • Wearable electronics projects and other embedded electronics projects are a good fit for the Arduino Pro.

Conclusion

There are several Arduino items on the market that may be used for electronic projects. Additionally, the project's budget and requirements are the only factors that go into choosing an Arduino device. Every product has a unique set of features and applications, and choosing the best one depends entirely on the needs of the user.

Recommended Articles


Interfacing Liquid Crystal Display (LCD) – display data generated by sensor on LCD.

This project will demonstrate how to configure a 16 × 2 LCD screen to display numerous sensor values.

Hardware components required:-
  • Arduino UNO
  • Adafruit Standard LCD - 16x2 White on Blue
  • Rotary potentiometer (generic)
  • Jumper wires (generic)
  • Solderless Breadboard Full Size
  • RM065 10K ohm 103 Trim 
  • Pot Potentiometer
This project makes use of two potentiometers connected on a breadboard to an Arduino and an LCD. As a result, when both potentiometers are adjusted, the LCD should display their values.
Liquid Crystal Display (LCD)
Before we begin the configuration, let's take a closer look at the LCD and see what the 16 pins are for:
  • GND - Ground Connection
  • VCC - +5V Connection
  • VO - analogue pin used for screen brightness, connects to Potentiometer.
  • RS - tells the LCD what will be written to it.
  • R/W - the read/write pin (normally hardwired to ground).
  • E - tells the LCD the data is ready to be written.
  • D0 to D7 - bus lines for the LCD, this is where your data is passed from the Arduino to the LCD.
  • A - +5V Connection for the backlight of the LCD.
  • K - the ground pin for the backlight of the LCD.
Working:-

We may now begin building connections on and to the breadboard. A step-by-step approach is provided below:
  • Connect the 10K Ohm potentiometer (this potentiometer controls the LCD's contrast). The VO pin is linked to the potentiometer's center pin, while the other two wires are connected to +5V and ground on the breadboard.
  • Connect pin-A to the +5V and pin-K to ground on the breadboard.
  • Connect pin-D7 to digital pin 12, pin-D6 to digital pin 11, pin-D5 to digital pin 10 and pin-D4 to digital pin 9. (Digital pins on the Arduino).
  • Connect pin-RS to digital pin 7 on the Arduino.
  • Connect pin-RW to ground on the breadboard.
  • Connect pin-VSS to ground on the breadboard.
  • Connect pin-VDD to +5V on the breadboard.
  • Connect pin-E to digital pin 8 on the Arduino.
  • Place the first potentiometer on the board and connect the center pin to Analog Pin 1 on the Arduino and the other pins to ground and +5V on the breadboard.
  • Place the second potentiometer on the board and connect the center pin to Analog Pin 2 on the Arduino and the other pins to ground and +5V on the breadboard.
Connection Diagram:-

Display data generated by sensor on LCD.

The potentiometers that will be utilized are shown in the image below.


Code:-
  • Upload the code below to your Arduino and make any necessary adjustments to the potentiometers. 
  • The potentiometer values will be displayed on two lines on the LCD display. 
  • The B10K potentiometer can be adjusted to ensure that the contrast of the LCD is optimal for reading the values.
// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(7,8,9,10,11,12);

int potPin1 = A1;
int potPin2 = A2;

void setup()
{
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
lcd.clear();

pinMode(potPin1, INPUT);
pinMode(potPin2, INPUT);
}

void loop()
{
lcd.setCursor(0,0); // Sets the cursor to col 0 and row 0
lcd.print("SensorVal1: "); // Prints Sensor Val: to LCD
lcd.print(analogRead(potPin1)); // Prints value on Potpin1 to LCD
lcd.setCursor(0,1); // Sets the cursor to col 1 and row 0
lcd.print("SensorVal2: "); // Prints Sensor Val: to LCD
lcd.print(analogRead(potPin2)); // Prints value on Potpin1 to LCD
}

Output Display:-

Interfacing Liquid Crystal Display