Commit graph

1161 commits

Author SHA1 Message Date
Nathan Binkert 10e88b43fd Fix more of the stats python stuff
util/stats/info.py:
    Make the binnings stuff work again.
util/stats/stats.py:
    small patch for graphing
    make it so we can print out bins for the stat command

--HG--
extra : convert_revision : c0279ac7030fd5146dd00801baa41e7baf97d1f4
2004-11-15 01:36:27 -05:00
Ali Saidi ed1ff7fca9 updated to make memory a touch slower in the HT case and the
make sure the interrupt controller is on cpu die

--HG--
extra : convert_revision : 07b7eadbec7694859957279c81b9bdb4ebd044a3
2004-11-14 18:52:04 -05:00
Nathan Binkert 53b606683b New system configurations that work around the bus bridge
memory system bug

--HG--
extra : convert_revision : 29aa265126691eee386bc73a86e5d382e12b59a9
2004-11-14 17:41:56 -05:00
Nathan Binkert 9d80d88a71 update graph generating code
util/stats/stats.py:
    tweak the graphing stuff for the new configurations we have.
    add more graph types.
    nsgige -> etherdev
    deal with memory hierarchy change by using L2 instead of L3

--HG--
extra : convert_revision : 55362e79d9f8d0d68aa08129f5af944b378a9f4c
2004-11-14 17:22:33 -05:00
Ali Saidi 6650da85e7 by default bin interrupts seperately from kernel code.
--HG--
extra : convert_revision : fb890907402b7c1e873a2ac32e72cb6e0ed73f13
2004-11-14 15:26:48 -05:00
Ali Saidi a89398e262 patched nfs boot scripts
configs/boot/nfs-server.rcS:
    made the partition size correct

--HG--
extra : convert_revision : 4e9bdbe3e465aea2a914fd928b47296031c2523b
2004-11-13 23:09:17 -05:00
Ali Saidi f63dd31f4e fixed nfs scripts hopefully for the last time
configs/boot/nfs-client.rcS:
    lucky #3

--HG--
extra : convert_revision : a55f29e4c087e7ab95ea584316ad6fe4ebb5df9a
2004-11-13 23:08:08 -05:00
Steve Reinhardt 2e0695ec9a Get rid of obsolete sim/sim_stats.* files (looks like these
are replaced by sim/stats.hh and sim/stat_control.*)

dev/ns_gige.cc:
dev/sinic.cc:
    Include sim/stats.hh instead of sim/sim_stats.hh

--HG--
extra : convert_revision : 5e07932eab45ae4fb719baa4f94c5f62092a8446
2004-11-13 21:13:25 -05:00
Nathan Binkert 7e4229fb8f Add the Simple Integrated Network Interface Controller
--HG--
extra : convert_revision : 2bce25881a104e8282a5ed819769c6a7de414fb2
2004-11-13 17:10:48 -05:00
Nathan Binkert 9f8db6f446 don't handle device specific configuration stuff in the base
class.  While we're at it, very minor formatting.

--HG--
extra : convert_revision : b7c719f92ece7234838434294b33833289adbada
2004-11-13 17:05:13 -05:00
Nathan Binkert 4760ae46c6 Use the new PacketFifo class to avoid manual calculations
--HG--
extra : convert_revision : afa193904b7ed4d5e5c50e9dcb78e8e855b00ecc
2004-11-13 16:52:08 -05:00
Nathan Binkert 8922d69953 change the serialization of a packet so that we don't
do a nameOut.  This fixes a subtle bug in serialization that
can pop up.

--HG--
extra : convert_revision : b52df977dcbef1c9bd0d4405ba0b36dff3737cdf
2004-11-13 16:46:56 -05:00
Nathan Binkert acb98fb0f6 we shouldn't ever pass around references to PacketPtrs,
const references are ok, or pass by value.

--HG--
extra : convert_revision : 7280a1c7d22b9294fddbe50f02f6f4c6ca9b2e5b
2004-11-13 16:33:16 -05:00
Nathan Binkert bd3e3c0230 forgot a change in the previous commit. the ide controller
doesn't have its own interrupt functions

dev/ide_ctrl.hh:
    oops. we don't have our own interrupt functions anymore
    we get them from the base class.

--HG--
extra : convert_revision : 3eac228ec59f4fea0b0e49f961e8b21705dee27f
2004-11-13 16:24:47 -05:00
Nathan Binkert b0fd676a25 Make it possible for PioDevices to have unknown pio
latencies.

