VLSI Projects 2011 available @ NCCT, (VLSI FPGA Projects Spartan FPGA Kit, Xilinx) for more details www.ncct.in, Contact - 044-28235816, 98411 93224, 93801 02891, ncctchennai@gmail.com ...... For Project Titles, Abstracts Downloads visit www.ncct.in

What is VLSI  |  Why VLSI  |  Origins of VLSI  |  VLSI History  |  VLSI Applications  |  VLSI Implementation Media  |  Moore’s Law  |  The VLSI Design Process  |  Categories of VLSI Design  |  FPGA  |  ASIC  |  FPGA-Field-Programmable Gate Array  |  FPGA vs. ASIC  |  Jobs for VLSI Engineers  | VLSI Interview Questions

Thursday, September 22, 2011


VLSI PROJECT LIST, IEEE 2011 

  • A formal approach to designing cryptographic processor.
  • A novel low power and high speed Wallace tree multiplier for RISC processor.
  • A review on power optimization of linear feedback shift register for low power built in self test
  • An ultra low power BPSK receiver and demodulator based on injection locked oscillator.
  • Coping With the Obsolescence of Safety- or Mission-Critical Embedded Systems Using FPGAs
  • Efficient iterative techniques for soft decision decoding of reed Solomon codes.
  • FPGA Based Electronics for PET Detector Modules With Neural Network Position Estimators.
  • FPGA Design for Monitoring CAN bus Traffic in a Prosthetic Limb Sensor Network.
  • FPGA Implementation of BPSK Modem for Telemetry Systems Operating in Noisy Environments
  • FPGA-Based Configurable Frequency-Diverse Ultrasonic Target-Detection System.
  • FPGA-Based Parallel DNA Algorithm for Optimal Configurations of an Omni directional Mobile Service Robot
  • Performing Fire Extinguishment FPGAs in Industrial Control Applications.
  • Hardware-Efficient Image-Based Robotic Path Planning in a Dynamic Environment and Its FPGA Implementation.
  • Mapping multi-domain applications onto coarse-grained reconfigurable architectures.
 www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

  • Removal of impulse noise using 3x3 kernel FPGA implementation
  • Systematic design of RSA processors based on high-radix Montgomery multipliers.
  • The SoC Design and Realization of Small Scale Solar Irrigation Control System Based on FPGA.
  • Ultra wideband digital receiver implemented on FPGA for mobile robot indoor self-localization.
  • A Median Filter Fpga With Harvard Architecture
  • A New Adaptive Weight Algorithm For Salt And Pepper Noise Removal
  • A Pipeline Vlsi Architecture For High-Speed Computation Of The 1-D  Discrete Wavelet Transform
  • Adiabatic Technique For Energy Efficient Logic Circuits Design
  • An Fpga-Based Architecture For Linear And Morphological Image Filtering
  • Automatic Road Extraction Using High Resolution Satellite Images Based On Level Set And Mean Shift Methods
  • Design And Fpga Implementation Of Modified Distributive Arithmetic Based Dwt-Idwt Processor For Image Compression
  • Design Of A Low Power Flip-Flop Using Cmos Deep Submicron Technology
  • Detecting Background Setting For Dynamic Scene
  • Dual Stack Method A Novel Approach To Low Leakage And Speed Power Product Vlsi Design
  • Lossless Implementation Of Daubechies 8-Tap Wavelet Transform
  • Low-Power And Area-Efficient Carry Select Adder
  • Operation Improvement Of Indoor Robot By Gesture Recognition
  • Performance Analysis Of Integer Wavelet Transform For Image Compression
  • Removal Of High Density Salt And Pepper Noise Through Modified Decision Based Unsymmetric Trimmed Median Filter
 www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

  • 4 Bit SFQ Multiplier based on Booth Encoder
  • A Lightweight High-Performance Fault Detection Scheme For The Advanced Encryption Standard Using Composite Fields
  • A Rotation-Based BIST With Self-Feedback Logic To Achieve Complete Fault Coverage
  • An Autonomous Vectorscalar Floating Point Coprocessor For FPGAS
  • Building An AMBA AHB Compliant Memory Controller
  • Design And Characterization Of Parallel Prefix Adders Using FPGAS
  • Design And Implementation Of Cordic Processor For Complex DPLL
  • Direct Digital Frequency Synthesizer Using Nonuniform Piecewise-Linear Approximation
  • FPGA Based Real-Time Adaptive Fuzzy Logic Controller
  • High Speed ASIC Design Of Complex Multiplier Using Vedic Mathematics
