From 17d72a7d0acef8fdff2ec6e177854728722e6546 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joachim=20Stro=CC=88mbergson?= Date: Thu, 2 Oct 2014 14:21:04 +0200 Subject: Updating trng to debugged version. --- src/rtl/trng_csprng.v | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'src/rtl/trng_csprng.v') diff --git a/src/rtl/trng_csprng.v b/src/rtl/trng_csprng.v index 83c383f..c4576e8 100644 --- a/src/rtl/trng_csprng.v +++ b/src/rtl/trng_csprng.v @@ -65,6 +65,19 @@ module trng_csprng( //---------------------------------------------------------------- // Internal constant and parameter definitions. //---------------------------------------------------------------- + parameter ADDR_CTRL = 8'h10; + parameter CTRL_ENABLE_BIT = 0; + parameter CTRL_SEED_BIT = 1; + + parameter ADDR_STATUS = 8'h11; + parameter STATUS_RND_VALID_BIT = 0; + + parameter ADDR_RND_DATA = 8'h20; + + parameter ADDR_NUM_ROUNDS = 8'h40; + parameter ADDR_NUM_BLOCKS_LOW = 8'h41; + parameter ADDR_NUM_BLOCKS_HIGH = 8'h42; + parameter CIPHER_KEYLEN256 = 1'b1; // 256 bit key. parameter CIPHER_MAX_BLOCKS = 64'h1000000000000000; @@ -82,19 +95,6 @@ module trng_csprng( parameter DEFAULT_NUM_ROUNDS = 5'h18; parameter DEFAULT_NUM_BLOCKS = 64'h1000000000000000; - parameter ADDR_CTRL = 8'h10; - parameter CTRL_ENABLE_BIT = 0; - parameter CTRL_SEED_BIT = 1; - - parameter ADDR_STATUS = 8'h11; - parameter STATUS_RND_VALID_BIT = 0; - - parameter ADDR_RND_DATA = 8'h20; - - parameter ADDR_NUM_ROUNDS = 8'h40; - parameter ADDR_NUM_BLOCK_LOW = 8'h41; - parameter ADDR_NUM_BLOCK_HIGH = 8'h42; - //---------------------------------------------------------------- // Registers including update variables and write enable. @@ -253,7 +253,7 @@ module trng_csprng( more_seed_reg <= 0; seed_ack_reg <= 0; ready_reg <= 0; - enable_reg <= 0; + enable_reg <= 1; seed_reg <= 0; num_rounds_reg <= DEFAULT_NUM_ROUNDS; num_blocks_low_reg <= DEFAULT_NUM_BLOCKS[31 : 0]; @@ -366,13 +366,13 @@ module trng_csprng( num_rounds_we = 1; end - ADDR_NUM_BLOCK_LOW: + ADDR_NUM_BLOCKS_LOW: begin num_blocks_low_new = write_data; num_blocks_low_we = 1; end - ADDR_NUM_BLOCK_HIGH: + ADDR_NUM_BLOCKS_HIGH: begin num_blocks_high_new = write_data; num_blocks_high_we = 1; @@ -411,12 +411,12 @@ module trng_csprng( tmp_read_data = {27'h0000000, num_rounds_reg}; end - ADDR_NUM_BLOCK_LOW: + ADDR_NUM_BLOCKS_LOW: begin tmp_read_data = num_blocks_low_reg; end - ADDR_NUM_BLOCK_HIGH: + ADDR_NUM_BLOCKS_HIGH: begin tmp_read_data = num_blocks_high_reg; end -- cgit v1.2.3