Signed/unsigned integer divider using non-restoring division algorithm
It takes DATA_WIDTH+1 cycles until the operation result is output.
Parameters
| parameter |
discription |
| DATA_WIDTH |
Data width of dividend and divisor |
Interface signals
| signal |
I/O |
width |
discription |
| clk |
I |
|
clock |
| rst_n |
I |
|
asynchronous reset |
| dividend |
I |
[DATA_WIDTH-1:0] |
dividend |
| divisor |
I |
[DATA_WIDTH-1:0] |
divisor |
| signed_ope |
I |
|
0: unsigned operation, 1: signed operation |
| start |
I |
|
start (high pulse) |
| flush |
I |
|
flush internal state (high pulse) |
| quotient |
O |
[DATA_WIDTH-1:0] |
quotient |
| remainder |
O |
[DATA_WIDTH-1:0] |
remainder |
| ready |
O |
|
Indicates that qutient and remainder are ready (high level) |
Timing chart