www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

  • High-Accuracy Fixed-Width Modified Booth Multipliers For Lossy Applications
  • High-Speed Low-Power VITERBI Decoder Design For TCM Decoders
  • Ieee 1451-Based Multi-Interface Module (I2M) For Industrial Processes Automation
  • Implementation And Performance Analysis Of Seal Encryption On FPGA, GPU And Multi-Core Processors
  • Innovative Application Of RFID Systems To Special Education Schools
  • Low-Complexity Sequential Searcher For Robust Symbol Synchronization In OFDM Systems
  • Mobile Video Monitoring System Based On FPGA & GPRS
  • On The Transmission Method For Short Range MIMO Communications
  • Power Management Of MIMO Network Interfaces On Mobile Systems
  • PVT Variation Tolerant Current Source With On-Chip Digital Self-Calibration
  • Task Migration In Mesh NOCS Over Virtual Point-To-Point Connections
  • Technique Of LFSR Based Test Generator Synthesis For Deterministic And Pseudorandom Testing
 www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

VLSI PROJECT LIST, IEEE 2010 
·         Design of SHA-1 Algorithm Based on FPGA
·        Algorithm of Binary Image Labeling and Parameter Extracting Based on FPGA
·        An FPGA-based Architecture for Linear and Morphological and Image filtering
·        Development of a New Breath Alcohol Detector without Mouthpiece to Prevent Alcohol-Impaired Driving
·        FPGA implementation for humidity and temperature remote sensing system
·        Hardware realization of shadow detection algorithm in fpga
·        Image Edge Detection Based on FPGA
·        Performance Efficient FPGA Implementation of Parallel 2-D MRI Image Filtering Algorithms using Xilinx System Generator
·        Recognition FPGA system for detection of anomalies in mammograms
·        RFID-based Hospital Real-time Patient Management System
·        Solid waste monitoring and management using RFID, GIS and GSM
·        Sort Optimization Algorithm of Median Filtering Based on FPGA
·        The Realization of Precision Agriculture Monitoring System Based on Wireless Sensor Network

www.ncct.inncctchennai@gmail.com, 2823 5816, 98411 93224

VLSI PROJECT LIST, IEEE 2011 

  • A formal approach to designing cryptographic processor.
  • A novel low power and high speed Wallace tree multiplier for RISC processor.
  • A review on power optimization of linear feedback shift register for low power built in self test
  • An ultra low power BPSK receiver and demodulator based on injection locked oscillator.
  • Coping With the Obsolescence of Safety- or Mission-Critical Embedded Systems Using FPGAs
  • Efficient iterative techniques for soft decision decoding of reed Solomon codes.
  • FPGA Based Electronics for PET Detector Modules With Neural Network Position Estimators.
  • FPGA Design for Monitoring CAN bus Traffic in a Prosthetic Limb Sensor Network.
  • FPGA Implementation of BPSK Modem for Telemetry Systems Operating in Noisy Environments
  • FPGA-Based Configurable Frequency-Diverse Ultrasonic Target-Detection System.
  • FPGA-Based Parallel DNA Algorithm for Optimal Configurations of an Omni directional Mobile Service Robot
  • Performing Fire Extinguishment FPGAs in Industrial Control Applications.
  • Hardware-Efficient Image-Based Robotic Path Planning in a Dynamic Environment and Its FPGA Implementation.
  • Mapping multi-domain applications onto coarse-grained reconfigurable architectures.
 www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

  • Removal of impulse noise using 3x3 kernel FPGA implementation
  • Systematic design of RSA processors based on high-radix Montgomery multipliers.
  • The SoC Design and Realization of Small Scale Solar Irrigation Control System Based on FPGA.
  • Ultra wideband digital receiver implemented on FPGA for mobile robot indoor self-localization.
  • A Median Filter Fpga With Harvard Architecture
  • A New Adaptive Weight Algorithm For Salt And Pepper Noise Removal
  • A Pipeline Vlsi Architecture For High-Speed Computation Of The 1-D  Discrete Wavelet Transform
  • Adiabatic Technique For Energy Efficient Logic Circuits Design
  • An Fpga-Based Architecture For Linear And Morphological Image Filtering
  • Automatic Road Extraction Using High Resolution Satellite Images Based On Level Set And Mean Shift Methods
  • Design And Fpga Implementation Of Modified Distributive Arithmetic Based Dwt-Idwt Processor For Image Compression
  • Design Of A Low Power Flip-Flop Using Cmos Deep Submicron Technology
  • Detecting Background Setting For Dynamic Scene
  • Dual Stack Method A Novel Approach To Low Leakage And Speed Power Product Vlsi Design
  • Lossless Implementation Of Daubechies 8-Tap Wavelet Transform
  • Low-Power And Area-Efficient Carry Select Adder
  • Operation Improvement Of Indoor Robot By Gesture Recognition
  • Performance Analysis Of Integer Wavelet Transform For Image Compression
  • Removal Of High Density Salt And Pepper Noise Through Modified Decision Based Unsymmetric Trimmed Median Filter
 www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

  • 4 Bit SFQ Multiplier based on Booth Encoder
  • A Lightweight High-Performance Fault Detection Scheme For The Advanced Encryption Standard Using Composite Fields
  • A Rotation-Based BIST With Self-Feedback Logic To Achieve Complete Fault Coverage
  • An Autonomous Vectorscalar Floating Point Coprocessor For FPGAS
  • Building An AMBA AHB Compliant Memory Controller
  • Design And Characterization Of Parallel Prefix Adders Using FPGAS
  • Design And Implementation Of Cordic Processor For Complex DPLL
  • Direct Digital Frequency Synthesizer Using Nonuniform Piecewise-Linear Approximation
  • FPGA Based Real-Time Adaptive Fuzzy Logic Controller
  • High Speed ASIC Design Of Complex Multiplier Using Vedic Mathematics
