Tejas Architectural Simulator

The Tejas architectural simulator can be used to simulate complex multicore processors, memory hierarchies, and complex NOCs. It has already been used in numerous research papers, and has been used to teach a class in high performance computer architecture with 100 students for the last two years. Unlike other simulators it is written in Java, and it uses Java's unique features to provide a very user friendly environment. Alternative versions of Tejas include a GPU simulator, a Java byte code simulator, and a parallel version of Tejas. Please visit the site for more information. Tejas site

ARM Simulator : EmuArm

EmuArm (version 1.0) : Software, Manual , README file , Source code
EmuArm is a graphical ARM and Thumb ISA emulator. It can be used to write, execute, and debug simple programs written in the ARM assembly language. See screenshot. It now has a fully functional command line mode also (see the README file).

File Systems

UsiFe (GPL v2 License): Software
This is a flexible file system that runs on Linux. It allows intra file encryption. It is possible to selectively encrypt/decrypt parts of a file and then display them based on the keys that the user has. The file system has a built in programming interface that patches standard file system calls to incoroporate the extra encryption information. The package contains a user manual. For additional information, the user can refer to our research paper.

UsiFe (GPL v2 License): Open Office Extension , source
This is an Open Office Presentation Extension that adds support for selectively encrypting specific slides in a presentation. In specific, it is possible to hide a set of slides from a given user, and make them visible to another user. It depends on the set of keys that are associated with a user's role.


This is an optical simulation tool kit that contains reference designs for a set of passive optical components -- Y junction, MMI (multi mode interference coupler), directional coupler, ring resonator, and waveguide bend. All the designs can be simulated using the Synopsys RSoft optical simulation toolkit. The technical report describing the designs and thumb rules can be found here .

This is a very flexible and generic python script for plotting bar charts. In specific, it has good support for plotting grouped and stacked bar charts. Modify all the parameters after the line "TO BE MODIFIED". In specific, enter the input file name, number of horizontal and vertical elements, labels for the axes, and the tic intervals. The user would need to install the pychart package. This can be found here.

PDFRename: Source, Windows installer Linux installer
When we download a research paper it typically has a very cryptic name. Often the name of the file does not give any indication of the type of the paper, its year of publication or its venue. pdfrename intelligently changes the name of the file to the following format: <year>_<venue>_<last name of first author>_<relevant part of title>.pdf
Done by: Mukul Kaushik (II year student, Thapar Institute)