Posts

Showing posts from March, 2015

Encoding of Information

In computers, encoding is the process of putting a sequence of characters (letters, numbers, punctuation, and certain symbols) into a specialized format for efficient transmission or storage. Decoding is the opposite process -- the conversion of an encoded format back into the original sequence of characters. Encoding and decoding are used in data communications, networking, and storage. The code used by most computers for text files is known as ASCII (American Standard Code for Information Interchange). ASCII can depict uppercase and lowercase alphabetic characters, numerals, punctuation marks, and common symbols. Other commonly-used codes include Unicode, BinHex and Uuencode. In data communications, Manchester encoding is a special form of encoding in which the binary digits (bits) represent the transitions between high and low logic states. Operation Code (Opcode) It specifies the operation to be performed. The operation of the CPU is determined by the instructi

Program

Image
A set of instructions that perform a task is called a program usually a program is stored in the memory. The processor then fetches the instructions comprising the program from memory one at a time and perform the desired operations. The computer is under control of stored program,except for the possibility of external interruption from the operator or by I/O devices connected to the machine. The operation of the CPU is determined by the instructions it executes. These instructions are referred to as machine instructions or computer instructions. The collection of different instructions that the CPU can execute is referred to as the CPU‟s instruction set. Example Program                           Compute (X+Y)Z                           MVI B, X                           MVI A,Y                           ADD B                            STA 5000H                           HLT Assembly Language Programming Types of Instructions An assembly language program i

Instruction sets

Image
Steps involved in instruction execution in CPU Instructions and data are the information fed to a computer. Instructions are explicit commands that Govern the transfer of information within a computer as well as between the computer and its I/O devices. Specify the arithmetic and logic operations to be performed. A set of instructions that perform a task is called a program usually a program is stored in the memory. The processor then fetches the instructions comprising the program from memory one at a time and perform the desired operations. The computer is under control of stored program, except for the possibility of external interruption from the operator or by I/O devices connected to the machine. The operation of the CPU is determined by the instructions it executes. These instructions are referred to as machine instructions or computer instructions. The collection of different instructions that the CPU can execute is referred to as the CPU‟s instruction set. Ea

WORD

The main memory contains a large number of semiconductor storage cells each capable of storing one bit of information. These cells are processed in groups of fixed size called words. The main memory is organized so that the contents of one word containing n bits can be stored or retrieved in one basic operation. To provide easy access to any word in memory, a distinct address is associated with each word location. A given word is accessed by specifying its address and issuing a control command that starts the storage or retrieval process. The time required to access one word is called memory access time. The number of bits in each word is often referred to as the word length of the computer. Large computers have usually 32 or more bits in a word and micro computer word lengths range from 8 to 32 bits. The capacity of the main memory is few hundred thousand words, whereas medium and large machines normally have millions of words. Data are manipulated within a machine in uni

Comparison between RISC and CISC

RISC CISC  Emphasis on software  Emphasis on hardware  Single-clock, reduced instruction only  Includes multi-clock complex instructions  Register to register: Memory-to-memory: "LOAD" and "STORE" are independent instructions "LOAD" and "STORE" incorporated in instructions  large code sizes, Low cycles per second Small code sizes, High cycles per second  Spends more transistors on memory registers Transistors used for storing complex instructions  uses small and limited number of instructions. CISC chips have a large amount of different and complex instructions. RISC processors uses simple addressing modes.  CISC machines generally make use of complex addressing modes.  RISC machines uses hardwired control unit.  CISC machines uses micro-program control unit. 

RISC [Reduced Instruction Set Computer]

RISC processors only use simple instructions that can be executed within one clock cycle. Thus, the "MULT" command described above could be divided into three separate commands:  "LOAD," which moves data from the memory bank to a register, "PROD," which finds the product of two operands located within the registers "STORE," which moves data from a register to the memory banks.                          LOAD A, 2:3                       LOAD B, 5:2                       PROD A, B                       STORE 2:3, A More RAM is needed to store the assembly level instructions. The compiler must also perform more work to convert a high-level language statement into machine code.  To execute each instruction, if there is separate electronic circuitry in the control unit, which produces all the necessary signals. It is also called hard-wired approach.  pipelining: a techique that allows for simultaneous execution of parts,

