Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
W
White Rabbit Switch - Gateware
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
12
Issues
12
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Projects
White Rabbit Switch - Gateware
Commits
6befb689
Commit
6befb689
authored
Jan 23, 2012
by
Maciej Lipinski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
swcore:input block, bug fix on dropping incoming pcks (@RTU decision)
parent
332b8403
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
13 deletions
+13
-13
xswc_input_block.vhd
modules/wrsw_swcore/xswc_input_block.vhd
+13
-13
No files found.
modules/wrsw_swcore/xswc_input_block.vhd
View file @
6befb689
...
...
@@ -246,7 +246,8 @@ architecture syn of xswc_input_block is
-- all but first page of the pck
type
t_write_state
is
(
S_IDLE
,
S_DROP_PCK
,
S_DROP_PCK
,
S_LAST_DROP
,
S_START_FIFO_RD
,
-- start requesting data from FIFO, but still
-- not outputing to write_pump (initial cycle)
-- trick: drdy restricted only to S_WRITE_MPM
...
...
@@ -677,27 +678,26 @@ begin --arch
------------------------------------------------------------------------------------------
write_state
<=
S_IDLE
;
------------------------------------------------------------------------------------------
elsif
(
write_ctrl_out
/=
b"01"
and
-- the data coming from FIFO indicates its not the first
-- word of PCK *and*
mpm_pckstart
=
'1'
)
then
-- we are saying to MPM it's first word of PCK
------------------------------------------------------------------------------------------
-- this is pathologic situation, bad, not sure what to do
assert
false
report
"write_fsm: S_WRITE_MPM, should not go here"
;
------------------------------------------------------------------------------------------
else
-- in normal case, we end up here
------------------------------------------------------------------------------------------
if
(
write_ctrl_out
=
b"11"
)
then
-- EOF without valid data -
write_state
<=
S_LAST_MPM_WR
;
write_state
<=
S_LAST_DROP
;
end
if
;
------------------------------------------------------------------------------------------
end
if
;
--===========================================================================================
when
S_LAST_DROP
=>
--===========================================================================================
if
(
write_ctrl_out
=
b"01"
)
then
write_state
<=
S_NEW_PCK_IN_FIFO
;
else
write_state
<=
S_IDLE
;
end
if
;
-- TODO* enable to write to MPM even without RTU decision (will be quite some work)
-- for the time being wait for RTU here
...
...
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