2020#architecture#research#with#risc3v#and#chisel#parlab.eecs.berkeley.edu/sites/all/parlab/files/poster_0.pdf2020#architecture#research#with#risc3v#and#chisel#...

1
2020 Architecture Research with RISCV and Chisel Jonathan Bachrach, Scott Beamer, David Patterson, Krste Asanovic Yunsup Lee Andrew Waterman !"#$%$&"&$'( *+,-$.%, /+#0$&,#&1+, 2,3,"+#0 4$51%"&6+3 "+, 13,71% 76+ 5,"31+$'( #8#%, #61'&3913,%,33 76+ :6;,+< "+,"< #8#%, &$5, =1& 5$#+6"+#0$&,#&3 513& ."%"'#, "%% 67 &0,3,> ?,,- "' ,'-@&6@,'- +,3,"+#0 5,&06-6%6(8 &6 #%63, &0, 7,,-."#A %66:B B.1& &+"-$&$6'"% CD -,3$(' "::+6"#0,3 ;$&0 #655,+#$"% E4/3 "+, 7"+ &66 &,-$613 !"#$%& "#( #)*+,-.)/0*1+*2 34%5,) ,67)*89),06 :6902,6- #8;;0*)7 90<;*:77:2 :6902,6-7 +62 :=):62:2%>:6-). ,67)*89),067 !"# % &'( )*+, -./012' % !"#$%&'%( 345 )*"+ )*+ 5"%5 6%754.'8 197/.5%&5 2'5%1:8 /; 6/99'.61%: <'&'.%:= 74.7/8' )*+ 2'81<&8 %&2 5"%5 18 8415%3:' ;/. "%.2(%.' 197:'9'&5%51/&> -./012' % &,#$$ 345 (),*$"'" 3%8' )*+ 5"%5 %0/128 ?/0'.=%.6"15'651&<@ ;/. % 7%.5164:%. 91= 6./%.6"15'654.' 85#:' /. 197:'9'&5%51/& 5'6"&/:/<#A 345 ("16" %::/(8 'B61'&5 197:'9'&5%51/& 1& %&# /; 5"'8'> !"#$%& #()*+,-. #*,/0 1$$ 232 +4*5 6.+748 $ 748-,-9 :;-(<9 =.->.7? *( @ABB(-* ;C#"D /,77@ 89 )(-+,-E4>F *( , G4>A< 5(@* H,/54>. $(H4>F @((>I G4>A< ,>E !C#JK.@@.77,*4(> !"#$%& ($ ) !)*+,)*% "-.$/*01/#-. #).20)2% ($ !"# ) !)*+,)*% $%$1*#3/#-. #).20)2%4 .- 0.5$6./"%$#7)8&% 1-.$/*01/$ ($ /63%5$)9% ).+ :-*% %;3*%$$#<% /"). =%*#&-2 ($ %:8%++%+ #. >1)&) class Cpu extends Comp { override val io: ProcLines = new ProcLines(); def init () = { val c = new CtlPath(); val d = new DatPath(); c.io.ctl <> d.io.ctl; c.io.dat <> d.io.dat; io.imem.ctl >< c.io.imem; io.imem.dat >< d.io.imem; io.dmem.ctl >< c.io.dmem; io.dmem.dat >< d.io.dmem; io.host >< d.io.host; } } !"#$%& ()*+%,-$ !"#$%&'() +%&'() +,-.&)(" !"#/'&$#0 !"#1.2/#0 !"#$ 345,.'4' 6+ 345,.'4' 345.)&14 + +,-.&)(" 7&)&58 9:;<; trainwreck! # $%&'() *+,-,-./0 &12/30 4(5-670 /1/03180 91-: ;0<,=/30; ;6-6 202,+. 18-0+>6<0 ?@(A1- BC0;(/,18- ;6-6/6-:D ;,=A30(/+0<151,8 E* !"#$%& (")*+,% trainwreck "#$% &' (' )%*++ ,$-./%$ 01/%$ 2%3#$4 546/%3 !"#$ &'() *+,--.( /+',(*+.01 2( 3456 7 689: :;,<.=.) /+',(*+.01 2( 3456 7 689:

Upload: others

Post on 15-Sep-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2020#Architecture#Research#with#RISC3V#and#Chisel#parlab.eecs.berkeley.edu/sites/all/parlab/files/poster_0.pdf2020#Architecture#Research#with#RISC3V#and#Chisel# Jonathan’Bachrach,’Scott’Beamer,’David’Patterson,’Krste’Asanovic’

2020  Architecture  Research  with  RISC-­‐V  and  Chisel  Jonathan  Bachrach,  Scott  Beamer,  David  Patterson,  Krste  Asanovic  

Yunsup  Lee  Andrew  Waterman  

!"#$%$&"&$'()*+,-$.%,)/+#0$&,#&1+,)2,3,"+#0)

•  4$51%"&6+3)"+,)13,71%)76+)5,"31+$'()#8#%,)#61'&3913,%,33)76+):6;,+<)"+,"<)#8#%,)&$5,)