www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

  • High-Accuracy Fixed-Width Modified Booth Multipliers For Lossy Applications
  • High-Speed Low-Power VITERBI Decoder Design For TCM Decoders
  • Ieee 1451-Based Multi-Interface Module (I2M) For Industrial Processes Automation
  • Implementation And Performance Analysis Of Seal Encryption On FPGA, GPU And Multi-Core Processors
  • Innovative Application Of RFID Systems To Special Education Schools
  • Low-Complexity Sequential Searcher For Robust Symbol Synchronization In OFDM Systems
  • Mobile Video Monitoring System Based On FPGA & GPRS
  • On The Transmission Method For Short Range MIMO Communications
  • Power Management Of MIMO Network Interfaces On Mobile Systems
  • PVT Variation Tolerant Current Source With On-Chip Digital Self-Calibration
  • Task Migration In Mesh NOCS Over Virtual Point-To-Point Connections
  • Technique Of LFSR Based Test Generator Synthesis For Deterministic And Pseudorandom Testing
 www.ncct.inncctchennai@gmail.com, 2823 5816, 984 11 93 224

INTERVIEW QUESTIONS


INTERVIEW QUESTIONS 

Why does the present VLSI circuits use MOSFETs instead of BJTs?
Compared to BJTs, MOSFETs can be made very small as they occupy very small silicon area on IC chip and are relatively simple in terms of manufacturing. Moreover digital and memory ICs can be implemented with circuits that use only MOSFETs i.e. no resistors, diodes, etc.


What are the various regions of operation of MOSFET? How are those regions used?
MOSFET has three regions of operation: the cut-off region, the triode region, and the saturation region.
The cut-off region and the triode region are used to operate as switch. The saturation region is used to operate as amplifier.


What is threshold voltage?
The value of voltage between Gate and Source i.e. VGS at which a sufficient number of mobile electrons accumulate in the channel region to form a conducting channel is called threshold voltage (Vt is positive for NMOS and negative for PMOS).


What does it mean "the channel is pinched off"?
For a MOSFET when VGS is greater than Vt, a channel is induced. As we increase VDS current starts flowing from Drain to Source (triode region). When we further increase VDS, till the voltage between gate and channel at the drain end to become Vt, i.e. VGS - VDS = Vt, the channel depth at Drain end decreases almost to zero, and the channel is said to be pinched off. This is where a MOSFET enters saturation region.


Explain the three regions of operation of a MOSFET
Cut-off region: When VGS < Vt, no channel is induced and the MOSFET will be in cut-off region. No current flows.
Triode region: When VGS ≥ Vt, a channel will be induced and current starts flowing if VDS > 0. MOSFET will be in triode region as long as VDS < VGS - Vt.
Saturation region: When VGS ≥ Vt, and VDS ≥ VGS - Vt, the channel will be in saturation mode, where the current value saturates. There will be little or no effect on MOSFET when VDS is further increased.


www.ncct.in, ncctchennai@gmail.com
98411 93224, 93801 02891, 044-2823 5816


What is channel-length modulation?
In practice, when VDS is further increased beyond saturation point, it does has some effect on the characteristics of the MOSFET. When VDS is increased the channel pinch-off point starts moving away from the Drain and towards the Source. Due to which the effective channel length decreases, and this phenomenon is called as Channel Length Modulation.


Explain depletion region.
When a positive voltage is applied across Gate, it causes the free holes (positive charge) to be repelled from the region of substrate under the Gate (the channel region). When these holes are pushed down the substrate they leave behind a carrier-depletion region.


What is body effect?
Usually, in an integrated circuit there will be several MOSFETs and in order to maintain cut-off condition for all MOSFETs the body substrate is connected to the most negative power supply (in case of PMOS most positive power supply). Which causes a reverse bias voltage between source and body that effects the transistor operation, by widening the depletion region. The widened depletion region will result in the reduction of channel depth. To restore the channel depth to its normal depth the VGS has to be increased. This is effectively seen as change in the threshold voltage - Vt. This effect, which is caused by applying some voltage to body is known as body effect.


Give various factors on which threshold voltage depends.
As discussed in the above question, the Vt depends on the voltage connected to the Body terminal. It also depends on the temperature, the magnitude of Vt decreases by about 2mV for every 1oC rise in temperature.


