## Title: 03 3x+1 sequence

The 3x+1 sequence is defined by:
* x = x/2 if x is even
* x = 3x+1 if x is odd

Find the number of steps needed for the sequence starting with `n` to reach 1.

!img:collatz_img1.png

You can use `multiple clock cycles` to compute the result. The result will only be verified when the `submit` flag is on. The check is done on the rising edge of the clock. After verification is passed, the next test case will be provided.

`Examples:`
n=1 --> steps=0
n=2 --> steps=1 (2 -> 1)
n=3 --> steps=7 (3 -> 10 -> 5 -> 16 -> 8 -> 4 -> 2 -> 1)
n=4 --> steps=2 (4 -> 2 -> 1)

Inputs:
- `n` (8bits): positive number corresponding to the initial value of the sequence.

Outputs:
- `submit` (1bit): flag saying when the computation is done and result is ready
- `steps` (8bits): Result of calculation, containing the number of steps for the sequence starting at `n` to reach the number 1.

The first 16 tests will be the positive numbers from `n`=1 to `n`=16. The 8 next numbers will be other positive numbers between 16 and 128. The sequence size is guaranteed to be shorter than 255.

