Sunday, August 26, 2012

Different types of synchronous counters, ciruit diagram and working

There are 6 types of Synchronous counters:

Binary counters

Binary counters are most basic type of synchronous counters. Depending on the value of N, a synchronous counter counts from 0 to (2N - 1) and back to 0 again.

Binary Counter


Up/down counters

A counter can be used to count in more than one direction. That is, you can use counter to count not only up but down too. The diagram shows below is of an up-down counter. Depending on how the user decides to count an event as up and other as down, the counter can be used to count the events based on his requirements. This is done by either making either the “up” or "down" inputs as high.

Up/Down Counter

Loadable counters

Loadable counters can be used to count from a predefined count. That is, instead of counting from a 0, the counter will count from a initial count given by the user. This type of counter is called a loadable counter.

Loadable counter

BCD counters

A BCD counter is a binary digit based counter which users 0 and 1 for counting. The counting is done in binary-coded decimal from 0000 to 1001 and back to 0000. As the counter resets after 1001, i.e. it starts from 0 and after a count of 9 it comes back to 0. Therefore, this counter does not have a straight binary count and has limited functionality.

BCD Counter

Ring counters

In a ring counter, the registers are activated one by one in a circular manner. The flip-flops are set one by one; when a particular flip-flop is set, the others are cleared. A single high signal is circulated from one flip-flop to another to produce to produce the sequence of timing signals.

Ring Counter

Johnson counters

The Johnson counter is a hybrid form of ring counter. It is also called the twisted ring counter. In this counter the inverse of the most significant bit output at the flip-flop is passed on to lest significant but at the flip-flop. The working can be understood by the truth table shown below. The sequence starts with all the bits of the counter being 0. At the next pulse, the 0 at the final counter will cause the 1’s to be shifted into register from left hand side. Similarly, when the 1’s reach the most significant flip-flop, 0’s will be inserted in the left most registers. This cross coupling between the between the inputs and the outputs of the registers is the base of working of the Johnson counter.

Johnson Counter truth table
Johnson Counter circuit


Thursday, August 23, 2012

Application of Gray, Excess-3 and ASCII codes



The ASII code:
The ASCII code represents the text in computers or digital equipments. The ASCII(American Standard Code for Information Interchange)  includes definition for 128 characters that explains the processing of text and space.
Excess-3 code:
The excess 3 code is an important BCD code. It is mainly used for arithmetic operations. It can add two decimal numbers even if their sum exceeds nine. It simplifies operations of arithmetic. It’s a way to represent decimal digits, and each value equals the decimal digit value plus 3.
Gray code:
The encoding of numbers such that the adjacent number differs by only 1 by the preceding number.

Application of Gray Code
Because of many shortcomings in addition of the BCD code, excess 3 code is used and grey code is used in the shaft position of the airplanes.
These codes are precisely used in electro optical switches and electrochemical signals.
The Grey code arises in many real life situations. In the beginning, the main use of the code was related to what we now call as the conversion from analog to digital format. The basic aim was to convert a voltage value which was previously in analog to the corresponding series of pulse which will represent the same value in digital form. This technique was to convert voltage by displacing vertically an electron beam that sweeps horizontally across the screen of the cathode ray tube. The screen having a masked imprint on it only allows a passage of beam in certain places, and a current was generated till the beam was passing through the mask. The passage of the beam gives rise to a series of ‘on’ and ‘off’ conditions corresponding to the pattern of the holes through which it passes.
The most common use of this code is locating for rotational position of the shafts I which a pattern which represents the grey code is printed on a disk, or on the shaft, and the pattern is sensed by an electrical or optical detector.

Application of Excess-3


Because of many shortcomings in addition of the BCD code, excess 3 code is used and grey code is used in the shaft position of the airplanes.

These codes are precisely used in electro optical switches and electrochemical signals.