What is the fundamental difference between a MOSFET and BJT ?
In MOSFET, current flow is either due to electrons(n-channel MOS) or due to holes(p-channel MOS) - In BJT, we see current due to both the carriers.. electrons and holes. BJT is a current controlled device and MOSFET is a voltage controlled device.


Why are most interrupts active low?
If you consider the transistor level of a module, active low means the capacitor in the output terminal gets charged or discharged based on low to high and high to low transition, respectively. when it goes from high to low it depends on the pull down resistor that pulls it down and it is relatively easy for the output capacitance to discharge rather than charging. Hence designers prefer active low interrupt signals.


Which is better: synchronous reset or asynchronous reset signal?
Synchronous reset logic will synthesize to smaller flip-flops, particularly if the reset is gated with the logic generating the d-input. But in such a case, the combinational logic gate count grows, so the overall gate count savings may not be that significant. The clock works as a filter for small reset glitches; however, if these glitches occur near the active clock edge, the Flip-flop could go metastable. In some designs, the reset must be generated by a set of internal conditions. A synchronous reset is recommended for these types of designs because it will filter the logic equation glitches between clock.
Problem with synchronous resets is that the synthesis tool cannot easily distinguish the reset signal from any other data signal. Synchronous resets may need a pulse stretcher to guarantee a reset pulse width wide enough to ensure reset is present during an active edge of the clock, if you have a gated clock to save power, the clock may be disabled coincident with the assertion of reset. Only an asynchronous reset will work in this situation, as the reset might be removed prior to the resumption of the clock. Designs that are pushing the limit for data path timing, can not afford to have added gates and additional net delays in the data path due to logic inserted to handle synchronous resets.
Asynchronous reset: The major problem with asynchronous resets is the reset release, also called reset removal. Using an asynchronous reset, the designer is guaranteed not to have the reset added to the data path. Another advantage favoring asynchronous resets is that the circuit can be reset with or without a clock present. Ensure that the release of the reset can occur within one clock period else if the release of the reset occurred on or near a clock edge then flip-flops may go into metastable state.


www.ncct.in, ncctchennai@gmail.com
98411 93224, 93801 02891, 044-2823 5816



Give the expression for CMOS switching power dissipation.
Pswitching = (1/2)CVdd2/f
Where
Pswitching = Switching power.
C = Load capacitance.
Vdd = Supply voltage.
f = Operating frequency.


What is velocity saturation? What are its effects?
In semiconductors, when a strong enough electric field is applied, the carrier velocity in the semiconductor reaches a maximum value. When this happens, the semiconductor is said to be in a state of velocity saturation. As the applied electric field increases from that point, the carrier velocity no longer increases.
In sub-micron technology velocity saturation is an important design characteristic. Velocity saturation greatly affects the voltage transfer characteristics of a circuit. If a semiconductor device enters velocity saturation, an increase in voltage applied to the device will not cause a linear increase in current as would be expected by Ohm's law. Instead, the current may only increase by a small amount, or not at all.


Why are pMOS transistor networks generally used to produce high signals, while nMOS networks are used to product low signals?
This is because threshold voltage effect. A nMOS device cannot drive a full 1 or high and pMOS cant drive full '0' or low. The maximum voltage level in nMOS and minimum voltage level in pMOS are limited by threshold voltage. Both nMOS and pMOS do not give rail to rail swing.


Expand: DTL, RTL, ECL, TTL, CMOS, BiCMOS.
DTL: Diode-Transistor Logic.
RTL: Resistor-Transistor Logic.
ECL: Emitter Coupled Logic.
TTL: Transistor-Transistor Logic.
CMOS: Complementary Metal Oxide Semiconductor.
BiCMOS: Bipolar Complementary Metal Oxide Semiconductor.


On IC schematics, transistors are usually labeled with two, or sometimes one number(s). What do each of those numbers mean?
The two numbers are the width and the length of the channel drawn in the layout. If only one number is present then it is the width of the channel, combined with a default length of the channel.


On what factors does the resistance of metal depend on?
R = (p.l)/A
Where
R = Resistance of the metal.
p = Resistivity of the metal.
A = is the cross sectional area.
l = length of the metal.
With increase in length or decrease in cross sectional area resistance of the metal wire increases. Resistivity(p) is the material property which depends on temperature. In general, resistivity of metals increases with temperature.


www.ncct.in, ncctchennai@gmail.com
98411 93224, 93801 02891, 044-2823 5816



Why is the number of gate inputs to CMOS gates (e.g. NAND or NOR gates)usually limited to four?
To limit the height of the stack. The higher the stack the slower the gate will be. In NAND and NOR gates the number of gates present in the stack is usually same as the number of inputs plus one. So inputs are limited to four.


What are the important aspects of VLSI optimization?
Power, Area, and Speed.


