You can find everything you need in this repository, which is organized in subfolders. In each subfolder you'll find a pdf file with the original requirements of the lab.
- Editor: EMACS
- Simulators: GHDL and Mentor Graphics Modelsim
- Synthesizers: Synopsys Design Compiler/Design Vision
- Physical Implementation: Cadence Innovus
Setup & First VHDL simulations and syntheses.
- Simulating a MUX
- Synthesis of the MUX
> Achieved grade: A
Parametric VHDL and Synthesis
- D Flip-Flop
- Generic MUX
- RCA
- Accumulator
- ALU
> Achieved grade: A
Hierarchical Arithmetical Blocks
- Pentium 4 Adder (Sparse Tree Carry Generator and Carry Select-like Sum Generator)
- Parallel Multiplier based on Booth's algorithm
> Achieved grade: A
Behavioral and structural sequential blocks
- Behavioral Register File
- Windowed Register File
- Synthesis of a SI-PI-SO-ALU
> Achieved grade: A
Control Units
- Datapath Structure
- Hardwired Control Unit
- FSM Control Unit
- Micro-Programmed Control Unit
- Odd Parity Checker
> Achieved grade: A
Deep in a CMOS structure: using SPICE for characterizing cells
- Characterizing a library gate
- Characterizing a gate for output load
- Characterizing a gate for transition time
- Comparing different gate sizing
- Comaring high spedd and low leakage optimizations
- Characterizing a Flip-Flop
> Achieved grade: A
Physical Design: standard-cells based layout
- Physical design of the Ripple Carry Adder
- Physical design of the Pentium 4 Adder
- Physical design of the Booth's Multiplier
> Achieved grade: A
Please, refer to the badges "development
" you can find at the top of each README, here's some additional infos:
This means I'm currently enhancing/fixing the project. I'm open to suggestions and Pull Requests, that will be treated as soon as possible.
This means I'm currently not considering the project as a top priority, hence issues and Pull Request will be still treated, but with higher delays. The development status can reach a higher priority ("Ongoing") or a lower one "Stopped" at any time.
This means I'd prefer to consider this project abandoned. I could reconsider this development status only if some really big opportunities present itselves and really worth the effort. Issues and PR will be probably read but not considered.
As a general rule, take in mind that my entire GitHub profile (themes included!) is based on my sparse time and it is mainly passion-driven. As for now, my number one priority is finishing my Master's Degree in Embedded Systems: don't panic if I cannot reply to your issue even after a week, I'm probably really busy and I'm making already restless nights.
All the source code related to this repo is released under the GPLv3 license