The Gray code arises in many real life situations. In the beginning, the main use of the code was related to what we now call as the conversion from analog to digital format. The basic aim was to convert a voltage value which was previously in analog to the corresponding series of pulse which will represent the same value in digital form. This technique was to convert voltage by displacing vertically an electron beam that sweeps horizontally across the screen of the cathode ray tube. The screen having a masked imprint on it only allows a passage of beam in certain places, and a current was generated till the beam was passing through the mask. The passage of the beam gives rise to a series of ‘on’ and ‘off’ conditions corresponding to the pattern of the holes through which it passes.

The most common use of Gray code is locating for rotational position of the shafts I which a pattern which represents the grey code is printed on a disk, or on the shaft, and the pattern is sensed by an electrical or optical detector.
 

Gray Code was used in some old computers that relied on a pre-specified number N as a biasing value.


The excess 3 code is a technique to represent numbers with a balance of positive and negative numbers. When the sum of two of these excess 3 numbers exceed 9, the carry bit of adder will set to high. When you add two excess 3 numbers, the resultant would not be an excess 3 number, example  : add  1 to 3 , the answer would seem to be 7 but the actual answer should be 4, so a remedy of this problem is to subtract 3 (binary 011) if the resultant is less than decimal 10 and add 3 if the number is equal to or greater than 10.
 This needs to be done due to the fact that whenever we add two numbers, an excess value of six results in the sum. But we now that the values 0 to 15 are four bit integer and any excess to that means the sum will overflow.


Application of ASCII
They are used widely in modern computers for representing text and in other devices too that use text in man machine interface. ASCII codes work sequentially and are self complimenting. Its first application was as a seven-bit teleprinter. It is non-weighted code derived from 8421 BCD code.

Wednesday, August 8, 2012

Microprocessor characterization, language, instruction set and working


What is microprocessor?

A microprocessor can be defined as followed:
"A multipurpose , programmable logic device which is capable of reading binary instructions from a storage device referred to as memory, accepts data as input and process it according to those instructions and provides result as output"
A microprocessor can be considered to be electronic integrated chip or a set of chip that implements a central processor of a computer system. Microprocessor in a microcomputer resembles a brain in human body which does the functioning of controlling all the peripherals of the body. The main parts of a microprocessor are:
1) Arithmetic and logic unit
2) Central processing unit

The properties by which a microprocessor can be characterized are:
• Speed
• Word length
• Architecture
• Instruction set

When talking about the digital computers they can be classified into different groups on the basis of:
• Size
• Processing power
• Cost and
• Complexity

In this way depending upon these factors three main classes of digital computers are:
1. Micro computers
2. Mini computers
3. Main frames

Mini computers and main frames are more complex and power full than micro computers which uses only a single IC processor unlike the other two. Here minicomputer has word word length ranges from 16 bits to 32 bits and it generally uses 2 or more CPUs.

What is microcomputer?

This category of computers is characterized by it low speed and lesser restorability of data. It uses only one CPU and which is just a single chip. It has low processing power and it is generally used in personal computing and control applications.
Any device which is programmable can be represented by three fundamental components as in the figure:
• Microprocessor
• Memory
• Input/output devices

When these three parts works and interacts together to perform a given particular task it is called a system and the physical components i.e. electronic circuits for input output devices, memory unit and microprocessor chips itself are called Hardware where as the set of instructions written to perform the given task is called a program and further a set of programmes is referred to as a software which performs some pre-specified tasks. Microprocessor receives the encoded instructions then decodes and executes them. Word length of a microprocessor depends upon the width of data bus but it is independent of the length of instruction and operands which are handled by the microprocessor. The microprocessor can handle arithmetic, logic Boolean alphanumeric data. The time taken to execute the basic instructions decides the speed of the concerned microprocessor.
Also, as the microprocessor is a synchronous sequential electronic circuit some clock signals are required for execution of its each instruction so the speed of a microprocessor will also depend upon the clock frequency of the crystal used in the system. For each pulse generated by the crystal one basis instruction is executed.
Representation and organization of the data in the memory will be described in the next portion.

