URL
https://opencores.org/ocsvn/neorv32/neorv32/trunk
[/] [neorv32/] [trunk/] [rtl/] [core/] [neorv32_trng.vhd] - Diff between revs 2 and 3
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 2 |
Rev 3 |
Line 248... |
Line 248... |
-- check groups of two non-overlapping bits from the input stream
|
-- check groups of two non-overlapping bits from the input stream
|
tmp_v := db_state & rnd_sync(2 downto 1);
|
tmp_v := db_state & rnd_sync(2 downto 1);
|
case tmp_v is
|
case tmp_v is
|
when "101" => db_enable <= '1'; db_data <= '1'; -- rising edge -> '1'
|
when "101" => db_enable <= '1'; db_data <= '1'; -- rising edge -> '1'
|
when "110" => db_enable <= '1'; db_data <= '0'; -- falling edge -> '0'
|
when "110" => db_enable <= '1'; db_data <= '0'; -- falling edge -> '0'
|
when others => db_enable <= '0'; db_data <= '-'; -- invalid
|
when others => db_enable <= '0'; db_data <= '0'; -- invalid
|
end case;
|
end case;
|
end process debiasing;
|
end process debiasing;
|
|
|
-- new valid byte available? --
|
-- new valid byte available? --
|
new_sample <= '1' when (rnd_cnt = "10000") and (rnd_enable = '1') and (db_enable = '1') else '0';
|
new_sample <= '1' when (rnd_cnt = "10000") and (rnd_enable = '1') and (db_enable = '1') else '0';
|
© copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.