--HG--
extra : convert_revision : 08f2250efc078406c497a6820ae30f5fdf687ea5
2004-11-13 16:04:33 -05:00
Nathan Binkert b031888038 Use parameter structs for initialization so it's easier
to add new devices.  Abstract the Platform more so that
it is unnecessary to know know platform specifics for
interrupting or translating PCI DMA addresses.

dev/ide_ctrl.cc:
    convert to parameter struct for initialization
    use the interrupt functions in the PciDev base class
    convert from tsunami to using platform
    We don't need an interrupt controller here.
dev/ide_ctrl.hh:
    don't use Tsunami, use Platform
    make the IdeDisk a friend so that it can access my plaform
    convert to parameter struct for construction
dev/ide_disk.cc:
    don't use tsunami references, but platform references
dev/ns_gige.cc:
    Convert to parameter struct for initialzation. Use code in
    base class for interrupts so we don't need to know anything
    about the platform. Don't need an IntrControl *.
dev/ns_gige.hh:
    We don't need a Tsunami * anymore
    convert to a parameter struct for construction
dev/pcidev.cc:
    deal with new parameter struct
dev/pcidev.hh:
    - Move all of the configuration parameters into a param struct
    that we can pass into the constructor.
    - Add a Platform * for accessing new generic interrupt post/clear
    and dma address translation fuctions
    - Create functions for posting/clearing interrupts and translating
    dma addresses
dev/platform.cc:
    have default functions that panic on pci calls
dev/platform.hh:
    don't make the pci stuff pure virtual, but rather provide
    default implementations that panic.  Also, add dma address
    translation.
dev/tsunami.cc:
    this-> isn't necessary here.
    add pci address translation
dev/tsunami.hh:
    implement the pciToDma address translation

--HG--
extra : convert_revision : 7db27a2fa1f1bd84704921ec7ca0280b5653c43e
2004-11-13 15:45:22 -05:00
Nathan Binkert e9f3279334 sort #includes
don't need to include ev5.hh anymore

--HG--
extra : convert_revision : f80d2767936d3fb07a9cb7fd4709cafe9ea93e63
2004-11-13 14:46:02 -05:00
Nathan Binkert 425dda00df Macros are nasty, so let's get rid of them. Convert all
all macros in ev5.hh to inline functions or constant typed
variables and make them follow our style while we're at it.

All of the stuff in this file actually belongs in the ISA
traits code, but this is a first step at getting things done
in the right manner.

arch/alpha/alpha_memory.cc:
arch/alpha/alpha_memory.hh:
arch/alpha/ev5.cc:
arch/alpha/isa_desc:
dev/ns_gige.cc:
kern/tru64/tru64_events.cc:
    deal with changes in ev5.hh
arch/alpha/ev5.hh:
    Macros are nasty, so let's get rid of them.  Convert all
    all macros to inline functions or constant typed variables.
    Make them follow our style while we're at it.

    All of the stuff in this file actually belongs in the ISA
    traits code, but this is a first step at getting things done
    in the right manner.
arch/alpha/isa_traits.hh:
    move some of the ev5 specific code into the isa
arch/alpha/vtophys.cc:
base/remote_gdb.cc:
    deal with isa addition
cpu/exec_context.hh:
    be less isa specific and use the isa traits to figure out
    what we can.
dev/alpha_console.cc:
dev/pciconfigall.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/uart.cc:
    deal with changes in ev5.hh
    I don't believe this masking is actually necessary.  We should
    look at removing it later.
dev/ide_ctrl.cc:
    sort #includes
    deal with changes in ev5.hh

--HG--
extra : convert_revision : c8a3adf0a4b1d198aefe38fc38b295abf289b08a
2004-11-13 14:01:38 -05:00
Nathan Binkert 8f74f77cf2 remove the global static check_interrupts variable now that
it's not used.

