Tuesday, June 4, 2013

Arithmetic Circuits on FPGA

Exercises to do in VHDL

1) Write code for 4x4 Array Multiplier in VHDL, serial multiplier in VHDL
2) Write code to check for sequence in VHDL
3) Write code for bubble sort in VHDL
4) VGA output in 7 slices

FPGA Interview Questions

1. I found some good VLSI questions at this website
        - Design full adder using half adder
2. What are gray codes?
3. What is Gray Code Counter, Binary Counter, Johnson Counter, Ring Counter?
4. What is a Linear Feedback Shift Register (LFSR) and where is it used?
5. What are the advantages of gray code counter?
6. Write code for 4-bit adder in VHDL with carryin, carryout and arithmetic overflow
advanced: Arithmetic Overflow detection code
7. How do you design 3-bit comparator if a and b are signed numbers?
8. Make a digital circuit that takes a BCD digit as input and produces the output that is equal to 5 times the digit in same format. Soln:
9. What are the different type of overloading in VHDL? Soln:
Ans: Literal Overloading, Operator Overloading, Subprogram Overloading
10. Why are multiplexers typically designed with 2^N inputs?
Ans: This is because "select input" pins of multiplexer requires log (inputs).
11. Draw circuit for building 4:1 multiplexer using 2:1 multiplexer?
12. What is Shannon's Expansion Theorem?
13. What is one-hot encoding? Hint: Decoder Output
14. What are static hazards and dynamic hazards?
15.What does NULL in case statement do?


Questions at other websites:
1. http://www.vlsibank.com/sessionspage.asp?titl_id=6069
2. http://electronicsbus.com/vlsi-jobs-fpga-design-jobs-vhdl-interview-questions/

Monday, June 3, 2013

Web Classes on FPGA and VHDL

1) Class at UCR
2) Class at NYU
3) Class at WPI
4) Advanced FPGA Class at WPI
5) Digital Logic Lab at SUNY
6) CSE45208 at SUNY
7) EECS150: Components and Design Techniques for Digital Systems (UC Berkeley)
8) CS150: FPGA Course at UC Berkeley by Ed Aalon
9) EE458/478: HDL Based Digital Design with Programmable Logic (Second Course)
10) EE459/500: HDL Based Digital Design with Programmable Logic (Latest Version)
11) FPGA and ASIC Design with VHDL (George Mason Univeristy)
12) Introductory Digital Systems Lab at MIT 
13) EE762: Theory and Design of Computers
14) ECT 466: Microcomputer Architecture (Good Exercises using Microblaze)
15) ECEN 449: Microprocessor System Design (Xilinx Embedded and Linux Programming)
16) ECEN427 at BYU (DMA and FPGA)
17) CS352H @ UT Austin
18) MIT Lab Kit (Additional Examples to Play)

VHDL Resources

Book References

1) Rapid Prototyping of Digital Systems, by Hamblen, James etal. Springer 2008 (online link)
2) Digital Design: Principles and Practices Package by Wakerly (Amazon Buy Link)


Online References

1) Good website on VHDL Projects and Tutorials
John's FPGA Page

2) Good VHDL Power Point Tutorials
CENG340

3) Good website on VHDL Testbenches and Verification
Stefan's webpage

4) Good VHDL website for beginners
Ask AdamVHDL

5) Green Mountain VHDL Tutorial

4) Another good blog on VHDL and FPGA: noasic.com

5) FPGA FAQs

Video Tutorial References

1. https://www.youtube.com/watch?v=UJlgND6sWHk&list=PLB0255B9D637FF445
2.

Saturday, June 1, 2013

Books on Digital Design, FPGA and VHDL

I have started compiling list of books I found that were enjoyable for digital design.

1) Digital Design by Morris:
I found that this book very useful to build basic digital design skills before starting off VHDL.

The chapters on Karnaugh Map were  very useful. I will be reading some more chapters soon...

2) Digital Electronics: A Practical Approach with VHDL (Bill Klietz)
You can find his videos on youtube also.
http://www.amazon.com/Digital-Electronics-Practical-Approach-VHDL/dp/0132543036

3) Design Recipes for FPGAs: Using Verilog and VHDL (Peter Wilson)
Discusses Cameralink

TestBenches

1. Writing Testbenches: Functional Verification of HDL Models (Janick Beregeron)

Additional Books to read:

1) Digital Electronics and Design with VHDL by Pedroni
The preview shows that State Machines were simplified. Any book which simplifies State Machines in VHDL are books of ineterest for me.

2) Fundamental of Digital Logic Design with VHDL design (Stephen Brown)
Solution Manual
Seems to have similar content as Morris Mano

3) VHDL Coding Styles and Methodologies (Ben Cohen)

4) Digital Design and Computer Architecture (Harris and Harris)

4)  VHDL for logic synthesis (Andrew Rushton)

5) Essential VHDL: RTL Synthesis Done Right (Sundar Rajan)

6) Computer Arithmetic: Algortihms and Hardware Design (Behrooz Parhmani)
Behrooz Parmani's website

7) RTL Hardware Design using VHDL: Coding for Efficiency, Portability, Scalability (Pong P.Chu)

8) Reuse Methodology Manual for System-on-a-Chip Designs (Pierre Bricaud)

8)  Contemporary Logic Design (Randy H. Katz)

8) Computer Organization: The Hardware Software Interface (David Patterson)
9) M.J. Flynn, Computer Architecture: Pipelined and Parallel Processor Design
10) Architectures for Digital Signal Processing by Peter Pirsch

Digital Electronics Videos