[libre-riscv-dev] [hw-dev] Re: 6600-style out-of-order scoreboard designs (ariane)

Luke Kenneth Casson Leighton lkcl at lkcl.net
Thu May 16 13:16:12 BST 2019


ah ha!  i think i have it.  figure 79, thornton.

this is the *read* flags setter, it is not clear if "request release"
in figure 79 means "READ request release" (probably is the most likely
answer, as separate and distinct from *write* release).

i believe, mitch, you call this "read pending".

what i think has happened is: the !GO_READ AND'ing in been missed out.

where there is the purple arrow, i believe this is meant to be an OR
of all the read pending flags, followed by ANDing with the *inverted*
Go_Read signal.

by having the Go_Read signal on a one-clock delay, this would, in
combination with the priority-picker, create a kind-of "rising edge
detection" on one *and only* one Go_Read signal at any one time.

which is very important, because without that, the priority picker can
get stuck permanently high.

does this make any sense?

l.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 2019-05-16_12-08.jpg
Type: image/jpeg
Size: 61052 bytes
Desc: not available
URL: <http://lists.libre-riscv.org/pipermail/libre-riscv-dev/attachments/20190516/1f495a15/attachment-0001.jpg>


More information about the libre-riscv-dev mailing list