Skip to content

My implementation of CORDIC algorithm in RISC-V assembly ๐Ÿงฎ๐Ÿ”ข โ€” a project for the Computer Architecture Lab at Warsaw University of Technology (WUT) ๐ŸŽ“. This project showcases the CORDIC algorithm's implementation and its application in RISC-V assembly language. ๐Ÿ’ป๐Ÿš€

License

Notifications You must be signed in to change notification settings

Kerciu/cordic-risc-v

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

25 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ”ข RISC-V CORDIC Algorithm

My implementation of the CORDIC algorithm in RISC-V assembly, a project subject for Computer Architecture Lab, WUT. ๐Ÿ“๐Ÿ–ฅ๏ธ

In this project, you'll find the CORDIC algorithm implemented in Python, C, and RISC-V. ๐Ÿ๐Ÿ’ป๐Ÿ”ข

๐Ÿ“š Project Description

The CORDIC (COordinate Rotation DIgital Computer) algorithm is used for various computations including trigonometric functions. ๐Ÿงฎ

๐Ÿ› ๏ธ Implementation Languages

  • Python: A high-level implementation for easy understanding and validation. ๐Ÿ
  • C: A low-level implementation that provides insights into performance optimization. ๐Ÿ’ป
  • RISC-V Assembly: A hardware-oriented implementation to demonstrate how the algorithm operates at the assembly level. ๐Ÿ› ๏ธ

๐Ÿ“ Project Structure

  • CORDIC-PYTHON/ - Python implementation of the CORDIC algorithm.
  • CORDIC-C/ - C implementation of the CORDIC algorithm.
  • CORDIC-ASM/ - RISC-V assembly implementation of the CORDIC algorithm.

๐Ÿš€ Usage

  1. Python Implementation:

    • Navigate to the python/ directory and run:
      python cordic.py
  2. C Implementation:

    • Navigate to the c/ directory and compile the code:
      gcc -o CORDIC CORDIC.c
    • Run the compiled program:
      ./CORDIC
  3. RISC-V Assembly Implementation:

    • Navigate to the CORDIC-ASM/ directory and assemble the code.

๐Ÿ“ Notes

  • Ensure you have the necessary compilers and tools installed for Python, C, and RISC-V assembly.
  • For RISC-V, you might need an emulator (like "RARS" simulator) or hardware that supports RISC-V instructions.

๐Ÿ“œ License

This project is licensed under the MIT License. See the LICENSE file for details. ๐Ÿ“œ

๐Ÿ“ฌ Contact

For questions, feedback, or support, feel free to reach out:

For issues, please open a GitHub Issue. ๐Ÿš€


About

My implementation of CORDIC algorithm in RISC-V assembly ๐Ÿงฎ๐Ÿ”ข โ€” a project for the Computer Architecture Lab at Warsaw University of Technology (WUT) ๐ŸŽ“. This project showcases the CORDIC algorithm's implementation and its application in RISC-V assembly language. ๐Ÿ’ป๐Ÿš€

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published