URL
https://opencores.org/ocsvn/t6507lp/t6507lp/trunk
[/] [t6507lp/] [trunk/] [rtl/] [verilog/] [t6507lp_fsm.v] - Diff between revs 212 and 242
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 212 |
Rev 242 |
Line 168... |
Line 168... |
always @(*) begin
|
always @(*) begin
|
address_plus_index = 13'h000;
|
address_plus_index = 13'h000;
|
page_crossed = 1'b0;
|
page_crossed = 1'b0;
|
|
|
case (state)
|
case (state)
|
READ_MEM_FIX_ADDR, FETCH_HIGH_CALC_INDEX, READ_FROM_POINTER_X1: begin
|
READ_MEM_FIX_ADDR, FETCH_HIGH_CALC_INDEX: begin
|
{page_crossed, address_plus_index[7:0]} = temp_addr[7:0] + index;
|
{page_crossed, address_plus_index[7:0]} = temp_addr[7:0] + index;
|
address_plus_index[12:8] = temp_addr[12:8] + page_crossed;
|
address_plus_index[12:8] = temp_addr[12:8] + page_crossed;
|
end
|
end
|
|
READ_FROM_POINTER_X1: begin
|
|
{page_crossed, address_plus_index[7:0]} = temp_addr[7:0] + index;
|
|
address_plus_index[12:8] = temp_addr[12:8];
|
|
end
|
FETCH_OP_FIX_PC, FETCH_OP_EVAL_BRANCH: begin
|
FETCH_OP_FIX_PC, FETCH_OP_EVAL_BRANCH: begin
|
if (branch) begin
|
if (branch) begin
|
{page_crossed, address_plus_index[7:0]} = pc[7:0] + index;
|
{page_crossed, address_plus_index[7:0]} = pc[7:0] + index;
|
address_plus_index[12:8] = pc[12:8] + page_crossed;
|
address_plus_index[12:8] = pc[12:8] + page_crossed;
|
// warning: pc might feed these lines twice and cause branch failure
|
// warning: pc might feed these lines twice and cause branch failure
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.