// REVISION    : $Revision: 1.1 $
//              Mentor Proprietary and Confidential
//              Copyright (c) 2000, Mentor Intellectual Property Development
`timescale 1ns/1ns
module
CoreTSE_M2S090_CORETSE_AHB_0_PEMSTAT_SADD
(
CORETSEolOo
,
CORETSEllOo
,
CORETSEol0o
,
CORETSEil0o
,
CORETSEIiOo
,
CORETSEOllo
,
CORETSEliOo
,
CORETSEOiOo
,
CORETSEO00o
,
CORETSEIoOo
)
;
input
CORETSEolOo
,
CORETSEllOo
;
input
CORETSEol0o
;
input
[
3
:
0
]
CORETSEil0o
;
input
CORETSEIiOo
;
input
[
30
:
0
]
CORETSEOllo
;
input
CORETSEliOo
;
input
CORETSEOiOo
;
output
[
30
:
0
]
CORETSEO00o
;
output
CORETSEIoOo
;
reg
[
11
:
0
]
CORETSEl00o
;
reg
CORETSEIoOo
;
parameter
CORETSEOII
=
1
;
parameter
FAMILY
=
19
;
wire
[
12
:
0
]
CORETSEI00o
;
wire
CORETSElo1
;
wire
CORETSEoo1
;
assign
CORETSElo1
=
(
FAMILY
==
25
)
?
1
'b
0
:
CORETSEolOo
;
assign
CORETSEoo1
=
(
FAMILY
==
25
)
?
CORETSEolOo
:
1
'b
0
;
assign
CORETSEI00o
=
CORETSEl00o
+
{
8
'h
0
,
CORETSEil0o
}
;
always
@
(
posedge
CORETSEllOo
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEl00o
<=
#
CORETSEOII
12
'h
0
;
else
if
(
CORETSEIiOo
)
CORETSEl00o
<=
#
CORETSEOII
CORETSEOllo
[
11
:
0
]
;
else
if
(
CORETSEol0o
&
CORETSEOiOo
)
CORETSEl00o
<=
#
CORETSEOII
{
8
'h
0
,
CORETSEil0o
}
;
else
if
(
CORETSEol0o
)
CORETSEl00o
<=
#
CORETSEOII
CORETSEI00o
[
11
:
0
]
;
else
if
(
CORETSEOiOo
)
CORETSEl00o
<=
#
CORETSEOII
12
'h
0
;
else
CORETSEl00o
<=
#
CORETSEOII
CORETSEl00o
;
end
assign
CORETSEO00o
=
{
19
'h
0
,
CORETSEl00o
[
11
:
0
]
}
;
always
@
(
posedge
CORETSEllOo
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIoOo
<=
#
CORETSEOII
1
'b
0
;
else
if
(
CORETSEliOo
)
CORETSEIoOo
<=
#
CORETSEOII
1
'b
0
;
else
if
(
CORETSEol0o
&
CORETSEI00o
[
12
]
)
CORETSEIoOo
<=
#
CORETSEOII
1
'b
1
;
else
CORETSEIoOo
<=
#
CORETSEOII
CORETSEIoOo
;
end
endmodule