What are the sources of power dissipation?
Dynamic power consumption, due to logic transitions causing logic gates to charge/discharge load capacitance.
Short-circuit current, this occurs when p-tree and n-tree shorted (for a while) during logic transition.
Leakage current, this is a very important source of power dissipation in nano technology, it increases with decrease in lambda value. It is caused due to diode leakages around transistors and n-wells.


What is the need for power reduction?
Low power increases noise immunity, increases batter life, decreases cooling and packaging costs.


Give some low power design techniques.
Voltage scaling, transistor resizing, pipelining and parallelism, power management modes like standby modes, etc.


Give a disadvantage of voltage scaling technique for power reduction.
When voltage is scaled, designers tend to decrease threshold voltage to maintain good noise margins. But decreasing threshold voltages increases leakage currents exponentially.


Give an expression for switching power dissipation.
Pswitching = (1/2)CVdd2/f
Where
Pswitching = Switching power.
C = Load capacitance.
Vdd = Supply voltage.
f = Operating frequency.


Will glitches in a logic circuit cause power wastage?
Yes, because they cause unexpected transitions in logic gates.


www.ncct.in, ncctchennai@gmail.com
98411 93224, 93801 02891, 044-2823 5816



What is the major source of power wastage in SRAM?
To read/write a word data, activates a word line for a row which causes all the columns in the row to be active even though we need only a word data. This consumes a lot power.


What is the major problem associated with caches w.r.t low power design? Give techniques to overcome it.
Cache is a very important part of the integrated chips, they occupy most of the space and hence contain lot of transistors. More transistors means more leakage current. That is the major problem associated with caches w.r.t. low power design. The following techniques are used to overcome it: Vdd-Gating, Cache decay, Drowsy caches, etc.


Does software play any role in low power design?
Yes, one can redesign a software to reduce power consumptions. For example modify the process algorithm which uses less number of computations. 


Why is NAND gate preferred over NOR gate for fabrication?
NAND is a better gate for design than NOR because at the transistor level the mobility of electrons of NAND is normally three times that of holes compared to NOR and thus the NAND is a faster gate. The gate-leakage in NAND structures is much lower. If you consider t_phl and t_plh delays you will find that it is more symmetric in case of NAND (the delay profile), but for NOR, one delay is much higher than the other(obviously t_plh is higher since the higher resistance PMOSs are in series connection which again increases the resistance).


Which transistor has higher gain: BJT or MOSFET and why?
BJT has higher gain because it has higher transconductance.This is because the current in BJT is exponentially dependent on input where as in MOSFET it is square law.


Why PMOS and NMOS are sized equally in a transmission gates?
In transmission gate, PMOS and NMOS aid each other rather than competing with each other. So they are sized similarly.


What is SCR?
A silicon-controlled rectifier (or semiconductor-controlled rectifier) is a 4-layer solid state device that controls current flow.
An SCR is a type of rectifier, controlled by a logic gate signal. It is a 4-layered, 3-terminal device. A p-type layer acts as an anode and an n-type layer as a cathode; the p-type layer closer to the n-type(cathode) acts as a gate.


www.ncct.in, ncctchennai@gmail.com
98411 93224, 93801 02891, 044-2823 5816




In CMOS digital design, why is the size of PMOS is generally higher than that of the NMOS?
In PMOS the carriers are holes whose mobility is less than the electrons, the carriers in NMOS. That means PMOS is slower than NMOS. In CMOS technology, NMOS helps in pulling down the output to ground and PMOS helps in pulling up the output to Vdd. If the sizes of PMOS and NMOS are the same, then PMOS takes long time to charge up the output node. If we have a larger PMOS than there will be more carriers to charge the node quickly and overcome the slow nature of PMOS. All this is done to get equal rise and fall times for the output node.


What is slack?
The slack is the time delay difference from the expected delay to the actual delay in a particular path. Slack can be positive or negative.


What is latch up?
A latchup is the inadvertent creation of a low-impedance path between the power supply rails of an electronic component, triggering a parasitic structure(The parasitic structure is usually equivalent to a thyristor or SCR), which then acts as a short circuit, disrupting proper functioning of the part. Depending on the circuits involved, the amount of current flow produced by this mechanism can be large enough to result in permanent destruction of the device due to electrical over stress - EOS.


Why is the size of inverters in buffer design gradually increased? Why not give the output of a circuit to one large inverter?
Because circuit can not drive the high output load straight away, so the load is gradually increased, by gradually increasing the size of inverters to get an optimized performance.


What is Charge Sharing? Explain the Charge Sharing problem while sampling data from a Bus?
The charge sharing problem occurs when the charge which is stored at the output node in the phase is shared among the output or junction capacitances of transistors which are in the evaluation phase. Charge sharing may degrade the output voltage level or even cause erroneous output value.
In the serially connected NMOS logic the input capacitance of each gate shares the charge with the load capacitance by which the logical levels drastically mismatched than that of the desired once. To eliminate this load capacitance must be very high compared to the input capacitance of the gate, which is generally 10 times.


