gem5.git
19 years agomore portable
Nathan Binkert [Sat, 4 Jun 2005 18:16:04 +0000 (14:16 -0400)]
more portable

arch/alpha/alpha_tru64_process.cc:
    Sort #includes
    Make code more portable. g++ doesn't seem to always like
    struct ::stat (and others). So, we typedef stat outside of
    the namespace as something else and use the typedef
base/hostinfo.cc:
    use snprintf to quell warning
base/inifile.cc:
    use strncpy to quell warning
base/stats/events.cc:
    don't use strcpy
cpu/beta_cpu/btb.cc:
    use FloorLog2 instead of log2
cpu/beta_cpu/comm.hh:
cpu/beta_cpu/inst_queue.hh:
cpu/beta_cpu/sat_counter.hh:
    use sim/host.hh instead of stdint.h

--HG--
extra : convert_revision : 59bd9235dda74e72a8b6a70b3f3a981840384f3f

19 years agoMake m5.fast work
Nathan Binkert [Sat, 4 Jun 2005 01:47:30 +0000 (21:47 -0400)]
Make m5.fast work

base/loader/elf_object.cc:
    elf_version is an odd function.  Don't use assert since it
    has a necessary side effect.

--HG--
extra : convert_revision : 8c48f91afe6c7ff5030ac1a534dcda7e2e0c5c57

19 years agoBug fix & cleanup in config code.
Steve Reinhardt [Fri, 3 Jun 2005 20:21:37 +0000 (16:21 -0400)]
Bug fix & cleanup in config code.

python/m5/config.py:
    Bug fix: code was silently converting between
    incompatible SimObject types as an unintended
    side-effect of the object cloning support.

--HG--
extra : convert_revision : 236f4fe5370f2eddf8af8fab68e2b83dccc34305

19 years agoAdditions/fixes for Tru64 syscall emulation.
Steve Reinhardt [Fri, 3 Jun 2005 20:19:34 +0000 (16:19 -0400)]
Additions/fixes for Tru64 syscall emulation.
We can now run the SimpleScalar wupwise binary
to completion on the test input.
Didn't have time to do more testing, but I fixed
a major problem w/getdirentries that should help
a lot more programs run.

arch/alpha/alpha_tru64_process.cc:
    Add truncate, ftruncate, statfs, and fstatfs.
    Add v4.x (pre-F64) stat, fstat, and lstat.
    Add setsysinfo (though all it does is provide more
    specific warning messages).
    Fix subtle but major bug in getdirentries.
sim/syscall_emul.cc:
sim/syscall_emul.hh:
    Add truncate, ftruncate, statfs, and fstatfs.

--HG--
extra : convert_revision : 9037393d00dc49b0074a41603ea647587f5a9ec7

19 years agoMake m5.fast work when there are no Trace.flags
Nathan Binkert [Fri, 3 Jun 2005 14:07:27 +0000 (10:07 -0400)]
Make m5.fast work when there are no Trace.flags

--HG--
extra : convert_revision : 05eda14b86311013d3c32ee56f9f52ae94126fb4

19 years agoRename builds more descriptively:
Steve Reinhardt [Thu, 2 Jun 2005 20:15:43 +0000 (16:15 -0400)]
Rename builds more descriptively:
ALPHA -> ALPHA_SE (for Syscall Emulation)
KERNEL -> ALPHA_FS
KERN_TLASER -> ALPHA_FS_TL
Also renamed configs/kernel dir to configs/fullsys.

README:
build/SConstruct:
    Rename builds more descriptively.

--HG--
extra : convert_revision : f2bffb3ad0fc5068cc7fa20661ed9e4e7bc5b202

19 years agoclean up command line stuff
Nathan Binkert [Thu, 2 Jun 2005 15:20:31 +0000 (11:20 -0400)]
clean up command line stuff

sim/main.cc:
    Clean uo usage output and print usage when no options are given
    Don't accept mpy files anymore since we don't use them.

--HG--
extra : convert_revision : c3b16f602f301d2de12547285334c0037d829998

19 years agoFix-up some config issues
Nathan Binkert [Thu, 2 Jun 2005 15:19:01 +0000 (11:19 -0400)]
Fix-up some config issues

python/m5/config.py:
    Make NetworkBandwidth and MemoryBandwidth work
python/m5/objects/Ethernet.py:
    Make 1Gbps default for ethernet

--HG--
extra : convert_revision : 59e62f7e62624356ae8d7304598617f60667f040

19 years agoupdate copyrights that are spit out on the console.
Nathan Binkert [Thu, 2 Jun 2005 15:17:45 +0000 (11:17 -0400)]
update copyrights that are spit out on the console.

--HG--
extra : convert_revision : e927fd48d2cc82d20478baeb05f58dce07a800e7

19 years agoMore de-SimpleScalarization of cache code.
Steve Reinhardt [Thu, 2 Jun 2005 05:03:17 +0000 (01:03 -0400)]
More de-SimpleScalarization of cache code.

--HG--
extra : convert_revision : b310a0e8a02487302d4861cfa08543b6047a0ff7

