Flip Flops

In every digital system where all storage elements are employed during clock pulse is called sequential circuit . Modern computers also have sequential circuit design inside the CPU. This type of sequential circuit uses a special component called flip flop. Each flip flop can hold one storage data element in terms of bit. So we can say that 1 flip flop can hold 1 bit of data. Flip flops are use in sequential circuits because they can make change of their stored data when a clock pulse is applied .Flip flops are also well known as binary cell as it can store data in binary signal 1 or 0 format. There are various types of flip flops. But generally all types of flip flops have 2 outputs , one is normal and one is complement and all flip flops have clock pulse line . The difference among various types of flip flops is in the number of inputs they possess and in the manner in which the inputs affect the binary state. SR-type, JK-type, T-type, D-type are the most common flip flops. Internally all flip flops are made of combinational circuit design using digital components like logic gates. So because of combinational structures every flip-flops have their own different truth tables and equations. for example both SR-type flip flops and JK-type flip flops have same numbers of inputs, but they are completely different in truth tables and equations

figure : SR-type and JK-type Flip flop

figure : T-type and D-type Flip flop

Register

Complex digital systems which deals with lots of tasks like logic operation, arithmetic operation contains many hardware whose are interconnected among them. These hardware modules are internally made of some digital components like register, decoder, logic control etc. So registers plays an important role in digital systems. Registers store all of the binary bits on which any specific task can be done. These tasks are called micro operations. For example if computer wants to perform addition of two numbers than inside CPU the ALU unit will transfer add-micro operation signal to registers to perform addition between two numbers. After a task performed on register's containing bits , the bit values may or may not change. depending on the task condition. A register is a group of of flip flops with each flip flop capable of storing 1 bit of information . So an n-bit register contains n numbers of flip flops. Because of simplicity D-type flip flops are most commonly used flip flop.

figure : 4-bit register using d-type flip flop

Register Transfer Language

Digital systems which use registers have a control and a list of micro operations. This control selects some of the micro operations from the list and transfers them in a sequence to one or more registers to perform on its stored binary bit values. For example ALU is the control for CPU unit. So these types of digital systems hardware design can be define if we keep 3 important things in our mind:

1. The set of registers it contains and their functions.

2 The sequence of micro operations performed on the bit values inside the registers.

3. The control that initiates the sequence of micro operations.

The sequence of micro operations can be transfer to registers in lengthy descriptive words but as it is lengthy the processing will slow down its speed. Instead of this if we use any symbolic notations to indicate the same of micro operations, and then the processes will be simpler to handle with faster speed. The notation which expresses the sequence of micro operations in a simple manner is called Register Transfer Language. Some basic symbols are given below:

figure : basic symbols in Register Transfer Language - RT L

Register Transfer Concept

Using R T L-Language

In this type of digital systems first the control choose some micro operations in a sequence and then transfer them to one or more registers to perform some tasks on registers containing bit values. The entire works can be done just by expressing the works in RT L-Register Transfer Language notation.For example suppose a control is denoted by symbol 'P' and two register R1, R2. if we wants to perform a transfer of bit values from register R2 to R1,then we can write the entire expression in RT L is given in below figure :

It means that , when the control get value 1 and the clock pulse rise then it will load the register R1 so that the transfer can be from R2 to R1.So one can easily see that , the control is acting like a door of register R1. The given figure will explain all things which are happening inside the system:

In RT L-language system more then one micro operations are separated by commas.

In RT L-language system the group of bits content of register can be express by specifying the bits index range [means the flip flop index] or by the giving sign L or H [means Lower or Higher bits ] inside a parentheses ( ).

figure : transferring a group of bits