What happens to delay if load capacitance is increased?
Delay increases.


www.ncct.in, ncctchennai@gmail.com
98411 93224, 93801 02891, 044-2823 5816





FPGA vs ASIC

FPGA vs ASIC
Speed
ASIC rules out FPGA in terms of speed. As ASIC are designed for a specific application they can be optimized to maximum, hence we can have high speed in ASIC designs. ASIC can have hight speed clocks.

Cost
FPGAs are cost effective for small applications. But when it comes to complex and large volume designs (like 32-bit processors) ASIC products are cheaper.

Size/Area
FPGA are contains lots of LUTs, and routing channels which are connected via bit streams(program). As they are made for general purpose and because of re-usability. They are in-general larger designs than corresponding ASIC design. For example, LUT gives you both registered and non-register output, but if we require only non-registered output, then its a waste of having a extra circuitry. In this way ASIC will be smaller in size.

Power
FPGA designs consume more power than ASIC designs. As explained above the unwanted circuitry results wastage of power. FPGA wont allow us to have better power optimization. When it comes to ASIC designs we can optimize them to the fullest.

Time to Market
FPGA designs will till less time, as the design cycle is small when compared to that of ASIC designs. No need of layouts, masks or other back-end processes. Its very simple: Specifications -- HDL + simulations -- Synthesis -- Place and Route (along with static-analysis) -- Dump code onto FPGA and Verify. When it comes to ASIC we have to do floor planning and also advanced verification. 
The FPGA design flow eliminates the complex and time-consuming floor planning, place and route, timing analysis, and mask / re-spin stages of the project since the design logic is already synthesized to be placed onto an already verified, characterized FPGA device.

Type of Design
ASIC can have mixed-signal designs, or only analog designs. But it is not possible to design them using FPGA chips.

Customization
ASIC has the upper hand when comes to the customization. The device can be fully customized as ASICs will be designed according to a given specification. Just imagine implementing a 32-bit processor on a FPGA!

Prototyping
Because of re-usability of FPGAs, they are used as ASIC prototypes. ASIC design HDL code is first dumped onto a FPGA and tested for accurate results. Once the design is error free then it is taken for further steps. Its clear that FPGA may be needed for designing an ASIC.

Non Recurring Engineering/Expenses
NRE refers to the one-time cost of researching, designing, and testing a new product, which is generally associated with ASICs. No such thing is associated with FPGA. Hence FPGA designs are cost effective.

Simpler Design Cycle
Due to software that handles much of the routing, placement, and timing, FPGA designs have smaller designed cycle than ASICs.

More Predictable Project Cycle
Due to elimination of potential re-spins, wafer capacities, etc. FPGA designs have better project cycle.

Tools
Tools which are used for FPGA designs are relatively cheaper than ASIC designs.

Re-Usability
A single FPGA can be used for various applications, by simply reprogramming it (dumping new HDL code). By definition ASIC are application specific cannot be reused

Field-Programmable Gate Array


Field-Programmable Gate Array
A Field-Programmable Gate Array (FPGA) is a semiconductor device containing programmable logic components called "logic blocks", and programmable interconnects. 
Logic blocks can be programmed to perform the function of basic logic gates such as AND, and XOR, or more complex combinational functions such as decoders or mathematical functions. 
In most FPGAs, the logic blocks also include memory elements, which may be simple flip-flops or more complete blocks of memory.


Applications
ASIC prototyping: Due to high cost of ASIC chips, the logic of the application is first verified by dumping HDL code in a FPGA. This helps for faster and cheaper testing. Once the logic is verified then they are made into ASICs.
* Very useful in applications that can make use of the massive parallelism offered by their architecture. Example: code breaking, in particular brute-force attack, of cryptographic algorithms.
FPGAs are sued for computational kernels such as FFT or Convolution instead of a microprocessor.
Applications include digital signal processing, software-defined radio, aerospace and defense systems, medical imaging, computer vision, speech recognition, cryptography, bio-informatics, computer hardware emulation and a growing range of other areas.


Architecture
FPGA consists of large number of "configurable logic blocks" (CLBs) and routing channels. Multiple I/O pads may fit into the height of one row or the width of one column in the array. In general all the routing channels have the same width

