Skip to content

This repository consists of four homeworks that are associated with the course "CAD Algorithms". This course is a part of the undergraduate studies of University of Thessally - ECE Department located in Volos, Greece.

Notifications You must be signed in to change notification settings

panastasiadis/cad-algorithms-tcl-shell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Implementing CAD Algorithms on a TCL Shell using C and the TCL C API

Repository Overview

This repository consists of four homeworks associated with the course "CAD Algorithms". This course is a part of the undergraduate studies of University of Thessally - Electrical and Computer Engineering (ECE) Department located in Volos, Greece.

Link to the Department's official site: https://www.e-ce.uth.gr/?lang=en

Author

My name is Panagiotis Anastasiadis and these projects were assigned to me during the time of my undergraduate studies and the enrollment of the course "CAD Algorithms".

Please consider the following:

If there are any sights of bad practices or ambiguities regarding the file structure, code quality, the general development of the projects or the entire repo management, please mind that this work attempt to strictly focus on the course nature and fit the requirements for the assignments set by it. Also, consider the lack of expertise or experience that comes along during the time of undergraduate studies.

In any case, these projects do not represent professional work, rather an avocation with CAD Algorithms, Logical-Synthesis and the TCL C API.

Projects Overview

The four homeworks function properly as standalone programs, but as a whole they compose the development of a bigger project, which started from assignment one and the creation of a TCL Shell, continued with homeworks 2 and 3, where new features were added to the shell and reached its final form in homework 4 and the last requested features that were integrated to project. All these features are commands that implement CAD algorithms and are mostly related to Logical-Synthesis topic.

Homework 1 overview:

Implementation of a TCL shell in C language with the following features:

1. Tab completion
2. History
3. Basic os commands like ls, less

Homework 2 overview:

Addition of the following cube notation operations as commands to the existing TCL shell from homework 1:

1. Cube intersect
2. Supercube
3. Distance 
4. Cube cover
5. Sharp 
6. Sharp between a cube and a function.
7. OFF calculation.

Homework 3 overview:

Implementation of Static Timing Analysis by integrating the Longest Path Algorithm for a given graph as a command-feature into the shell. To achieve graphical illustration of the graph, a 3rd-party tool was used, named TCL graphiz.

Homework 4 overview:

Addition of the R_KERNELS (Recursive Kernels) and the Algebric Division algorithms as commands-feautures to the TCL Shell.

About

This repository consists of four homeworks that are associated with the course "CAD Algorithms". This course is a part of the undergraduate studies of University of Thessally - ECE Department located in Volos, Greece.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published