RISC and CISC

History of RISC/CISC CISC [Complex Instruction Set Computer] RISC [Reduced Instruction Set Computer] RISC and CISC Comparison

CISC [Complex Instruction Set Computer]

The primary goal of CISC architecture is to complete a task in as few lines of assembly as possible. This is achieved by building processor hardware that is capable of understanding and executing a series of operations.  CISC processor would come prepared with a specific instruction (we'll call it "MULT").  When executed, this instruction loads the two values into separate registers, multiplies the operands in the execution unit, and then stores the product in the appropriate register. The entire task of multiplying two numbers can be completed with one instruction. MULT is what is known as a "complex instruction." It operates directly on the computer's memory banks and does not require the programmer to explicitly call any loading or storing functions.  If the control unit contains a number of micro-electronic circuitry to generate a set of control signals and each micro-circuitry is activated by a micro-code  For example, instead of having to make

History of RISC/CISC

1950s IBM instituted a research program 1964 Release of System/360 Mid-1970s improved measurement tools demonstrated on CISC 1975 801 project initiated at IBM’s Watson Research Center 1979 32-bit RISC microprocessor (801) developed led by Joel Birnbaum 1984 MIPS developed at Stanford, as well as projects done at Berkeley 1988 RISC processors had taken over high-end of the workstation market Early 1990s IBM’s POWER (Performance Optimization With Enhanced RISC) architecture introduced w/ the RISC System/6k AIM (Apple, IBM, Motorola) alliance formed, resulting in PowerPC

Pentium microprocessors

Image
A 32-bit microprocessor introduced by Intel in 1993. It contains 3.3 million transistors. Since 1993, Intel has developed the Pentium III and more recently the Pentium 4 microprocessors.   Pentium III Pentium III Mainboard Layout Intel builds on the technology it developed with the Pentium II microprocessors.  The Pentium III processor comes with a Synchronized Dynamic Random Access Memory (SDRAM), allowing for an extremely fast transfer of data between the microprocessor and the memory. 70 new instructions, called Streaming SIMD Extensions, enhance multimedia and 3D performance.  Launched February 1999 - Available in speed levels of 450, 500, 550, and 600MHz. 32KB of Level 1 Cache (operating at CPU's full core speed). 512KB of Level 2 Cache (operating at ½ of CPU's core speed). 100 MHz bus speed. The branch prediction/recovery pipeline was doubled to include 10-stages from the P-II.   Pentium IV The next generation of microprocessors from Intel. Pe

Microprogrammed Control Unit for the Simple Computer

Image
In the case of a hard-wired control unit the control matrix is responsible for sending out the required sequence of signals.  Each bit of a microinstruction might correspond to one control signal.  If the bit is set it means that the control signal will be active; if cleared the signal will be inactive.  Sequences of microinstructions could be stored in an internal "control" memory.  Execution of a machine language instruction could then be caused by fetching the proper sequence of microinstructions from the control memory and sending them out to the data path section of the computer.  A sequence of microinstructions that implements an instruction on the external computer is known as a micro-routine.  The heart of the controller is the control 32 X 24 ROM memory in which upt to 32 24-bit long microinstructions can be stored.  Addresses provided to the control ROM come from a micro-counter register  The micro-counter, in turn, receives its input from a multiplex

Applied Probability and Statistics

ONE DIMENSIONAL RANDOM VARIABLES: Handwritten notes MULTIVARIATE ANALYSIS: Handwritten Notes

MULTIVARIATE ANALYSIS: Handwritten Notes

Univariate & Bivariate Normal.  click here ----------------------------------------------------------------------------------------------------------------  The derivation of probability density function of Multivariate Normal Distribution.   click here ---------------------------------------------------------------------------------------------------------------- Linear combination of Multivariate Normal Vector.  click here ---------------------------------------------------------------------------------------------------------------- Multivariate Normal with mean variance and covariance using marginal distribution.  click here ---------------------------------------------------------------------------------------------------------------- Theorem and Proof for Conditional Distribution from Multivariate Normal Distribution  click here ----------------------------------------------------------------

Software Engineering

Standards & Guidelines, and Documentation Guidelines ppt Software Inspections and Walkthroughs ppt Software Test Plan ppt Verification and Validation in Software Engineering ppt Static Analysis ppt

Universal Asynchronous Receiver/Transmitter (UART)

Serial data transmission means sending data bits one by one using one wire. Asynchronous transmission means a data (including one start bit , 8-bit data, and stop bits)  can be sent at any time. UART is a piece of computer hardware that translates data between parallel and serial forms. A UART is usually an individual integrated circuit used for serial communications over a computer or peripheral device serial port. A dual UART, or DUART, combines two UARTs into a single chip. Every computer contains a UART to manage the serial ports, and some internal modems have their own UART. As modems have become increasingly fast, the UART has come under greater scrutiny as the cause of transmission bottlenecks. If you are purchasing a fast external modem, make sure that the computer's UART can handle the modem's maximum transmission rate. The newer 16550 UART contains a 16-byte buffer, enabling it to support higher transmission rates than the older 8250 UART. A UART (Universal

USB (Universal Serial Bus)

Image
In the Old Days . . . Mice and keyboards only connected to  dedicated connectors or serial port. Networking (as such) was only through  serial com port. Printers had their own connector. Not much else! USB Defined by Intel and other industry leaders in early 1990s. Ease of use was primary goal. Four-wire interface. USB was designed to standardize the connection of computer peripherals (including keyboards, pointing devices, digital cameras, printers, portable media players, disk drives and network adapters) to personal computers, both to communicate and to supply electric power. A single USB port can be used to connect up to 127 peripheral devices, such as mice, modems, and keyboards. USB also supports Plug-and-Play installation and hot plugging. USB provides much higher data transfer speeds, with fewer wires! USB is a standard for a wired connection between two electronic devices, including a mobile phone and a desktop computer. The connection

RS232C

Image
Fig 1: Serial waveforms Standard-RS-232 is the Short for recommended standard-232C, a standard interface approved by the Electronic Industries Alliance (EIA) for connecting serial devices. The EIA released a new version of the standard and changed the name to EIA-232-D. The example serial waveforms in Fig 1 show the waveform on a single conductor to transmit a byte serially. The upper waveform is the TTL-level waveform seen(transistor-transistor logic) at the transmit pin of 8051. The voltage level of the RS232C are used to assure error-free transmission over greater distances than would be possible with TTL levels.   The start and stop bits are used to synchronize the serial recivers. The bits are transmitted at specific time intervals determined by the baud rate of the serial signal. RS-232 is a standard by which two serial devices communicate: Transmission voltages are –15V and +15V. Almost all modems conform to the EIA-232 standard and most personal co

Serial Communication

Serial communication is a form of I/O in which the bits of a byte begin transferred appear one after the other in a timed sequence on a single wire.  Serial Communication is the process of sending data one bit at a time, sequentially, over a communication channel or computer bus.  Serial communication is used for all long-haul communication and most computer networks, where the cost of cable and synchronization difficulties make parallel communication impractical.  The serial port sends and receives bytes of information one bit at a time. Serial is used to transmit ASCII (American Standard Code for Information Interchange) data. Communication is completed using 3 transmission lines: Ground Transmit Receive Since serial is asynchronous, the port is able to transmit data on one line while receiving data on another. S erial characteristics are baud rate, data bits, stop bits, and parity. a) Baud rate   Baud rate is a speed measurement for communication.   It indicat