Module Definition
dashboard | hierarchy | modlist | groups | tests | asserts

Module : hmac_core
SCORELINECONDTOGGLEFSMBRANCHASSERT
90.06 95.33 80.11 100.00 84.81

Source File(s) :
/workspace/default/sim-vcs/../src/lowrisc_ip_hmac_0.1/rtl/hmac_core.sv

Module self-instances :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
tb.dut.u_hmac 90.06 95.33 80.11 100.00 84.81



Module Instance : tb.dut.u_hmac

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
90.06 95.33 80.11 100.00 84.81


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
90.06 95.33 80.11 100.00 84.81


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
83.30 94.02 77.27 100.00 40.00 88.51 100.00 dut


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
no children


Since this is the module's only instance, the coverage report is the same as for the module.
Line Coverage for Module : hmac_core
Line No.TotalCoveredPercent
TOTAL15014395.33
CONT_ASSIGN12311100.00
CONT_ASSIGN12411100.00
CONT_ASSIGN12611100.00
CONT_ASSIGN12711100.00
CONT_ASSIGN12911100.00
CONT_ASSIGN13011100.00
ALWAYS1342121100.00
CONT_ASSIGN19411100.00
CONT_ASSIGN19611100.00
CONT_ASSIGN19711100.00
ALWAYS213161593.75
CONT_ASSIGN23711100.00
ALWAYS24044100.00
CONT_ASSIGN24811100.00
ALWAYS25610660.00
ALWAYS27433100.00
ALWAYS28066100.00
ALWAYS29044100.00
ALWAYS29866100.00
CONT_ASSIGN30711100.00
ALWAYS31033100.00
ALWAYS315646296.88
CONT_ASSIGN44411100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_hmac_0.1/rtl/hmac_core.sv' or '../src/lowrisc_ip_hmac_0.1/rtl/hmac_core.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
123 1 1
124 1 1
126 1 1
127 1 1
129 1 1
130 1 1
134 1 1
136 1 1
138 1 1
140 1 1
142 1 1
146 1 1
148 1 1
150 1 1
152 1 1
156 1 1
158 1 1
160 1 1
162 1 1
166 1 1
167 1 1
169 1 1
170 1 1
175 1 1
176 1 1
178 1 1
179 1 1
194 1 1
196 1 1
197 1 1
213 1 1
214 1 1
215 1 1
218 1 1
219 1 1
220 1 1
221 1 1
222 1 1
MISSING_ELSE
224 1 1
226 1 1
227 1 1
228 1 1
229 1 1
230 1 1
231 1 1
MISSING_ELSE
234 0 1
237 1 1
240 1 1
241 1 1
242 1 1
243 1 1
248 1 1
256 1 1
257 1 1
258 1 1
259 1 1
262 0 1
263 0 1
264 0 1
265 0 1
268 1 1
269 1 1
MISSING_ELSE
274 2 2
275 1 1
280 1 1
281 1 1
282 1 1
283 1 1
284 1 1
285 1 1
MISSING_ELSE
290 1 1
291 1 1
292 1 1
293 1 1
MISSING_ELSE
298 1 1
299 1 1
300 1 1
301 1 1
302 1 1
303 1 1
==> MISSING_ELSE
307 1 1
310 2 2
311 1 1
315 1 1
316 1 1
317 1 1
318 1 1
319 1 1
320 1 1
321 1 1
322 1 1
323 1 1
324 1 1
325 1 1
326 1 1
327 1 1
329 1 1
331 1 1
332 1 1
334 1 1
335 1 1
336 1 1
337 1 1
339 1 1
344 1 1
346 1 1
347 1 1
349 1 1
351 1 1
353 1 1
358 1 1
359 1 1
361 1 1
362 0 1
363 0 1
MISSING_ELSE
366 1 1
368 1 1
369 1 1
370 1 1
372 1 1
373 1 1
378 1 1
380 1 1
381 1 1
382 1 1
384 1 1
387 1 1
392 1 1
393 1 1
394 1 1
395 1 1
397 1 1
401 1 1
403 1 1
404 1 1
405 1 1
406 1 1
408 1 1
414 1 1
415 1 1
417 1 1
418 1 1
420 1 1
422 1 1
424 1 1
430 1 1
432 1 1
444 1 1