--HG--
extra : convert_revision : a4f50c1eb030a132766c4018d17c463ad5a97a9b
2004-11-13 13:57:51 -05:00
Nathan Binkert bde7f4d121 defining SYSTEM_EV5 isn't all that necessary
--HG--
extra : convert_revision : 2ed4866db9483820d550bad00fdbc8dd027f95ba
2004-11-13 11:33:43 -05:00
Nathan Binkert c4e5ef64b3 defining SYSTEM_EV5 isn't all that necessary
--HG--
extra : convert_revision : 7d39dd9f814434cb95ec769204d7f2426b0290fd
2004-11-13 11:32:17 -05:00
Ali Saidi 2282b0aa61 Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5
--HG--
extra : convert_revision : 7696b915099bc847bbb9bd9f97fd30b1825c68d5
2004-11-12 18:47:14 -05:00
Ali Saidi 8fc76693d2 slightly different parameters for nfs script
--HG--
extra : convert_revision : 1576f875646567cc661a8e3f07c00c4b282e9f64
2004-11-12 18:47:07 -05:00
Lisa Hsu 78118bffbb add surge and spec-surge readfiles. also make the naming system uniform, there were 3 different ways!!! i like ali's.
--HG--
rename : configs/boot/client.netperf.maerts => configs/boot/netperf-maerts-client.rcS
rename : configs/boot/client.netperf.rr => configs/boot/netperf-rr.rcS
rename : configs/boot/server.netperf => configs/boot/netperf-server.rcS
rename : configs/boot/client.netperf.stream => configs/boot/netperf-stream-client.rcS
extra : convert_revision : 8c841e18dac9634f0680b857f3d0676b100dd448
2004-11-12 15:03:28 -05:00
Ali Saidi 856fdbe5aa Added nfs-client.rcS and nfs-server.rcS
--HG--
extra : convert_revision : 48cf156ce397b68075c07ed072c95644affa3ef1
2004-11-12 14:21:52 -05:00
Steve Reinhardt 2db94b9186 Bus interface range fixes for caches (to fix bus brudge range bug).
Add "fast write" behavior on writeInvalidates.

--HG--
extra : convert_revision : 0c5c1e06d6cbb608610b99fb4e4fb04db4997c7b
2004-11-10 22:18:20 -05:00
Steve Reinhardt 1e4acc382a add DPRINTFs
--HG--
extra : convert_revision : 7d2fad2e4f9125d41c8d1972d8f19f38bb95c06e
2004-11-10 19:57:55 -05:00
Nathan Binkert b64619d575 Make it so we can cast an EthAddr to a 64-bit integer
--HG--
extra : convert_revision : 2f470d122997fbc375f04e9c2682b6528adef50c
2004-11-10 18:49:55 -05:00
Nathan Binkert 338513c681 Use the inPalMode function instead of the PC_PAL macro
--HG--
extra : convert_revision : 58e0a19ba98777e5d2e2572ed02dee1914378ff7
2004-11-10 18:44:37 -05:00
Nathan Binkert ab8409738e Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : 64eca6a11aeae236e802f9ca8eb97ca05d394ec7
2004-11-10 18:37:33 -05:00
Nathan Binkert 4328480b56 Don't use the global check_interrupts variable. Add a per-cpu
checkInterrupts variable and use that to determine whether an interrupt
can occur on a given cycle.

arch/alpha/ev5.cc:
    XC -> CPU (and xc -> CPU) since we're really talking about a CPU here
    Don't use the global check_interrupts variable.  Add a per-cpu
    checkInterrupts variable and use that to determine whether an interrupt
    can occur on a given cycle.

--HG--
extra : convert_revision : be4c0247e5834005c60a45796a222cffd327b64e
2004-11-10 18:37:19 -05:00
Nathan Binkert 82638c2e98 don't print dprintk twice on the same line
--HG--
extra : convert_revision : f41fc47221b6fb83eb92c080de073a11cf04c353
2004-11-10 18:15:04 -05:00
Jennifer Treichler 4524eb0b28 software prefetch fix
--HG--
extra : convert_revision : b70257a60c5f71a86a45c32d5a4ccaa249300dca
2004-11-09 14:58:12 -05:00
Nathan Binkert e2de2ea192 Fix to deal with the new base class parameter for registration
deferral

--HG--
extra : convert_revision : f968e3ba44604522cb10db8a60d7e18f1733e06a
2004-11-03 23:21:10 -05:00
Nathan Binkert 8056b9a48a Forgot about the tracing cpus for the changes to the base class
cpu/trace/opt_cpu.cc:
cpu/trace/trace_cpu.cc:
    we don't want to register this cpu since it's not a real cpu

--HG--
extra : convert_revision : 3b87b6ac3dd061018909bf4fdb4e2d611128d07b
2004-11-03 22:30:13 -05:00
Nathan Binkert d82e0d11d1 make activation of exec contexts happen in startup
the registration stuff all moves into BaseCPU

cpu/base_cpu.cc:
    Move the registration stuff into the BaseCPU since all
    other CPUs use it.
cpu/base_cpu.hh:
    Move the defer registration stuff into the BaseCPU since all
    other CPUs use it.
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
    registration stuff moved to base class
sim/system.cc:
    the activation of exec contexts should happen at startup, not
    when they are registered.
sim/system.hh:
    the system now has a startup function

--HG--
extra : convert_revision : bb6a7c2da5a1ecf5fe7ede1078200bfe5245f8ef
2004-11-03 20:46:33 -05:00
Taeho Kgil 129b885abd Add Inorder CPU model
SConscript:
arch/isa_parser.py:
cpu/static_inst.hh:
    Add inorderCPU

