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

Add memory ordering instruction FENCE #464

Merged
merged 1 commit into from
Jun 28, 2024
Merged

Conversation

ChinYikMing
Copy link
Collaborator

The RV32I memory ordering instruction FENCE is used to order device I/O and memory accesses as viewed by other RISC-V harts and external devices or coprocessors. Linux kernel leverage this instruction for synchronization, support emulating this instruction is needed to boot Linux kernel. The implemention of this instruction is straight forward since there is only single hart at present.

Related: #310

Copy link
Contributor

@jserv jserv left a comment

Choose a reason for hiding this comment

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

Benchmarks

Benchmark suite Current: 50bc9d8 Previous: ebe8a63 Ratio
Dhrystone 5 Average DMIPS over 10 runs 5.22 Average DMIPS over 10 runs 1.04
Coremark 0.004 Average iterations/sec over 10 runs 0.004 Average iterations/sec over 10 runs 1

This comment was automatically generated by workflow using github-action-benchmark.

The RV32I memory ordering instruction FENCE is used to order device
I/O and memory accesses as viewed by other RISC-V harts and external
devices or coprocessors. Linux kernel leverage this instruction for
synchronization, support emulating this instruction is needed to boot
Linux kernel. The implemention of this instruction is straight
forward since there is only single hart at present.

Related: sysprog21#310
@jserv jserv changed the title Add RV32I memory ordering instruction FENCE Add memory ordering instruction FENCE Jun 28, 2024
@jserv jserv merged commit 4ad4f43 into sysprog21:master Jun 28, 2024
8 checks passed
@jserv
Copy link
Contributor

jserv commented Jun 28, 2024

Thank @ChinYikMing for contributing!

@ChinYikMing ChinYikMing deleted the fence branch June 29, 2024 04:20
@jserv jserv added this to the release-2024.1 milestone Aug 7, 2024
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