How memory is organized in microcomputers?

Just as the data is written on the pages of a notebook in the same the data storage in electronic memory chip cam be resembled with writing the binary digits on the semiconductor material pages upon which these binary digits are stored such that spaces occurs there after a fixed number of the binary digits and a fixed number of the lines occurs in each pages.

Generally each line in the memory is called register i.e. a collection of 8 bits given a name one byte. Such byte or the registers are arranged in sequential manner in the memory such registers occurs in groups in power of 2 for example for a memory of 1k byte, 2 to the power 10 registers or byte are grouped together. The set of instructions written by the programmer makes the microcomputer to retrieve the data from some external storage device process them and store them in memory or to give it to some external device to display it like LCD display, 8 segment display, computer monitor, speaker in case of sound signal elc.

What is a memory module?

In our further discussion over memory organization we will be using the term memory module which refers to device which stores the data. A memory module contains a fixed number of memory locations where each location contains a fixed number of bits and the number of bits in each location in called word length. To understand the memory organization let us take an example of a memory module of size (nXm) bits then its word length will be m and memory locations will vary from 0 to n-1. It is clear from this far discussion that number of data line in it will depend upon its word length i.e. larger is the word length less will be data line in it because total number of bits in it is to be fixed which is (nXm).

Microprocessor processes the data taken from outside and returns the result it again to external peripheral the devices for connecting the microprocessor to the outside is done with help of a system of hardware called input output devices I/O modules. It will be discussed in further discussion as

What is input output module/device?

As the name suggests it comprises two parts i.e. input module/devices and output module/devices.

Input devices
Provide the data to microprocessor in binary form performing the function of senses of the system to connect it with outer world. These includes keyboard, teletype and analogue to digital converter.

Output devices
Performs the function of reproducing the result obtained from processing section and decodes the binary result and produces it a form understandable to outer world. These devices includes monitor, loudspeaker, printers, LCD display etc.

Any system requires some important and basis parts for making I/O devices usable for it. That can be listed as:
1. Output port
2. Interfacing circuitry

Output port provides the points in the systems through which it may have physical connection with I/O devices for bidirectional flow of data between system and outer world. The system may have more than one input output port but only one is accessed at time whose selection is done by microprocessor itself while the direction of data flow is determined by control signal generated by the microprocessor i.e. the instruction set decides that whether data is to be transferred from system to outer devices or it is to received by a particular port.

Data which deals with microprocessor has to be in binary form to allow any processing to be carried out upon it in the similar way the data obtained from microprocessor also occurs in binary form but it is not generally understandable by outer world. Here interface circuitry converts outer signal into binary form and binary result produced by microprocessor to some other form understandable to outer devices. In this way interface circuitry connects system to outer devices. Some of the output devices are LEOS, Cathode ray tube, printer etc.

What is instruction set and language in microprocessor?

Any microprocessor understands only machine language i.e. 0 &1. But each one differs in its instruction sets. Every microprocessor has its own words, their meanings and the language that they understand. These words are formed by different combinations of basic binary digits (0 &1) called bits. In this way we can define a word as:

"The number of bits the microprocessor recognizes and processes at a time is termed as a word"

World length of a microprocessor may varies from 4 bits to 64 bits where 4 bit words are used in small microcomputers and large words having up to 64 bits are used in high speed large computers generally word is termed as byte i.e. a group of 8 bits so a 32 bit microprocessor has can be said to have a word length of 4 bytes.

For sake of convenience a group of 4 bits is termed a nibble and thus a byte is made with 2 nibbles, a lower nibble and upper nibble.

How a microprocessor works?