--HG--
extra : convert_revision : 141372808fac5f6d125f9051ee0be982d21683aa
2004-11-03 17:56:26 -05:00
Nathan Binkert 78ae8764a9 add a new phase to the simulator. Basically the simulator now goes
through the following phases.

1) Construct all param contexts
2) Call the checkParams() on each context
3) Build the configuration hierarchy
4) Construct all SimObjects
5) Initialize all SimObjects by calling init() on each one
6) Unserialize the checkpoint
7) Register all statisitcs
8) Check validity of all statistics (after that, no new stats)
9) Reset all stats.
10) Call SimStartup() which calls startup() on all SimObjects,
ParamContexts, and any other object deriving from StartupCallback

SConscript:
    no more SimInit() we have SimStartup() now
sim/param.hh:
    Make all params have a startup callback.
sim/sim_events.cc:
    the init callbacks no longer exist.  We can simplify code by
    using startup().
sim/sim_object.hh:
    Make all SimObjects derive from StartupCallback

--HG--
extra : convert_revision : ab81e259eb5510cc597f7bacb2bfb619fb4cc15f
2004-11-03 11:47:55 -05:00
Nathan Binkert 64a47b8ec1 remove mention of a couple of files that don't exist anymore
SConscript:
    these files don't exist

--HG--
extra : convert_revision : 660f3861b5f2824a44fc8a281a782faeef4467f2
2004-11-01 14:39:48 -05:00
Steve Reinhardt 0172720bb3 More user-friendly updates for 570.
--HG--
extra : convert_revision : 0fe38f6ab652b575cc24d18d65c237291e1793d6
2004-10-28 16:54:49 -04:00
Steve Reinhardt da44773793 Add '%' in some places to suppress spurious doxygen auto-links.
--HG--
extra : convert_revision : 6527dc766730745516f52f7e7f5acf43d64e8733
2004-10-28 00:25:57 -04:00
Steve Reinhardt 40c665dd7b Major documentation update for 570 F04.
sim/main.cc:
    Get rid of default.ini processing... it's kind of a pain and nobody uses it.
util/tracediff:
    Add comments on usage.

--HG--
extra : convert_revision : b811288b2945585d60685684ea88c99d1913fbf3
2004-10-27 22:37:52 -04:00
Ali Saidi be0184b463 Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5-smp
--HG--
extra : convert_revision : 59173b5d4599cfe1cbaa96705e9731ee5a8d8647
2004-10-25 18:15:28 -04:00
Ali Saidi 3402411661 changes to make interrupts part of the platform rather than tsunami
specific

--HG--
extra : convert_revision : f51788dd41c23f13b253268bb2b286a5225ef087
2004-10-25 18:14:13 -04:00
Nathan Binkert d55eb90fc7 Don't use magic numbers.
arch/alpha/isa_traits.hh:
    Move defines to non full system code section so they can
    be used elsewhere
cpu/simple_cpu/simple_cpu.cc:
    Don't use magic numbers
cpu/simple_cpu/simple_cpu.hh:
    simple format nit

--HG--
extra : convert_revision : b8d492218340d41ab9420c6ad1e81a197db1c132
2004-10-25 16:23:22 -04:00
Nathan Binkert e377f63c86 add a hack to make sure we exit when sampling is complete.
--HG--
extra : convert_revision : a0d66b1915f14485d1798a3142dd8c828925d151
2004-10-25 15:47:46 -04:00
Steve Reinhardt e852f9e31a Add explicit phases to order ParamContext initializations.
--HG--
extra : convert_revision : c24fba2bded2493a892fa93de0c61f9674cfedbb
2004-10-25 00:56:47 -04:00
Steve Reinhardt 400daa7e41 Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : aac76a4b82b3455620618bba6238507248cc68cc
2004-10-24 23:06:35 -04:00
Nathan Binkert 6ac0d27b7d Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : aaf81b1c1283229de21e0ef7e9916a4464f72fa3
2004-10-23 16:18:53 -04:00
Nathan Binkert a7fd7729ab flesh out the TCP/IP/Ethernet support
base/refcnt.hh:
    reorganize the RefCountingPtr a little bit to make it easier
    to derive from
dev/etherpkt.hh:
    this doesn't belong here. use the inet.hh stuff
dev/ns_gige.cc:
dev/ns_gige.hh:
    use newer features in the tcp/ip/ethernet stuff

--HG--
extra : convert_revision : 32c1953c95655c1f4c70e0d8adedfd94beead624
2004-10-23 16:18:44 -04:00