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

Subversion Repositories rtf65002

[/] [rtf65002/] [trunk/] [rtl/] [verilog/] [load_mac.v] - Diff between revs 36 and 38

Show entire file | Details | Blame | View Log

Rev 36 Rev 38
Line 1... Line 1...
// ============================================================================
// ============================================================================
//        __
//        __
//   \\__/ o\    (C) 2013  Robert Finch, Stratford
//   \\__/ o\    (C) 2013, 2014  Robert Finch, Stratford
//    \  __ /    All rights reserved.
//    \  __ /    All rights reserved.
//     \/_//     robfinch<remove>@opencores.org
//     \/_//     robfinch<remove>@opencores.org
//       ||
//       ||
//
//
// This source file is free software: you can redistribute it and/or modify 
// This source file is free software: you can redistribute it and/or modify 
Line 89... Line 89...
                else begin
                else begin
                        load_what <= `WORD_310;
                        load_what <= `WORD_310;
                        state <= LOAD_MAC1;
                        state <= LOAD_MAC1;
                end
                end
                isIY <= 1'b0;
                isIY <= 1'b0;
 
                isIY24 <= `FALSE;
        end
        end
`ifdef SUPPORT_EM8
`ifdef SUPPORT_EM8
BYTE_IX5:
BYTE_IX5:
        begin
        begin
 
                isI24 <= `FALSE;
                radr <= ia[31:2];
                radr <= ia[31:2];
                radr2LSB <= ia[1:0];
                radr2LSB <= ia[1:0];
                load_what <= `BYTE_70;
                load_what <= m16 ? `HALF_70 : `BYTE_70;
                state <= LOAD_MAC1;
                state <= LOAD_MAC1;
                if (ir[7:0]==`STA_IX || ir[7:0]==`STA_I) begin
                if (ir[7:0]==`STA_IX || ir[7:0]==`STA_I || ir[7:0]==`STA_IL) begin
                        wadr <= ia[31:2];
                        wadr <= ia[31:2];
                        wadr2LSB <= ia[1:0];
                        wadr2LSB <= ia[1:0];
                        store_what <= `STW_ACC8;
                        store_what <= m16 ? `STW_ACC70 : `STW_ACC8;
                        state <= STORE1;
                        state <= STORE1;
                end
                end
 
`ifdef SUPPORT_816
 
                else if (ir[7:0]==`PEI) begin
 
                        set_sp();
 
                        store_what <= `STW_IA158;
 
                        state <= STORE1;
 
                end
 
`endif
        end
        end
BYTE_IY5:
BYTE_IY5:
        begin
        begin
                isIY <= `FALSE;
                isIY <= `FALSE;
 
                isIY24 <= `FALSE;
                radr <= iapy8[31:2];
                radr <= iapy8[31:2];
                radr2LSB <= iapy8[1:0];
                radr2LSB <= iapy8[1:0];
                $display("IY addr: %h", iapy8);
                $display("IY addr: %h", iapy8);
                if (ir[7:0]==`STA_IY) begin
                if (ir[7:0]==`STA_IY || ir[7:0]==`STA_IYL || ir[7:0]==`STA_DSPIY) begin
                        wadr <= iapy8[31:2];
                        wadr <= iapy8[31:2];
                        wadr2LSB <= iapy8[1:0];
                        wadr2LSB <= iapy8[1:0];
                        store_what <= `STW_ACC8;
                        store_what <= m16 ? `STW_ACC70 : `STW_ACC8;
                        state <= STORE1;
                        state <= STORE1;
                end
                end
                else begin
                else begin
                        load_what <= `BYTE_70;
                        load_what <= m16 ? `HALF_70 : `BYTE_70;
                        state <= LOAD_MAC1;
                        state <= LOAD_MAC1;
                end
                end
        end
        end
`endif
`endif
 
 
 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.