Cond Coverage for Module : hmac_core
TotalCoveredPercent
Conditions17614180.11
Logical17614180.11
Non-Logical00
Event00

 LINE       123
 EXPRESSION (hmac_en_i ? hash_start : reg_hash_start_i)
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       124
 EXPRESSION (hmac_en_i ? hash_continue : reg_hash_continue_i)
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       126
 EXPRESSION (hmac_en_i ? (reg_hash_process_i | hash_process) : reg_hash_process_i)
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       126
 SUB-EXPRESSION (reg_hash_process_i | hash_process)
                 ---------1--------   ------2-----
-1--2-StatusTests
00CoveredT2,T3,T4
01CoveredT2,T3,T4
10CoveredT2,T3,T4

 LINE       127
 EXPRESSION (hmac_en_i ? hmac_hash_done : sha_hash_done_i)
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       194
 EXPRESSION (hmac_en_i ? ((st_q == StMsg) & sha_rready_i) : sha_rready_i)
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       194
 SUB-EXPRESSION ((st_q == StMsg) & sha_rready_i)
                 -------1-------   ------2-----
-1--2-StatusTests
01CoveredT2,T3,T4
10CoveredT2,T3,T4
11CoveredT2,T3,T4

 LINE       194
 SUB-EXPRESSION (st_q == StMsg)
                -------1-------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       196
 EXPRESSION (((!hmac_en_i)) ? fifo_rvalid_i : hmac_sha_rvalid)
             -------1------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT1,T2,T3

 LINE       197
 EXPRESSION 
 Number  Term
      1  ((!hmac_en_i)) ? fifo_rdata_i : (((sel_rdata == SelIPad) && (digest_size_i == SHA2_256)) ? ('{data:i_pad_256[((BlockSizeSHA256 - 1) - (32 * pad_index_256))-:32], mask:'1}) : (((sel_rdata == SelIPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:i_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : (((sel_rdata == SelOPad) && (digest_size_i == SHA2_256)) ? ('{data:o_pad_256[((BlockSizeSHA256 - 1) - (32 * pad_index_256))-:32], mask:'1}) : (((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:o_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : ((sel_rdata == SelFifo) ? fifo_rdata_i : ('{(*adjust*)default:'0, (*adjust*)default:'0})))))))
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT1,T2,T3

 LINE       197
 SUB-EXPRESSION 
 Number  Term
      1  ((sel_rdata == SelIPad) && (digest_size_i == SHA2_256)) ? ('{data:i_pad_256[((BlockSizeSHA256 - 1) - (32 * pad_index_256))-:32], mask:'1}) : (((sel_rdata == SelIPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:i_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : (((sel_rdata == SelOPad) && (digest_size_i == SHA2_256)) ? ('{data:o_pad_256[((BlockSizeSHA256 - 1) - (32 * pad_index_256))-:32], mask:'1}) : (((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:o_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : ((sel_rdata == SelFifo) ? fifo_rdata_i : ('{(*adjust*)default:'0, (*adjust*)default:'0}))))))
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION ((sel_rdata == SelIPad) && (digest_size_i == SHA2_256))
                 -----------1----------    -------------2-------------
-1--2-StatusTests
01CoveredT2,T3,T4
10Not Covered
11CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION (sel_rdata == SelIPad)
                -----------1----------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION (digest_size_i == SHA2_256)
                -------------1-------------
-1-StatusTests
0CoveredT7,T16,T13
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION 
 Number  Term
      1  ((sel_rdata == SelIPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:i_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : (((sel_rdata == SelOPad) && (digest_size_i == SHA2_256)) ? ('{data:o_pad_256[((BlockSizeSHA256 - 1) - (32 * pad_index_256))-:32], mask:'1}) : (((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:o_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : ((sel_rdata == SelFifo) ? fifo_rdata_i : ('{(*adjust*)default:'0, (*adjust*)default:'0})))))
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       197
 SUB-EXPRESSION ((sel_rdata == SelIPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512)))
                 -----------1----------    ------------------------------2-----------------------------
-1--2-StatusTests
01CoveredT16,T13,T15
10Not Covered
11Not Covered

 LINE       197
 SUB-EXPRESSION (sel_rdata == SelIPad)
                -----------1----------
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       197
 SUB-EXPRESSION ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))
                 -------------1-------------    -------------2-------------
-1--2-StatusTests
00CoveredT2,T3,T4
01CoveredT13,T15,T45
10CoveredT16,T17,T30

 LINE       197
 SUB-EXPRESSION (digest_size_i == SHA2_384)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT16,T17,T30

 LINE       197
 SUB-EXPRESSION (digest_size_i == SHA2_512)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT13,T15,T45

 LINE       197
 SUB-EXPRESSION 
 Number  Term
      1  ((sel_rdata == SelOPad) && (digest_size_i == SHA2_256)) ? ('{data:o_pad_256[((BlockSizeSHA256 - 1) - (32 * pad_index_256))-:32], mask:'1}) : (((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:o_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : ((sel_rdata == SelFifo) ? fifo_rdata_i : ('{(*adjust*)default:'0, (*adjust*)default:'0}))))
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION ((sel_rdata == SelOPad) && (digest_size_i == SHA2_256))
                 -----------1----------    -------------2-------------
-1--2-StatusTests
01CoveredT2,T3,T4
10Not Covered
11CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION (sel_rdata == SelOPad)
                -----------1----------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION (digest_size_i == SHA2_256)
                -------------1-------------
-1-StatusTests
0CoveredT7,T16,T13
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION 
 Number  Term
      1  ((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) ? ('{data:o_pad_512[((BlockSizeSHA512 - 1) - (32 * pad_index_512))-:32], mask:'1}) : ((sel_rdata == SelFifo) ? fifo_rdata_i : ('{(*adjust*)default:'0, (*adjust*)default:'0})))
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       197
 SUB-EXPRESSION ((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512)))
                 -----------1----------    ------------------------------2-----------------------------
-1--2-StatusTests
01CoveredT16,T13,T15
10Not Covered
11Not Covered

 LINE       197
 SUB-EXPRESSION (sel_rdata == SelOPad)
                -----------1----------
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       197
 SUB-EXPRESSION ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))
                 -------------1-------------    -------------2-------------
-1--2-StatusTests
00CoveredT2,T3,T4
01CoveredT13,T15,T45
10CoveredT16,T17,T30

 LINE       197
 SUB-EXPRESSION (digest_size_i == SHA2_384)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT16,T17,T30

 LINE       197
 SUB-EXPRESSION (digest_size_i == SHA2_512)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT13,T15,T45

 LINE       197
 SUB-EXPRESSION ((sel_rdata == SelFifo) ? fifo_rdata_i : ('{(*adjust*)default:'0, (*adjust*)default:'0}))
                 -----------1----------
-1-StatusTests
0Not Covered
1CoveredT2,T3,T4

 LINE       197
 SUB-EXPRESSION (sel_rdata == SelFifo)
                -----------1----------
-1-StatusTests
0Not Covered
1CoveredT2,T3,T4

 LINE       218
 EXPRESSION (sel_msglen == SelIPadMsg)
            -------------1------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       219
 EXPRESSION (digest_size_i == SHA2_256)
            -------------1-------------
-1-StatusTests
0CoveredT7,T13,T28
1CoveredT2,T3,T4

 LINE       221
 EXPRESSION ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))
             -------------1-------------    -------------2-------------
-1--2-StatusTests
00CoveredT7,T13,T28
01CoveredT13,T46,T47
10CoveredT48,T49,T46

 LINE       221
 SUB-EXPRESSION (digest_size_i == SHA2_384)
                -------------1-------------
-1-StatusTests
0CoveredT7,T13,T28
1CoveredT48,T49,T46

 LINE       221
 SUB-EXPRESSION (digest_size_i == SHA2_512)
                -------------1-------------
-1-StatusTests
0CoveredT7,T13,T28
1CoveredT13,T46,T47

 LINE       224
 EXPRESSION (sel_msglen == SelOPadMsg)
            -------------1------------
-1-StatusTests
0Not Covered
1CoveredT2,T3,T4

 LINE       226
 EXPRESSION (digest_size_i == SHA2_256)
            -------------1-------------
-1-StatusTests
0CoveredT7,T16,T13
1CoveredT2,T3,T4

 LINE       228
 EXPRESSION (digest_size_i == SHA2_384)
            -------------1-------------
-1-StatusTests
0CoveredT7,T16,T13
1CoveredT16,T17,T30

 LINE       230
 EXPRESSION (digest_size_i == SHA2_512)
            -------------1-------------
-1-StatusTests
0CoveredT7,T16,T13
1CoveredT13,T15,T45

 LINE       241
 EXPRESSION (txcount[BlockSizeBitsSHA256:0] == BlockSizeBSBSHA256)
            ---------------------------1--------------------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       242
 EXPRESSION (txcount[BlockSizeBitsSHA512:0] == BlockSizeBSBSHA512)
            ---------------------------1--------------------------
-1-StatusTests
0CoveredT16,T15,T17
1CoveredT50

 LINE       243
 EXPRESSION (txcount[BlockSizeBitsSHA512:0] == BlockSizeBSBSHA512)
            ---------------------------1--------------------------
-1-StatusTests
0CoveredT13,T14,T15
1CoveredT50

 LINE       248
 EXPRESSION (sha_rready_i && sha_rvalid_o)
             ------1-----    ------2-----
-1--2-StatusTests
01CoveredT2,T3,T4
10Not Covered
11CoveredT2,T3,T4

 LINE       284
 EXPRESSION (hmac_hash_done || reg_hash_start_i || reg_hash_continue_i)
             -------1------    --------2-------    ---------3---------
-1--2--3-StatusTests
000CoveredT1,T2,T3
001Not Covered
010CoveredT2,T3,T4
100CoveredT2,T3,T4

 LINE       302
 EXPRESSION (fifo_wsel_o && fifo_wvalid_o)
             -----1-----    ------2------
-1--2-StatusTests
01Not Covered
10Not Covered
11CoveredT2,T3,T4

 LINE       307
 EXPRESSION ((round_q == Inner) ? SelIPadMsg : SelOPadMsg)
             ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT1,T2,T3

 LINE       307
 SUB-EXPRESSION (round_q == Inner)
                ---------1--------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       331
 EXPRESSION (hmac_en_i && reg_hash_start_i)
             ----1----    --------2-------
-1--2-StatusTests
01CoveredT2,T4,T5
10CoveredT2,T3,T4
11CoveredT2,T3,T4

 LINE       359
 EXPRESSION (round_q == Outer)
            ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       361
 EXPRESSION ((round_q == Inner) && reg_hash_continue_i)
             ---------1--------    ---------2---------
-1--2-StatusTests
01Not Covered
10CoveredT2,T3,T4
11Not Covered

 LINE       361
 SUB-EXPRESSION (round_q == Inner)
                ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       366
 EXPRESSION ((((round_q == Inner) && reg_hash_process_flag) || (round_q == Outer)) && (txcount >= sha_message_length_o))
             ----------------------------------1----------------------------------    ----------------2----------------
-1--2-StatusTests
01CoveredT2,T3,T4
10CoveredT2,T3,T4
11CoveredT2,T3,T4

 LINE       366
 SUB-EXPRESSION (((round_q == Inner) && reg_hash_process_flag) || (round_q == Outer))
                 ----------------------1----------------------    ---------2--------
-1--2-StatusTests
00CoveredT2,T3,T4
01CoveredT2,T3,T4
10CoveredT2,T3,T4

 LINE       366
 SUB-EXPRESSION ((round_q == Inner) && reg_hash_process_flag)
                 ---------1--------    ----------2----------
-1--2-StatusTests
01CoveredT2,T3,T4
10CoveredT2,T3,T4
11CoveredT2,T3,T4

 LINE       366
 SUB-EXPRESSION (round_q == Inner)
                ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       366
 SUB-EXPRESSION (round_q == Outer)
                ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       370
 EXPRESSION (round_q == Outer)
            ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       381
 EXPRESSION (round_q == Outer)
            ---------1--------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       397
 EXPRESSION 
 Number  Term
      1  fifo_wready_i && 
      2  (((fifo_wdata_sel_o == 4'd7) && (digest_size_i == SHA2_256)) || ((fifo_wdata_sel_o == 4'd15) && (digest_size_i == SHA2_512)) || ((fifo_wdata_sel_o == 4'd11) && (digest_size_i == SHA2_384))))
-1--2-StatusTests
01Not Covered
10CoveredT2,T3,T4
11CoveredT2,T3,T4

 LINE       397
 SUB-EXPRESSION 
 Number  Term
      1  ((fifo_wdata_sel_o == 4'd7) && (digest_size_i == SHA2_256)) || 
      2  ((fifo_wdata_sel_o == 4'd15) && (digest_size_i == SHA2_512)) || 
      3  ((fifo_wdata_sel_o == 4'd11) && (digest_size_i == SHA2_384)))
-1--2--3-StatusTests
000CoveredT2,T3,T4
001Not Covered
010Not Covered
100CoveredT2,T3,T4

 LINE       397
 SUB-EXPRESSION ((fifo_wdata_sel_o == 4'd7) && (digest_size_i == SHA2_256))
                 -------------1------------    -------------2-------------
-1--2-StatusTests
01CoveredT2,T3,T4
10Not Covered
11CoveredT2,T3,T4

 LINE       397
 SUB-EXPRESSION (fifo_wdata_sel_o == 4'd7)
                -------------1------------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT2,T3,T4

 LINE       397
 SUB-EXPRESSION (digest_size_i == SHA2_256)
                -------------1-------------
-1-StatusTests
0Not Covered
1CoveredT2,T3,T4

 LINE       397
 SUB-EXPRESSION ((fifo_wdata_sel_o == 4'd15) && (digest_size_i == SHA2_512))
                 -------------1-------------    -------------2-------------
-1--2-StatusTests
01Not Covered
10Not Covered
11Not Covered

 LINE       397
 SUB-EXPRESSION (fifo_wdata_sel_o == 4'd15)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       397
 SUB-EXPRESSION (digest_size_i == SHA2_512)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       397
 SUB-EXPRESSION ((fifo_wdata_sel_o == 4'd11) && (digest_size_i == SHA2_384))
                 -------------1-------------    -------------2-------------
-1--2-StatusTests
01Not Covered
10Not Covered
11Not Covered

 LINE       397
 SUB-EXPRESSION (fifo_wdata_sel_o == 4'd11)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       397
 SUB-EXPRESSION (digest_size_i == SHA2_384)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T4
1Not Covered

 LINE       444
 EXPRESSION ((st_q == StIdle) && ( ! (reg_hash_start_i || reg_hash_continue_i) ))
             --------1-------    -----------------------2-----------------------
-1--2-StatusTests
01CoveredT2,T3,T4
10CoveredT2,T3,T4
11CoveredT1,T2,T3

 LINE       444
 SUB-EXPRESSION (st_q == StIdle)
                --------1-------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       444
 SUB-EXPRESSION ( ! (reg_hash_start_i || reg_hash_continue_i) )
                    --------------------1--------------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       444
 SUB-EXPRESSION (reg_hash_start_i || reg_hash_continue_i)
                 --------1-------    ---------2---------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10CoveredT2,T3,T4

FSM Coverage for Module : hmac_core
Summary for FSM :: st_q
TotalCoveredPercent
States 7 7 100.00 (Not included in score)
Transitions 8 8 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: st_q
statesLine No.CoveredTests
StDone 382 Covered T2,T3,T4
StIPad 332 Covered T2,T3,T4
StIdle 339 Covered T1,T2,T3
StMsg 347 Covered T2,T3,T4
StOPad 401 Covered T2,T3,T4
StPushToMsgFifo 384 Covered T2,T3,T4
StWaitResp 368 Covered T2,T3,T4


transitionsLine No.CoveredTests
StDone->StIdle 430 Covered T2,T3,T4
StIPad->StMsg 347 Covered T2,T3,T4
StIdle->StIPad 332 Covered T2,T3,T4
StMsg->StWaitResp 368 Covered T2,T3,T4
StOPad->StMsg 418 Covered T2,T3,T4
StPushToMsgFifo->StOPad 401 Covered T2,T3,T4
StWaitResp->StDone 382 Covered T2,T3,T4
StWaitResp->StPushToMsgFifo 384 Covered T2,T3,T4



Branch Coverage for Module : hmac_core
Line No.TotalCoveredPercent
Branches 79 67 84.81
TERNARY 123 2 2 100.00
TERNARY 124 2 2 100.00
TERNARY 126 2 2 100.00
TERNARY 127 2 2 100.00
TERNARY 194 2 2 100.00
TERNARY 196 2 2 100.00
TERNARY 197 7 4 57.14
TERNARY 307 2 2 100.00
CASE 134 6 5 83.33
IF 214 9 8 88.89
CASE 240 4 4 100.00
IF 257 7 3 42.86
IF 274 2 2 100.00
IF 280 4 4 100.00
IF 290 3 3 100.00
IF 298 4 3 75.00
IF 310 2 2 100.00
CASE 329 17 15 88.24

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_ip_hmac_0.1/rtl/hmac_core.sv' or '../src/lowrisc_ip_hmac_0.1/rtl/hmac_core.sv was not found/opened, so annotated branch coverage report could not be generated.

LineNo. Expression -1-: 123 (hmac_en_i) ?

Branches:
-1-StatusTests
1 Covered T2,T3,T4
0 Covered T1,T2,T3


LineNo. Expression -1-: 124 (hmac_en_i) ?

Branches:
-1-StatusTests
1 Covered T2,T3,T4
0 Covered T1,T2,T3


LineNo. Expression -1-: 126 (hmac_en_i) ?

Branches:
-1-StatusTests
1 Covered T2,T3,T4
0 Covered T1,T2,T3


LineNo. Expression -1-: 127 (hmac_en_i) ?

Branches:
-1-StatusTests
1 Covered T2,T3,T4
0 Covered T1,T2,T3


LineNo. Expression -1-: 194 (hmac_en_i) ?

Branches:
-1-StatusTests
1 Covered T2,T3,T4
0 Covered T1,T2,T3


LineNo. Expression -1-: 196 ((!hmac_en_i)) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T2,T3,T4


LineNo. Expression -1-: 197 ((!hmac_en_i)) ? -2-: 197 (((sel_rdata == SelIPad) && (digest_size_i == SHA2_256))) ? -3-: 197 (((sel_rdata == SelIPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512)))) ? -4-: 197 (((sel_rdata == SelOPad) && (digest_size_i == SHA2_256))) ? -5-: 197 (((sel_rdata == SelOPad) && ((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512)))) ? -6-: 197 ((sel_rdata == SelFifo)) ?

Branches:
-1--2--3--4--5--6-StatusTests
1 - - - - - Covered T1,T2,T3
0 1 - - - - Covered T2,T3,T4
0 0 1 - - - Not Covered
0 0 0 1 - - Covered T2,T3,T4
0 0 0 0 1 - Not Covered
0 0 0 0 0 1 Covered T2,T3,T4
0 0 0 0 0 0 Not Covered


LineNo. Expression -1-: 307 ((round_q == Inner)) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T2,T3,T4


LineNo. Expression -1-: 134 case (key_length_i)

Branches:
-1-StatusTests
Key_128 Covered T7,T28,T29
Key_256 Covered T1,T2,T3
Key_384 Covered T14,T10,T30
Key_512 Covered T7,T25,T13
Key_1024 Covered T16,T31,T32
default Not Covered


LineNo. Expression -1-: 214 if ((!hmac_en_i)) -2-: 218 if ((sel_msglen == SelIPadMsg)) -3-: 219 if ((digest_size_i == SHA2_256)) -4-: 221 if (((digest_size_i == SHA2_384) || (digest_size_i == SHA2_512))) -5-: 224 if ((sel_msglen == SelOPadMsg)) -6-: 226 if ((digest_size_i == SHA2_256)) -7-: 228 if ((digest_size_i == SHA2_384)) -8-: 230 if ((digest_size_i == SHA2_512))

Branches:
-1--2--3--4--5--6--7--8-StatusTests
1 - - - - - - - Covered T1,T2,T3
0 1 1 - - - - - Covered T2,T3,T4
0 1 0 1 - - - - Covered T13,T48,T49
0 1 0 0 - - - - Covered T7,T13,T28
0 0 - - 1 1 - - Covered T2,T3,T4
0 0 - - 1 0 1 - Covered T16,T17,T30
0 0 - - 1 0 0 1 Covered T13,T15,T45
0 0 - - 1 0 0 0 Covered T7,T16,T13
0 0 - - 0 - - - Not Covered


LineNo. Expression -1-: 240 case (digest_size_i)

Branches:
-1-StatusTests
SHA2_256 Covered T2,T3,T4
SHA2_384 Covered T16,T15,T17
SHA2_512 Covered T13,T14,T15
default Covered T1,T2,T3


LineNo. Expression -1-: 257 if (clr_txcount) -2-: 259 if (load_txcount) -3-: 262 case (digest_size_i) -4-: 268 if (inc_txcount)

Branches:
-1--2--3--4-StatusTests
1 - - - Covered T2,T3,T4
0 1 SHA2_256 - Not Covered
0 1 SHA2_384 - Not Covered
0 1 SHA2_512 - Not Covered
0 1 default - Not Covered
0 0 - 1 Covered T2,T3,T4
0 0 - 0 Covered T1,T2,T3


LineNo. Expression -1-: 274 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 280 if ((!rst_ni)) -2-: 282 if (reg_hash_process_i) -3-: 284 if (((hmac_hash_done || reg_hash_start_i) || reg_hash_continue_i))

Branches:
-1--2--3-StatusTests
1 - - Covered T1,T2,T3
0 1 - Covered T2,T3,T4
0 0 1 Covered T2,T3,T4
0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 290 if ((!rst_ni)) -2-: 292 if (update_round)

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T2,T3,T4
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 298 if ((!rst_ni)) -2-: 300 if (clr_fifo_wdata_sel) -3-: 302 if ((fifo_wsel_o && fifo_wvalid_o))

Branches:
-1--2--3-StatusTests
1 - - Covered T1,T2,T3
0 1 - Covered T1,T2,T3
0 0 1 Covered T2,T3,T4
0 0 0 Not Covered


LineNo. Expression -1-: 310 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 329 case (st_q) -2-: 331 if ((hmac_en_i && reg_hash_start_i)) -3-: 346 if (txcnt_eq_blksz) -4-: 361 if (((round_q == Inner) && reg_hash_continue_i)) -5-: 366 if (((((round_q == Inner) && reg_hash_process_flag) || (round_q == Outer)) && (txcount >= sha_message_length_o))) -6-: 380 if (sha_hash_done_i) -7-: 381 if ((round_q == Outer)) -8-: 397 if ((fifo_wready_i && ((((fifo_wdata_sel_o == 4'd7) && (digest_size_i == SHA2_256)) || ((fifo_wdata_sel_o == 4'd15) && (digest_size_i == SHA2_512))) || ((fifo_wdata_sel_o == 4'd11) && (digest_size_i == SHA2_384))))) -9-: 417 if (txcnt_eq_blksz)

Branches:
-1--2--3--4--5--6--7--8--9-StatusTests
StIdle 1 - - - - - - - Covered T2,T3,T4
StIdle 0 - - - - - - - Covered T1,T2,T3
StIPad - 1 - - - - - - Covered T2,T3,T4
StIPad - 0 - - - - - - Covered T2,T3,T4
StMsg - - 1 - - - - - Not Covered
StMsg - - 0 - - - - - Covered T2,T3,T4
StMsg - - - 1 - - - - Covered T2,T3,T4
StMsg - - - 0 - - - - Covered T2,T3,T4
StWaitResp - - - - 1 1 - - Covered T2,T3,T4
StWaitResp - - - - 1 0 - - Covered T2,T3,T4
StWaitResp - - - - 0 - - - Covered T2,T3,T4
StPushToMsgFifo - - - - - - 1 - Covered T2,T3,T4
StPushToMsgFifo - - - - - - 0 - Covered T2,T3,T4
StOPad - - - - - - - 1 Covered T2,T3,T4
StOPad - - - - - - - 0 Covered T2,T3,T4
StDone - - - - - - - - Covered T2,T3,T4
default - - - - - - - - Not Covered

0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%