Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
x393
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
Elphel
x393
Commits
7614ead5
Commit
7614ead5
authored
Feb 22, 2015
by
Andrey Filippov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
debugging after modifications
parent
ad0351ef
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
1004 additions
and
2154 deletions
+1004
-2154
x393_parameters.vh
includes/x393_parameters.vh
+4
-4
mcntrl393.v
memctrl/mcntrl393.v
+9
-9
x393.v
x393.v
+4
-4
x393_testbench01.sav
x393_testbench01.sav
+982
-2133
x393_testbench01.tf
x393_testbench01.tf
+5
-4
No files found.
includes/x393_parameters.vh
View file @
7614ead5
...
@@ -33,10 +33,10 @@
...
@@ -33,10 +33,10 @@
parameter MCONTR_BUF1_WR_ADDR = 'h0800, // AXI write address to buffer 1 (PL sequence, scanline, memory write)
parameter MCONTR_BUF1_WR_ADDR = 'h0800, // AXI write address to buffer 1 (PL sequence, scanline, memory write)
parameter MCONTR_BUF2_RD_ADDR = 'h0c00, // AXI read address from buffer 2 (PL sequence, tiles, memory read)
parameter MCONTR_BUF2_RD_ADDR = 'h0c00, // AXI read address from buffer 2 (PL sequence, tiles, memory read)
parameter MCONTR_BUF2_WR_ADDR = 'h0c00, // AXI write address to buffer 2 (PL sequence, tiles, memory write)
parameter MCONTR_BUF2_WR_ADDR = 'h0c00, // AXI write address to buffer 2 (PL sequence, tiles, memory write)
parameter MCONTR_BUF3_RD_ADDR = 'h
08
00, // AXI read address from buffer 3 (PL sequence, scanline, memory read)
parameter MCONTR_BUF3_RD_ADDR = 'h
10
00, // AXI read address from buffer 3 (PL sequence, scanline, memory read)
parameter MCONTR_BUF3_WR_ADDR = 'h
08
00, // AXI write address to buffer 3 (PL sequence, scanline, memory write)
parameter MCONTR_BUF3_WR_ADDR = 'h
10
00, // AXI write address to buffer 3 (PL sequence, scanline, memory write)
parameter MCONTR_BUF4_RD_ADDR = 'h
0c
00, // AXI read address from buffer 4 (PL sequence, tiles, memory read)
parameter MCONTR_BUF4_RD_ADDR = 'h
14
00, // AXI read address from buffer 4 (PL sequence, tiles, memory read)
parameter MCONTR_BUF4_WR_ADDR = 'h
0c
00, // AXI write address to buffer 4 (PL sequence, tiles, memory write)
parameter MCONTR_BUF4_WR_ADDR = 'h
14
00, // AXI write address to buffer 4 (PL sequence, tiles, memory write)
//command interface parameters
//command interface parameters
parameter DLY_LD = 'h080, // address to generate delay load
parameter DLY_LD = 'h080, // address to generate delay load
parameter DLY_LD_MASK = 'h380, // address mask to generate delay load
parameter DLY_LD_MASK = 'h380, // address mask to generate delay load
...
...
memctrl/mcntrl393.v
View file @
7614ead5
...
@@ -40,10 +40,10 @@ module mcntrl393 #(
...
@@ -40,10 +40,10 @@ module mcntrl393 #(
parameter
MCONTR_BUF1_WR_ADDR
=
'h0800
,
// AXI write address to buffer 1 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF1_WR_ADDR
=
'h0800
,
// AXI write address to buffer 1 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF2_RD_ADDR
=
'h0c00
,
// AXI read address from buffer 2 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF2_RD_ADDR
=
'h0c00
,
// AXI read address from buffer 2 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF2_WR_ADDR
=
'h0c00
,
// AXI write address to buffer 2 (PL sequence, tiles, memory write)
parameter
MCONTR_BUF2_WR_ADDR
=
'h0c00
,
// AXI write address to buffer 2 (PL sequence, tiles, memory write)
parameter
MCONTR_BUF3_RD_ADDR
=
'h
08
00
,
// AXI read address from buffer 3 (PL sequence, scanline, memory read)
parameter
MCONTR_BUF3_RD_ADDR
=
'h
10
00
,
// AXI read address from buffer 3 (PL sequence, scanline, memory read)
parameter
MCONTR_BUF3_WR_ADDR
=
'h
08
00
,
// AXI write address to buffer 3 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF3_WR_ADDR
=
'h
10
00
,
// AXI write address to buffer 3 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF4_RD_ADDR
=
'h
0c
00
,
// AXI read address from buffer 4 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF4_RD_ADDR
=
'h
14
00
,
// AXI read address from buffer 4 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF4_WR_ADDR
=
'h
0c
00
,
// AXI write address to buffer 4 (PL sequence, tiles, memory write)
parameter
MCONTR_BUF4_WR_ADDR
=
'h
14
00
,
// AXI write address to buffer 4 (PL sequence, tiles, memory write)
//command interface parameters
//command interface parameters
...
@@ -676,27 +676,27 @@ module mcntrl393 #(
...
@@ -676,27 +676,27 @@ module mcntrl393 #(
if
(
axi_rst
)
select_buf0rd
<=
0
;
if
(
axi_rst
)
select_buf0rd
<=
0
;
else
if
(
axird_start_burst
)
select_buf0rd
<=
select_buf0rd_w
;
else
if
(
axird_start_burst
)
select_buf0rd
<=
select_buf0rd_w
;
if
(
axi_rst
)
select_buf0wr
<=
0
;
if
(
axi_rst
)
select_buf0wr
<=
0
;
else
if
(
axi
rd
_start_burst
)
select_buf0wr
<=
select_buf0wr_w
;
else
if
(
axi
wr
_start_burst
)
select_buf0wr
<=
select_buf0wr_w
;
if
(
axi_rst
)
select_buf1rd
<=
0
;
if
(
axi_rst
)
select_buf1rd
<=
0
;
else
if
(
axird_start_burst
)
select_buf1rd
<=
select_buf1rd_w
;
else
if
(
axird_start_burst
)
select_buf1rd
<=
select_buf1rd_w
;
if
(
axi_rst
)
select_buf1wr
<=
0
;
if
(
axi_rst
)
select_buf1wr
<=
0
;
else
if
(
axi
rd
_start_burst
)
select_buf1wr
<=
select_buf1wr_w
;
else
if
(
axi
wr
_start_burst
)
select_buf1wr
<=
select_buf1wr_w
;
if
(
axi_rst
)
select_buf2rd
<=
0
;
if
(
axi_rst
)
select_buf2rd
<=
0
;
else
if
(
axird_start_burst
)
select_buf2rd
<=
select_buf2rd_w
;
else
if
(
axird_start_burst
)
select_buf2rd
<=
select_buf2rd_w
;
if
(
axi_rst
)
select_buf2wr
<=
0
;
if
(
axi_rst
)
select_buf2wr
<=
0
;
else
if
(
axi
rd
_start_burst
)
select_buf2wr
<=
select_buf2wr_w
;
else
if
(
axi
wr
_start_burst
)
select_buf2wr
<=
select_buf2wr_w
;
if
(
axi_rst
)
select_buf3rd
<=
0
;
if
(
axi_rst
)
select_buf3rd
<=
0
;
else
if
(
axird_start_burst
)
select_buf3rd
<=
select_buf3rd_w
;
else
if
(
axird_start_burst
)
select_buf3rd
<=
select_buf3rd_w
;
if
(
axi_rst
)
select_buf3wr
<=
0
;
if
(
axi_rst
)
select_buf3wr
<=
0
;
else
if
(
axi
rd
_start_burst
)
select_buf3wr
<=
select_buf3wr_w
;
else
if
(
axi
wr
_start_burst
)
select_buf3wr
<=
select_buf3wr_w
;
if
(
axi_rst
)
select_buf4rd
<=
0
;
if
(
axi_rst
)
select_buf4rd
<=
0
;
else
if
(
axird_start_burst
)
select_buf4rd
<=
select_buf4rd_w
;
else
if
(
axird_start_burst
)
select_buf4rd
<=
select_buf4rd_w
;
if
(
axi_rst
)
select_buf4wr
<=
0
;
if
(
axi_rst
)
select_buf4wr
<=
0
;
else
if
(
axi
rd
_start_burst
)
select_buf4wr
<=
select_buf4wr_w
;
else
if
(
axi
wr
_start_burst
)
select_buf4wr
<=
select_buf4wr_w
;
if
(
axi_rst
)
axird_selected_r
<=
0
;
if
(
axi_rst
)
axird_selected_r
<=
0
;
...
...
x393.v
View file @
7614ead5
...
@@ -38,10 +38,10 @@ module x393 #(
...
@@ -38,10 +38,10 @@ module x393 #(
parameter
MCONTR_BUF1_WR_ADDR
=
'h0800
,
// AXI write address to buffer 1 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF1_WR_ADDR
=
'h0800
,
// AXI write address to buffer 1 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF2_RD_ADDR
=
'h0c00
,
// AXI read address from buffer 2 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF2_RD_ADDR
=
'h0c00
,
// AXI read address from buffer 2 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF2_WR_ADDR
=
'h0c00
,
// AXI write address to buffer 2 (PL sequence, tiles, memory write)
parameter
MCONTR_BUF2_WR_ADDR
=
'h0c00
,
// AXI write address to buffer 2 (PL sequence, tiles, memory write)
parameter
MCONTR_BUF3_RD_ADDR
=
'h
08
00
,
// AXI read address from buffer 3 (PL sequence, scanline, memory read)
parameter
MCONTR_BUF3_RD_ADDR
=
'h
10
00
,
// AXI read address from buffer 3 (PL sequence, scanline, memory read)
parameter
MCONTR_BUF3_WR_ADDR
=
'h
08
00
,
// AXI write address to buffer 3 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF3_WR_ADDR
=
'h
10
00
,
// AXI write address to buffer 3 (PL sequence, scanline, memory write)
parameter
MCONTR_BUF4_RD_ADDR
=
'h
0c
00
,
// AXI read address from buffer 4 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF4_RD_ADDR
=
'h
14
00
,
// AXI read address from buffer 4 (PL sequence, tiles, memory read)
parameter
MCONTR_BUF4_WR_ADDR
=
'h
0c
00
,
// AXI write address to buffer 4 (PL sequence, tiles, memory write)
parameter
MCONTR_BUF4_WR_ADDR
=
'h
14
00
,
// AXI write address to buffer 4 (PL sequence, tiles, memory write)
//command interface parameters
//command interface parameters
parameter
DLY_LD
=
'h080
,
// address to generate delay load
parameter
DLY_LD
=
'h080
,
// address to generate delay load
parameter
DLY_LD_MASK
=
'h380
,
// address mask to generate delay load
parameter
DLY_LD_MASK
=
'h380
,
// address mask to generate delay load
...
...
x393_testbench01.sav
View file @
7614ead5
This source diff could not be displayed because it is too large. You can
view the blob
instead.
x393_testbench01.tf
View file @
7614ead5
...
@@ -31,9 +31,9 @@
...
@@ -31,9 +31,9 @@
`
define
TEST_READ_BLOCK
1
`
define
TEST_READ_BLOCK
1
//
`define TEST_SCANLINE_WRITE 1
`
define
TEST_SCANLINE_WRITE
1
`
define
TEST_SCANLINE_WRITE_WAIT
1
// wait TEST_SCANLINE_WRITE finished (frame_done)
`
define
TEST_SCANLINE_WRITE_WAIT
1
// wait TEST_SCANLINE_WRITE finished (frame_done)
//
`define TEST_SCANLINE_READ 1
`
define
TEST_SCANLINE_READ
1
`
define
TEST_READ_SHOW
1
`
define
TEST_READ_SHOW
1
//`define TEST_TILED_WRITE 1
//`define TEST_TILED_WRITE 1
`
define
TEST_TILED_WRITE_WAIT
1
// wait TEST_SCANLINE_WRITE finished (frame_done)
`
define
TEST_TILED_WRITE_WAIT
1
// wait TEST_SCANLINE_WRITE finished (frame_done)
...
@@ -372,7 +372,8 @@ end
...
@@ -372,7 +372,8 @@ end
// protect from never end
// protect from never end
initial
begin
initial
begin
// #10000000;
// #10000000;
#200000;
// #200000;
#100000;
// #60000;
// #60000;
$display
(
"finish testbench 2"
);
$display
(
"finish testbench 2"
);
$finish
;
$finish
;
...
@@ -960,7 +961,7 @@ simul_axi_read #(
...
@@ -960,7 +961,7 @@ simul_axi_read #(
// prepare all sequences
// prepare all sequences
set_all_sequences
;
set_all_sequences
;
// prepare write buffer
// prepare write buffer
write_block_buf_chn
(
1
,
0
,
256
);
// fill block memory (channel, page, number)
write_block_buf_chn
(
0
,
0
,
256
);
// fill block memory (channel, page, number)
// set all delays
// set all delays
//#axi_set_delays - from tables, per-pin
//#axi_set_delays - from tables, per-pin
`
ifdef
SET_PER_PIN_DEALYS
`
ifdef
SET_PER_PIN_DEALYS
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment