Skip to content

Add resume groups.#506

Merged
Tim Newsome (timsifive) merged 2 commits into
masterfrom
resumegroup2
Dec 10, 2019
Merged

Add resume groups.#506
Tim Newsome (timsifive) merged 2 commits into
masterfrom
resumegroup2

Conversation

@timsifive

Copy link
Copy Markdown
Contributor

Mostly inspired by e-mail discussion with Subject:"resume groups in
addition to halt groups".

Mostly inspired by e-mail discussion with Subject:"resume groups in
addition to halt groups".
@timsifive

Tim Newsome (timsifive) commented Dec 3, 2019

Copy link
Copy Markdown
Contributor Author

markuslauterbach

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I left a couple of comments in the code. Additionally,

  • What should happen when a hart receives simultaneous halt and resume because of two different groups? In dmcontrol, the spec says that resumereq is ignored when haltreq is set, so should the halt prevail in this case? I think so...

Comment thread xml/dm_registers.xml Outdated
The triggers referred to in \FdmDmcsTwoExttrigger might be the same,
or might be completely separate sets, because it is not generally
useful to automatically halt some cores when other cores resume
or vice versa.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This could probably be phrased better. I think you are saying that the external triggers available to add to halt groups may or may not be distinct from the external triggers available to add to resume groups. In other words, external trigger 0 for halt groups might not be the same as external trigger 0 for resume groups.

Comment thread xml/dm_registers.xml Outdated
An implementation may tie any number of upper bits in this field to
0. If halt groups aren't implemented, then this entire field
is 0.
0. If groups aren't implemented, then this entire field is 0.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Should we specifically state that the number of halt groups need not be equal to the number of resume groups? For example, writing a value of 2 in the "group" field might be legal if "grouptype" is being written to 0 but not if "grouptype" is being written to 1. Maybe the "WARL" is sufficient for the spec but in this case, it's not just this field alone that's WARL - the legal values for this field depend on other fields.

@timsifive

Copy link
Copy Markdown
Contributor Author

I've addressed Ernie Edgar (@ernie-sifive)'s comments above. I didn't explicitly add lines saying what happens if halt/resume happen at the same time, but I stuck with the "process of halting"/"process of resuming" language. Does that work?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Looks good to me.

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