Skip to content

Conversation

@uslsteen
Copy link
Contributor

This MR introduces a header-only page memory implementation with a strict separation of concerns through dedicated Page and PageConfig abstractions.
The implementation provides flexible, configurable virtual memory management with support for various page sizes and address space configurations.

template <std::uint64_t PageBits, std::uint64_t AddrBits>
class PageMemConfig final {

template <PageMemConfigConc PageMemConfigT> class PageMemory : public Memory {

In memory/include/prot/page.hh

  • Page class - Encapsulates individual memory page operations with bounds checking.
  • PageConfig template - Defines page parameters.

In memory/include/prot/page_memory.hh

  • PageMemConfig template - Combines page configuration with address space parameters.
  • PageMemory class - Main memory interface implementing the base Memory abstract class.

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.

2 participants