Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
F
FMC TDC 1ns 5cha - Gateware
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
FMC TDC 1ns 5cha - Gateware
Commits
f1aadd5f
Commit
f1aadd5f
authored
Sep 11, 2018
by
Tomasz Wlostowski
Committed by
Tristan Gingold
Sep 12, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
rtl/data_engine: don't use possibly metastable ef1_meta/ef2_meta signals.
parent
5818355e
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
3 additions
and
18 deletions
+3
-18
acam_databus_interface.vhd
hdl/rtl/acam_databus_interface.vhd
+0
-2
data_engine.vhd
hdl/rtl/data_engine.vhd
+2
-7
fmc_tdc_core.vhd
hdl/rtl/fmc_tdc_core.vhd
+1
-5
tdc_core_pkg.vhd
hdl/rtl/tdc_core_pkg.vhd
+0
-4
No files found.
hdl/rtl/acam_databus_interface.vhd
View file @
f1aadd5f
...
...
@@ -112,9 +112,7 @@ entity acam_databus_interface is
-- OUTPUTS
-- signals internal to the chip: interface with other modules
ef1_o
:
out
std_logic
;
-- ACAM FIFO1 empty flag (bouble registered with clk_i)
ef1_meta_o
:
out
std_logic
;
-- ACAM FIFO1 empty flag (after 1 clk_i register)
ef2_o
:
out
std_logic
;
-- ACAM FIFO2 empty flag (bouble registered with clk_i)
ef2_meta_o
:
out
std_logic
;
-- ACAM FIFO2 empty flag (after 1 clk_i register)
-- Signals to ACAM interface
adr_o
:
out
std_logic_vector
(
3
downto
0
);
-- ACAM address
...
...
hdl/rtl/data_engine.vhd
View file @
f1aadd5f
...
...
@@ -108,9 +108,7 @@ entity data_engine is
-- Signals from the acam_databus_interface unit: empty FIFO flags
acam_ef1_i
:
in
std_logic
;
-- empty fifo 1 (fully synched signal; ef1 after 2 DFFs)
acam_ef1_meta_i
:
in
std_logic
;
-- empty fifo 1 (possibly metestable; ef1 after 1 DFF)
acam_ef2_i
:
in
std_logic
;
-- empty fifo 2 (fully synched signal; ef2 after 2 DFFs)
acam_ef2_meta_i
:
in
std_logic
;
-- empty fifo 2 (possibly metestable; ef2 after 1 DFF)
-- Signals from the acam_databus_interface unit: communication with ACAM for configuration or tstamps retreival
acam_ack_i
:
in
std_logic
;
-- WISHBONE ack
...
...
@@ -199,7 +197,7 @@ begin
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
-- Combinatorial process
data_engine_fsm_comb
:
process
(
engine_st
,
activate_acq_p_i
,
deactivate_acq_p_i
,
acam_ef1_i
,
acam_adr
,
acam_ef2_i
,
acam_
ef1_meta_i
,
acam_ef2_meta_i
,
acam_
wr_config_p_i
,
acam_ef2_i
,
acam_wr_config_p_i
,
acam_rdbk_config_p_i
,
acam_rdbk_status_p_i
,
acam_ack_i
,
acam_rst_p_i
,
acam_rdbk_ififo1_p_i
,
acam_rdbk_ififo2_p_i
,
acam_rdbk_start01_p_i
,
start_from_fpga_i
,
time_c
,
time_c_full_p
)
...
...
@@ -401,9 +399,6 @@ begin
if
acam_ef2_i
=
'0'
then
nxt_engine_st
<=
GET_STAMP2
;
elsif
acam_ef1_meta_i
=
'0'
then
nxt_engine_st
<=
GET_STAMP1
;
else
nxt_engine_st
<=
ACTIVE
;
end
if
;
...
...
@@ -430,7 +425,7 @@ begin
if
acam_ef1_i
=
'0'
then
nxt_engine_st
<=
GET_STAMP1
;
elsif
acam_ef2_
meta_
i
=
'0'
then
elsif
acam_ef2_i
=
'0'
then
nxt_engine_st
<=
GET_STAMP2
;
else
nxt_engine_st
<=
ACTIVE
;
...
...
hdl/rtl/fmc_tdc_core.vhd
View file @
f1aadd5f
...
...
@@ -240,7 +240,7 @@ architecture rtl of fmc_tdc_core is
signal
acm_adr
:
std_logic_vector
(
7
downto
0
);
signal
acm_cyc
,
acm_stb
,
acm_we
,
acm_ack
:
std_logic
;
signal
acm_dat_r
,
acm_dat_w
:
std_logic_vector
(
g_width
-1
downto
0
);
signal
acam_ef1
,
acam_ef2
,
acam_ef1_meta
,
acam_ef2_meta
:
std_logic
;
signal
acam_ef1
,
acam_ef2
:
std_logic
;
signal
acam_errflag_f_edge_p
,
acam_errflag_r_edge_p
:
std_logic
;
signal
acam_intflag_f_edge_p
:
std_logic
;
signal
acam_tstamp1
,
acam_tstamp2
:
std_logic_vector
(
g_width
-1
downto
0
);
...
...
@@ -420,9 +420,7 @@ begin
rd_n_o
=>
rd_n_o
,
wr_n_o
=>
wr_n_o
,
ef1_o
=>
acam_ef1
,
ef1_meta_o
=>
acam_ef1_meta
,
ef2_o
=>
acam_ef2
,
ef2_meta_o
=>
acam_ef2_meta
,
clk_i
=>
clk_tdc_i
,
rst_i
=>
rst_tdc_i
,
adr_i
=>
acm_adr
,
...
...
@@ -469,9 +467,7 @@ begin
clk_i
=>
clk_tdc_i
,
rst_i
=>
rst_tdc_i
,
acam_ef1_i
=>
acam_ef1
,
acam_ef1_meta_i
=>
acam_ef1_meta
,
acam_ef2_i
=>
acam_ef2
,
acam_ef2_meta_i
=>
acam_ef2_meta
,
activate_acq_p_i
=>
activate_acq_p
,
deactivate_acq_p_i
=>
deactivate_acq_p
,
acam_wr_config_p_i
=>
load_acam_config
,
...
...
hdl/rtl/tdc_core_pkg.vhd
View file @
f1aadd5f
...
...
@@ -610,9 +610,7 @@ package tdc_core_pkg is
clk_i
:
in
std_logic
;
rst_i
:
in
std_logic
;
acam_ef1_i
:
in
std_logic
;
acam_ef1_meta_i
:
in
std_logic
;
acam_ef2_i
:
in
std_logic
;
acam_ef2_meta_i
:
in
std_logic
;
activate_acq_p_i
:
in
std_logic
;
deactivate_acq_p_i
:
in
std_logic
;
acam_wr_config_p_i
:
in
std_logic
;
...
...
@@ -856,9 +854,7 @@ package tdc_core_pkg is
wr_n_o
:
out
std_logic
;
ack_o
:
out
std_logic
;
ef1_o
:
out
std_logic
;
ef1_meta_o
:
out
std_logic
;
ef2_o
:
out
std_logic
;
ef2_meta_o
:
out
std_logic
;
dat_o
:
out
std_logic_vector
(
31
downto
0
));
----------------------------------------------------------------------
end
component
;
...
...
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