19 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Thu, 2 Jun 2005 04:08:09 +0000 (00:08 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 71d4611b6d9496d3237c4d0cd46912a108ec8653

19 years agoChange lru/iic parameter checks for licensing.
Erik Hallnor [Thu, 2 Jun 2005 03:14:10 +0000 (23:14 -0400)]
Change lru/iic parameter checks for licensing.

--HG--
extra : convert_revision : 5d5ae086d5e7981d49c68a2283ad2c08e27b4399

19 years agoGet rid of unused sim/int_stats.* files.
Steve Reinhardt [Thu, 2 Jun 2005 02:09:22 +0000 (22:09 -0400)]
Get rid of unused sim/int_stats.* files.

--HG--
extra : convert_revision : 6b86e97fbadbd6f00c0bc52f0ab07fd7741f9818

19 years agoRename sim/universe.{cc,hh} to root.{cc,hh} (since the
Steve Reinhardt [Thu, 2 Jun 2005 01:59:27 +0000 (21:59 -0400)]
Rename sim/universe.{cc,hh} to root.{cc,hh} (since the
object defined there was renamed Root long ago).

SConscript:
arch/alpha/alpha_linux_process.cc:
arch/alpha/alpha_tru64_process.cc:
base/misc.cc:
base/pollevent.cc:
base/pollevent.hh:
base/stats/events.cc:
base/trace.hh:
cpu/beta_cpu/fetch_impl.hh:
cpu/beta_cpu/full_cpu.cc:
cpu/beta_cpu/inst_queue_impl.hh:
cpu/pc_event.cc:
cpu/static_inst.cc:
dev/etherbus.cc:
dev/etherdump.cc:
dev/etherlink.cc:
dev/ide_disk.cc:
dev/pcidev.cc:
sim/builder.cc:
sim/eventq.cc:
sim/main.cc:
sim/root.cc:
sim/stat_control.cc:
    Rename sim/universe.{cc,hh} to root.{cc,hh}.

--HG--
rename : sim/universe.cc => sim/root.cc
extra : convert_revision : b8699e81e285253d66da75412e7bb2c251c0389a

19 years agoStandardize clock parameter names to 'clock'.
Steve Reinhardt [Thu, 2 Jun 2005 01:44:00 +0000 (21:44 -0400)]
Standardize clock parameter names to 'clock'.
Fix description for Bus clock_ratio (no longer a ratio).
Add Clock param type (generic Frequency or Latency).

cpu/base_cpu.cc:
cpu/base_cpu.hh:
cpu/beta_cpu/alpha_full_cpu_builder.cc:
cpu/simple_cpu/simple_cpu.cc:
dev/ide_ctrl.cc:
dev/ns_gige.cc:
dev/ns_gige.hh:
dev/pciconfigall.cc:
dev/sinic.cc:
dev/tsunami_cchip.cc:
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/uart.cc:
python/m5/objects/BaseCPU.py:
python/m5/objects/BaseCache.py:
python/m5/objects/BaseSystem.py:
python/m5/objects/Bus.py:
python/m5/objects/Ethernet.py:
python/m5/objects/Root.py:
sim/universe.cc:
    Standardize clock parameter names to 'clock'.
    Fix description for Bus clock_ratio (no longer a ratio).
python/m5/config.py:
    Minor tweaks on Frequency/Latency:
    - added new Clock param type to avoid ambiguities
    - factored out init code into getLatency()
    - made RootFrequency *not* a subclass of Frequency so it
    can't be directly assigned to a Frequency paremeter

--HG--
extra : convert_revision : fc4bb8562df171b454bbf696314cda57e1ec8506

19 years agoGet rid of obsolete simobj/SConscript
Steve Reinhardt [Wed, 1 Jun 2005 21:14:42 +0000 (17:14 -0400)]
Get rid of obsolete simobj/SConscript

--HG--
extra : convert_revision : 2f2a5e1702a5ad09d80362e25a895e6181b2117c

19 years agoA few more config updates. Works with regression now.
Steve Reinhardt [Wed, 1 Jun 2005 21:08:45 +0000 (17:08 -0400)]
A few more config updates.  Works with regression now.

configs/splash2/run.py:
    Update file for new config changes.
python/m5/config.py:
    - isParamContext() not defined any more
    - fix bug with re-assigning vectors over scalars
    and vice versa

--HG--
rename : configs/splash2/run.mpy => configs/splash2/run.py
extra : convert_revision : 2eb28a92f8de327f6dfddd01467c61e759275f6b

19 years agoMajor cleanup of python config code.
Steve Reinhardt [Sun, 29 May 2005 05:14:50 +0000 (01:14 -0400)]
Major cleanup of python config code.
Special mpy importer is gone; everything is just plain
Python now (funky, but straight-up).
May not completely work yet... generates identical ini
files for many configs/kernel settings, but I have yet
to run it against regressions.  This commit is for my
own convenience and won't be pushed until more testing
is done.

python/m5/__init__.py:
    Get rid of mpy_importer and param_types.
python/m5/config.py:
    Major cleanup.  We now have separate classes and
    instances for SimObjects.  Proxy handling and param
    conversion significantly reorganized.  No explicit
    instantiation step anymore; we can dump an ini file
    straight from the original tree.
    Still needs more/better/truer comments.
test/genini.py:
    Replace LoadMpyFile() with built-in execfile().
    Export __main__.m5_build_env.
python/m5/objects/AlphaConsole.py:
python/m5/objects/AlphaFullCPU.py:
python/m5/objects/AlphaTLB.py:
python/m5/objects/BadDevice.py:
python/m5/objects/BaseCPU.py:
python/m5/objects/BaseCache.py:
python/m5/objects/BaseSystem.py:
python/m5/objects/Bus.py:
python/m5/objects/CoherenceProtocol.py:
python/m5/objects/Device.py:
python/m5/objects/DiskImage.py:
python/m5/objects/Ethernet.py:
python/m5/objects/Ide.py:
python/m5/objects/IntrControl.py:
python/m5/objects/MemTest.py:
python/m5/objects/Pci.py:
python/m5/objects/PhysicalMemory.py:
python/m5/objects/Platform.py:
python/m5/objects/Process.py:
python/m5/objects/Repl.py:
python/m5/objects/Root.py:
python/m5/objects/SimConsole.py:
python/m5/objects/SimpleDisk.py:
python/m5/objects/Tsunami.py:
python/m5/objects/Uart.py:
    Fixes for eliminating mpy_importer, and modified
    handling of frequency/latency params.
    Also renamed parent to Parent.

--HG--
rename : python/m5/objects/AlphaConsole.mpy => python/m5/objects/AlphaConsole.py
rename : python/m5/objects/AlphaFullCPU.mpy => python/m5/objects/AlphaFullCPU.py
rename : python/m5/objects/AlphaTLB.mpy => python/m5/objects/AlphaTLB.py
rename : python/m5/objects/BadDevice.mpy => python/m5/objects/BadDevice.py
rename : python/m5/objects/BaseCPU.mpy => python/m5/objects/BaseCPU.py
rename : python/m5/objects/BaseCache.mpy => python/m5/objects/BaseCache.py
rename : python/m5/objects/BaseSystem.mpy => python/m5/objects/BaseSystem.py
rename : python/m5/objects/Bus.mpy => python/m5/objects/Bus.py
rename : python/m5/objects/CoherenceProtocol.mpy => python/m5/objects/CoherenceProtocol.py
rename : python/m5/objects/Device.mpy => python/m5/objects/Device.py
rename : python/m5/objects/DiskImage.mpy => python/m5/objects/DiskImage.py
rename : python/m5/objects/Ethernet.mpy => python/m5/objects/Ethernet.py
rename : python/m5/objects/Ide.mpy => python/m5/objects/Ide.py
rename : python/m5/objects/IntrControl.mpy => python/m5/objects/IntrControl.py
rename : python/m5/objects/MemTest.mpy => python/m5/objects/MemTest.py
rename : python/m5/objects/Pci.mpy => python/m5/objects/Pci.py
rename : python/m5/objects/PhysicalMemory.mpy => python/m5/objects/PhysicalMemory.py
rename : python/m5/objects/Platform.mpy => python/m5/objects/Platform.py
rename : python/m5/objects/Process.mpy => python/m5/objects/Process.py
rename : python/m5/objects/Repl.mpy => python/m5/objects/Repl.py
rename : python/m5/objects/Root.mpy => python/m5/objects/Root.py
rename : python/m5/objects/SimConsole.mpy => python/m5/objects/SimConsole.py
rename : python/m5/objects/SimpleDisk.mpy => python/m5/objects/SimpleDisk.py
rename : python/m5/objects/Tsunami.mpy => python/m5/objects/Tsunami.py
rename : python/m5/objects/Uart.mpy => python/m5/objects/Uart.py
extra : convert_revision : 9dc55103a6f5b40eada4ed181a71a96fae6b0b76

19 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Sun, 29 May 2005 03:59:48 +0000 (23:59 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 475f25967577aa47d84b476c07ce0ddfe05078d0

19 years agons_gige_reg.h, ns_gige.cc:
Lisa Hsu [Sun, 29 May 2005 01:54:32 +0000 (21:54 -0400)]
ns_gige_reg.h, ns_gige.cc:
clean up code to eliminate license issues.

dev/ns_gige.cc:
dev/ns_gige_reg.h:
    clean up code to eliminate license issues.

--HG--
extra : convert_revision : 64adbd87faa5ce5ac6b9da4fd95b12796487c8f9

19 years agoAdded copyright.
Kevin Lim [Fri, 27 May 2005 03:30:12 +0000 (23:30 -0400)]
Added copyright.

--HG--
extra : convert_revision : f6d53ac5130ea9f77f39f7c1aa35eeb1d5107599

19 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Wed, 25 May 2005 20:06:12 +0000 (16:06 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 13696a8e526f7ded7555d009d03bdc7551557571

19 years agoLittle debugging things.
Steve Reinhardt [Tue, 24 May 2005 20:37:30 +0000 (16:37 -0400)]
Little debugging things.

cpu/base_cpu.cc:
    Get rid of leftover debugging code.

--HG--
extra : convert_revision : b33b2279499456b12a6242a9472ea5be724b37be

19 years agoUpdate mem trace reader params.
Steve Reinhardt [Fri, 20 May 2005 21:14:54 +0000 (17:14 -0400)]
Update mem trace reader params.

--HG--
extra : convert_revision : 03807971dacb23801895be45ea1582d2c345c021

19 years agoMinor changes to get new cpu to compile with FULL_SYSTEM.
Steve Reinhardt [Fri, 20 May 2005 21:13:37 +0000 (17:13 -0400)]
Minor changes to get new cpu to compile with FULL_SYSTEM.

cpu/beta_cpu/full_cpu.hh:
    Make cpu_id protected rather than private so derived
    classes can access it.
cpu/beta_cpu/regfile.hh:
    Get rid of troublesome debugging statement.

--HG--
extra : convert_revision : ae1f841697ea8d736579b8278eaf8fc6bdf3b6c5

19 years agoFix up code for initial release. The main bug that remains is properly forwarding...
Kevin Lim [Thu, 19 May 2005 05:28:25 +0000 (01:28 -0400)]
Fix up code for initial release.  The main bug that remains is properly forwarding data from stores to loads, specifically when they are of differing sizes.

cpu/base_dyn_inst.cc:
    Remove unused commented out code.
cpu/base_dyn_inst.hh:
    Fix up comments.
cpu/beta_cpu/2bit_local_pred.cc:
    Reorder code to match header file.
cpu/beta_cpu/2bit_local_pred.hh:
    Update comments.
cpu/beta_cpu/alpha_dyn_inst.hh:
    Remove useless comments.
cpu/beta_cpu/alpha_dyn_inst_impl.hh:
cpu/beta_cpu/alpha_full_cpu_impl.hh:
cpu/beta_cpu/comm.hh:
cpu/beta_cpu/iew_impl.hh:
    Remove unused commented code.
cpu/beta_cpu/alpha_full_cpu.hh:
    Remove obsolete comment.
cpu/beta_cpu/alpha_impl.hh:
cpu/beta_cpu/full_cpu.hh:
    Alphabetize includes.
cpu/beta_cpu/bpred_unit.hh:
    Remove unused global history code.
cpu/beta_cpu/btb.hh:
cpu/beta_cpu/free_list.hh:
    Use full path in #defines.
cpu/beta_cpu/commit.hh:
cpu/beta_cpu/decode.hh:
    Reorder functions.
cpu/beta_cpu/commit_impl.hh:
    Remove obsolete commented code.
cpu/beta_cpu/fetch.hh:
    Remove obsolete comments.
cpu/beta_cpu/fetch_impl.hh:
cpu/beta_cpu/rename_impl.hh:
    Remove commented code.
cpu/beta_cpu/full_cpu.cc:
    Remove useless defines.
cpu/beta_cpu/inst_queue.hh:
    Use full path for #defines.
cpu/beta_cpu/inst_queue_impl.hh:
    Reorder functions to match header file.
cpu/beta_cpu/mem_dep_unit.hh:
    Use full path name for #defines.
cpu/beta_cpu/ras.hh:
    Use full path names for #defines.  Remove mod operation.
cpu/beta_cpu/regfile.hh:
    Remove unused commented code, fix up current comments.
cpu/beta_cpu/tournament_pred.cc:
cpu/beta_cpu/tournament_pred.hh:
    Update programming style.

--HG--
extra : convert_revision : fb9d18a853f58a1108ff827e3c123d5b52a0608a

19 years agoMerge ktlim@zizzer:/bk/m5 into zamp.eecs.umich.edu:/z/ktlim2/current/m5
Kevin Lim [Tue, 17 May 2005 18:34:46 +0000 (14:34 -0400)]
Merge ktlim@zizzer:/bk/m5 into zamp.eecs.umich.edu:/z/ktlim2/current/m5

--HG--
extra : convert_revision : c403960153ed648e7da7251465ca9350ba10cd27

19 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Sun, 15 May 2005 11:43:12 +0000 (07:43 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : 5437b6fde4c09b8890d2bfa0cfba3d7e509a0f92

19 years agoFix "no supplier" bug.
Steve Reinhardt [Sun, 15 May 2005 04:34:27 +0000 (00:34 -0400)]
Fix "no supplier" bug.

--HG--
extra : convert_revision : 01549db31d2094c58c6875fbbf79d4e07e7e39f9

19 years agoMore cleanup of fetch code.
Steve Reinhardt [Sat, 14 May 2005 23:42:46 +0000 (19:42 -0400)]
More cleanup of fetch code.

--HG--
extra : convert_revision : a2279283be76341467e228ad1d56989a2be383eb

19 years agoAdd mem_trace parameter to BaseCache.
Steve Reinhardt [Fri, 13 May 2005 19:01:42 +0000 (15:01 -0400)]
Add mem_trace parameter to BaseCache.

python/m5/objects/BaseCache.mpy:
    Add mem_trace parameter.

--HG--
extra : convert_revision : a0bab53fabd7426eee5ca9c845c02a6ac2e1722f

19 years agopanic vs fatal fixes in bus.cc
Steve Reinhardt [Fri, 13 May 2005 04:28:42 +0000 (00:28 -0400)]
panic vs fatal fixes in bus.cc

base/misc.hh:
    Add some comments explaining the difference between
    panic() and fatal().

--HG--
extra : convert_revision : 876f0c98276fa1060c0589dc179022a297a8ed2e

19 years agoForce pipeline drain on first instruction of async interrupt handler.
Steve Reinhardt [Thu, 12 May 2005 23:25:38 +0000 (19:25 -0400)]
Force pipeline drain on first instruction of async interrupt handler.
Done by marking DynInst as serializing... requires adding the ability
to check both DynInst and StaticInst for serializing behavior.

--HG--
extra : convert_revision : 00db3e16d3b13dd9663f5a9f1bd8f724ed499914

19 years agoGet rid of unused SMT code from FullCPU.
Steve Reinhardt [Thu, 12 May 2005 19:36:42 +0000 (15:36 -0400)]
Get rid of unused SMT code from FullCPU.

--HG--
extra : convert_revision : 7a047b36718a44a8f3a43e3c0f54ca796d19f10a

19 years agoAdd definitions for memory trace writers.
Steve Reinhardt [Mon, 9 May 2005 16:12:07 +0000 (12:12 -0400)]
Add definitions for memory trace writers.

--HG--
extra : convert_revision : bb27c2a2ba8f97f186b712165db9a25f3fe61dda

19 years agoMerge ktlim@zizzer:/bk/m5 into zamp.eecs.umich.edu:/z/ktlim2/current/m5
Kevin Lim [Wed, 4 May 2005 18:41:36 +0000 (14:41 -0400)]
Merge ktlim@zizzer:/bk/m5 into zamp.eecs.umich.edu:/z/ktlim2/current/m5

--HG--
extra : convert_revision : b868e7920eaa3682c6123651f0c598673ebb7f22

19 years agoAdd support for dedicated 1GHz Simple CPU
Ron Dreslinski [Tue, 3 May 2005 18:42:58 +0000 (14:42 -0400)]
Add support for dedicated 1GHz Simple CPU
New examples of test.py files in ~rdreslin/jobs/ancs0 and ~rdreslin/cpt/ancs0

--HG--
extra : convert_revision : c2337874199fae9cbd43da9dbc3b9bd85ea2c92e

19 years agoLarge update of several parts of my code. The most notable change is the inclusion...
Kevin Lim [Tue, 3 May 2005 14:56:47 +0000 (10:56 -0400)]
Large update of several parts of my code.  The most notable change is the inclusion of a full-fledged load/store queue.  At the moment it still has some issues running, but most of the code is hopefully close to the final version.

SConscript:
arch/isa_parser.py:
cpu/base_dyn_inst.cc:
    Remove OOO CPU stuff.
arch/alpha/faults.hh:
    Add fake memory fault.  This will be removed eventually.
arch/alpha/isa_desc:
    Change EA comp and Mem accessor to be const StaticInstPtrs.
cpu/base_dyn_inst.hh:
    Update read/write calls to use load queue and store queue indices.
cpu/beta_cpu/alpha_dyn_inst.hh:
    Change to const StaticInst in the register accessors.
cpu/beta_cpu/alpha_dyn_inst_impl.hh:
    Update syscall code with thread numbers.
cpu/beta_cpu/alpha_full_cpu.hh:
    Alter some of the full system code so it will compile without errors.
cpu/beta_cpu/alpha_full_cpu_builder.cc:
    Created a DerivAlphaFullCPU class so I can instantiate different CPUs that have different template parameters.
cpu/beta_cpu/alpha_full_cpu_impl.hh:
    Update some of the full system code so it compiles.
cpu/beta_cpu/alpha_params.hh:
cpu/beta_cpu/fetch_impl.hh:
    Remove asid.
cpu/beta_cpu/comm.hh:
    Remove global history field.
cpu/beta_cpu/commit.hh:
    Comment out rename map.
cpu/beta_cpu/commit_impl.hh:
    Update some of the full system code so it compiles.  Also change it so that it handles memory instructions properly.
cpu/beta_cpu/cpu_policy.hh:
    Removed IQ from the IEW template parameter to make it more uniform.
cpu/beta_cpu/decode.hh:
    Add debug function.
cpu/beta_cpu/decode_impl.hh:
    Slight updates for decode in the case where it causes a squash.
cpu/beta_cpu/fetch.hh:
cpu/beta_cpu/rob.hh:
    Comment out unneccessary code.
cpu/beta_cpu/full_cpu.cc:
    Changed some of the full system code so it compiles.  Updated exec contexts and so forth to hopefully make multithreading easier.
cpu/beta_cpu/full_cpu.hh:
    Updated some of the full system code to make it compile.
cpu/beta_cpu/iew.cc:
    Removed IQ from template parameter to IEW.
cpu/beta_cpu/iew.hh:
    Removed IQ from template parameter to IEW. Updated IEW to recognize the Load/Store queue.
cpu/beta_cpu/iew_impl.hh:
    New handling of memory instructions through the Load/Store queue.
cpu/beta_cpu/inst_queue.hh:
    Updated comment.
cpu/beta_cpu/inst_queue_impl.hh:
    Slightly different handling of memory instructions due to Load/Store queue.
cpu/beta_cpu/regfile.hh:
    Updated full system code so it compiles.
cpu/beta_cpu/rob_impl.hh:
    Moved some code around; no major functional changes.
cpu/ooo_cpu/ooo_cpu.hh:
    Slight updates to OOO CPU; still does not work.
cpu/static_inst.hh:
    Remove OOO CPU stuff.  Change ea comp and mem acc to return const StaticInst.
kern/kernel_stats.hh:
    Extra forward declares added due to compile error.

--HG--
extra : convert_revision : 594a7cdbe57f6c2bda7d08856fcd864604a6238e

19 years agoFix ethernet configuration
Nathan Binkert [Mon, 2 May 2005 23:05:20 +0000 (19:05 -0400)]
Fix ethernet configuration

--HG--
extra : convert_revision : 9ee6e620b722d39d234b15785852a6cc00ffe041

19 years agoSkip calibrate delay again.
Nathan Binkert [Mon, 2 May 2005 23:01:11 +0000 (19:01 -0400)]
Skip calibrate delay again.

kern/linux/linux_system.cc:
    calibrate delay starts three instructions after the symbol now.

--HG--
extra : convert_revision : f9c2bed3bca1f3394801fe7696cfff870443c204

19 years agoMake sinic work with mpy
Nathan Binkert [Mon, 2 May 2005 23:00:11 +0000 (19:00 -0400)]
Make sinic work with mpy

dev/sinic.cc:
dev/sinic.hh:
    Fix sinic parameters. (header_bus -> io_bus)
python/m5/objects/Ethernet.mpy:
    Add simobj definitions for sinic.

--HG--
extra : convert_revision : 77d5b80bd1f1708329b263fb48965d7f555cc9d1

19 years agoworkaround configuration bug in tick is ps.
Nathan Binkert [Mon, 2 May 2005 22:56:50 +0000 (18:56 -0400)]
workaround configuration bug in tick is ps.

--HG--
extra : convert_revision : 301b6e4d590efc7a4d11959a932d5349edc59041

19 years agoImprove checkpointing of ethernet packets a bit.
Nathan Binkert [Mon, 2 May 2005 22:55:39 +0000 (18:55 -0400)]
Improve checkpointing of ethernet packets a bit.

dev/etherpkt.cc:
    Don't try to suck in the packet if the length is zero.

--HG--
extra : convert_revision : 7212f3b677777fbce301f0613b9f513bb9fe057e

19 years agoBetter configurations for checkpointing. Add more NIC options.
Nathan Binkert [Mon, 2 May 2005 22:54:36 +0000 (18:54 -0400)]
Better configurations for checkpointing.  Add more NIC options.

--HG--
extra : convert_revision : d0b9ccbcb4ac14f0d305bfcbfb9a041dfb5d3465

19 years agoMake sure to just do the dma No Allocation on reads
Ron Dreslinski [Mon, 2 May 2005 22:02:51 +0000 (18:02 -0400)]
Make sure to just do the dma No Allocation on reads

--HG--
extra : convert_revision : f5d0b6753958c36fd3678c61b5e9af943e24d517

19 years agoAdd environment parameter for Allocation policy of DMA's
Ron Dreslinski [Mon, 2 May 2005 18:25:54 +0000 (14:25 -0400)]
Add environment parameter for Allocation policy of DMA's

--HG--
extra : convert_revision : 444952065b0508c083e8c64fa5f9f5a761787900

19 years agoMerge ktlim@zizzer.eecs.umich.edu:/bk/m5
Kevin Lim [Mon, 2 May 2005 18:16:33 +0000 (14:16 -0400)]
Merge ktlim@zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5

--HG--
extra : convert_revision : ac0788599c365b2d7fe0870f0fea4b62c3b3ef22

19 years agoMerge zizzer:/z/m5/Bitkeeper/m5
Ron Dreslinski [Sat, 30 Apr 2005 16:54:28 +0000 (12:54 -0400)]
Merge zizzer:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zazzer/z/rdreslin/m5bk/clean

--HG--
extra : convert_revision : eb92d2799c76fad09f6b5a9476e4e9fc7c8dbfca

19 years agoHandle no_allocates as needing the response in miss_queue, like uncacheables
Ron Dreslinski [Sat, 30 Apr 2005 16:53:58 +0000 (12:53 -0400)]
Handle no_allocates as needing the response in miss_queue, like uncacheables
Add support for hit under miss of a no allocate (It seems as though DMA reads to the same block happen close together, is this an artifact of the header/payload splitting)
Make sure to respond to all targets of a no_allocate request

--HG--
extra : convert_revision : a9d733f499face4039929524573ffc9500e93d83

19 years agoCleanup rcS files. Make sure there are enough tracked connections.
Nathan Binkert [Sat, 30 Apr 2005 15:00:43 +0000 (11:00 -0400)]
Cleanup rcS files.  Make sure there are enough tracked connections.
Delay before singalling peer to make sure that the peer is ready

configs/boot/nat-netperf-server.rcS:
    delay before singalling to make sure that the natbox is ready
configs/boot/nat-netperf-stream-client.rcS:
    increase the number of tracked connections
configs/boot/nat-spec-surge-client.rcS:
configs/boot/nfs-client-nhfsstone.rcS:
configs/boot/nfs-client-smallb.rcS:
configs/boot/nfs-client-tcp-smallb.rcS:
configs/boot/nfs-client-tcp.rcS:
configs/boot/nfs-client.rcS:
configs/boot/nfs-server.rcS:
configs/boot/spec-surge-client.rcS:
configs/boot/spec-surge-server.rcS:
configs/boot/surge-client.rcS:
configs/boot/surge-server.rcS:
    increase the number of tracked connections
    cleanup
configs/boot/nat-spec-surge-server.rcS:
configs/boot/natbox-netperf.rcS:
configs/boot/nfs-server-nhfsstone.rcS:
    delay before singalling to make sure that the natbox is ready
    increase the number of tracked connections
    cleanup
configs/boot/natbox-spec-surge.rcS:
    delay before singalling to make sure that the natbox is ready
    increase the number of tracked connections

--HG--
extra : convert_revision : 9faa5ec11c9c02fed3d1cff922ca42c41d364204

19 years agoAdd suport for no allocation of cache block on a dma read passing through a cache...
Ron Dreslinski [Sat, 30 Apr 2005 01:01:43 +0000 (21:01 -0400)]
Add suport for no allocation of cache block on a dma read passing through a cache from the cpu-side interface

--HG--
extra : convert_revision : 0a3b3741924ed39c1c8710d0963e4c8f3e73f81a

19 years agoClean up output for pc break events, and remove a unneeded break event.
Ron Dreslinski [Thu, 28 Apr 2005 21:24:04 +0000 (17:24 -0400)]
Clean up output for pc break events, and remove a unneeded break event.

cpu/pc_event.cc:
    Add a newline to the printout to clean up output
kern/linux/linux_system.cc:
    Remove the die_if_kernel pc break event, it is being called when not the kernel and leads to unneeded printouts

--HG--
extra : convert_revision : c359532db31c961074894cc6c44c8452592caca8

19 years agoMake ip_conntrack table size larger
Ron Dreslinski [Thu, 28 Apr 2005 20:13:30 +0000 (16:13 -0400)]
Make ip_conntrack table size larger

--HG--
extra : convert_revision : bda54b29cb15144907b186f06517477dea13ba06

19 years agoAdd the m5 parameter to the ns83820 device model so that we
Nathan Binkert [Mon, 25 Apr 2005 01:32:32 +0000 (21:32 -0400)]
Add the m5 parameter to the ns83820 device model so that we
can pass simulator specific options to the device driver.

dev/ns_gige.cc:
    Add the m5 register and parameter to the ns83820 device model
    so that we can pass simulator specific options to the device
    driver.
dev/ns_gige.hh:
dev/ns_gige_reg.h:
    Add the m5 register to the ns83820 device model

--HG--
extra : convert_revision : 84674887560fa3b607e725b8e5bc8272761fcf09

19 years agocleanup mpy file
Nathan Binkert [Mon, 25 Apr 2005 01:28:54 +0000 (21:28 -0400)]
cleanup mpy file

--HG--
extra : convert_revision : ddde8f1b60dfa0c637d82d9217e713f071af6ccb

19 years agoMake code more portable and port to cygwin
Nathan Binkert [Fri, 22 Apr 2005 17:12:03 +0000 (13:12 -0400)]
Make code more portable and port to cygwin

arch/alpha/alpha_tru64_process.cc:
    getdirent isn't implemented by cygwin.  panic if this function is
    executed.  (It shouldn't be too much to emulate it using opendir,
    readdir, etc.)
arch/alpha/pseudo_inst.cc:
    Use lseek once and read instead pread.
base/intmath.hh:
    we want int, long, and long long variations of FloorLog2 instead
    of int32_t, int64_t.  Otherwise, we leave one out.
base/socket.cc:
    Fix define that seems to be for apple
sim/serialize.cc:
    don't use the intXX_t stuff, instead, use the real types
    so we're sure that we cover all of them.

--HG--
extra : convert_revision : 9fccaff583100b06bbaafd95a162c4e19beed59e

19 years agoMostly hacks for multiplying Frequency-type proxies by constants
Steve Reinhardt [Sun, 17 Apr 2005 04:41:50 +0000 (00:41 -0400)]
Mostly hacks for multiplying Frequency-type proxies by constants
(plus some small fixes).

python/m5/config.py:
    Hacks to allow multiplication on Frequency/Latency-valued proxies.
    Provide __rmul__ as well as __mul__ on Proxy objects.
test/genini.py:
    Default value for -EFOO should be True not 1 (since 1 is no longer
    convertable to Bool).

--HG--
extra : convert_revision : f8a221fcd9e095fdd7b7db4be0ed0cdcd20074be

19 years agoMerge ktlim@zizzer.eecs.umich.edu:/bk/m5
Kevin Lim [Fri, 15 Apr 2005 19:10:07 +0000 (15:10 -0400)]
Merge ktlim@zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5

--HG--
extra : convert_revision : febc87fb6083ef8b80a2bc91a766ea9e13d82744

19 years agoF
Ron Dreslinski [Thu, 14 Apr 2005 22:38:56 +0000 (18:38 -0400)]
F

--HG--
extra : convert_revision : 22245997131432986d94105957461275ee4ae07e

19 years agoMerge ktlim@zizzer.eecs.umich.edu:/bk/m5
Kevin Lim [Thu, 14 Apr 2005 20:06:34 +0000 (16:06 -0400)]
Merge ktlim@zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5

--HG--
extra : convert_revision : 0baadd8d68bfa6f8e96307eb2d4426b0d9e0b8b4

19 years agoMake multiple calls to SimExit work.
Nathan Binkert [Wed, 13 Apr 2005 18:26:57 +0000 (14:26 -0400)]
Make multiple calls to SimExit work.

--HG--
extra : convert_revision : 91a5652913b7278efe6a3a4955e5e2f723ba59eb

19 years agoMake the exit after max checkpoints code compile.
Nathan Binkert [Wed, 13 Apr 2005 18:26:56 +0000 (14:26 -0400)]
Make the exit after max checkpoints code compile.

sim/serialize.cc:
    call exitNow instead of SimExit.  Include the header too.

--HG--
extra : convert_revision : 633a8533b23cac914a2b09bd2d3ea5d85243c675

19 years agoAdd support to limit the number of checkpoints dropped.
Nathan Binkert [Wed, 13 Apr 2005 13:38:50 +0000 (09:38 -0400)]
Add support to limit the number of checkpoints dropped.

sim/serialize.hh:
    Add variables to keep track of the number of checkpoints
    dropped and maximum allowed.

--HG--
extra : convert_revision : 32241b90c58def6958ec84c53cc2cca996007506

19 years agoFixup split stats.
Nathan Binkert [Mon, 11 Apr 2005 19:44:21 +0000 (15:44 -0400)]
Fixup split stats.

--HG--
extra : convert_revision : 5f3d162c3f4d90f481393f812e6138c659e4f6e2

19 years agoUpdate for changes in the way latencies and bandwidths are dealt with.
Nathan Binkert [Mon, 11 Apr 2005 19:42:35 +0000 (15:42 -0400)]
Update for changes in the way latencies and bandwidths are dealt with.

--HG--
extra : convert_revision : 1d183bf47222599ee11154ab0c9eb9cd99a29806

19 years agoMake the notion of a global event tick independent of the actual
Nathan Binkert [Mon, 11 Apr 2005 19:32:06 +0000 (15:32 -0400)]
Make the notion of a global event tick independent of the actual
CPU cycle ticks.  This allows the user to have CPUs of different
frequencies, and also allows frequencies and latencies that are
not evenly divisible by the CPU frequency.  For now, the CPU
frequency is still set to the global frequency, but soon, we'll
hopefully make the global frequency fixed at something like 1THz
and set all other frequencies independently.

arch/alpha/ev5.cc:
    The cycles counter is based on the current cpu cycle.
cpu/base_cpu.cc:
    frequency isn't the cpu parameter anymore, cycleTime is.
cpu/base_cpu.hh:
    frequency isn't the cpu parameter anymore, cycleTime is.
    create several public functions for getting the cpu frequency
    and the numbers of ticks for a given number of cycles, etc.
cpu/memtest/memtest.cc:
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
cpu/trace/trace_cpu.cc:
    Now that ticks aren't cpu cycles, fixup code to advance
    by the proper number of ticks.
cpu/memtest/memtest.hh:
cpu/trace/trace_cpu.hh:
    Provide a function to get the number of ticks for a given
    number of cycles.
dev/alpha_console.cc:
    Update for changes in the way that frequencies and latencies are
    accessed.  Move some stuff to init()
dev/alpha_console.hh:
    Need a pointer to the system and the cpu to get the frequency
    so we can pass the info to the console code.
dev/etherbus.cc:
dev/etherbus.hh:
dev/etherlink.cc:
dev/etherlink.hh:
dev/ethertap.cc:
dev/ide_disk.hh:
dev/ns_gige.cc:
dev/ns_gige.hh:
    update for changes in the way bandwidths are passed from
    python to C++ to accomidate the new way that ticks works.
dev/ide_disk.cc:
    update for changes in the way bandwidths are passed from
    python to C++ to accomidate the new way that ticks works.
    Add some extra debugging printfs
dev/platform.cc:
dev/sinic.cc:
dev/sinic.hh:
    outline the constructor and destructor
dev/platform.hh:
    outline the constructor and destructor.
    don't keep track of the interrupt frequency.  Only provide the
    accessor function.
dev/tsunami.cc:
dev/tsunami.hh:
    outline the constructor and destructor
    Don't set the interrupt frequency here.  Get it from the actual device
    that does the interrupting.
dev/tsunami_io.cc:
dev/tsunami_io.hh:
    Make the interrupt interval a configuration parameter.  (And convert
    the interval to the new latency/frequency stuff in the python)
kern/linux/linux_system.cc:
    update for changes in the way bandwidths are passed from
    python to C++ to accomidate the new way that ticks works.
    For now, we must get the boot cpu's frequency as a parameter
    since allowing the system to have a pointer to the boot cpu would
    cause a cycle.
kern/tru64/tru64_system.cc:
    For now, we must get the boot cpu's frequency as a parameter
    since allowing the system to have a pointer to the boot cpu would
    cause a cycle.
python/m5/config.py:
    Fix support for cycle_time relative latencies and frequencies.
    Add support for getting a NetworkBandwidth or a MemoryBandwidth.
python/m5/objects/BaseCPU.mpy:
    All CPUs now have a cycle_time.  The default is the global frequency,
    but it is now possible to set the global frequency to some large value
    (like 1THz) and set each CPU frequency independently.
python/m5/objects/BaseCache.mpy:
python/m5/objects/Ide.mpy:
    Make this a Latency parameter
python/m5/objects/BaseSystem.mpy:
    We need to pass the boot CPU's frequency to the system
python/m5/objects/Ethernet.mpy:
    Update parameter types to use latency and bandwidth types
python/m5/objects/Platform.mpy:
    this frequency isn't needed.  We get it from the clock interrupt.
python/m5/objects/Tsunami.mpy:
    The clock generator should hold the frequency
sim/eventq.hh:
    Need to remove this assertion because the writeback event
    queue is different from the CPU's event queue which can cause
    this assertion to fail.
sim/process.cc:
    Fix comment.
sim/system.hh:
    Struct member to hold the boot CPU's frequency.
sim/universe.cc:
    remove unneeded variable.

--HG--
extra : convert_revision : 51efe4041095234bf458d9b3b0d417f4cae16fdc

19 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Sat, 9 Apr 2005 01:33:45 +0000 (21:33 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/current

--HG--
extra : convert_revision : 84720ab5c8123e7bc72b20c877499a0846ea1a4f

19 years agofull_system no longer exists as a parameter
Nathan Binkert [Sat, 9 Apr 2005 01:33:35 +0000 (21:33 -0400)]
full_system no longer exists as a parameter

--HG--
extra : convert_revision : 173cd24c130cb981036688d9cd8ba3e418d51068

19 years agoHand merged a this-> statement for gcc3.4
Ron Dreslinski [Fri, 8 Apr 2005 22:26:00 +0000 (18:26 -0400)]
Hand merged a this-> statement for gcc3.4

--HG--
extra : convert_revision : 11daa94a0631da5e9c2e4262a448035491dd86e5

19 years agoAdd Parameter to only do prefetch calculations on data accesses not instruction accesses
Ron Dreslinski [Fri, 8 Apr 2005 21:19:56 +0000 (17:19 -0400)]
Add Parameter to only do prefetch calculations on data accesses not instruction accesses

--HG--
extra : convert_revision : 85c987561a962f21466f0c1bd0473300d341c398

19 years agoHand merge
Kevin Lim [Thu, 7 Apr 2005 20:34:02 +0000 (16:34 -0400)]
Hand merge

base/traceflags.py:
    Include new flags

--HG--
extra : convert_revision : 8017cbe256860dce8b1efc1b4e1e81e883895b90

19 years agoInclude new CPUs.
Kevin Lim [Thu, 7 Apr 2005 20:30:40 +0000 (16:30 -0400)]
Include new CPUs.

--HG--
extra : convert_revision : 710597ae0b84404f0a5b737229391042a15c6e14

19 years agoSupport copying memory requests.
Nathan Binkert [Thu, 7 Apr 2005 04:07:48 +0000 (00:07 -0400)]
Support copying memory requests.

--HG--
extra : convert_revision : 783a778e5eeef36eab22a7c855a5474b83ff4488

19 years agoAdd support for acking writes with a configurable delay
Nathan Binkert [Thu, 7 Apr 2005 03:31:31 +0000 (23:31 -0400)]
Add support for acking writes with a configurable delay
as they are received by the bus bridge.
Better Bus debugging.

--HG--
extra : convert_revision : c6329384276e0ebcf8ae12b86fddb377af66bbba

19 years agofix typo in python config stuff
Nathan Binkert [Wed, 6 Apr 2005 22:00:44 +0000 (18:00 -0400)]
fix typo in python config stuff

python/m5/config.py:
    fix typo

--HG--
extra : convert_revision : 2208453d93149ba4af140dd78c29be4c4943b397

19 years agoFix the python NetworkBandwidth conversion function
Nathan Binkert [Wed, 6 Apr 2005 21:59:31 +0000 (17:59 -0400)]
Fix the python NetworkBandwidth conversion function

python/m5/convert.py:
    Fix the NetworkBandwidth conversion function

--HG--
extra : convert_revision : 93d9856fe6b59827c116e15835d2ef51292bd6c4

19 years agoformatting
Nathan Binkert [Wed, 6 Apr 2005 21:58:57 +0000 (17:58 -0400)]
formatting

--HG--
extra : convert_revision : 0b041556222c3892ee72e4d56c8acdda72bfc303

19 years agoCleanup diagnostic and error messages for the IDE disk
Nathan Binkert [Wed, 6 Apr 2005 21:47:32 +0000 (17:47 -0400)]
Cleanup diagnostic and error messages for the IDE disk

dev/ide_disk.cc:
    Cleanup diagnostic and error messages

--HG--
extra : convert_revision : fb1bc6d9f28a10961c9d3ee1dc81b540b92653b8

19 years agoBetter debugging output for the ide controller
Nathan Binkert [Wed, 6 Apr 2005 21:39:25 +0000 (17:39 -0400)]
Better debugging output for the ide controller

dev/ide_ctrl.cc:
    Better debugging

--HG--
extra : convert_revision : 854e17f9f36fe4a0b6b69fd48027d2b1b231e858

19 years agoAdd TcpPort and UdpPort as python types
Nathan Binkert [Wed, 6 Apr 2005 21:05:30 +0000 (17:05 -0400)]
Add TcpPort and UdpPort as python types

python/m5/objects/SimConsole.mpy:
    the listener port is a TcpPort

--HG--
extra : convert_revision : c26fdd93d3bc35d9f1563ac1087a7f75471c9020

19 years agoMove back to vmlinux-latest
Nathan Binkert [Wed, 6 Apr 2005 21:00:31 +0000 (17:00 -0400)]
Move back to vmlinux-latest

--HG--
extra : convert_revision : 9a14f21768f075f0c84f90feebb6d3d897286e34

19 years agofull_system isn't a useful parameter anymore, get rid of it.
Nathan Binkert [Wed, 6 Apr 2005 20:58:40 +0000 (16:58 -0400)]
full_system isn't a useful parameter anymore, get rid of it.

python/m5/objects/Root.mpy:
sim/universe.cc:
util/stats/stats.py:
    full_system isn't a useful parameter

--HG--
extra : convert_revision : 557091be1faa3cf121c55102aba4e6f4c1bd45ef

19 years agoMinor fixes for g++ 3.4
Kevin Lim [Tue, 5 Apr 2005 20:20:55 +0000 (16:20 -0400)]
Minor fixes for g++ 3.4

--HG--
extra : convert_revision : cb3931c72cfa737414404b7ebebfad7cfea8ef8a

19 years agoAdd more prefetcher support.
Ron Dreslinski [Mon, 4 Apr 2005 20:25:22 +0000 (16:25 -0400)]
Add more prefetcher support.

SConscript:
    Add GHB prefetcher to build list
python/m5/objects/BaseCache.mpy:
    Add parameters about when to remove prefetches and wether or not to use cpuid to differentiate access patterns

--HG--
extra : convert_revision : 1d3fef21910f2f34b8c28d01b5f6e86eef53357c

19 years agoMerge zizzer:/z/m5/Bitkeeper/m5
Ron Dreslinski [Mon, 4 Apr 2005 12:34:16 +0000 (08:34 -0400)]
Merge zizzer:/z/m5/Bitkeeper/m5
into zazzer.eecs.umich.edu:/z/rdreslin/m5bk/prefetcher

--HG--
extra : convert_revision : b89d95b6b09a70dc060747f9703643af008c2ddd

19 years agoAdded support for multiple prefetch address from single access (depth of prefetch...
Ron Dreslinski [Sun, 3 Apr 2005 01:36:08 +0000 (20:36 -0500)]
Added support for multiple prefetch address from single access (depth of prefetch) also added the ability to squash some prefetchs to match the GHB technique

python/m5/objects/BaseCache.mpy:
    Added parameters

--HG--
extra : convert_revision : 92b646eb61455d283a5c2ac0b3f8fbd62e39fb87

19 years agoRework some statistics and add some prefetcher statistics. Also remove an unneeded...
Ron Dreslinski [Sat, 2 Apr 2005 23:40:59 +0000 (18:40 -0500)]
Rework some statistics and add some prefetcher statistics.  Also remove an unneeded function call.

--HG--
extra : convert_revision : b40cfc16f237ec03aac15d42fe34d5676b0c71c1

19 years agoFix up Python ParamContext support.
Steve Reinhardt [Sat, 2 Apr 2005 06:20:47 +0000 (01:20 -0500)]
Fix up Python ParamContext support.

--HG--
extra : convert_revision : cd2fe692b42016c4e2a84cd5c8f615c16217254a

19 years agoSet the time in the request to proprley calculate latencies
Ron Dreslinski [Sat, 2 Apr 2005 02:08:03 +0000 (21:08 -0500)]
Set the time in the request to proprley calculate latencies

--HG--
extra : convert_revision : cd54e924ad89cebbd797beda7dbbdae53eec66a7

19 years agoMake sure to calculate the new state properly in coherence protocol
Ron Dreslinski [Sat, 2 Apr 2005 02:07:08 +0000 (21:07 -0500)]
Make sure to calculate the new state properly in coherence protocol

--HG--
extra : convert_revision : 5a983f5d2e225d4be205faa9bacffc2258452efc

19 years agoSome hand merges
Ron Dreslinski [Sat, 2 Apr 2005 00:39:23 +0000 (19:39 -0500)]
Some hand merges

--HG--
rename : objects/BaseCache.mpy => python/m5/objects/BaseCache.mpy
extra : convert_revision : b24ff4c1feb480cf280207d4bbdfe08ef80d1aa2

19 years agoAnother pass at the prefetcher. Now it works with both miss and access reference...
Ron Dreslinski [Sat, 2 Apr 2005 00:26:44 +0000 (19:26 -0500)]
Another pass at the prefetcher.  Now it works with both miss and access reference streams.
Reworked how it is instattiated and how it communicates with other cache objects.

SConscript:
    Compile all the prefetcher files
objects/BaseCache.mpy:
    Add parameters for prefetcher

--HG--
extra : convert_revision : 2faa81c17673420ffae72a50a27e310d4c0f4135

19 years agoRemove a printf that shouldn't be there, Fix some errors with full system config...
Ron Dreslinski [Fri, 1 Apr 2005 23:25:34 +0000 (18:25 -0500)]
Remove a printf that shouldn't be there, Fix some errors with full system config files that wasn't using coherence in MP cases

--HG--
extra : convert_revision : 32670b9252fd4be61ab4dcc8d90f4251d9db5069

19 years agoRework the way the prefetcher is used. Now we copy the request from the prefetch...
Ron Dreslinski [Wed, 30 Mar 2005 20:05:58 +0000 (15:05 -0500)]
Rework the way the prefetcher is used.  Now we copy the request from the prefetch queue and into the mq when issued

objects/BaseCache.mpy:
    Add some parameters for prefetcher

--HG--
extra : convert_revision : 1a2e6d2ce5359fab0a4d5d4639a701131101d68c

19 years agoFirst pass at a prefetcher
Ron Dreslinski [Wed, 30 Mar 2005 09:46:04 +0000 (04:46 -0500)]
First pass at a prefetcher

SConscript:
    Add prefetcher to the compilation
base/traceflags.py:
    Add a trace flag for hardware prefetches

--HG--
extra : convert_revision : bc210192a2b75b1470b2cd9d5d470fc61cb11315

19 years agoexpose variables for number of global events per simulated second,
Nathan Binkert [Tue, 29 Mar 2005 12:55:44 +0000 (07:55 -0500)]
expose variables for number of global events per simulated second,
millisecond, microsecond, etc. so that the user can explicitly
convert between system ticks and time and know what sorts of
expensive operations are being used for that conversion.

arch/alpha/alpha_tru64_process.cc:
arch/alpha/pseudo_inst.cc:
dev/etherdump.cc:
dev/etherlink.cc:
dev/ns_gige.cc:
dev/sinic.cc:
dev/tsunami_io.cc:
dev/uart.cc:
sim/stat_control.cc:
sim/syscall_emul.hh:
    Use the new variables for getting the event clock
dev/etherdump.hh:
    delete variables that are no longer needed.

--HG--
extra : convert_revision : d95fc7d44909443e1b7952a24ef822ef051c7cf2

19 years agoMerge ktlim@zizzer.eecs.umich.edu:/bk/m5
Kevin Lim [Mon, 28 Mar 2005 19:40:02 +0000 (14:40 -0500)]
Merge ktlim@zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5

--HG--
extra : convert_revision : 95e94251150a3eea380b6b3bc3a9596e188df315

19 years agoIf we find the mysql libraries on the machine, just compile
Nathan Binkert [Mon, 28 Mar 2005 05:41:28 +0000 (00:41 -0500)]
If we find the mysql libraries on the machine, just compile
with mysql and remove the special compile type.

SConscript:
    If we find the mysql libraries on the machine, just compile
    with mysql.
build/SConstruct:
    we always use mysql, and we got rid of the FS_MEASURE

--HG--
extra : convert_revision : a7c4277c890e1b6390ef06288114c9bdde11b178

19 years agostyle
Nathan Binkert [Sat, 26 Mar 2005 04:03:31 +0000 (23:03 -0500)]
style

--HG--
extra : convert_revision : 3a45fb5dbd0975f60a37e0e0c3ab27450b7d749e

19 years agoBetter handling of latency/frequency parameter types
Nathan Binkert [Sat, 26 Mar 2005 03:59:29 +0000 (22:59 -0500)]
Better handling of latency/frequency parameter types

python/m5/config.py:
    Addr is slightly different from memory size in that Addr
    will take non strings.
    Deal with the fact that the convert.toFoo functions only accept
    strings.
    Add RootFrequency as a special type for the Root.frequency
    parameter which is not scaled.
    Add ClockPeriod parameter type.
python/m5/convert.py:
    Be more strict about what's allowed.
    Only accept strings as inputs for these conversion functions.
    If the user wants to accept something else, they need to deal
    with the failure and convert other types on their own.
python/m5/objects/Bus.mpy:
    Use the new ClockPeriod parameter type
python/m5/objects/Root.mpy:
    Can't use integers for frequency anymore
python/m5/smartdict.py:
    rename SmartDict.Proxy to just Variable.  Create a new class
    UndefinedVariable that is returned when the user tries to get
    a variable that is not in the dict.  Undefined variable evaluates
    to false, and will cause an error elsewhere.

--HG--
extra : convert_revision : 1d55246fd1af65106f102396234827d6401ef9ce