Saturday, February 18, 2023

What are Pilot Projects in VLSI

A pilot project in VLSI refers to a small-scale, initial implementation of a large system with the aim of testing its feasibility, viability and to gather information on the system's behavior. The objective of a pilot project is to minimize risk and ensure that the system will meet the needs of the end-users. This information helps to refine the system's design, test various features and to make any necessary changes to improve the system's performance.

A pilot project is an important step in the development process. It allows the developers to assess the system's performance, identify any design or implementation issues, and make any necessary changes. This helps to avoid costly errors in the development process and improves the overall quality of the final product.

One example of a pilot project in the field of VLSI could be the design and development of a low-power microcontroller using cutting-edge techniques such as multi-threshold voltage technology and clock gating. This project could involve creating a functional prototype of the microcontroller and testing its performance in terms of power consumption and functionality. Based on the results of the pilot project, the developers can then make any necessary changes to improve the circuit's performance, such as modifying the circuit's layout or changing the process technology. Moreover, the results of this pilot project could be used to guide the development of a larger, more complex system-on-a-chip (SoC) design. This type of project would demonstrate the viability of the design techniques and provide valuable insights for future projects in the field of VLSI.

In conclusion, pilot projects play a crucial role in the VLSI development process by allowing developers to test and refine their systems before moving forward with full-scale implementation. This approach minimizes risk and ensures that the final product will meet the needs of end users.

Monday, July 13, 2020

NAND and NOR gate using CMOS Technology

For the design of any circuit with the CMOS technology, We need parallel or series connections of nMOS and pMOS with an nMOS source tied directly or indirectly to the ground and a pMOS source tied directly or indirectly to Vdd. A basic CMOS structure of any 2-input logic gate can be drawn as follows:



Case-1 : VA – Low & VB – Low

As VA and VB both are low, both the pMOS will be ON and both the nMOS will be OFF. So the output Vout will get two paths through two ON pMOS to get connected with Vdd. The output will be charged to the Vdd level. The output line will not get any path to the GND as both the nMOS are off. So, there is no path through which the output line can discharge. The output line will maintain the voltage level at Vdd; so, High.

Case-2 : VA – Low & VB – High

VA – Low: pMOS1 – ON; nMOS1 – OFF

VB – High: pMOS2 – OFF; nMOS2 – ON

pMOS1 and pMOS2 are in parallel. Though pMOS2 is OFF, still the output line will get a path through pMOS1 to get connected with Vdd. nMOS1 and nMOS2 are in series. As nMOS1 is OFF, so Vout will not be able to find a path to GND to get discharged. This in turn results the Vout to be maintained at the level of Vdd; so, High.

Case-3 : VA – High & VB – Low


VA – High: pMOS1 – OFF; nMOS1 – ON

VB – Low: pMOS2 – ON; nMOS2 – OFF

The explanation is similar as case-2. Vout level will be High.

Case-4 : VA – High & VB – High

VA – High: pMOS1 – OFF; nMOS1 – ON

VB – High: pMOS2 – OFF; nMOS2 – ON

In this case, both the pMOS are OFF. So, Vout will not find any path to get connected with Vdd. As both the nMOS are ON, the series connected nMOS will create a path from Vout to GND. Since, the path to ground is established, Vout will be discharged; so, Low.

In all the 4 cases we have observed that Vout is following the exact pattern as in the truth table for the corresponding input combination.

Classification of Semiconductor Memories and Computer Memories

Memory devices retain data for a time period just like the human brain. This post classifies the Semiconductor Memories and maps different memory devices to Computer Memories.

Semiconductor Memories


Semiconductor Memories can be classified based on two different characteristics: (i) Access type, and (ii) Data retention capability.

(i) Access Type



FIFO: First In First Out
LIFO: Last In First Out
SRAM: Static Random Access Memory
DRAM: Dynamic Random Access Memory
NV: Non-Volatile
ROM: Read-only Memory
PLD: Programmable Logic Device
EPROM: Erasable Programmable Read-only Memory
EEPROM: Electrically Erasable PROM

(ii) Data Retention Capability




Note: Hard-Disk, CD, DVD, Floppy-Disk, Magnetic Tape are also Non Volatile type Memory devices, though they do not come under Semiconductor Memory.

Computer Memories


Memory is an essential part of a computer. It stores data and instructions. We have divided the whole memory system of a computer into 4 different categories.

(i) CPU Register
(ii) Cache Memory
(iii) Primary / Main Memory
(iv) Secondary Memory / Mass Storage


As we can see here, speed and the cost/bit increases in the upward direction of this memory hierarchy whereas the size of the memory used or memory capacity in terms of storage grows in the downward direction.

CPU Register


CPU Registers are the memory units within the processor. CPU processes data and instructions at a very high speed. So to perform the operations on the data and to store the intermediate results, CPU needs some storage space which can store value temporarily. The processor demands the storage of these intermediate data very fast and the quick retrieval also. CPU Registers solve the purpose.

Cache Memory


Cache memory is used to speed up system performance. The size of Cache memory is very less compared to Main memory, but Cache is high-speed semiconductor memory, mostly comprised of SRAM. It acts as buffer memory in-between processor and Main memory. Cache memory holds those parts of data temporarily which are most frequently used by the processor. Cache memory is faster than Main memory but it has limited storage capacity and it is very costly.

Primary Memory / Main Memory


Primary Memory provides the actual working space to the processor. It holds those data or instructions which the processor is currently working on. It has limited storage capacity but it is larger than the Cache memory. The basic building block of the Main memory is the DRAM cell. It is much faster than the secondary memory but slower than the Cache memory.

Secondary Memory / Mass Storage


Secondary memories are external memories and non-volatile in nature. It holds the data when there is no power also. In a computer system, Secondary memory has very high storage capacity, so known as Mass Storage. This is very slow as compared to Primary memory. The processor does not interact with the Secondary memory directly. Contents of Secondary memory first get transferred to the Primary memory and then are accessed by the processor. Secondary memory is mostly of magnetic type (HDD – Hard Disk Drive) like Magnetic Tape, Magnetic Disk (Floppy Disk), etc. Optical disks like CDs and DVDs also come under Secondary Memory. The recent development of SSD (Solid State Drive) in terms of Flash Memory has created a scope that in future SSD may replace HDD. All the Pen Drives we use are Flash Memories which are non-volatile in nature.

Note: All the internal memories are volatile in nature, which means data is lost when the power is switched off. Whereas Secondary memory is non-volatile in nature. ROM (Read Only Memory) a non-volatile one also comes under Main Memory. ROM stores the boot-up instructions for the operating systems. So, when we power on the computer, first the instructions stored in the ROM get executed, and the operating system of the computer gets booted up.