Libre RISC-V Mailing list Archives (accessible via public-inbox)
 help / color / Atom feed
From: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
To: Libre-RISCV General Development <libre-riscv-dev@lists.libre-riscv.org>
Subject: Re: [libre-riscv-dev] memory interface diagram woes
Date: Tue, 28 Apr 2020 16:28:43 +0100
Message-ID: <CAPweEDzavTqZ-_cw7BtHNHwnAHXjJX=xC29cX9cY4cRWTnerUQ@mail.gmail.com> (raw)
In-Reply-To: <CAPweEDw4Hdq5JHQxtkcXzY8h7A=m2yUvcBOkjoTpC8uKRgnojA@mail.gmail.com>

https://libre-soc.org/3d_gpu/ld_st_comp_unit.jpg

okaaaaay, finally.  (btw don't tell no-one i watch American Ninja
Warrior re-runs whilst drawing these).

there's three modes:

* LD mode - OP1 READ, OP2 WRITE, memory read
* LD-UPDATE mode - OP1 READ *and* WRITE, OP2 WRITE
* ST mode - OP1 READ, OP2 READ, memory write

notes:

* ALU and ADR latch covers the case where the Adder only triggers
"result ok" for 1 cycle, latching the output EA (effective address)
indefinitely, where ALU-SR's job is to signal that the address is
ready.  the two separate latches are because you musn't de-latch the
address from the LD/ST-Port just because GoAddr acknowledgement
occurred

* likewise LD-sr latches on "LD_OK" and captures the LD Data output
from the LD/ST-Port, where the WR-sr latch reacts differently.  i am
not entirely certain that two separate latches are needed here, to be
honest, however i believe it is "safe" to have them separate.

* SHADOW_N stops all write activity until it is *definitely* known
that the possibility for exceptions has passed.  this is *the* reason
why we can do a full O-o-O design with "precise exceptions": something
that the "Academic" literature does *NOT* recognise as being possible
with a 6600-style architecture.

l.

_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev

  parent reply index

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-23  6:49 Jacob Lifshay
2020-04-23  9:02 ` Luke Kenneth Casson Leighton
2020-04-23 10:29   ` Luke Kenneth Casson Leighton
2020-04-23 14:37     ` Luke Kenneth Casson Leighton
2020-04-26 12:27 ` Luke Kenneth Casson Leighton
2020-04-27  6:06   ` Jacob Lifshay
2020-04-27 10:07     ` Luke Kenneth Casson Leighton
2020-04-27 10:25       ` Luke Kenneth Casson Leighton
2020-04-27 12:38         ` Luke Kenneth Casson Leighton
     [not found]           ` <CAPweEDwtjksKH3odd0gfeBbLhVVPm=KD3auoihJq4X+-ROOg6g@mail.gmail.com>
2020-04-28 13:33             ` whygee
2020-04-28 14:26               ` Luke Kenneth Casson Leighton
2020-04-28 14:38                 ` Jacob Lifshay
2020-04-28 14:43                   ` Luke Kenneth Casson Leighton
2020-04-28 14:53                     ` [libre-riscv-dev] circuitjs Jacob Lifshay
2020-04-28 15:03                       ` Luke Kenneth Casson Leighton
2020-04-28 15:10                         ` Jacob Lifshay
2020-04-28 15:35                           ` Luke Kenneth Casson Leighton
2020-04-28 19:37                             ` [libre-riscv-dev] HTTaP and Design for Test (was Re: circuitjs) whygee
2020-04-28 19:10                       ` [libre-riscv-dev] circuitjs whygee
2020-04-28 15:28                     ` Luke Kenneth Casson Leighton [this message]
2020-04-28 16:30                       ` [libre-riscv-dev] memory interface diagram woes Luke Kenneth Casson Leighton
2020-04-29 15:10                         ` Luke Kenneth Casson Leighton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAPweEDzavTqZ-_cw7BtHNHwnAHXjJX=xC29cX9cY4cRWTnerUQ@mail.gmail.com' \
    --to=lkcl@lkcl.net \
    --cc=libre-riscv-dev@lists.libre-riscv.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Libre RISC-V Mailing list Archives (accessible via public-inbox)

Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev

Example config snippet for mirrors


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git