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

Remove ROM from platform #773

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from
Draft

Conversation

matthiasgoergens
Copy link
Collaborator

@matthiasgoergens matthiasgoergens commented Dec 18, 2024

(Extracted from the work on the Rust standard library support for guests.)

Previously we had machinery that makes sure that executable code and data memory do not overlap. But in a Harvard Archicture where code and data live in different address spaces anyway, that is not necessary.

(Our VM implements a Harvard Architecture. Our circuits have always implemented that archicture, and the emulator has recently followed suit.)

Note how this PR does not remove any checks or constraints from the circuits. Ie a sufficiently motivated and independent minded prover could have always done what this PR makes easier.

The entry point is a property of the program and can be found in the ELF.

Btw, as far as I can tell, we do not currently check in the circuits whether the execution actually starts with the entry point. Neither the entry point of the ELF nor the entry point of the Platform. (And that's true before and after this PR.)

Previously we had machinery that makes sure that executable code and
data memory do not overlap.  But in a Harvard Archicture where code and
data live in different address spaces anyway, that is not necessary.

(Our VM implements a Harvard Architecture.  Our circuits have always
implemented that archicture, and the emulator has recently followed
suit.)

Note how this PR does not remove any checks or constraints from the
circuits.  Ie a sufficiently motivated and independent minded prover
could have always done what this PR makes easier.
@matthiasgoergens matthiasgoergens marked this pull request as draft December 18, 2024 10:14
@matthiasgoergens
Copy link
Collaborator Author

Converted to draft because of some issues around JAL and JALR and wrap around.

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.

1 participant