This project is aimed at simulating a fictional processor architecture using Java. You will explore different architectural paradigms and implement a processor package based on the selected design specifications. This includes simulating the Von Neumann architecture among others, with a focus on understanding the execution of instruction lists, manipulation of data values, and control of program flow.
The simulation involves detailed processor packages that describe different memory architectures, instruction set architectures, and data paths. These packages dictate how instructions are fetched, decoded, executed, and how data flows through the system.
This project is designed to provide practical exposure to:
- Processor Architecture Design: Understanding the intricacies of different architectural models.
- Instruction Set Design: Crafting and utilizing various instruction formats for computational tasks.
- Simulation of Computational Processes: Implementing and visualizing the flow of data and instructions within a processor.
- Multiple Architecture Simulations: Includes Spicy Von Neumann, Double McHarvard, and other fictional architectures.
- Comprehensive Instruction Sets: Supports various operations including arithmetic calculations, logical functions, and memory operations.
- Pipelined Execution: Simulates a realistic processor pipeline to optimize instruction processing.
- Detailed Memory Architecture: Each package comes with a predefined memory layout specifying the use of memory for instructions and data.
- Diverse Instruction Formats: Supports R-Format, I-Format, and J-Format instructions, catering to different operation needs.
- Simulated Processor Pipeline: Visualizes how multiple instructions are processed in parallel stages within the processor.
To set up and run the processor simulation, follow these steps:
- Clone the repository:
git clone https://github.com/yourusername/processor-simulation-project.git
- Navigate to the project directory:
cd processor-simulation-project
- Compile the Java application (Ensure Java is installed):
javac ProcessorSimulation.java
- Run the simulation:
java ProcessorSimulation
- Select a Processor Package: Choose one of the predefined packages based on the required simulation.
- Load Instructions: Input the assembly-like instructions into the system as per the format defined in the chosen package.
- Execute and Monitor: Run the simulation to see the instruction processing, pipeline execution, and changes in memory and registers.
Contributions to extend the instruction set, enhance the simulation environment, or improve the pipeline efficiency are welcome. Please feel free to fork the project, make improvements, and submit pull requests.
This software is licensed under the MIT License - see the LICENSE.md file for details.
This README provides a comprehensive overview of the processor simulation project, its goals, how to set it up, and how to use it effectively. Adjust the specific details or links to match your actual project implementation and repository location.