Bug 839 - SVP64 / Extra-V / ZOLC whitepaper
Summary: SVP64 / Extra-V / ZOLC whitepaper
Status: RESOLVED FIXED
Alias: None
Product: Libre-SOC's first SoC
Classification: Unclassified
Component: Documentation (show other bugs)
Version: unspecified
Hardware: PC Linux
: --- enhancement
Assignee: Luke Kenneth Casson Leighton
URL: https://libre-soc.org/openpower/sv/Si...
Depends on:
Blocks: 243
  Show dependency treegraph
 
Reported: 2022-05-19 12:58 BST by Luke Kenneth Casson Leighton
Modified: 2022-07-23 14:31 BST (History)
2 users (show)

See Also:
NLnet milestone: NLNet.2019.10.046.Standards
total budget (EUR) for completion of task and all subtasks: 2000
budget (EUR) for this task, excluding subtasks' budget: 2000
parent task for budget allocation: 243
child tasks for budget allocation:
The table of payments (in EUR) for this task; TOML format:
vklr = { amount = 700, submitted = 2022-07-12, paid = 2022-07-22 } [lkcl] amount = 1300 submitted = 2022-06-16 paid = 2022-07-21


Attachments
800xNxbridge_phy svg image (36.13 KB, image/svg+xml)
2022-06-12 15:43 BST, Veera
Details
SVG vector img 20220509_161905 converted from jpg (67.41 KB, image/svg+xml)
2022-06-14 05:45 BST, Veera
Details
SVG vector img 20220614_122128 converted from jpg (22.95 KB, image/svg+xml)
2022-06-28 08:22 BST, Veera
Details
SVG vector img of matrix_svremap converted from jpg (25.26 KB, image/svg+xml)
2022-06-28 12:16 BST, Veera
Details
Updated 20220614_122128.svg with corrections (22.99 KB, image/svg+xml)
2022-06-29 01:03 BST, Veera
Details
Updated matrix_svremap.svg image with corrections (25.59 KB, image/svg+xml)
2022-06-29 01:06 BST, Veera
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Luke Kenneth Casson Leighton 2022-05-19 12:58:46 BST
documentation of the advanced capabilities planned for Simple-V to
do in-memory-processing and to be able to take on 3D, Video, AI, etc.
Comment 1 Luke Kenneth Casson Leighton 2022-05-19 13:00:44 BST
veera, in the URL you'll see a couple of images, these need to be done
as SVG diagrams.  i have one more i want to draw, but give me a bit of
time to do it.
Comment 2 Luke Kenneth Casson Leighton 2022-05-19 13:10:25 BST
i have a better version of the placeholder one with a lot of words on it.
https://ftp.libre-soc.org/20220509_161905.jpg

but because my writing is scraggly, the words are:

Loop
   Load/Inc
   TEST ZERO?
   MUL
   Store/Inc

* LOAD/STORE INC
 (Snitch Style)
* TEST-ZERO
 (EXTRA-V Style)
* LOOPS
 (ZOLC Style)

MEM   L1/L2 CPU REGFILE

MEM  PE PE-REG  L1/L2 (with a cross)   CPU   REGFILE (with a cross)

* PE runs ZOLC
  and Snitch style
* PE Sends via
  OpenCAPI to CPU,
  receives as well?

Main CPU
* OpenCAPI direct to CPU: Queues
  (Snitch Style)
* L1/L2 Not involved!
* Regfile NOT involved!
* CPU cound send direct to Memory?
  (depends on algorithm)


