OpenCores
URL https://opencores.org/ocsvn/thor/thor/trunk

Subversion Repositories thor

[/] [thor/] [trunk/] [FT64v7/] [rtl/] [twoway/] [FT64_fetchbuf_x1.v] - Diff between revs 61 and 66

Show entire file | Details | Blame | View Log

Rev 61 Rev 66
Line 112... Line 112...
output reg [3:0] panic;
output reg [3:0] panic;
integer n;
integer n;
 
 
reg [55:0] cinsn0;
reg [55:0] cinsn0;
 
 
 
wire iclk = clk;
 
//BUFH ucb1 (.I(clk), .O(iclk));
 
 
//`include "FT64_decode.vh"
//`include "FT64_decode.vh"
 
 
function IsBranch;
function IsBranch;
input [47:0] isn;
input [47:0] isn;
casex(isn[`INSTRUCTION_OP])
casex(isn[`INSTRUCTION_OP])
Line 334... Line 337...
wire peclk, neclk;
wire peclk, neclk;
edge_det ued1 (.rst(rst), .clk(clk4x), .ce(1'b1), .i(clk), .pe(peclk), .ne(neclk), .ee());
edge_det ued1 (.rst(rst), .clk(clk4x), .ce(1'b1), .i(clk), .pe(peclk), .ne(neclk), .ee());
 
 
reg did_branch;
reg did_branch;
 
 
always @(posedge clk)
always @(posedge iclk)
if (rst) begin
if (rst) begin
        pc0 <= RSTPC;
        pc0 <= RSTPC;
        fetchbufA_v <= 1'b0;
        fetchbufA_v <= 1'b0;
        fetchbufB_v <= 1'b0;
        fetchbufB_v <= 1'b0;
        fetchbuf <= 1'b0;
        fetchbuf <= 1'b0;
Line 530... Line 533...
        fetchbufA_instr <= pred_on ? cinsn0[55:8] : cinsn0[47:0];
        fetchbufA_instr <= pred_on ? cinsn0[55:8] : cinsn0[47:0];
        fetchbufA_pbyte = cinsn0[7:0];
        fetchbufA_pbyte = cinsn0[7:0];
        fetchbufA_v <= `VAL;
        fetchbufA_v <= `VAL;
        fetchbufA_pc <= pc0;
        fetchbufA_pc <= pc0;
        if (phit && ~freezePC)
        if (phit && ~freezePC)
                pc0 <= pc0 + insln0;
                pc0[31:0] <= pc0[31:0] + insln0;
        else
//      else
                pc0 <= pc0;
//              pc0 <= pc0;
end
end
endtask
endtask
 
 
task FetchB;
task FetchB;
begin
begin
        fetchbufB_instr <= pred_on ? cinsn0[55:8] : cinsn0[47:0];
        fetchbufB_instr <= pred_on ? cinsn0[55:8] : cinsn0[47:0];
        fetchbufB_pbyte = cinsn0[7:0];
        fetchbufB_pbyte = cinsn0[7:0];
        fetchbufB_v <= `VAL;
        fetchbufB_v <= `VAL;
        fetchbufB_pc <= pc0;
        fetchbufB_pc <= pc0;
        if (phit && ~freezePC)
        if (phit && ~freezePC)
                pc0 <= pc0 + insln0;
                pc0[31:0] <= pc0[31:0] + insln0;
        else
//      else
                pc0 <= pc0;
//              pc0 <= pc0;
end
end
endtask
endtask
 
 
endmodule
endmodule
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.