•  )=1&)5$#+6"+#0$&,#&3)513&)."%"'#,)"%%)67)&0,3,>)•  ?,,-)"'),'-@&6@,'-)+,3,"+#0)5,&06-6%6(8)&6)#%63,)&0,)7,,-."#A)%66:B)

•  B.1&)&+"-$&$6'"%)CD)-,3$(')"::+6"#0,3);$&0)#655,+#$"%)E4/3)"+,)7"+)&66)&,-$613)

!"#$%&'"#('

•  #)*+,-.)/0*1+*2'34%5,)',67)*89),06':6902,6-'•  #8;;0*)7'90<;*:77:2':6902,6-7'+62':=):62:2%>:6-).',67)*89),067'

!"#$%$&'($)*+,$

•  -./012'$%$!"#$%&'%($345$)*"+$)*+$5"%5$6%754.'8$197/.5%&5$2'5%1:8$/;$6/99'.61%:$<'&'.%:=$74.7/8'$)*+$2'81<&8$%&2$5"%5$18$8415%3:'$;/.$"%.2(%.'$197:'9'&5%51/&>$

•  -./012'$%$&,#$$$345$(),*$"'"$3%8'$)*+$5"%5$%0/128$?/0'.=%.6"15'651&<@$;/.$%$7%.5164:%.$91=$6./%.6"15'654.'$85#:'$/.$197:'9'&5%51/&$5'6"&/:/<#A$345$("16"$%::/(8$'B61'&5$197:'9'&5%51/&$1&$%&#$/;$5"'8'>$

!"#$%&'#()*+,-.'#*,/0'

•  1$$'232'+4*5'6.+748'$'748-,-9'

•  :;-(<9'=.->.7?'*('@ABB(-*';C#"D'/,77@'89')(-+,-E4>F'*(','G4>A<'5(@*'H,/54>.'

•  $(H4>F'@((>I'G4>A<',>E'!C#JK.@@.77,*4(>'

!"#$%&'

•  ($')'!)*+,)*%'"-.$/*01/#-.'#).20)2%'

•  ($'!"#')'!)*+,)*%'$%$1*#3/#-.'#).20)2%4'.-'0.5$6./"%$#7)8&%'1-.$/*01/$'

•  ($'/63%5$)9%').+':-*%'%;3*%$$#<%'/").'=%*#&-2'

•  ($'%:8%++%+'#.'>1)&)'

class Cpu extends Comp { override val io: ProcLines = new ProcLines(); def init () = { val c = new CtlPath(); val d = new DatPath(); c.io.ctl <> d.io.ctl; c.io.dat <> d.io.dat; io.imem.ctl >< c.io.imem; io.imem.dat >< d.io.imem; io.dmem.ctl >< c.io.dmem; io.dmem.dat >< d.io.dmem; io.host >< d.io.host; } }

!"#$%&'()*+%,-$'

!"#$%&'()*

+%&'()*+,-.&)("*

!"#/'&$#0* !"#1.2/#0* !"#$*

345,.'4'*6+* 345,.'4'*345.)&14* +*+,-.&)("*

7&)&58*9:;<;*

trainwreck!"#"$%&'()"*+,-,-./0"

•  &12/30"4(5-670"/1/03180"91-:";0<,=/30;";6-6"202,+."18-0+>6<0"

•  ?@(A1-"BC0;(/,18-";6-6/6-:D";,=A30(/+0<151,8"E*"

!"#$%&'(")*+,%'

trainwreck!"#$%!

&'! ('!

)%*++!,$-./%$!

01/%$!2%3#$4!546/%3!

!"#$%

•  &'()%*+,--.(%/+',(*+.01%2(%3456%7%689:%

•  :;,<.=.)%/+',(*+.01%2(%3456%7%689:%