.
. 11
E
Cockatrice
. -
.
4
.
4
­ P EN UN
­ 9 G
­ . .- 1) I
­ a
­ B -
ü JSm Ok
ü A L
­ .A nu (0-:(2
­ C CA D
­ 9 9 T WMRYf
­ To eL f
F5 F55
G AI P
AC 5
E T P
0 12
P
• R g V l
• i E
• aV R
bW
• h 7 V P
• M
Ø eV R
e
­
8 R
M
d
­
­ c
­ a
0 0. . ()
0 .(1 00
0 .(1 )(
. 0
. 0
>
IL
/ AL
M
L
h
­ h e
S P h C
­ h I l e
S P h h o
­ x e
nuN I Vo
­ (N I o e
F s
­ ir F 1 ) e
) R t
­ R
182
D B
38 4 36 -4 6
- 0/
6 1 3 2 1 D B
­ - I
­ 8
3 NF , 1 3 NF , 1 3
R I
0/ 05 96758
0/ 16 8
. 0.- 21
43 .
8
0/ 05 96758
0/ 16 8
. 0.- 21
43 .
-
$ cd phoenix-showdown/phoenix/benchmarker/
$ mix phoenix.server
/ / /
0/ 05 96758
0/ 16 8
. 0.- 21
43 .
1 U Z SW R B D
­ I U
­ - XY U SWF 3
P B4 OB D
• 2 W W a T
• 0H FA P H E Tt
• )&& 2L / H K , 1 B
• 7F H 4-6 E d
• e P! o nz
• hi & M
• l m b O
• 0 )( )(T
0 CKCH 0 HFAPt
• Ng s,&&3
• xr VS o
/ .
C G r prsdy V _
x ui .2 d _
/ DB 5 m ld V _
uim ld 13 SvV _
j hrod V _
SvV 13m ldhro V _
7
.
c b
D 5CT LL
. 6 metgnsw
C G B 4 5 B
4D D C
4H 5 C4 D 5 4 D
4H 5 C47DG
B 47 5C D
B 47DG7 5C
4H 5 C4B
Pa
08857 6118 43 8 7.01 . 1 18.37
/ .
/774 5007 32 7 1 /0 10 07 2
.
I # r Z
. 1oLl xQ T
pgn 2 B 4 /.11/
##I Lid qf cmak
hqeqb Liy
da T
0 E3 t s
:EE D B E3 5 E3 3D :
E D 8 8# 5 544
.
# A IG O
S
R G
# AP X
E
T F
!
R 0 T2C 3 8 1
P )
I LA , 7 , 7
?
!
e2
­ C C
­ Cle
24 a
2
­ C C
­ Cle
r2 a
a
­ c n
­ P C
üt C 2 o 1
ü u
( A 5C )
•
IS
• 2 5
( A 5 )
• C
• A 5
AC
I2
)
6 (
F 0A A 7 B AA
­ p x P 2-
­ I X S
U LT U
­ r e alt
r Q tOS wO U
­ 0 yo nb
DG B A C A 7 - B
- (
2(
)( (
- (
- (
2(
- ( (
2(
)( )(
2(
)(
2( 2(
)( )(( - (- ( (
2( 2( 2(
- ( - (
)(
)(
)(
)(
)(
)(
imd
g nimd( imd
- (2( d imd
)(
1
8
HA
2 G F
/
9
­ D 9
­ A W AC
9 9
­ 9
­ L I D 2
­
ü
üL IHSI
ü
P ,33 -33U efS
­ bZceZh adSgh c UkT
il 1 4 K A G K D 7GN D K F - H 2 F F K D F H D O 0 N F KA - K FK
0GK,A H
, A F K D 4HK O F .5/ D KG - F G - H ,GF GDLK GF D 3 L D 3 KNG C .5/
3
1 1
1 11
1 11
11
31
1
G R C
L I MS R A C
­ U PM F A
R
3 3
I
2
P
L
always@(posedge clk) begin
if (!rst) out <= 0;
else begin
case (in)
4'b0001 : tmp <= 1;
4'b0010 : tmp <= 5;
4'b1100 : tmp <= 7;
default : tmp <= 0;
endcase
end
end
assign out = ~{reg[7:4], tmp[3:0]};
3 3
T
B
R R
3
3 B
B
3
3
L
R HFHIE O 7EO091, 6
­ HIH P HMOEP - -
ü 4 5 N
­ 9-3 PLMENN 1E P
­ , , 333 P
­ 8 366 &1P
­ 1 LN OGEM EO
&
R EMANHC 7A K
­ ,IOEMA - CIK E 3 9&-
­ ,6 3 - 9 86
­ & LH 1938 2EADEMN P
­ 5 P P 39 P&
m
­ G H X e q
­ r o F L
Z WI r
­ 3 Z WI 1 A
­ W 5 I 5 A
­ P / / X e q L S
­ C ny
R
­ C
ü 6 6/
­ 3 + T L
int func (int x) {
int a[N];
int i;
for(i=0;i<N;i++){
a[i] = ;
:
:
}
:
}
x
func
i
a
3 a i
­ m i M
ü r e7 -/
­ o 7 k ML
3 M W W
­ M W H L
­ R H L
T Wi t D
S EGEIP EO 2 9
­ X 2. os
­ / GEK AdU 3./
­ x tr v
S ,GNAL 9.4 L KAI
­ KAI z ci hgX
2. os
­ f a8 V18 p
nsW l v
k EGEIPmf aeU U 1
. AN KNEHE EIC KAI L ,GNAL 081, 3IN G LF D K I KAI
W HJHLT 9 9M
­ - Y Z hik
­ . gf HSACM .29
acd d
­ , JHNPD Y ,
elX0 1ACJD HJHLT 9 9M EMO DJDOAQHML ME DAJ QHKD HCDM 6OM DPPHL ML V 9U 3MCRJDP
.H6, ,3 MOIPGMN
C/C++
Select functions
for PL
PL
PS
IP
Application
Driver
SDSoC
Datamover
PS-PL interface
Met
Req
?
func1_sw();
func2_hw();
func3_hw();
Application
Driver
Interface
IPs
Interface
IPs
Application
Driver
AMBA Bus
C/C++ Application
Application
Driver
IP IP IP IP
Connectivity
Generated
A, 00 0 - 0 40 1 - 42 0 0 0 4
0 42 - 4 1 .0 0 0
C G MR r
­ e b Hov M
C D m ku
­ ov S Gc lu
C A MR r
­ A e ab ku
­ MR s M n M
C MR r
­ ghj rt JLs
ü 44 yP L iWeij
C A 1 G m ku
­ A 4 4 S Gc Vku
2
E
1
2 4
2
2
0
0
24
2
Cockatrice
. 4
. (). 4 ( 4
. (
. ( )(
. 4
4
s D
s
(6
W +
Pb
/
r
/
(6 e
+
a a
i
i
4
+)S T
l
i
I
(6 +)
+)i
S T
/ Lb
(6 W A
+ A x
H CE+ N s
t D F
D
Pb D / C m
/ D b N
B ) n r •
­ n r R S ,( M
ü S ) 7 7 7 I
­ x F NP
ü,( 4 , T RL H GCC
B ) I ,
­ R T, VwN HTM
­ v D T L , M
­ oD i N
B , D m DW lu
­ ) e m D /T E M
84 8
­ 4 H D E
e a c m
e l c m
e e e m
d a m
e m
e m
e e m? a
m m a
m d
e m i
4
­ 9
­ E 9
Ø
)
F
E
M( C G
I A
0
)
F
E
M( C G
I A
1
CF E
1
H 5
/
)
F
E
M( C G
I A
B X CP
D
52 B
aH IMDM F
454 B
A SW
454 B
A SW
54 4 MELMN X
Z
] ns kgh C[GS C- (& !B2-C&(&
­ 0 9 2SUW Z 0. IXFP HSU
TUSH VVSU -96
­ 4 50 &96
ürom i l FIS (& -
ü0910 0B7 / 0B7 W 0B7 5
] : / GXRWX &
­ WFP RXZ (& -
] 3P Z U - 3UPFRL : (&
­ UWV . )E VSXUH E V T/(/(E IV/(/(/ &E
FV[RH WMU FIV/ &E M T E O UR P TSPP/ FPV E
)
3P Z U 6Aa
cefdp b
­ 4 u ) ,/
­ HL
M 5I P P P
(, n
ü PD EMTP
­ ,5 Em P
o y
­ M A
b y
o n T
L E 9
M H Z
5
­
­
5
T I i SF: 6
­ T 5
BA 66
­ I c
SF: 6
e F:N 6
/ .1 I m 6
H Cn r7
­ E Dai
­ /5/ Dl C L 7
D g
­ x T p H7
­ H H S m R D 7
D W 7

Elixirでハードウェアが作れちゃう,かも!!? データフロー型ハードウェア設計環境Cockatriceのご紹介

  • 1.
  • 2.
  • 3.
  • 4.
    ­ P ENUN ­ 9 G ­ . .- 1) I ­ a ­ B - ü JSm Ok ü A L ­ .A nu (0-:(2 ­ C CA D ­ 9 9 T WMRYf ­ To eL f
  • 5.
    F5 F55 G AIP AC 5 E T P
  • 7.
    0 12 P • Rg V l • i E • aV R bW • h 7 V P • M Ø eV R
  • 8.
    e ­ 8 R M d ­ ­ c ­a 0 0. . () 0 .(1 00 0 .(1 )( . 0 . 0 >
  • 9.
  • 11.
    h ­ h e SP h C ­ h I l e S P h h o ­ x e nuN I Vo ­ (N I o e F s ­ ir F 1 ) e ) R t ­ R
  • 12.
    182 D B 38 436 -4 6 - 0/ 6 1 3 2 1 D B ­ - I ­ 8
  • 13.
    3 NF ,1 3 NF , 1 3 R I 0/ 05 96758 0/ 16 8 . 0.- 21 43 . 8 0/ 05 96758 0/ 16 8 . 0.- 21 43 .
  • 14.
    - $ cd phoenix-showdown/phoenix/benchmarker/ $mix phoenix.server / / / 0/ 05 96758 0/ 16 8 . 0.- 21 43 . 1 U Z SW R B D ­ I U ­ - XY U SWF 3 P B4 OB D
  • 16.
    • 2 WW a T • 0H FA P H E Tt • )&& 2L / H K , 1 B • 7F H 4-6 E d • e P! o nz • hi & M • l m b O • 0 )( )(T 0 CKCH 0 HFAPt • Ng s,&&3 • xr VS o
  • 17.
    / . C Gr prsdy V _ x ui .2 d _ / DB 5 m ld V _ uim ld 13 SvV _ j hrod V _ SvV 13m ldhro V _ 7 . c b D 5CT LL . 6 metgnsw C G B 4 5 B 4D D C 4H 5 C4 D 5 4 D 4H 5 C47DG B 47 5C D B 47DG7 5C 4H 5 C4B Pa
  • 18.
    08857 6118 438 7.01 . 1 18.37 / .
  • 19.
    /774 5007 327 1 /0 10 07 2 .
  • 20.
    I # rZ . 1oLl xQ T pgn 2 B 4 /.11/ ##I Lid qf cmak hqeqb Liy da T 0 E3 t s :EE D B E3 5 E3 3D : E D 8 8# 5 544
  • 21.
    . # A IGO S R G # AP X E T F
  • 23.
    ! R 0 T2C3 8 1 P ) I LA , 7 , 7 ? !
  • 24.
    e2 ­ C C ­Cle 24 a 2 ­ C C ­ Cle r2 a a ­ c n ­ P C üt C 2 o 1 ü u
  • 25.
    ( A 5C) • IS • 2 5 ( A 5 ) • C • A 5
  • 26.
  • 27.
    F 0A A7 B AA ­ p x P 2- ­ I X S U LT U ­ r e alt r Q tOS wO U ­ 0 yo nb DG B A C A 7 - B - ( 2( )( ( - ( - ( 2( - ( ( 2( )( )( 2( )( 2( 2( )( )(( - (- ( ( 2( 2( 2( - ( - ( )( )( )( )( )( )( imd g nimd( imd - (2( d imd )( 1
  • 28.
  • 29.
    9 ­ D 9 ­A W AC 9 9 ­ 9 ­ L I D 2 ­ ü üL IHSI ü
  • 30.
    P ,33 -33UefS ­ bZceZh adSgh c UkT il 1 4 K A G K D 7GN D K F - H 2 F F K D F H D O 0 N F KA - K FK 0GK,A H , A F K D 4HK O F .5/ D KG - F G - H ,GF GDLK GF D 3 L D 3 KNG C .5/
  • 31.
    3 1 1 1 11 111 11 31 1 G R C L I MS R A C ­ U PM F A
  • 32.
    R 3 3 I 2 P L always@(posedge clk)begin if (!rst) out <= 0; else begin case (in) 4'b0001 : tmp <= 1; 4'b0010 : tmp <= 5; 4'b1100 : tmp <= 7; default : tmp <= 0; endcase end end assign out = ~{reg[7:4], tmp[3:0]}; 3 3
  • 33.
  • 34.
    R HFHIE O7EO091, 6 ­ HIH P HMOEP - - ü 4 5 N ­ 9-3 PLMENN 1E P ­ , , 333 P ­ 8 366 &1P ­ 1 LN OGEM EO & R EMANHC 7A K ­ ,IOEMA - CIK E 3 9&- ­ ,6 3 - 9 86 ­ & LH 1938 2EADEMN P ­ 5 P P 39 P&
  • 35.
    m ­ G HX e q ­ r o F L Z WI r ­ 3 Z WI 1 A ­ W 5 I 5 A ­ P / / X e q L S ­ C ny
  • 36.
    R ­ C ü 66/ ­ 3 + T L int func (int x) { int a[N]; int i; for(i=0;i<N;i++){ a[i] = ; : : } : } x func i a
  • 37.
    3 a i ­m i M ü r e7 -/ ­ o 7 k ML 3 M W W ­ M W H L ­ R H L T Wi t D
  • 38.
    S EGEIP EO2 9 ­ X 2. os ­ / GEK AdU 3./ ­ x tr v S ,GNAL 9.4 L KAI ­ KAI z ci hgX 2. os ­ f a8 V18 p nsW l v k EGEIPmf aeU U 1 . AN KNEHE EIC KAI L ,GNAL 081, 3IN G LF D K I KAI
  • 39.
    W HJHLT 99M ­ - Y Z hik ­ . gf HSACM .29 acd d ­ , JHNPD Y , elX0 1ACJD HJHLT 9 9M EMO DJDOAQHML ME DAJ QHKD HCDM 6OM DPPHL ML V 9U 3MCRJDP .H6, ,3 MOIPGMN C/C++ Select functions for PL PL PS IP Application Driver SDSoC Datamover PS-PL interface Met Req ? func1_sw(); func2_hw(); func3_hw(); Application Driver Interface IPs Interface IPs Application Driver AMBA Bus C/C++ Application Application Driver IP IP IP IP Connectivity Generated
  • 40.
    A, 00 0- 0 40 1 - 42 0 0 0 4 0 42 - 4 1 .0 0 0
  • 41.
    C G MRr ­ e b Hov M C D m ku ­ ov S Gc lu C A MR r ­ A e ab ku ­ MR s M n M C MR r ­ ghj rt JLs ü 44 yP L iWeij C A 1 G m ku ­ A 4 4 S Gc Vku
  • 42.
  • 44.
    Cockatrice . 4 . ().4 ( 4 . ( . ( )( . 4 4
  • 46.
    s D s (6 W + Pb / r / (6e + a a i i 4 +)S T l i I (6 +) +)i S T / Lb (6 W A + A x H CE+ N s t D F D Pb D / C m / D b N
  • 47.
    B ) nr • ­ n r R S ,( M ü S ) 7 7 7 I ­ x F NP ü,( 4 , T RL H GCC B ) I , ­ R T, VwN HTM ­ v D T L , M ­ oD i N B , D m DW lu ­ ) e m D /T E M
  • 48.
    84 8 ­ 4H D E e a c m e l c m e e e m d a m e m e m e e m? a m m a m d e m i
  • 49.
  • 50.
  • 51.
    ) F E M( C G IA 1 CF E 1 H 5
  • 52.
    / ) F E M( C G IA B X CP D 52 B aH IMDM F 454 B A SW 454 B A SW 54 4 MELMN X Z
  • 53.
    ] ns kghC[GS C- (& !B2-C&(& ­ 0 9 2SUW Z 0. IXFP HSU TUSH VVSU -96 ­ 4 50 &96 ürom i l FIS (& - ü0910 0B7 / 0B7 W 0B7 5 ] : / GXRWX & ­ WFP RXZ (& - ] 3P Z U - 3UPFRL : (& ­ UWV . )E VSXUH E V T/(/(E IV/(/(/ &E FV[RH WMU FIV/ &E M T E O UR P TSPP/ FPV E ) 3P Z U 6Aa cefdp b
  • 54.
    ­ 4 u) ,/ ­ HL M 5I P P P (, n ü PD EMTP ­ ,5 Em P o y ­ M A b y o n T L E 9 M H Z
  • 55.
  • 56.
    T I iSF: 6 ­ T 5 BA 66 ­ I c SF: 6 e F:N 6 / .1 I m 6
  • 57.
    H Cn r7 ­E Dai ­ /5/ Dl C L 7 D g ­ x T p H7 ­ H H S m R D 7 D W 7