MEM    PE    PE Reg     CPU
                      (Coordinating
                       OpenCAPI

* CPU not idle:
  coordinating
  parallel procesing,
  Managing RADIX MMU
  of PEs


do try to also include a lot of colour in the blocks (MEM, PE, etc.):

* MEM should be one colour    (consistent)
* PE should be another colour (consistent)
* REGFILE another

etc. etc.
Comment 3 Veera 2022-06-12 15:43:42 BST
Created attachment 162 [details]
800xNxbridge_phy svg image

800xNxbridge_phy.svg vector image converted from png format.

Kindly review.
Comment 4 Veera 2022-06-14 05:45:25 BST
Created attachment 163 [details]
SVG vector img 20220509_161905 converted from jpg

Created SVG vector image of 20220509_161905 converted from jpg.

Kindly review.
Comment 5 Luke Kenneth Casson Leighton 2022-06-14 06:29:14 BST
(In reply to Veera from comment #4)
> Created attachment 163 [details]
> SVG vector img 20220509_161905 converted from jpg
> 
> Created SVG vector image of 20220509_161905 converted from jpg.
> 
> Kindly review.

those came out really well!
Comment 6 Veera 2022-06-14 08:47:28 BST
Uploaded SVG images:
 https://libre-soc.org/openpower/sv/bridge_phy.svg
 https://libre-soc.org/openpower/sv/zolc_svp64_extrav.svg

They are hand converted from original jpeg images.

Updated web page with these images:
 https://libre-soc.org/openpower/sv/SimpleV_rationale/

Kindly review.
Comment 7 Luke Kenneth Casson Leighton 2022-06-14 12:30:17 BST
looks great

new image, done just now:
https://ftp.libre-soc.org/20220614_122128.jpg

words:

Horizontal-First

setvl 8   (VL=8)
sv.addi 0.v, 0.v, 1
sv.muli 0.v, 0.v, 1

           Update Register Element order

Vertical-First
setvl 8   (VL=8)
sv.addi 0.v, 0.v, 1
sv.muli 0.v, 0.v, 1
svstep.
bc --->

and if you can space things out a bit, so the green arrows
between the Register updates (in red) are easy to follow?
use whatever style you think would be best, rather than
strictly follow what i did, ok?
Comment 8 Luke Kenneth Casson Leighton 2022-06-14 13:02:47 BST
https://ftp.libre-soc.org/matrix_svremap.jpg

words:

Matrix Schedule

svshape 2,2,3    (VL=12)
svremap 31,1,2,3
sv.fmadd 0.v, 8.v, 16.v, 0.v

A0 A1 A2
A3 A4 A5

B0 B1
B2 B3
B4 B5

 --------- ---------
|         |           |
| 0 + 4 + | 2  + 6 +  |
| 8 + 12  | 10 + 14   |
|         |           |
  --------+---------
|         |           |
| 1 + 5 + | 3  + 7 +  |
| 9 + 13  | 11 + 15   |
|         |           |
  -------- ---------


VL automatically set (to 12)

Schedule arranged
for best pipelining

0: r0 += A0 x B0
1: r2 += A3 x B0
2: r1 += A0 x B1
3: r3 += A3 x B1
4: r0 += A1 x B0
...
...
Comment 9 Luke Kenneth Casson Leighton 2022-06-14 13:22:41 BST
oh, i just spotted the word "DRAFT" in one of the images, can
you remove it?  the images were only "DRAFT" when JPGs.
Comment 10 Veera 2022-06-28 08:18:10 BST
(In reply to Luke Kenneth Casson Leighton from comment #9)
> oh, i just spotted the word "DRAFT" in one of the images, can
> you remove it?  the images were only "DRAFT" when JPGs.

Removed label 'DRAFT' from zolc_svp64_extrav.svg image.
Comment 11 Veera 2022-06-28 08:22:45 BST
Created attachment 164 [details]
SVG vector img 20220614_122128 converted from jpg

SVG vector image 20220614_122128 converted from jpeg.

Kindly review.
Comment 12 Luke Kenneth Casson Leighton 2022-06-28 09:57:23 BST
(In reply to Veera from comment #11)
> Created attachment 164 [details]
> SVG vector img 20220614_122128 converted from jpg
> 
> SVG vector image 20220614_122128 converted from jpeg.
> 
> Kindly review.

see https://ftp.libre-soc.org/20220614_122128.jpg

* 127 needs to be further over (in both cases)
* the numbers in black 0 1 2 3 4 5 ... 127 need to "line up" with
  the numbers in red   (below)
* sv.addi O.v needs to be sv.addi 0.v (number not the letter "O")
* the blue arrow goes from "bc" to "sv.addi" not from bc to setvl
Comment 13 Veera 2022-06-28 12:16:56 BST
Created attachment 165 [details]
SVG vector img of matrix_svremap converted from jpg

SVG vector image of matrix_svremap converted from jpeg.

Kindly review.
Comment 14 Luke Kenneth Casson Leighton 2022-06-28 12:44:17 BST
(In reply to Veera from comment #13)
> Created attachment 165 [details]
> SVG vector img of matrix_svremap converted from jpg
> 
> SVG vector image of matrix_svremap converted from jpeg.
> 
> Kindly review.

looks great, the box contents on the right needs to be:

 --------- ---------
|         |           |
| 0 + 4 + | 2  + 6 +  |
| 8 + 12  | 10 + 14   |
|         |           |
  --------+---------
|         |           |
| 1 + 5 + | 3  + 7 +  |
| 9 + 13  | 11 + 15   |
|         |           |
  -------- ---------
Comment 15 Veera 2022-06-29 01:03:05 BST
Created attachment 166 [details]
Updated 20220614_122128.svg with corrections

Updated 20220614_122128.svg with corrections listed in comment #12.

Kindly review.
Comment 16 Veera 2022-06-29 01:06:29 BST
Created attachment 167 [details]
Updated matrix_svremap.svg image with corrections

Updated matrix_svremap.svg image with corrections from comment #14.

Kindly review.
Comment 17 Veera 2022-06-29 01:08:42 BST
(In reply to Veera from comment #15)
> Created attachment 166 [details]
> Updated 20220614_122128.svg with corrections
> 
> Updated 20220614_122128.svg with corrections listed in comment #12.
> 
Suitable name for this image file?
Comment 18 Luke Kenneth Casson Leighton 2022-06-29 08:22:25 BST
(In reply to Veera from comment #15)

> Updated 20220614_122128.svg with corrections listed in comment #12.
> 
> Kindly review.

looks great.

(In reply to Veera from comment #16)

> Updated matrix_svremap.svg image with corrections from comment #14.
> 
> Kindly review.

sorry i made a mistake, the right-hand box needs to be:

 --------- ---------
|         |           |
| 0 + 4 + | 2  + 6 +  |
| 8       | 10        |
|         |           |
  --------+---------
|         |           |
| 1 + 5 + | 3  + 7 +  |
| 9       | 11        |
|         |           |
  -------- ---------

(In reply to Veera from comment #17)

> Suitable name for this image file?

sv_horizontal_vs_vertical.svg
Comment 19 Luke Kenneth Casson Leighton 2022-06-29 10:36:05 BST
moved to #878
Comment 20 Veera 2022-06-29 14:51:38 BST
Added images: https://libre-soc.org/openpower/sv/sv_horizontal_vs_vertical.svg
and https://libre-soc.org/openpower/sv/matrix_svremap.svg.

Corrected as per comment #18.

Updated page with above images:
 https://libre-soc.org/openpower/sv/SimpleV_rationale/

See and tell if it's OK!
Comment 21 Luke Kenneth Casson Leighton 2022-06-29 18:03:19 BST
(In reply to Veera from comment #20)

> Updated page with above images:
>  https://libre-soc.org/openpower/sv/SimpleV_rationale/
> 
> See and tell if it's OK!

looks fantastic, sorry about the mistake.
i added an extra EUR 300 budget if you want to
do the image of comment #19 ?