A microprocessor can be made to perform a specified task by the programmer with help of a set of instruction set understandable by it. The instructions are to be in binary form i.e. 0 &1 but it is difficult for the programmer to learn the instructions in binary form they are given some English like word to make easier to learn them. In this way the collection of these English like world equivalent to particular instructions constructs a language which is used by the programmer to communicate with microprocessor. This language is referred to as assembly language and programs written in this language are called assembly programs. These assembly programs are written for a specific microprocessor and as each microprocessor understands its own unique instruction set that is why the program written for machine may and may not be transferable to another one. This is a big limitation of assembly language to overcome this limitation many general purpose languages have been developed which provides the facility of transferability of the program written in these languages as they are machine independent. some of those are:
• BASIC
• FORTRAN
• PASCAL
• C And C++

These languages are closer to human understandable languages like English and are termed as high-level languages.

Different languages and their working

Machine language
At the time formation of the microprocessors designers sets some specific combination of bits and gives them certain meaning based upon their function with the help of electronic logic circuitry these are called basic instructions of the concerned microprocessor. Set of such instructions which are designed in machine are called its machine language constructed with only 0s & 1s. Likewise taking an example of microprocessor 8085 whose word length is 8 bit and has it instruction set which is nothing but a different combination of these 8 bits. it may have 256 different bit patterns which can construct 74 different instructions to perform some specific operations.

Assembly language

Although the instructions in machine language may be written in hexadecimal form but it is still a difficult task to memorize these codes for making microprocessor to perform different functions while the alpha-numerical codes are relatively easier to memorize that is why these hexadecimal codes are given some English like alphanumerical code in place of hex or binary codes. In this way language comes out to assembly language it works in the same way that machine language does and the equivalent alphanumeric codes instructions are called mnemonics

Low level languages

Both the machine language and assembly falls in this category of programming languages which are un-transferable to any other microprocessor i.e. these programs are microprocessor specific and are written for a specific chip. The programs written in low level language are to first converted into equivalent binary form to be read by the microprocessor this function of conversion is done either manually or with the help of a program, referred to as assembler that reads each and every mnemonics instruction converts it into equivalent binary form and then moves on to read the next instruction and so on till the end of the program. Thus obtained program can be fed to the microprocessor for its execution.

High-level languages


These languages are more close to the spoken languages and are more understandable to the programmer. Here more than one instruction may be used for execution of a single machine level instruction. Like low level languages it also has to be, first, converted into an equivalent binary code for its execution by the microprocessor which is done by programs just like the assembler does in case of low level language. There are two types of such conversion programs:
1. Interpreter
2. Compiler

The program written in high-level language is called source code while its equivalent conversion into machine language is called object code which is finally executed. Both interpreter and compiler convert source code into object code.
Interpreter reads, converts and executes each instruction of source code before heading to the next one i.e. it first reads one instruction converts into binary form, executes it and then moves on towards the next one.
Compiler first reads and converts the whole soured code into object code and then executes this object code at ounces, as a whole.

Memory allocation and addressing

In any system all the peripherals are identified by an address location which occurs in binary form. The number of lines in address bus of a chip determines maximum possible memory locations that can be accessed by the chip (microprocessor). Taking an example of microprocessor 8085 it has 16 address lines i.e. each address will have 16 bits so maximum possible address locations are 2 to the power 16= 65,536. It means 64k byte of memory can be handled by it.
Now in order to retrieve a data stored at a memory location A2001H the microprocessor first put the address A2001H on the address bus which is sent to the memory module. In memory data is stored like in a notebook i.e. the first two digits (A2) of location address tells the address of a particular page number while remaining two digits (01) refers to line number at that page. Microprocessor sends an RD signal to memory modules which puts the data stored at that location in data but which is received by the microprocessor and data is retrieved in it.

History of microprocessors

Intel 4004 was the first microprocessor that was introduced in 1971, it was a 4 bit PMOS microprocessor used for small applications. 4004 and its improved 4 bit versions i.e. 4040 were used for following applications:
• Industrial control application
• Calculation instrumentation
• Commercial applications
• Videogames
• Toys etc.

