Skip to content

Better directory structure for docs - reorganize documentation and streamline README#20

Merged
helium729 merged 3 commits intomainfrom
copilot/fix-19
Jun 14, 2025
Merged

Better directory structure for docs - reorganize documentation and streamline README#20
helium729 merged 3 commits intomainfrom
copilot/fix-19

Conversation

Copy link
Contributor

Copilot AI commented Jun 14, 2025

This PR addresses the documentation organization issues identified in the repository by creating a proper directory structure and streamlining the root README.md.

Changes Made

📁 Created organized documentation structure

  • New docs/ directory with logical subdirectories:
    • docs/architecture/ - Architecture and design documentation
    • docs/extensions/ - Extension-specific documentation
    • docs/testing/ - Test guides and references

📝 Moved scattered documentation files

  • COMPLETE_PROGRAM_TESTS.mddocs/testing/complete-program-tests.md
  • CONFIGURATION_TESTING.mddocs/testing/configuration-testing.md
  • C_EXTENSION.mddocs/extensions/c-extension.md
  • TESTS.mddocs/testing/instruction-tests.md
  • sim/README.mddocs/testing/simulation.md

🎯 Streamlined root README.md

  • Reduced from 276 lines to 133 lines (52% reduction)
  • Focused on essential information: key features, architecture overview, quick start
  • Improved discoverability: clear links to detailed documentation
  • Added missing architecture section: comprehensive processor architecture overview
  • Better visual organization: badges, emojis, structured sections

📋 Added documentation navigation

  • Created docs/README.md as documentation index
  • Added docs/architecture/overview.md with detailed processor architecture
  • Updated cross-references between documentation files

Before & After

Before: Documentation scattered across root directory, 276-line README with excessive detail obscuring the project's purpose

After: Clean root directory with organized docs structure, concise README focusing on architecture and getting started

Repository Structure

vigna/
├── vigna_core.v              # Main processor RTL
├── vigna_coproc.v           # Coprocessor for M extension
├── vigna_conf*.vh           # Configuration files
├── vigna_axi.v              # AXI4-Lite bus adapter
├── Makefile                 # Build system
├── docs/                    # 📁 Documentation
│   ├── architecture/        # Architecture and design docs
│   ├── extensions/          # Extension documentation  
│   └── testing/             # Test guides and references
├── sim/                     # 🧪 Test suite and testbenches
├── programs/                # 📝 C test programs
└── tools/                   # 🛠️ Utility scripts

The documentation now provides a much clearer entry point for users while maintaining all detailed information in an organized, discoverable structure.

Fixes #19.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

…mline README.md

Co-authored-by: helium729 <30749877+helium729@users.noreply.github.com>
Copilot AI changed the title [WIP] Better directory structure for docs Better directory structure for docs - reorganize documentation and streamline README Jun 14, 2025
Copilot AI requested a review from helium729 June 14, 2025 11:34
@helium729
Copy link
Owner

Add documentations for other supported extensions like M and Zicsr, also write about interrupts @copilot

…dling

Co-authored-by: helium729 <30749877+helium729@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jun 14, 2025

Add documentations for other supported extensions like M and Zicsr, also write about interrupts @copilot

Added comprehensive documentation for M extension, Zicsr extension, and interrupt handling. Created:

  • docs/extensions/m-extension.md - Complete M extension implementation with multiply/divide instructions
  • docs/extensions/zicsr-extension.md - CSR instruction set and machine-level CSR reference
  • docs/architecture/interrupts.md - Interrupt handling architecture with hardware interrupt sources and CSR-based management

All documentation includes implementation details, configuration examples, and programming guidance. Commit: c05e676

@helium729 helium729 marked this pull request as ready for review June 14, 2025 12:23
Copilot AI review requested due to automatic review settings June 14, 2025 12:23
@helium729 helium729 merged commit 4d447da into main Jun 14, 2025
1 check passed
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR reorganizes the project's documentation by introducing a structured docs/ directory, relocating existing documentation files into appropriate subdirectories, and condensing the root README.md to focus on key information.

  • Created a clear directory layout under docs/ with subdirectories for architecture, extensions, and testing
  • Moved legacy documentation files into the new docs/ hierarchy
  • Streamlined the top-level README.md and added a dedicated docs/README.md as an entry point

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated no comments.

Show a summary per file
File Description
docs/testing/simulation.md Updated step wording to refer to the project root directory
docs/extensions/zicsr-extension.md Added detailed Zicsr extension implementation document
docs/extensions/m-extension.md Added detailed M extension implementation document
docs/architecture/overview.md Added high-level processor architecture overview
docs/architecture/interrupts.md Added comprehensive interrupt handling documentation
docs/README.md Created documentation index with links to subdirectories
README.md Condensed root README and updated integration examples
Comments suppressed due to low confidence (3)

docs/README.md:12

  • [nitpick] The term 'Compact instruction extension' could be misleading. Consider using 'Compressed instruction extension' to align with the official RISC-V naming for the C extension.
- [C Extension](extensions/c-extension.md) - RISC-V Compact instruction extension support

README.md:39

  • [nitpick] The '+Zicsr' label in the configuration table may be ambiguous; consider renaming it to 'Zicsr Extension' or integrating it as a column header for clarity.
| +Zicsr        | Any  | Any      | Any        | Any       | ✓   |

README.md:106

  • The port name '.reset' does not match the earlier interface which uses '.resetn'. Update this to '.resetn(resetn)' to match the actual signal name.
.reset(reset),

@helium729 helium729 deleted the copilot/fix-19 branch June 15, 2025 08:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Better directory structure for docs

2 participants