Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
C
Conv TTL Blocking - Testing
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Conv TTL Blocking - Testing
Commits
9154059d
Commit
9154059d
authored
Oct 19, 2016
by
Denia Bouhired-Ferrag
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added support for INV channel LEDs testing
parent
dcc356ef
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
43 additions
and
29 deletions
+43
-29
pts.vhd
fm/hdl/top/pts.vhd
+43
-29
No files found.
fm/hdl/top/pts.vhd
View file @
9154059d
...
...
@@ -42,6 +42,10 @@
--==============================================================================
-- last changes:
-- 2014-10-30 Theodor Stana File created
-- 2016-10-19 Denia Bouhired -- Added support for inv channel LEDs testing
-- by extending test sequence to 10 outputs.
-- Removed unused signals for inv-led testing,
-- presumably added for conv-ttl-rs485 testing.
--==============================================================================
-- TODO: -
--==============================================================================
...
...
@@ -108,6 +112,7 @@ entity pts is
-- Channel leds
led_front_n_o
:
out
std_logic_vector
(
5
downto
0
);
led_front_inv_n_o
:
out
std_logic_vector
(
3
downto
0
);
led_rear_n_o
:
out
std_logic_vector
(
5
downto
0
);
-- SPI interface to on-board flash chip
...
...
@@ -628,9 +633,7 @@ architecture arch of pts is
signal
stat_led_en_d0
:
std_logic
;
signal
front_led_en_risedge_p
:
std_logic
;
signal
stat_led_en_risedge_p
:
std_logic
;
signal
front_led_seq
:
std_logic_vector
(
5
downto
0
);
signal
inv_led
:
std_logic_vector
(
3
downto
0
);
signal
inv_led_seq
:
std_logic_vector
(
3
downto
0
);
signal
front_led_seq
:
std_logic_vector
(
9
downto
0
);
signal
front_led
:
std_logic_vector
(
9
downto
0
);
signal
front_led_cnt
:
t_pulse_led_cnt
;
signal
bicolor_led_state
:
std_logic_vector
(
23
downto
0
);
...
...
@@ -1887,31 +1890,37 @@ end generate gen_rear_test_logic;
end
process
p_led_seq
;
-- Sequence the front-panel LEDs based on the sequence counter
front_led_seq
<=
"000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
1
)
else
"000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
2
)
else
"000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
3
)
else
"001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
4
)
else
"010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
5
)
else
"100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
6
)
else
"000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
7
)
else
"000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
8
)
else
"000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
9
)
else
"001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
10
)
else
"010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
11
)
else
"100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
12
)
else
"000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
13
)
else
"000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
14
)
else
"000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
15
)
else
"001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
16
)
else
"010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
17
)
else
"100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
18
)
else
"000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
19
)
else
"000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
20
)
else
"000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
21
)
else
"001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
22
)
else
"010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
23
)
else
"100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
24
)
else
"000000"
;
front_led_seq
<=
"0000000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
1
)
else
"0000000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
2
)
else
"0000000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
3
)
else
"0000001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
4
)
else
"0000010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
5
)
else
"0000100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
6
)
else
"0001000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
7
)
else
"0010000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
8
)
else
"0100000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
9
)
else
"1000000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
10
)
else
"0000000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
11
)
else
"0000000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
12
)
else
"0000000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
13
)
else
"0000001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
14
)
else
"0000010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
15
)
else
"0000100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
16
)
else
"0001000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
17
)
else
"0010000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
18
)
else
"0100000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
19
)
else
"1000000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
20
)
else
"0000000001"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
21
)
else
"0000000010"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
22
)
else
"0000000100"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
23
)
else
"0000001000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
24
)
else
"0000010000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
25
)
else
"0000100000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
26
)
else
"0001000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
27
)
else
"0010000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
28
)
else
"0100000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
29
)
else
"1000000000"
when
(
pulse_led_en
=
'1'
)
and
(
led_seq
=
30
)
else
"0000000000"
;
-- Light each LED red and green in a sequence, based on the sequence counter.
--
...
...
@@ -1975,8 +1984,13 @@ end generate gen_rear_test_logic;
);
-- Drive front pulse LEDs
led_front_n_o
<=
not
front_led_seq
when
(
pulse_led_en
=
'1'
)
else
led_front_n_o
<=
not
front_led_seq
(
5
downto
0
)
when
(
pulse_led_en
=
'1'
)
else
not
front_led
(
5
downto
0
);
-- Drive front INV pulse LEDs
led_front_inv_n_o
<=
not
front_led_seq
(
9
downto
6
)
when
(
pulse_led_en
=
'1'
)
else
not
front_led
(
9
downto
6
);
--============================================================================
-- Drive unused outputs with safe values
...
...
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