URL
https://opencores.org/ocsvn/next186/next186/trunk
[/] [next186/] [trunk/] [Next186_CPU.v] - Diff between revs 14 and 19
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
Rev 14 |
Rev 19 |
Line 61... |
Line 61... |
// 25May2013 - generate invalid opcode exception for MOV FS and GS
|
// 25May2013 - generate invalid opcode exception for MOV FS and GS
|
///////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////
|
`timescale 1ns / 1ps
|
`timescale 1ns / 1ps
|
|
|
module Next186_CPU(
|
module Next186_CPU(
|
output [19:0] ADDR,
|
output [20:0] ADDR,
|
input [15:0] DIN,
|
input [15:0] DIN,
|
output [15:0] DOUT,
|
output [15:0] DOUT,
|
input CLK,
|
input CLK,
|
input CE,
|
input CE,
|
input INTR,
|
input INTR,
|
Line 75... |
Line 75... |
output wire IORQ,
|
output wire IORQ,
|
output reg INTA,
|
output reg INTA,
|
output reg WR,
|
output reg WR,
|
output reg WORD,
|
output reg WORD,
|
output LOCK,
|
output LOCK,
|
output [19:0]IADDR,
|
output [20:0]IADDR,
|
input [47:0]INSTR,
|
input [47:0]INSTR,
|
output reg IFETCH,
|
output reg IFETCH,
|
output FLUSH,
|
output FLUSH,
|
output reg [2:0]ISIZE,
|
output reg [2:0]ISIZE,
|
output reg HALT
|
output reg HALT
|
Line 263... |
Line 263... |
.ADDR16(ADDR16),
|
.ADDR16(ADDR16),
|
.EAC(EAC)
|
.EAC(EAC)
|
);
|
);
|
|
|
assign DOUT = DOSEL[1] ? DOSEL[0] ? AX : TMP16 : DOSEL[0] ? IPADD : ALUOUT;
|
assign DOUT = DOSEL[1] ? DOSEL[0] ? AX : TMP16 : DOSEL[0] ? IPADD : ALUOUT;
|
assign ADDR = {{NULLSEG ? 16'h0000 : RS} + {4'b0000, ADDR16_SP[15:4]}, ADDR16_SP[3:0]};
|
assign ADDR = {{NULLSEG ? 16'h0000 : RS} + {5'b00000, ADDR16_SP[15:4]}, ADDR16_SP[3:0]};
|
assign IADDR = {CS + {4'b0000, IPIN[15:4]}, IPIN[3:0]};
|
assign IADDR = {CS + {5'b00000, IPIN[15:4]}, IPIN[3:0]};
|
assign AIMM1 = ASEL ? {FETCH[3], FETCH[2]} : {FETCH[2], FETCH[1]};
|
assign AIMM1 = ASEL ? {FETCH[3], FETCH[2]} : {FETCH[2], FETCH[1]};
|
|
|
always @(posedge CLK)
|
always @(posedge CLK)
|
if(CE) begin
|
if(CE) begin
|
if(SRST) begin // reset
|
if(SRST) begin // reset
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.