Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to add extra memory to proessor #439

Open
karegoud opened this issue Jan 14, 2025 · 5 comments
Open

How to add extra memory to proessor #439

karegoud opened this issue Jan 14, 2025 · 5 comments

Comments

@karegoud
Copy link

I want to add additional memory in the VexRiscv for particular application and want to create custom instruction that can access this additional memory [address for which will be stored in the instruction]. Is there any plugin or example which an guide me.

@Dolu1990
Copy link
Member

Hi,

Hmm, there isn't a good example for something like that.
There is the AES custom instruction which embed some ROM to process things :

case class AesPlugin(encoding : MaskedLiteral = M"-----------------000-----0001011") extends Plugin[VexRiscv]{

But nothing with writes into a ram.

@karegoud
Copy link
Author

I have reviewed the AES plugin, but it doesn't align with my needs. When VexRiscv performs load and store operations, it requires access to memory. How is this memory connected to the processor, and how can I add additional memory that I can access through my custom instruction? If you have any insights or suggestions, please let me know.

@Dolu1990
Copy link
Member

When VexRiscv performs load and store operations, it requires access to memory

It access some external memory, this shouldn't be used as a reference as your case it to have very thightly coupled memory inside the CPU right ?

@karegoud
Copy link
Author

  1. yes, I want tightly coupled memory inside CPU. Any references that might help me on how to add this tightly coupled memory[TCM] and can be used by custom instruction.
  2. How and where to setup the address space for this newly added TCM in Vexriscv
  3. Is there any example in repository that has used data cache already present in the repo ?

@Dolu1990
Copy link
Member

There is no reference for that

One thing, maybe your memory should more be seen like a custom register file instead of a TCM ?

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

No branches or pull requests

2 participants