Skip to content

Commit

Permalink
Resolve 'X' and 'U' on DRPDO output from MMCM to zeros to avoid simul…
Browse files Browse the repository at this point in the history
…ation issues
  • Loading branch information
bengineerd committed Jun 11, 2024
1 parent fda1f5a commit d03eef7
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions xilinx/UltraScale+/clocking/rtl/ClockManagerUltraScale.vhd
Original file line number Diff line number Diff line change
Expand Up @@ -107,8 +107,8 @@ architecture rtl of ClockManagerUltraScale is
signal rstInLoc : sl;
signal clkInLoc : sl;
signal lockedLoc : sl;
signal clkOutMmcm : slv(6 downto 0);
signal clkOutLoc : slv(6 downto 0);
signal clkOutMmcm : slv(6 downto 0) := (others => '0');
signal clkOutLoc : slv(6 downto 0) := (others => '0');
signal clkFbOut : sl;
signal clkFbIn : sl;

Expand All @@ -117,7 +117,8 @@ architecture rtl of ClockManagerUltraScale is
signal drpWe : sl;
signal drpAddr : slv(6 downto 0);
signal drpDi : slv(15 downto 0);
signal drpDo : slv(15 downto 0);
signal drpDo : slv(15 downto 0) := (others => '0');
signal drpDo01 : slv(15 downto 0) := (others => '0');

attribute keep_hierarchy : string;
attribute keep_hierarchy of rtl : architecture is "yes";
Expand Down Expand Up @@ -156,7 +157,9 @@ begin
drpWe => drpWe,
drpAddr => drpAddr,
drpDi => drpDi,
drpDo => drpDo);
drpDo => drpDo01);

drpDo01 <= to_stdLogicVector(to_bitvector(drpDo));

MmcmGen : if (TYPE_G = "MMCM") and (SIMULATION_G = false) generate
U_Mmcm : MMCME4_ADV
Expand Down

0 comments on commit d03eef7

Please sign in to comment.