VHDL Digital Design Samples Documentationο
A comprehensive collection of VHDL designs for digital circuits, organized by category and featuring a complete test suite with automated CI/CD.
Welcome to the VHDL Digital Design Samples repository! This project provides a structured collection of VHDL implementations covering fundamental digital logic concepts from basic gates to complex sequential circuits.
π Quick Startο
Getting Startedο
Clone the repository:
git clone https://github.com/shishir-dey/vhdl-samples.git cd vhdl-samples
Install GHDL:
On macOS:
brew install ghdl
On Ubuntu/Debian:
sudo apt-get install ghdl
Run the complete test suite:
make test
π Documentation Contentsο
Getting Started:
Component Documentation:
Testing & Verification:
Development:
Reference:
ποΈ Project Architectureο
The project is organized into logical categories:
graph TD A[VHDL Digital Design Samples] --> B[Basic Gates] A --> C[Combinational Logic] A --> D[Sequential Logic] A --> E[Complex Modules] B --> B1[OR Gate] B --> B2[XOR Gates] C --> C1[Adders] C --> C2[Decoders] C --> C3[Multiplexers] C --> C4[Comparators] C --> C5[Shifters] D --> D1[Flip-Flops] D --> D2[Latches] D --> D3[Registers] D --> D4[Counters] D --> D5[State Machines]π§ͺ Test Coverageο
Current test coverage includes:
β Basic Logic Gates (2/3 components)
β Combinational Circuits (4/19 components)
β Sequential Circuits (2/10 components)
π Counters and State Machines (in progress)
Total: 8 tests passing (100% success rate)
π Project Statisticsο
Category |
Source Files |
Test Files |
Description |
---|---|---|---|
Gates |
3 |
2 |
Basic logic gates |
Combinational |
19 |
4 |
Combinational logic circuits |
Sequential |
10 |
2 |
Sequential logic circuits |
Total |
32 |
8 |
All components |
π― Learning Objectivesο
This repository demonstrates:
Multiple VHDL Modeling Styles: Behavioral, Dataflow, and Structural
Industry Best Practices: Proper coding standards and documentation
Comprehensive Testing: Assertion-based testbenches with full coverage
Professional Workflow: CI/CD with automated testing and documentation
Modular Design: Organized, reusable components
π€ Contributingο
We welcome contributions! Please see our Contributing Guide guide for details on:
Setting up the development environment
Running tests locally
Submitting pull requests
Code review process
π Licenseο
This project is licensed under the MIT License - see the License file for details.