// REVISION    : $Revision: 1.3 $
// Mentor Graphics Corporation Proprietary and Confidential
// Copyright 2007 Mentor Graphics Corporation and Licensors
`timescale 1ps/1ps
module
CoreTSE_M2S090_CORETSE_AHB_0_PETEX_TOP
#
(
parameter
FAMILY
=
19
,
parameter
CORETSEI
=
0
)
(
CORETSEoOOI
,
CORETSEIIII
,
CORETSElIII
,
CORETSEoIII
,
CORETSEiIII
,
CORETSEOlII
,
CORETSEIlII
,
CORETSEllII
,
CORETSEolII
,
CORETSEilII
,
CORETSEO0II
,
CORETSEilOI
,
CORETSEI0II
)
;
input
CORETSEoOOI
;
input
CORETSEIIII
;
input
[
7
:
0
]
CORETSElIII
;
input
CORETSEoIII
;
input
CORETSEiIII
;
input
[
1
:
0
]
CORETSEOlII
;
input
[
15
:
0
]
CORETSEIlII
;
input
CORETSEllII
;
input
CORETSEolII
;
input
[
9
:
0
]
CORETSEilII
;
input
[
2
:
0
]
CORETSEO0II
;
input
CORETSEilOI
;
output
[
9
:
0
]
CORETSEI0II
;
parameter
CORETSEOII
=
1
;
reg
CORETSEl0II
;
reg
[
1
:
0
]
CORETSEo0II
;
wire
CORETSEi0II
;
reg
CORETSEO1II
;
wire
[
7
:
0
]
CORETSEI1II
;
reg
[
7
:
0
]
CORETSEl1II
;
wire
CORETSEo1II
;
reg
CORETSEi1II
;
wire
CORETSEOoII
;
reg
CORETSEIoII
;
wire
CORETSEloII
;
wire
CORETSEooII
;
wire
CORETSEioII
;
wire
CORETSEOiII
;
reg
CORETSEIiII
;
wire
CORETSEliII
;
wire
CORETSEoiII
;
wire
CORETSEiiII
;
wire
CORETSEOOlI
;
reg
CORETSEIOlI
;
reg
CORETSElOlI
;
reg
CORETSEoOlI
;
reg
CORETSEiOlI
;
wire
CORETSEOIlI
;
reg
CORETSEIIlI
;
wire
CORETSElIlI
;
reg
CORETSEoIlI
;
wire
CORETSEiIlI
;
reg
CORETSEOllI
;
wire
CORETSEIllI
;
reg
CORETSElllI
;
wire
CORETSEollI
;
reg
CORETSEillI
;
wire
CORETSEO0lI
;
reg
CORETSEI0lI
;
wire
CORETSEl0lI
;
reg
CORETSEo0lI
;
wire
CORETSEi0lI
;
wire
CORETSEO1lI
;
reg
CORETSEI1lI
;
wire
CORETSEl1lI
;
reg
CORETSEo1lI
;
wire
CORETSEi1lI
;
reg
CORETSEOolI
;
wire
CORETSEIolI
;
reg
CORETSElolI
;
wire
CORETSEoolI
;
reg
CORETSEiolI
;
wire
CORETSEOilI
;
reg
CORETSEIilI
;
wire
CORETSElilI
;
reg
CORETSEoilI
;
wire
CORETSEiilI
;
wire
CORETSEOO0I
;
reg
CORETSEIO0I
;
wire
CORETSElO0I
;
reg
CORETSEoO0I
;
wire
CORETSEiO0I
;
reg
CORETSEOI0I
;
wire
[
3
:
0
]
CORETSEII0I
;
reg
[
3
:
0
]
CORETSElI0I
;
wire
CORETSEoI0I
,
CORETSEiI0I
;
wire
CORETSEOl0I
;
reg
CORETSEIl0I
;
wire
[
9
:
0
]
CORETSEll0I
;
reg
[
9
:
0
]
CORETSEol0I
;
wire
[
7
:
0
]
CORETSEil0I
;
reg
[
7
:
0
]
CORETSEO00I
;
wire
[
7
:
0
]
CORETSEI00I
;
reg
[
7
:
0
]
CORETSEl00I
;
wire
[
9
:
0
]
CORETSEo00I
;
reg
[
9
:
0
]
CORETSEi00I
;
wire
CORETSEO10I
;
reg
CORETSEI10I
;
wire
[
9
:
0
]
CORETSEl10I
;
reg
[
1
:
0
]
CORETSEo10I
;
wire
CORETSEi10I
,
CORETSEOo0I
,
CORETSEIo0I
,
CORETSElo0I
,
CORETSEoo0I
;
reg
[
15
:
0
]
CORETSEio0I
;
wire
CORETSElo1
;
wire
CORETSEoo1
;
assign
CORETSElo1
=
(
FAMILY
==
25
)
?
1
'b
0
:
CORETSEilOI
;
assign
CORETSEoo1
=
(
FAMILY
==
25
)
?
CORETSEilOI
:
1
'b
0
;
assign
CORETSEI1II
=
CORETSElIII
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEl1II
<=
#
CORETSEOII
8
'h
0
;
else
CORETSEl1II
<=
#
CORETSEOII
CORETSEI1II
;
end
assign
CORETSEo1II
=
CORETSEIIII
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEi1II
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEi1II
<=
#
CORETSEOII
CORETSEo1II
;
end
assign
CORETSEOoII
=
CORETSEoIII
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIoII
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIoII
<=
#
CORETSEOII
CORETSEOoII
;
end
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEl0II
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEl0II
<=
#
CORETSEOII
~
CORETSEl0II
;
end
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEo0II
<=
#
CORETSEOII
2
'h
3
;
else
CORETSEo0II
<=
#
CORETSEOII
CORETSEOlII
;
end
assign
CORETSEi0II
=
~
CORETSEO1II
&
(
CORETSEI1lI
|
CORETSEIilI
)
|
CORETSEO1II
&
~
CORETSElolI
&
~
(
~
CORETSEl0II
&
CORETSEOolI
)
&
~
(
~
CORETSEl0II
&
CORETSEoO0I
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEO1II
<=
#
CORETSEOII
1
'h
0
;
else
CORETSEO1II
<=
#
CORETSEOII
CORETSEi0II
;
end
assign
CORETSEloII
=
CORETSEOlII
==
2
'b
00
;
assign
CORETSEooII
=
CORETSEOlII
==
2
'b
01
;
assign
CORETSEioII
=
CORETSEOlII
==
2
'b
10
;
assign
CORETSEOiII
=
~
CORETSEIiII
&
CORETSEo0II
!=
CORETSEOlII
|
CORETSEIiII
&
~
(
(
CORETSEoiII
&
~
CORETSEIOlI
)
|
(
CORETSEiiII
&
~
CORETSElOlI
)
|
(
CORETSEOOlI
&
~
CORETSEoOlI
)
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIiII
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIiII
<=
#
CORETSEOII
CORETSEOiII
;
end
assign
CORETSEoiII
=
~
CORETSEIOlI
&
CORETSEloII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
|
CORETSEIOlI
&
~
(
(
~
CORETSElOlI
&
CORETSEooII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
)
|
(
~
CORETSEoOlI
&
CORETSEioII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
)
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIOlI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIOlI
<=
#
CORETSEOII
CORETSEoiII
;
end
assign
CORETSEiiII
=
~
CORETSElOlI
&
CORETSEooII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
|
CORETSElOlI
&
~
(
(
~
CORETSEIOlI
&
CORETSEloII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
)
|
(
~
CORETSEoOlI
&
CORETSEioII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
)
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSElOlI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSElOlI
<=
#
CORETSEOII
CORETSEiiII
;
end
assign
CORETSEOOlI
=
~
CORETSEoOlI
&
CORETSEioII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
|
CORETSEoOlI
&
~
(
(
~
CORETSEIOlI
&
CORETSEloII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
)
|
(
~
CORETSElOlI
&
CORETSEooII
&
CORETSEliII
&
CORETSEIiII
&
~
CORETSEl0II
)
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEoOlI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEoOlI
<=
#
CORETSEOII
CORETSEOOlI
;
end
assign
CORETSEO10I
=
~
CORETSEI10I
&
CORETSEoOlI
&
CORETSEiiII
|
CORETSEI10I
&
~
CORETSEIIlI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEI10I
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEI10I
<=
#
CORETSEOII
CORETSEO10I
;
end
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEiOlI
<=
#
CORETSEOII
1
'b
1
;
else
if
(
CORETSEIIlI
)
CORETSEiOlI
<=
#
CORETSEOII
1
'b
0
;
end
assign
CORETSEOIlI
=
CORETSEIOlI
&
CORETSEliII
&
~
CORETSEl0II
|
CORETSEIOlI
&
CORETSEillI
|
CORETSElOlI
&
CORETSEiOlI
&
~
CORETSEl0II
|
CORETSElOlI
&
CORETSEliII
&
~
CORETSEl0II
|
CORETSElOlI
&
CORETSEo0lI
|
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEiOlI
&
~
CORETSEl0II
|
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEo0lI
|
CORETSEoOlI
&
CORETSElolI
&
~
CORETSEl0II
|
CORETSEoOlI
&
CORETSEiolI
&
~
CORETSEl0II
|
CORETSEI10I
&
~
CORETSEl0II
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIIlI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIIlI
<=
#
CORETSEOII
CORETSEOIlI
;
end
assign
CORETSElIlI
=
CORETSEIIlI
&
~
CORETSEI0lI
&
CORETSEIOlI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEoIlI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEoIlI
<=
#
CORETSEOII
CORETSElIlI
;
end
assign
CORETSEiIlI
=
CORETSEIIlI
&
CORETSEI0lI
&
CORETSEIOlI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEOllI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEOllI
<=
#
CORETSEOII
CORETSEiIlI
;
end
assign
CORETSEIllI
=
CORETSEoIlI
|
CORETSEOllI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSElllI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSElllI
<=
#
CORETSEOII
CORETSEIllI
;
end
assign
CORETSEollI
=
CORETSElllI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEillI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEillI
<=
#
CORETSEOII
CORETSEollI
;
end
assign
CORETSEO0lI
=
~
CORETSEI0lI
&
CORETSEoIlI
|
CORETSEI0lI
&
~
(
CORETSEoOlI
|
CORETSElOlI
|
CORETSEOllI
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEI0lI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEI0lI
<=
#
CORETSEOII
CORETSEO0lI
;
end
assign
CORETSEl0lI
=
CORETSElOlI
&
CORETSEIIlI
|
CORETSEoOlI
&
CORETSEIIlI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEo0lI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEo0lI
<=
#
CORETSEOII
CORETSEl0lI
;
end
assign
CORETSEi0lI
=
CORETSElI0I
==
4
'h
c
&
~
CORETSEoI0I
;
assign
CORETSEO1lI
=
CORETSEoOlI
&
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEo0lI
|
CORETSEoOlI
&
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEOI0I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEI1lI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEI1lI
<=
#
CORETSEOII
CORETSEO1lI
;
end
assign
CORETSEl1lI
=
CORETSEoOlI
&
CORETSEi1II
&
CORETSEI1lI
|
CORETSEoOlI
&
CORETSEi1II
&
CORETSEo1lI
|
CORETSEoOlI
&
CORETSEi1II
&
CORETSEoilI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEo1lI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEo1lI
<=
#
CORETSEOII
CORETSEl1lI
;
end
assign
CORETSEi1lI
=
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEI1lI
|
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEo1lI
|
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEoilI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEOolI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEOolI
<=
#
CORETSEOII
CORETSEi1lI
;
end
assign
CORETSEIolI
=
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEOolI
|
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEoO0I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSElolI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSElolI
<=
#
CORETSEOII
CORETSEIolI
;
end
assign
CORETSEoolI
=
CORETSEoOlI
&
CORETSElolI
&
~
CORETSEi1II
&
CORETSEl0II
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEiolI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEiolI
<=
#
CORETSEOII
CORETSEoolI
;
end
assign
CORETSEOilI
=
CORETSEoOlI
&
CORETSEi1II
&
CORETSEIoII
&
CORETSEo0lI
|
CORETSEoOlI
&
CORETSEi1II
&
CORETSEIoII
&
CORETSEOI0I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIilI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIilI
<=
#
CORETSEOII
CORETSEOilI
;
end
assign
CORETSElilI
=
CORETSEoOlI
&
CORETSEIilI
|
CORETSEoOlI
&
CORETSEi1II
&
CORETSEIoII
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEoilI
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEoilI
<=
#
CORETSEOII
CORETSElilI
;
end
assign
CORETSEiilI
=
CORETSEo1lI
&
~
CORETSEoilI
;
assign
CORETSEOO0I
=
CORETSEoOlI
&
~
CORETSEi1II
&
CORETSEIoII
&
CORETSEI1lI
|
CORETSEoOlI
&
~
CORETSEi1II
&
CORETSEIoII
&
CORETSEo1lI
|
CORETSEoOlI
&
~
CORETSEi1II
&
CORETSEIoII
&
CORETSEoilI
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIO0I
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIO0I
<=
#
CORETSEOII
CORETSEOO0I
;
end
assign
CORETSElO0I
=
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEIO0I
|
CORETSEoOlI
&
~
CORETSEi1II
&
~
CORETSEIoII
&
CORETSEOI0I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEoO0I
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEoO0I
<=
#
CORETSEOII
CORETSElO0I
;
end
assign
CORETSEiO0I
=
CORETSEoOlI
&
~
CORETSEi1II
&
CORETSEIoII
&
CORETSEIO0I
|
CORETSEoOlI
&
~
CORETSEi1II
&
CORETSEIoII
&
CORETSEOI0I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEOI0I
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEOI0I
<=
#
CORETSEOII
CORETSEiO0I
;
end
assign
CORETSEI00I
=
CORETSEl1II
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEl00I
<=
#
CORETSEOII
8
'h
0
;
else
CORETSEl00I
<=
#
CORETSEOII
CORETSEI00I
;
end
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
begin
CORETSEio0I
<=
#
CORETSEOII
16
'h
0
;
end
else
if
(
CORETSEoIlI
)
begin
CORETSEio0I
<=
#
CORETSEOII
CORETSEIlII
;
end
else
begin
CORETSEio0I
<=
#
CORETSEOII
CORETSEio0I
;
end
end
assign
CORETSEil0I
=
{
8
{
CORETSElllI
}
}
&
CORETSEio0I
[
7
:
0
]
|
{
8
{
CORETSEillI
}
}
&
CORETSEio0I
[
15
:
8
]
|
{
8
{
CORETSEo1lI
}
}
&
CORETSEl00I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEO00I
<=
#
CORETSEOII
8
'h
0
;
else
CORETSEO00I
<=
#
CORETSEOII
CORETSEil0I
;
end
assign
CORETSEII0I
=
{
4
{
CORETSEo0lI
}
}
&
{
3
'b
000
,
CORETSEi0lI
}
|
{
4
{
CORETSEI1lI
|
CORETSEIilI
}
}
&
4
'h
8
|
{
4
{
CORETSEoilI
}
}
&
4
'h
9
|
{
4
{
CORETSEOolI
|
CORETSEIO0I
}
}
&
4
'h
a
|
{
4
{
CORETSElolI
|
CORETSEiolI
|
CORETSEOI0I
|
CORETSEoO0I
}
}
&
4
'h
b
|
{
4
{
CORETSEIIlI
|
CORETSEiOlI
}
}
&
4
'h
c
|
{
4
{
CORETSElllI
|
CORETSEillI
|
CORETSEiilI
}
}
&
4
'h
d
|
{
4
{
CORETSEoIlI
}
}
&
4
'h
e
|
{
4
{
CORETSEOllI
}
}
&
4
'h
f
;
assign
CORETSEliII
=
~
(
CORETSEIOlI
|
CORETSElOlI
|
CORETSEoOlI
)
|
CORETSEIOlI
&
~
CORETSEoIlI
&
~
CORETSEOllI
&
~
CORETSElllI
&
~
CORETSEillI
&
~
CORETSEIIlI
|
CORETSEIOlI
&
CORETSEillI
|
CORETSEo0lI
|
CORETSEI1lI
|
CORETSEo1lI
|
CORETSEOolI
|
CORETSElolI
|
CORETSEiolI
|
CORETSEIilI
|
CORETSEoilI
|
CORETSEIO0I
|
CORETSEoO0I
|
CORETSEOI0I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSElI0I
<=
#
CORETSEOII
4
'h
c
;
else
CORETSElI0I
<=
#
CORETSEOII
CORETSEII0I
;
end
assign
CORETSEoI0I
=
~
CORETSEllII
&
CORETSEIl0I
;
assign
CORETSEOl0I
=
~
CORETSEllII
&
(
CORETSEIl0I
^
CORETSEiI0I
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEIl0I
<=
#
CORETSEOII
1
'b
0
;
else
CORETSEIl0I
<=
#
CORETSEOII
CORETSEOl0I
;
end
CoreTSE_M2S090_CORETSE_AHB_0_T8B10B
CORETSEOi0I
(
.CORETSEO00I
(
CORETSEO00I
)
,
.CORETSElI0I
(
CORETSElI0I
)
,
.CORETSEoI0I
(
CORETSEoI0I
)
,
.CORETSEll0I
(
CORETSEll0I
)
,
.CORETSEiI0I
(
CORETSEiI0I
)
)
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEol0I
<=
#
CORETSEOII
10
'h
0
;
else
CORETSEol0I
<=
#
CORETSEOII
CORETSEll0I
;
end
assign
CORETSEo00I
=
{
10
{
~
CORETSEiIII
&
~
CORETSEolII
}
}
&
CORETSEol0I
|
{
10
{
|
CORETSEO0II
&
CORETSEolII
}
}
&
CORETSEl10I
|
{
10
{
~|
CORETSEO0II
&
CORETSEolII
}
}
&
CORETSEilII
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEi00I
<=
#
CORETSEOII
10
'h
0
;
else
CORETSEi00I
<=
#
CORETSEOII
CORETSEo00I
;
end
assign
CORETSEI0II
=
{
10
{
(
CORETSEiIII
&
~
CORETSEolII
)
}
}
&
{
CORETSEoIII
,
CORETSEIIII
,
CORETSElIII
[
7
:
0
]
}
|
{
10
{
~
(
CORETSEiIII
&
~
CORETSEolII
)
}
}
&
CORETSEi00I
;
always
@
(
posedge
CORETSEoOOI
or
posedge
CORETSElo1
)
begin
if
(
CORETSElo1
||
CORETSEoo1
)
CORETSEo10I
<=
#
CORETSEOII
2
'h
0
;
else
CORETSEo10I
<=
#
CORETSEOII
CORETSEo10I
+
2
'h
1
;
end
assign
CORETSEi10I
=
CORETSEO0II
[
2
:
0
]
==
3
'b
001
;
assign
CORETSEOo0I
=
CORETSEO0II
[
2
:
0
]
==
3
'b
010
;
assign
CORETSEIo0I
=
CORETSEO0II
[
2
:
0
]
==
3
'b
011
;
assign
CORETSElo0I
=
CORETSEO0II
[
2
:
0
]
==
3
'b
100
;
assign
CORETSEoo0I
=
CORETSEO0II
[
2
:
0
]
==
3
'b
101
;
assign
CORETSEl10I
=
{
10
{
(
CORETSEi10I
)
}
}
&
10
'h
255
|
{
10
{
(
CORETSEOo0I
&
~
CORETSEo10I
[
0
]
)
}
}
&
10
'h
17c
|
{
10
{
(
CORETSEOo0I
&
CORETSEo10I
[
0
]
)
}
}
&
10
'h
283
|
{
10
{
(
CORETSEIo0I
)
}
}
&
10
'h
3e0
|
{
10
{
(
CORETSElo0I
&
CORETSEo10I
==
2
'h
0
)
}
}
&
10
'h
17c
|
{
10
{
(
CORETSElo0I
&
CORETSEo10I
==
2
'h
1
)
}
}
&
10
'h
0c9
|
{
10
{
(
CORETSElo0I
&
CORETSEo10I
==
2
'h
2
)
}
}
&
10
'h
0e5
|
{
10
{
(
CORETSElo0I
&
CORETSEo10I
==
2
'h
3
)
}
}
&
10
'h
2a3
|
{
10
{
(
CORETSEoo0I
)
}
}
&
10
'h
07c
;
endmodule
