Line 1... |
Line 1... |
-- $Id: pdp11_mmu_sadr.vhd 336 2010-11-06 18:28:27Z mueller $
|
-- $Id: pdp11_mmu_sadr.vhd 351 2010-12-30 21:50:54Z mueller $
|
--
|
--
|
-- Copyright 2006-2010 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
-- Copyright 2006-2010 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
--
|
--
|
-- This program is free software; you may redistribute and/or modify it under
|
-- This program is free software; you may redistribute and/or modify it under
|
-- the terms of the GNU General Public License as published by the Free
|
-- the terms of the GNU General Public License as published by the Free
|
Line 21... |
Line 21... |
-- Target Devices: generic
|
-- Target Devices: generic
|
-- Tool versions: xst 8.1, 8.2, 9.1, 9.2, 12.1; ghdl 0.18-0.29
|
-- Tool versions: xst 8.1, 8.2, 9.1, 9.2, 12.1; ghdl 0.18-0.29
|
--
|
--
|
-- Revision History:
|
-- Revision History:
|
-- Date Rev Version Comment
|
-- Date Rev Version Comment
|
|
-- 2010-12-30 351 1.3.2 BUGFIX: fix sensitivity list of proc_eaddr
|
-- 2010-10-23 335 1.3.1 change proc_eaddr logic, shorten logic path
|
-- 2010-10-23 335 1.3.1 change proc_eaddr logic, shorten logic path
|
-- 2010-10-17 333 1.3 use ibus V2 interface
|
-- 2010-10-17 333 1.3 use ibus V2 interface
|
-- 2008-08-22 161 1.2.2 rename ubf_ -> ibf_; use iblib
|
-- 2008-08-22 161 1.2.2 rename ubf_ -> ibf_; use iblib
|
-- 2008-01-05 110 1.2.1 rename _mmu_regs -> _mmu_sadr
|
-- 2008-01-05 110 1.2.1 rename _mmu_regs -> _mmu_sadr
|
-- rename IB_MREQ(ena->req) SRES(sel->ack, hold->busy)
|
-- rename IB_MREQ(ena->req) SRES(sel->ack, hold->busy)
|
Line 211... |
Line 212... |
-- mmu paadr logic path. Currently it's derived from 4 flops. If that's
|
-- mmu paadr logic path. Currently it's derived from 4 flops. If that's
|
-- to slow just use IB_MREQ.we or IB_MREQ.we, that should be sufficient
|
-- to slow just use IB_MREQ.we or IB_MREQ.we, that should be sufficient
|
-- and reduce the eaddr mux to a 4-input LUT. Last resort is a 2 cycle ibus
|
-- and reduce the eaddr mux to a 4-input LUT. Last resort is a 2 cycle ibus
|
-- access with a state flop marking the 2nd cycle of a re/we transaction.
|
-- access with a state flop marking the 2nd cycle of a re/we transaction.
|
|
|
proc_eaddr: process (IB_MREQ, MODE, ASN)
|
proc_eaddr: process (IB_MREQ, MODE, ASN, R_IBSEL_DR, R_IBSEL_AR)
|
variable eaddr : slv6 := (others=>'0');
|
variable eaddr : slv6 := (others=>'0');
|
variable idr : slbit := '0';
|
variable idr : slbit := '0';
|
variable iar : slbit := '0';
|
variable iar : slbit := '0';
|
begin
|
begin
|
|
|