CLB: The CLB consists of an n-bit look-up table (LUT), a flip-flop and a 2x1 mux. The value n is manufacturer specific. Increase in n value can increase the performance of a FPGA. Typically n is 4. An n-bit lookup table can be implemented with a multiplexer whose select lines are the inputs of the LUT and whose inputs are constants. An n-bit LUT can encode any n-input Boolean function by modeling such functions as truth tables. This is an efficient way of encoding Boolean logic functions, and LUTs with 4-6 bits of input are in fact the key component of modern FPGAs
Each CLB has n-inputs and only one input, which can be either the registered or the unregistered LUT output. The output is selected using a 2x1 mux. The LUT output is registered using the flip-flop (generally D flip-flop). The clock is given to the flip-flop, using which the output is registered. In general, high fanout signals like clock signals are routed via special-purpose dedicated routing networks, they and other signals are managed separately.
Routing channels are programmed to connect various CLBs. The connecting done according to the design. The CLBs are connected in such a way that logic of the design is achieved.


FPGA Programming
The design is first coded in HDL (Verilog or VHDL), once the code is validated (simulated and synthesized). During synthesis, typically done using tools like Xilinx ISE, FPGA Advantage, etc, a technology-mapped net list is generated. The net list can then be fitted to the actual FPGA architecture using a process called place-and-route, usually performed by the FPGA company's proprietary place-and-route software. 
The user will validate the map, place and route results via timing analysis, simulation, and other verification methodologies. Once the design and validation process is complete, the binary file generated is used to (re)configure the FPGA. 
Once the FPGA is (re)configured, it is tested. If there are any issues or modifications, the original HDL code will be modified and then entire process is repeated, and FPGA is reconfigured

ASIC

ASIC:
An application-specific integrated circuit (ASIC) is an integrated circuit designed for a particular use, rather than intended for general-purpose use. Processors, RAM, ROM, etc are examples of ASICs

FPGA

FPGA: 
A Field-Programmable Gate Array (FPGA) is a semiconductor device containing programmable logic components called "logic blocks", and programmable interconnects. 
Logic blocks can be programmed to perform the function of basic logic gates such as AND, and XOR, or more complex combinational functions such as decoders or mathematical functions

Moore’s Law


Moore’s Law
Gordon Moore: co-founder of Intel

1965 - observed trends in industry - # of transistors on ICs vs. release dates:
Noticed number of transistors doubling with release of each new IC generation
release dates (separate generations) were all 18-24 months apart

Predicted that the number of transistors per chip would grow exponentially (double every 18 months)

Exponential improvement in technology is a natural trend: 
e.g. Steam Engines - Dynamo - Automobile

The level of integration of silicon technology as measured in terms of number of devices per IC

This comes about in two ways – size reduction of the individual devices and increase in the chip or dice size

As an indication of size reduction, it is interesting to note that feature size was measured in mils (1/1000 inch, 1 mil = 25 mm) up to early 1970’s, whereas now all features are measured in mm’s (1 mm = 10-6 m or 10-4 cm)

Semiconductor industry has followed this prediction with surprising accuracy

Amazing visionary – million transistor/chip barrier was crossed in the 1980’s.
2300 transistors, 1 MHz clock (Intel 4004) - 1971
42 Million, 2 GHz clock (Intel P4) - 2001
140 Million transistor (HP PA-8500)

VLSI Applications


VLSI Applications
VLSI is an implementation technology for electronic circuitry - analogue or digital
It is concerned with forming a pattern of interconnected switches and gates on the surface of a crystal of semiconductor
* Microprocessors
* personal computers
* Microcontrollers
* Memory - DRAM / SRAM
* Special Purpose Processors - ASICS (CD players, DSP applications)
* Optical Switches
Has made highly sophisticated control systems mass-producable and therefore cheap

JOBS FOR VLSI ENGINEERS


JOBS FOR VLSI ENGINEERS
As mentioned above, the main job functions in this industry are Design, Product, Test, Applications and Process Engineering. For the sake of clarity, product engineering and test engineering functions are described separately, but it is most efficient to combine these two functions into one engineer because of the interdependency and overlap of skills, tasks and job functions.

1. Design Engineer:
Takes specifications, defines architecture, does circuit design, runs simulations, supervises layout, tapes out the chip to the foundry, evaluates the prototype once the chip comes back from the fab.

2. Product Engineer:
Gets involved in the project during the design phase, ensures manufacturability, develops characterization plan, assembly guidelines, develops quality and reliability plan, evaluates the chip with the design engineer, evaluates the chip through characterization, reliability qualification and manufacturing yield point of view (statistical data analysis). He is responsible for production release and is therefore regarded as a team leader on the project. Post production, he is responsible for customer returns, failure analysis, and corrective actions including design changes.

3. Test Engineer:
Develops test plan for the chip based on specifications and data sheet, creates characterization and production program for the bench test or the ATE (Automatic Test Equipment), designs test board hardware, correlates ATE results with the bench results to validate silicon to compare with simulation results. He works closely with the product engineer to ensure smooth release to production and post release support.

4. Applications Engineer:
Defines new products from system point of view at the customer’s end, based on marketing input. His mission is to ensure the chip works in the system designed or used by the customers, and complies with appropriate standards (such as Ethernet, SONET, WiFi etc.). He is responsible for all customer technical support, firmware development, evaluation boards, data sheets and all product documentation such as application notes, trade shows, magazine articles, evaluation reports, software drives and so on.

