Академический Документы
Профессиональный Документы
Культура Документы
AHB is a new generation of AMBA bus which is intended to address the requirements of high-performance
synthesizable designs. It is a high-performance bus that supports multiple bus masters and provide highbandwidth operation.
AMBA AHB implements the features required for high-performance, high clock frequency systems
including:
burst transfers
split transactions
singla cycle bus-handover
single clock edge operation
In BUSpec we have successfully modeled this protocol. We have not considered all aspects of AHB
protocol such as fixed length incrementing transfers, locked transfers. However modeling of AHB bus
protocol in BUSpec clearly reveals the power of this language. The BUSpec specification of AHB bus
protocol is given as follows (for clarity some comments are provided in the specification).
!
!
" # $% # % # $% # $%
# % # $%
# &
'
( &
( "&
'
!
!
" # % # $% # %
# %
# $% # $%
# &
'
)( "&
( &
'
)
* !
'
* !
'
* !
'
)
)
+
+,
-+, !
!
1
" # % # % # % # $%
# $%
# $&
'
)( &
)( "&
.)/ 0&
'
+, !
!
" # % # % # % # %
# $%
# &
'
)( &
)( "&
.)/ 0&
'
)
-+,*+, !
-+,
+,
'
-+,*-+, !
-+,
-+,
'
)
)
)
-) 12
-)
3 !
!
# $% # %
# % # $%
# % # % " # &
'
)( &
)( "&
.)/ 0&
'
45 !
!
# $% # %
# $% # $%
# % # % "#&
'
)( &
)( "&
.)/ 0&
'
)
3*3
3
'
45*3
45
'
!
3
!
3
45*45 !
45 45
'
)
)
)
6, 7
76,
4 !
!
" # % # % # % 8
# % # $% # %
" # %
# &
'
9
/
0&
)( &
)( "&
.)/ 0&
'
5 !
!
" # % # % # % 8
# % # $% # %
" # %
# &
'
9
/ 8
0%
9
/
0&
)( &
)( "&
.)/ 0&
'
5 !
!
" # % # % # % #
8
# % # % # %
" # %
# $&
'
9
/
0&
)( &
)( "&
.)/ 0&
'
4: !
!
" # % # % # % #
8
# % # % # %
" # %
# $&
'
9
/
0%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
5$ !
!
" # % # % # % #
8
# % # % # %
" # %
# $&
3
# %
# %
# %
# %
$%
$%
$%
'
9
/
0%
)/ 8
% / 8
00%
)/
% /
00&
)( &
)( "&
.)/ 0&
'
5 !
!
" # % # % # % #
8
# % # % # %
" # %
# &
'
9
/
0%
9
/
0&
)( &
)( "&
.)/ 0&
'
; !
!
" # % # % # % #
8
# % # 4% # %
" # %
# &
'
9
/
0%
)/
% /
0<
=0%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
> !
!
" # % # % # %
# $% 8
# % # 4%
" # %
# $&
'
)/
% /
0<
=0%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
53 !
!
" # % # % # %
# $% 8
# % # 4%
" # %
# $&
'
)/ 8
% / 8
00%
)/
% /
00&
)( &
)( "&
.)/ 0&
'
3 !
!
" # % # % # $%
4
$%
$%
# %
# %
# %
8
# % # % # %
" # %
# &
'
9
/
0%
)/
% /
0<
=0%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
5? !
!
" # % # % # $%
8
# % # % # %
" # %
# &
'
9
/
0%
9
/ 8
0%
)/ 8
% / 8
00%
)/
% /
00&
)( &
)( "&
.)/ 0&
'
? !
!
" # % # % # $% #
# % 8
# % # %
" # %
# $&
'
9
/
0%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
? !
!
" # $% # % # % #
# % 8
# % # 4%
" # %
# &
'
9
/
0%
)/
% /
0<
=0%
9
/ 8
0&
)( &
( "&
.)/ 0&
'
: !
!
" # $% # % # $% #
8
# % # 4% # %
" # %
# $&
'
9
/
0%
9
/ 8
0&
)( &
( "&
.)/ 0&
5
# %
%
$%
%
'
)
5*5 !
5
5
'
5*4 !
5
4
'
4*5 !
4
5
'
4*; !
4
;
'
4*> !
4
>
'
4*3 !
4
3
'
4*? !
4
?
'
4*? !
4
?
'
4*: !
4
:
'
;*; !
;
;
'
;*> !
;
>
'
;*3 !
;
3
'
;*? !
;
?
'
;*? !
;
?
'
;*: !
;
:
'
>*; !
> ;
'
>*53 !
>
53
'
53*53 !
53
53
'
>*? !
>
?
6
'
53*? !
53
?
'
3*5? !
3
5?
'
?*5? !
?
5?
'
5?*5? !
5?
5?
'
3*; !
3
;
'
3*? !
3
?
'
:*? !
:
?
'
:*: !
:
:
'
?*3 !
?
3
'
?*? !
?
?
'
4:*5$ !
4:
5$
'
5$*5$ !
5$
5$
'
5$*5 !
5$
5
'
4:*5 !
4:
5
'
)
)
)
6, ,
,6,
: !
!
" # % # % # %
8
# $% # $% # %
# % " # %
# &
'
)( &
)( "&
.)/ 0&
'
$ !
7
!
" # % # % # % # $%
8
# $% # % # %
" # %
# $&
'
)( &
)( "&
.)/ 0&
'
5> !
!
" # % # % # %
# $% 8
# $% # %
# % " # %
# $&
'
9
/
0&
)( &
)( "&
.)/ 0&
'
54 !
!
" # % # % # % # $%
8
# $% # % # %
" # %
# $&
'
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
55 !
!
" # % # % # % # $%
8
# $% # % # %
" # %
# $&
'
)/ 8
% / 8
00%
)/
% /
00&
)( &
)( "&
.)/ 0&
'
5; !
!
" # % # % # % # $%
8
# $% # % # %
" # %
# $&
'
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
!
!
" # % # % # % # $%
8
# $%
# % # 4%
# % " # %
# &
'
8
9
/
0%
)/
% /
0 <
=0&
)( &
)( "&
.)/ 0&
'
!
!
" # % # % # % # $%
8
# $% # 4% # % " # %
# $&
'
)/
% /
0 <
=0&
)( &
)( "&
.)/ 0&
'
4 !
!
" # % # % # $% # %
8
# $% # %
# % # %
" # %
# &
'
)( &
)( "&
.)/ 0&
'
5 !
!
" # % # % # $% # %
# % 8
# $% # % " # %
# $&
'
)( &
)( "&
.)/ 0&
'
; !
!
" # $% # % # % # $%
# % 8
# $% # 4%
" # %
# &
'
9
/
0&
)( &
( "&
.)/ 0&
'
> !
!
" # $% # % # $% # %
8
# $% # 4% # % " # %
# $&
'
)/
% /
00&
)( &
( "&
.)/ 0&
'
)
9
:*: !
:
:
'
:*$ !
: $
'
$* !
$
'
$* !
$
'
$*4 !
$ 4
'
$*5 !
$ 5
'
$*; !
$ ;
'
$*> !
$ >
'
* !
'
* !
'
*> !
>
'
*; !
;
'
*5 !
5
'
*> !
>
'
* !
'
*> !
>
'
*; !
;
'
4*4 !
4 4
'
4* !
4
'
4*; !
10
4 ;
'
5*5 !
5 5
'
5*4 !
5 4
'
>*> !
> >
'
>*; !
> ;
'
54*55 !
54
55
'
55*55 !
55
55
'
55*5; !
55
5;
'
54*5; !
54 5;
'
)
)
)
+) 7
7+)
$ !
!
" # % # % # $% #
8
# % # % # %
" # $%
# &
'
9
/
0&
)( &
)( "&
.)/ 0&
'
!
!
" # % # % # % #
# % " # $% 8
# %
'
9
/
0&
)( &
)( "&
.)/ 0&
'
!
!
" # $% # % # $% #
8
# % # % " # $%
# &
'
)/
% /
0 <
=0%
11
%
$%
# $&
%
9
/ 8
0%
9
/
0&
)( &
( "&
.)/ 0&
'
;$ !
!
" # $% # %
8
# % # % "
# $&
'
)/
% /
0 <
=0%
9
/ 8
0%
9
/
0&
)( &
( "&
.)/ 0&
'
; !
!
" # $% # %
8
# % # % "
# $&
'
)/
% /
00%
9
/ 8
0&
)( &
( "&
.)/ 0&
'
; !
!
" # $% # %
8
# % # % "
# &
'
)/
% /
00%
9
/ 8
0&
)( &
( "&
.)/ 0&
'
;4 !
!
" # $% # %
8
# % # % "
# $&
'
)/
% /
00&
)( &
( "&
.)/ 0&
'
;5 !
!
" # $% # %
8
# % # % "
# &
'
12
# $% # %
# $%
# $% # %
# $%
# $% # %
# $%
# $% # %
# $%
# $% # %
# $%
'
)/
% /
00%
9
/
0&
)( &
( "&
.)/ 0&
)
$* !
$
'
*$ !
$
'
* !
'
*;4 !
;4
'
;4*;4 !
;4 ;4
'
;4*;5 !
;4 ;5
'
;$*; !
;$ ;
'
;*; !
; ;
'
;*; !
; ;
'
*;$ !
;$
'
)
)
)
+) ,
,+)
3 !
!
" # % # % # $% # %
8
# $% 8
# % # % # %
" # $%
# $&
'
9
/
0&
)( &
)( "&
.)/ 0&
'
? !
!
13
" # % # % # % # $%
# % " # $% 8
# $%
# &
'
)/
% /
0 <
=0%
9
/
0&
)( &
)( "&
.)/ 0&
'
5: !
!
" # % # % # %
# % " # $% 8
# $%
# &
'
)/
% /
00%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
;; !
!
" # % # % # %
# % " # $% 8
# $%
# $&
'
9
/
0%
9
/ 8
0&
)( &
)( "&
.)/ 0&
'
;> !
!
" # % # % # %
# % " # $% 8
# $%
# $&
'
)/
% /
00%
)/ 8
% / 8
00&
)( &
)( "&
.)/ 0&
'
;? !
!
" # % # % # %
# % " # $% 8
# $%
# $&
'
9
/
0&
)( &
)( "&
.)/ 0&
'
;: !
!
" # % # % # %
14
# $%
# $%
# $%
# $%
# $%
# % " # $% 8
# $%
# $&
'
)/
% /
00&
)( &
)( "&
.)/ 0&
'
: !
!
" # $% # % # $% # %
8
# $% # % " # $%
# &
'
9
/
0&
)( &
( "&
.)/ 0&
'
)
3*3 !
3 3
'
3*? !
3 ?
'
3*: !
3 :
'
?*? !
? ?
'
?*: !
? :
'
?*3 !
? 3
'
;;*;> !
;; ;>
'
;>*;> !
;> ;>
'
;>*5: !
;> 5:
'
;?*5: !
;? 5:
'
;:*5: !
;: 5:
'
)
)
)
15
4 !
!
#
8
#
'
)( &
.)/ 0&
'
4; !
!
#
8
#
'
)( &
.)/ 0&
'
4> !
!
#
8
#
'
)( &
.)/ 0&
'
4$ !
!
#
8
#
'
)( &
.)/ 0&
'
43 !
!
#
8
#
'
)( &
.)/ 0&
'
4? !
!
#
8
#
'
)( &
.)/ 0&
'
5 !
!
#
#
'
( &
)( "&
'
)
4*5 !
% # % # 4% # %
% # %
# $&
% # % # 4% # %
% # 4%
# $&
% # % # 4% # %
% # %
# $&
% # % # 4% # %
$% # %
# $&
% # % # 4% # %
$% # 4%
# $&
% # % # 4% # %
$% # %
# $&
$%
# % # 4% # %
$% " # %
# &
16
4 5
'
4$*5 !
4$ 5
'
4;*5 !
4; 5
'
4>*5 !
4> 5
'
43*5 !
43 5
'
4?*5 !
4? 5
'
)
)
)
,),@
,),@
4 !
!
# % # % # % # %
8
# % # %
# $&
'
)( &
.)/ 0&
'
4 !
!
# % # % # %
# % 8
# $% # %
# $&
'
)( &
.)/ 0&
'
44 !
!
# $%
# % # %
# % # $% " # %
# &
'
)( "&
( &
'
)
4*44 !
4 44
'
4*44 !
4 44
'
)
)
)
/0
,
17
; !
!
"
#
'
)( "&
( &
'
> !
!
"
#
'
)( "&
( &
'
)
;*> !
; >
'
)
)
# % # $%
# %
$% # %
# &
# % # $% # %
# % # $%
# %
&
)
A
*-+, !
-+,
'
*+, !
+,
'
44*-+, !
44 -+,
'
44*+, !
44 +,
'
44* !
44
'
+,*4 !
+, 4
'
+,*5 !
+, 5
'
+,*$ !
+, $
'
+,* !
+,
'
+,*3 !
+, 3
'
+,*4 !
+, 45
18
'
+,*: !
+, :
'
+,*$ !
+, $
'
+,*3 !
+, 3
'
+,*? !
+, ?
'
?*$ !
? $
'
?*: !
? :
'
?*4 !
? 4
'
?*5 !
? 5
'
?*$ !
? $
'
?* !
?
'
?*4$ !
? 4$
'
?*? !
? ?
'
3*? !
3 ?
'
?*4 !
? 4
'
?*;5 !
? ;5
'
5:*;5 !
5: ;5
'
5:* !
5:
3*4$ !
3 4$
'
3*4 !
3 4
'
:*4$ !
: 4$
'
19
:*4 !
: 4
'
:* !
:
'
:* !
:
'
:* !
:
'
;*4$ !
; 4$
'
;*4 !
; 4
'
;* !
;
'
;* !
;
'
>*4$ !
> 4$
'
>*4 !
> 4
'
*3 !
3
'
*3 !
3
'
?* !
?
'
?* !
?
'
?*4 !
? 4
'
?*4 !
? 4
'
* !
'
* !
'
*4 !
4
'
*4 !
4
'
20
$*4 !
$ 4
'
$*4 !
$ 4
'
$* !
$
'
$* !
$
'
$*4 !
$ 4
'
$*5 !
$ 5
'
$*3 !
$ 3
'
$*? !
$ ?
'
$*: !
$ :
'
$*$ !
$ $
'
5*; !
5 ;
'
>* !
>
'
>* !
>
'
>*+, !
> +,
'
>*-+, !
> -+,
'
3*4 !
3 4
'
3*5 !
3 5
'
3*$ !
3 $
'
3* !
3
'
*5> !
5>
'
21
;*54 !
;
54
'
;*5 !
;
5
'
*5 !
5
'
$*5: !
$
5:
'
*5: !
5:
'
;*5: !
;
5:
'
* !
'
;* !
;
'
$* !
$
'
;*;$ !
; ;$
'
;5* !
;5
'
5:* !
5:
'
)
)
22