The first 8 bit microprocessor was introduced in 1972 by Intel it was also based on PMOS technology. But it had some disadvantages like slow speed and incompatibility with TTL logic due to PMOS technology used in it. These limitations leaded introduction of a new more powerful and faster microprocessor Intel 8080 but it also had a drawback that it was operated upon three power supplies to eliminate it an another chip was introduced i.e. 8085 in 1975 which was operated upon only a single power supply of 5V and it used NMOS technology. 8080 is still used in some places like laboratories for the purpose of teaching the functioning of a basic microprocessor. Some other 8 bit microprocessors developed by other companies are:
Zilog's
• Z800
• Z80
Motorola's
• MC 6800
• MC 6809

These 8 bit microprocessors were very useful in industrial and other control applications some of them are:
• Instrumentation industry applications
• Small general purpose computers

These have memory addressing capability of 64K and clock frequency in range of 1-6 MHz using LSI technology. Now many 16 bit and 32 bit microprocessors are also preset there in the market from many deferent new companies which are capable of addressing a large memory and can work at higher clock frequencies.

Friday, August 3, 2012

What is a site with “WW38” instead of “WWW” and how to register


Can you imagine a website without the common hypertext www? “ww38.abc.com” instead of “www.abc.com”, Is it possible? Pretty stunned, right? What you heard right now is one hundred percent true. It is possible to have ‘ww38’ as a hypertext before the domain address of a website, instead of ‘www’. Today I am here to share you all the information that I have about this topic. Come along with me and we will have a deep research into the hypertext ‘ww38’ which can even break down the common rule of using hypertext.

Why we use www as prefix to every domain address?

As we all know about the hypertext ‘www’ which we use before every website. You may know the reason for providing this particular hypertext before every website and you might also even familiar with the full form of ‘www’. But for those who are unfamiliar with the term ‘www’, let me brief it before you: www is an abbreviation of ‘World Wide Web’, it is also known as ‘the Web’ in common. www is a hypertext used for interlinking hypertext documents and to access it through the internet. This method of hyperlinking documents of useful information to access via internet, was earlier proposed by Robert Cailliau in 1990. Today almost all the domain names use www as a prefix to their domain address. This act by the domains is due to the naming practice of internet hosts that these sites have been following for a long time. But we rarely type www as prefix to the sites, when we type the name of the website in the address bar, this is because today almost all the browser will capture the given address by adding the prefix ‘www’ automatically.

Sites with ‘ww38’ instead of ‘www’.

Did you now got the reason why we use www as a hypertext and prefix to many of the domain address? Now let us move into the new concept of ww38, shall we?
Very recently I found out that there can be domain names or addresses with ‘ww38’ as their prefixes. Few days back I was surfing my browser as regular, but in between my process, I was accidently I was redirected to a site with ww38 as its prefix. The site was ww38.kates-part.com, I was very much confused and even scared, as it would be any virus or any other type of malwares or even some sort of scam. I shutdown my browser as soon as I saw that hypertext and I was surprised to know it was not at a malware or any type of virus and it is really an internet site with prefix ‘ww38’. I was looking all over the internet for the info about this kind of prefix, and finally I came to know that there are many websites over the internet which accept ww38 as prefix.

What does ww38 means?

Providing ‘ww38’ as prefix to many of the sites over the internet means that, you can access or you are accessing ‘ww38’ named machine(server) from the main domain. ww38 or any similar other prefixes are only used to notify the server name or server number of the main website, that is being added after this prefix. As ‘www’ is the standard and commonly provided prefix, which is being followed for a long era of time, there is no rules to strictly follow on it.
While a web address is considered, the prefix can be anything which the developer of the website wishes, but the end part(eg: .co, .in, .com etc) should follow either of the valid format.

Now you might have understood the difference between ‘www’ and ‘ww38’, check yourself by providing ‘ww38’ instead of ‘www’ on your search field and it will surely accept it.