5. Process Engineer:
This is a highly specialized function which involves new wafer process development, device modeling, and lots of research and development projects. There are no quick rewards on this job! If you are R&D oriented, highly trained in semiconductor device physics area, do not mind wearing bunny suits (the clean room uniforms used in all fabs), willing to experiment, this job is for you.

6. Packaging Engineer:
This is another highly specialized job function. He develops precision packaging technology, new package designs for the chips, does the characterization of new packages, and does electrical modeling of the new designs.

7. CAD Engineer:
This is an engineering function that supports the design engineering function. He is responsible for acquiring, maintaining or developing all CAD tools used by a design engineer. Most companies buy commercially available CAD tools for schematic capture, simulation, synthesis, test vector generation, layout, parametric extraction, power estimation, and timing closure; but in several cases, these tools need some type of customization. A CAD engineer needs to be highly skilled in the use of these tools, be able to write software routines to automate as many functions as possible and have a clear understanding of the entire design flow

VLSI DESIGNS ARE CLASSIFIED INTO THREE CATEGORIES

VLSI DESIGNS ARE CLASSIFIED INTO THREE CATEGORIES:
1. Analog:
Small transistor count precision circuits such as Amplifiers, Data converters, filters, Phase Locked Loops, Sensors etc.

2. ASICS or Application Specific Integrated Circuits:
Progress in the fabrication of IC's has enabled us to create fast and powerful circuits in smaller and smaller devices. This also means that we can pack a lot more of functionality into the same area. The biggest application of this ability is found in the design of ASIC's. These are IC's that are created for specific purposes - each device is created to do a particular job, and do it well. 
The most common application area for this is DSP - signal filters, image compression, etc. To go to extremes, consider the fact that the digital wristwatch normally consists of a single IC doing all the time-keeping jobs as well as extra features like games, calendar, etc.

3. SoC or Systems on a chip:
These are highly complex mixed signal circuits (digital and analog all on the same chip). A network processor chip or a wireless radio chip is an example of an SoC

VLSI DESIGN PROCESS


THE VLSI DESIGN PROCESS
A typical digital design flow is as follows:
* Specification
Architecture
RTL Coding
RTL Verification
Synthesis
Backend

All modern digital designs start with a designer writing a hardware description of the IC (using HDL or Hardware Description Language) in Verilog/VHDL. A Verilog or VHDL program essentially describes the hardware (logic gates, Flip-Flops, counters etc) and the interconnect of the circuit blocks and the functionality. Various CAD tools are available to synthesize a circuit based on the HDL. The most widely used synthesis tools come from two CAD companies. Synposys and Cadence.
Without going into details, we can say that the VHDL, can be called as the "C" of the VLSI industry. VHDL stands for "VHSIC Hardware Definition Language", where VHSIC stands for "Very High Speed Integrated Circuit". This languages is used to design the circuits at a high-level, in two ways. It can either be a behavioural description, which describes what the circuit is supposed to do, or a structural description, which describes what the circuit is made of. There are other languages for describing circuits, such as Verilog, which work in a similar fashion.
Both forms of description are then used to generate a very low-level description that actually spells out how all this is to be fabricated on the silicon chips. This will result in the manufacture of the intended IC.


A typical analog design flow is as follows:
In case of analog design, the flow changes somewhat.
* Specifications
Architecture
Circuit Design
SPICE Simulation
Layout
Parametric Extraction / Back Annotation
Final Design
Tape Out to foundry

While digital design is highly automated now, very small portion of analog design can be automated. There is a hardware description language called AHDL but is not widely used as it does not accurately give us the behavioral model of the circuit because of the complexity of the effects of parasitic on the analog behavior of the circuit. Many analog chips are what are termed as “flat” or non-hierarchical designs. 
This is true for small transistor count chips such as an operational amplifier, or a filter or a power management chip. For more complex analog chips such as data converters, the design is done at a transistor level, building up to a cell level, then a block level and then integrated at a chip level. 
Not many CAD tools are available for analog design even today and thus analog design remains a difficult art. SPICE remains the most useful simulation tool for analog as well as digital design

VLSI Implementation Media


VLSI Implementation Media
Media requiring fabrication:
* Full Custom - design and physical layout at transistor level
* Standard Cell - design and physical layout at gate/flip-flop level
* Gate Array - design and physical layout at gate level (like standard cell but with some prefabrication of wafer)


Prefabricated media:
* Field Programmable Gate Arrays (FPGAs) - design at gate/flip-flop or register transfer level
* Complex Programmable Logic Devices (CPLDs) - design at gate/flip-flop or register transfer level
* Programmable Logic Devices (PLDs) - design at gate/flip-flop level 
* System-on-Chip (SoC) may incorporate several of these implementation media on a single chip