Introduction
This summer, I completed a one-month internship at CTTC (Central Tool Room and Training Centre), Bhubaneswar, from June to July. Among the domains on offer, I chose VLSI (Very Large Scale Integration), and I'm glad I did. In just four weeks, I went from knowing digital electronics on paper to understanding how real chips are designed, described in code, and verified.
In this blog, I'll share what I learned, how the month unfolded, and what I'm taking away from it.
Why I Chose VLSI
Every phone, laptop, car, and smartwatch runs on chips. I've always been curious about how billions of transistors are organized into something that thinks, computes, and communicates. VLSI sits at the heart of that question, and an internship was the perfect chance to move beyond textbooks and see how the process actually works in the semiconductor industry.
What I Learned
1. Hardware Description Languages (HDL)
The first big shift was understanding that we don't "program" hardware the way we program software. With an HDL, we describe hardware: how signals flow, how components connect, and how circuits behave over time.
Key ideas I picked up:
- The difference between software programming and hardware description: In software, instructions execute sequentially. In hardware, every gate exists physically and operates in parallel.
- Concurrency: Real hardware components all work simultaneously, requiring you to think about clock cycles, propagation delays, and race conditions.
- Simulation: HDLs let us simulate, verify, and catch logic flaws in a design before synthesizing to silicon.
2. Verilog
Verilog became the primary language of my internship. Over the course of the training, I learned how to:
- Write modular
moduledefinitions with clear inputs, outputs, and wire/reg declarations - Utilize dataflow, behavioral, and structural modeling styles
- Work with continuous
assignstatements, edge-triggeredalwaysblocks, and testbenchinitialblocks - Understand blocking (
=) vs. non-blocking (<=) assignments and why using non-blocking inside clocked sequential logic is non-negotiable - Design combinational circuits such as multiplexers (MUX), adders, encoders, and decoders
- Design sequential circuits such as D flip-flops, synchronous counters, shift registers, and memory units
- Model Moore and Mealy Finite State Machines (FSMs) with state transitions and reset logic
Here is an example illustrating how clean and concise a basic Verilog module is:
module and_gate (
input a,
input b,
output y
);
assign y = a & b;
endmodule
While small, the exact same structural thinking scales up to 32-bit ALUs, FIFOs, and full processor architectures.
3. Writing Testbenches and Waveform Simulation
Writing a design is only half the work. In real-world VLSI, verification accounts for more than 60% of the engineering effort. I learned to write self-checking testbenches, apply input clock and stimulus vectors, observe output waveforms using EDA tools, and debug timing discrepancies.
Reading waveform timing diagrams, identifying setup and hold violations, and tracing an unexpected glitch back to a single misconfigured sensitivity list was one of the most rewarding parts of the month.
4. Understanding the Full Chip Design Flow
Beyond writing RTL code, we received a comprehensive end-to-end overview of how a chip moves from concept to silicon:
- Specification: Defining architectural requirements, power budgets, and performance targets
- RTL Design: Describing microarchitecture and behavior in Verilog or SystemVerilog
- Functional Verification: Simulating testbenches, checking coverage, and verifying corner cases
- Logic Synthesis: Translating RTL into a technology-mapped gate-level netlist using cell libraries
- Physical Design (Backend): Floorplanning, power planning, placement, clock tree synthesis (CTS), and routing
- Signoff, Fabrication & Packaging: Design Rule Checking (DRC), tape-out to the foundry, manufacturing, wafer testing, and packaging
Seeing the complete pipeline helped me understand exactly where front-end RTL coding connects to physical manufacturing.
Key Takeaways
- Think in parallel: Hardware does not execute line-by-line. Everything happens concurrently on clock edges.
- Verification matters as much as design: A design that cannot be proven and verified will never make it to tape-out.
- Precision is paramount: A single unhandled state or improper assignment can trigger hardware deadlocks or catastrophic chip failures.
- Hands-on simulation beats rote theory: Digital logic concepts that felt abstract in classroom textbooks crystallized immediately when observing waveforms on a simulator.
Challenges I Faced
Moving from a software mental model to a hardware description mindset was challenging at first. Grasping continuous assignments, non-blocking clock-edge semantics, and propagation delays required rewiring how I thought about code execution.
Debugging waveforms also demanded patience—you cannot simply drop a console.log into silicon; you must analyze timing graphs and signal transitions. But resolving each bug built an intuitive understanding of digital electronics.
Gratitude
I am deeply grateful to the trainers and staff at CTTC Bhubaneswar for their structured curriculum, patient mentorship, and commitment to providing a hands-on learning environment.
I also want to thank my fellow interns for the collaborative problem-solving sessions, lively technical debates, and shared camaraderie throughout this intensive summer training.
What's Next?
This internship has solidified my interest in digital systems and computer architecture. My immediate roadmap includes:
- Building more complex digital blocks in Verilog, including ALUs, circular FIFOs, and a RISC-V pipelined core
- Exploring SystemVerilog and modern functional verification methodologies
- Experimenting with FPGA synthesis on Xilinx / Intel boards
- Continuing to track emerging developments across the semiconductor and chip fabrication landscape
Conclusion
One month was enough to fundamentally change how I look at everyday electronics. From logic gates to HDL modeling and the complete RTL-to-GDSII flow, my CTTC Bhubaneswar internship gave me both foundational competence and genuine excitement for the semiconductor domain.
If you are an engineering student considering a VLSI or hardware internship, my advice is simple: dive in, stay curious, and don't hesitate to debug every waveform.

