gem5.git
18 years agoAdd reference outputs for SPARC on the atomic timing cpu model
Gabe Black [Mon, 23 Oct 2006 11:57:16 +0000 (07:57 -0400)]
Add reference outputs for SPARC on the atomic timing cpu model

--HG--
extra : convert_revision : b64ff7c05504da6112631baaae8f0d927469e16f

18 years agoBroke Load/Store instructions into microcode, and partially refactored memory operati...
Gabe Black [Mon, 23 Oct 2006 11:55:52 +0000 (07:55 -0400)]
Broke Load/Store instructions into microcode, and partially refactored memory operations in the SPARC ISA description.

--HG--
rename : src/arch/sparc/isa/formats.isa => src/arch/sparc/isa/formats/formats.isa
rename : src/arch/sparc/isa/formats/mem.isa => src/arch/sparc/isa/formats/mem/basicmem.isa
rename : src/arch/sparc/isa/formats/blockmem.isa => src/arch/sparc/isa/formats/mem/blockmem.isa
rename : src/arch/sparc/isa/formats/mem.isa => src/arch/sparc/isa/formats/mem/mem.isa
extra : convert_revision : dbbb00f997a102871b084b209b9fa08c5e1853ee

18 years agoDon't let interupts interupt microcode at undesired points.
Gabe Black [Mon, 23 Oct 2006 06:39:02 +0000 (02:39 -0400)]
Don't let interupts interupt microcode at undesired points.

--HG--
extra : convert_revision : a8ddc6b213b1a1b0d9c5cd194b88ac0c6bfb2a21

18 years agoFiles in base shouldn't depend on things in sim. Changed "sim/host.hh" to <inttypes.hh>
Gabe Black [Mon, 23 Oct 2006 06:37:54 +0000 (02:37 -0400)]
Files in base shouldn't depend on things in sim. Changed "sim/host.hh" to <inttypes.hh>

--HG--
extra : convert_revision : c1e46c012a26cdb0603416f8e8a99e0ecb1c09bc

18 years agoStart making memory ops work with InitiateAcc and CompleteAcc, and some minor cleanups
Gabe Black [Mon, 23 Oct 2006 06:36:46 +0000 (02:36 -0400)]
Start making memory ops work with InitiateAcc and CompleteAcc, and some minor cleanups

--HG--
extra : convert_revision : 178a8c5d0506c75ad7a7e8d691c8863235ed7e95

18 years agoChange the default constructors to take ExtMachInsts rather than regular MachInsts
Gabe Black [Mon, 23 Oct 2006 06:32:58 +0000 (02:32 -0400)]
Change the default constructors to take ExtMachInsts rather than regular MachInsts

--HG--
extra : convert_revision : 8fa34f82e0cbf5ce81775d572b182826c578581f

18 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Fri, 20 Oct 2006 20:39:47 +0000 (16:39 -0400)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  zeep.eecs.umich.edu:/home/gblack/m5/newmem

--HG--
extra : convert_revision : 2711fec2bf72801999b060e65f0bf744c18734fb

18 years agoConstruct a correct value of PYTHONHOME from the interpreter
Nathan Binkert [Fri, 20 Oct 2006 18:37:59 +0000 (11:37 -0700)]
Construct a correct value of PYTHONHOME from the interpreter
running SCons, make it into a sticky option that can be
overridden at build time, and set it up before the interpreter
is started.  Also, fix the code that turns sticky options into
config/*.hh so that it works with types other than bool.

--HG--
extra : convert_revision : 602398b35d4da4e813f78865678ed348fdea7270

18 years agoGive physical memory some latency to stress the system
Ron Dreslinski [Fri, 20 Oct 2006 17:36:26 +0000 (13:36 -0400)]
Give physical memory some latency to stress the system

--HG--
extra : convert_revision : 3ca32ff9140770d0774cac5e82807a0574db09dd

18 years agoAdd a config file in the example with the memtester and some parser options.
Ron Dreslinski [Fri, 20 Oct 2006 17:32:24 +0000 (13:32 -0400)]
Add a config file in the example with the memtester and some parser options.

--HG--
extra : convert_revision : e70ccc3de4f7a3ae20ff9ec672853ee1555ed41b

18 years agoGet rid of a variable put back by merge.
Ron Dreslinski [Fri, 20 Oct 2006 17:05:39 +0000 (13:05 -0400)]
Get rid of a variable put back by merge.

--HG--
extra : convert_revision : 5ddb6ae5d5412f062c07c16a27b79483430b5f22

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Fri, 20 Oct 2006 17:04:59 +0000 (13:04 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

src/mem/tport.cc:
    Merge PacketPtr changes

--HG--
extra : convert_revision : 0329c5803a3df67af3dda89bd9d4753fd1a286d1

18 years agoUse fixPacket function everywhere.
Ron Dreslinski [Fri, 20 Oct 2006 17:01:21 +0000 (13:01 -0400)]
Use fixPacket function everywhere.
Fix fixPacket assert function.
Stop timing port from forwarding the request if a response was found in its queue on a read.

src/cpu/memtest/memtest.cc:
src/cpu/memtest/memtest.hh:
src/python/m5/objects/MemTest.py:
    Add parameter to configure what percentage of mem accesses are functional
src/mem/cache/base_cache.cc:
src/mem/cache/cache_impl.hh:
    Use fix Packet function
src/mem/packet.cc:
    Fix an assert that was checking the wrong thing
src/mem/tport.cc:
    Properly detect if we need to do the access to the functional device

--HG--
extra : convert_revision : 447cc1a9a65ddd2a41e937fb09dc0e7c74e9c75e

18 years agoUse PacketPtr everywhere
Nathan Binkert [Fri, 20 Oct 2006 07:10:12 +0000 (00:10 -0700)]
Use PacketPtr everywhere

--HG--
extra : convert_revision : d9eb83ab77ffd2d725961f295b1733137e187711

18 years agorefactor code for the packet, get rid of packet_impl.hh
Nathan Binkert [Fri, 20 Oct 2006 06:38:45 +0000 (23:38 -0700)]
refactor code for the packet, get rid of packet_impl.hh
and call it packet_access.hh and fix the #includes so
things compile right.

--HG--
extra : convert_revision : d3626c9715b9f7e51bb3ab8d97e971fad4e0b724

18 years agoinitialize end, clean up loop
Nathan Binkert [Fri, 20 Oct 2006 06:35:59 +0000 (23:35 -0700)]
initialize end, clean up loop

--HG--
extra : convert_revision : e1c107f0c0fd5d535acd2d6c43571a5df57c9ed3

18 years agoFix compile of m5.fast
Nathan Binkert [Fri, 20 Oct 2006 06:34:59 +0000 (23:34 -0700)]
Fix compile of m5.fast

--HG--
extra : convert_revision : a8a37c318e55e48e697e4aaba339328f000b3f60

18 years agoDelete unused file src/mem/cache.hh
Steve Reinhardt [Fri, 20 Oct 2006 05:59:38 +0000 (22:59 -0700)]
Delete unused file src/mem/cache.hh

--HG--
extra : convert_revision : 11bd043bb72eef0239fa60155e1f5a5e02de7cbc

18 years agom5term: assume localhost if host name not provided.
Steve Reinhardt [Fri, 20 Oct 2006 04:42:30 +0000 (21:42 -0700)]
m5term: assume localhost if host name not provided.

util/term/term.c:
    Reindent.
util/term/term.c:
    Assume localhost if only port number is given on command line.

--HG--
extra : convert_revision : 768e61a56339a0795ca258cca788e9a2c20cbaae

18 years agoFix corner case on assertion.
Ron Dreslinski [Fri, 20 Oct 2006 01:26:46 +0000 (21:26 -0400)]
Fix corner case on assertion.
I need to move over to using the fixPacket function so I don't have to make the same changes everywhere.
Still a functional access bug someplace I need to track down in timing mode.

src/mem/cache/base_cache.cc:
src/mem/cache/cache_impl.hh:
    Fix corner case on assertion
tests/configs/memtest.py:
    Updated memtester with uncacheable addresses and functional accesses

--HG--
extra : convert_revision : e6fa851621700ff9227b83cc5cac20af4fc8444f

18 years agoFix memtester to use functional access, fix cache to work functionally now that we...
Ron Dreslinski [Fri, 20 Oct 2006 01:07:53 +0000 (21:07 -0400)]
Fix memtester to use functional access, fix cache to work functionally now that we could test it.

src/cpu/memtest/memtest.cc:
    Fix memtest to do functional accesses
src/mem/cache/cache_impl.hh:
    Fix cache to handle functional accesses properly based on memtester changes
    Still need to fix functional accesses in timing mode now that the memtester can test it.

--HG--
extra : convert_revision : a6dbca4dc23763ca13560fbf5d41a23ddf021113

18 years agoSmall changes:
Ron Dreslinski [Fri, 20 Oct 2006 00:18:17 +0000 (20:18 -0400)]
Small changes:
?? doesn't compile in warn statements
Should have been false, where I had a true.

src/cpu/o3/lsq_impl.hh:
    Apparently you can't have ?? in a warn statement (Something about trigraphs)
src/mem/cache/cache_impl.hh:
    Forgot to signal atomic mode in snoopProbe

--HG--
extra : convert_revision : c75cb76e193e852284564993440c8ea39e6de426

18 years agoFixes to get single level uni-coherence to work.
Ron Dreslinski [Fri, 20 Oct 2006 00:02:57 +0000 (20:02 -0400)]
Fixes to get single level uni-coherence to work.
Now to try L2 caches in FS.

src/mem/cache/base_cache.hh:
    Fix uni-coherence for atomic accesses in coherence protocol access to port
src/mem/cache/cache_impl.hh:
    Properly handle uni-coherence
src/mem/cache/coherence/simple_coherence.hh:
    Properly forward invalidates (not done for MSI+ protocols (assumed top level for now)
src/mem/cache/coherence/uni_coherence.cc:
src/mem/cache/coherence/uni_coherence.hh:
    Properly forward invalidates in atomic/timing uni-coherence

--HG--
extra : convert_revision : f0f11315e8e7f32c19d92287f6f9c27b079c96f7

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Thu, 19 Oct 2006 23:00:43 +0000 (19:00 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : c6611b32537918f5bf183788227ddf69a9a9a069

18 years agoAlways get the functional access from the highest level of cache first.
Ron Dreslinski [Thu, 19 Oct 2006 23:00:27 +0000 (19:00 -0400)]
Always get the functional access from the highest level of cache first.

src/mem/cache/cache_impl.hh:
    Get the read data from the highest level of cache on a functional access

--HG--
extra : convert_revision : 7437ac46fb40f3ea3b42197a1aa8aec62af60181

18 years agoAlso mark the packet as successful.
Ron Dreslinski [Thu, 19 Oct 2006 22:29:42 +0000 (18:29 -0400)]
Also mark the packet as successful.

--HG--
extra : convert_revision : 2c38c209d2f5cb0ee2f8e55fce6ee4400529d547

18 years agoCleaned up the function a bit to help route out bugs.
Gabe Black [Thu, 19 Oct 2006 18:57:06 +0000 (14:57 -0400)]
Cleaned up the function a bit to help route out bugs.

--HG--
extra : convert_revision : db9a526bddc8634cea63b42b882f580806066db5

18 years agoProperly update the state in the cache block on functional access.
Ron Dreslinski [Thu, 19 Oct 2006 18:55:54 +0000 (14:55 -0400)]
Properly update the state in the cache block on functional access.
Mark as satisfied for functional snoops.

--HG--
extra : convert_revision : f75309c3436044a64caff097e2a585363cd004c3

18 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
Steve Reinhardt [Thu, 19 Oct 2006 17:33:08 +0000 (13:33 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/newmem
into  zizzer.eecs.umich.edu:/z/stever/bk/newmem-head

--HG--
extra : convert_revision : 8a70922250092c013fa4db6d83254b438ee6c4be

18 years agoAdd "All" compund flag to enable all defined trace flags.
Steve Reinhardt [Thu, 19 Oct 2006 17:32:08 +0000 (10:32 -0700)]
Add "All" compund flag to enable all defined trace flags.

--HG--
extra : convert_revision : dcc699d8341f762dee659290cd35206e326e1179

18 years agoAdd new event priority for trace enable events so
Steve Reinhardt [Thu, 19 Oct 2006 17:21:23 +0000 (10:21 -0700)]
Add new event priority for trace enable events so
that tracing gets turned on as the very first thing
in the selected cycle (tick).

--HG--
extra : convert_revision : c08f749ca42782af1b48e5aa5f0860bf7076bd3c

18 years agoFirst cut at LL/SC support in caches (atomic mode only).
Steve Reinhardt [Thu, 19 Oct 2006 07:33:33 +0000 (00:33 -0700)]
First cut at LL/SC support in caches (atomic mode only).

configs/example/fs.py:
    Add MOESI protocol to caches (uni coherence not quite working w/FS yet).

--HG--
extra : convert_revision : 7bef7d9c5b24bf7241cc810df692408837b06b86

18 years agoZeroed out the actual LSB in addition to moving it's original value the MSB.
Gabe Black [Thu, 19 Oct 2006 00:53:59 +0000 (20:53 -0400)]
Zeroed out the actual LSB in addition to moving it's original value the MSB.

--HG--
extra : convert_revision : d29efe01781d72ee6e61818e7b93972262c0616b

18 years agoFixed up exetrace.cc to deal with microcode, and to made floating point register...
Gabe Black [Thu, 19 Oct 2006 00:52:34 +0000 (20:52 -0400)]
Fixed up exetrace.cc to deal with microcode, and to made floating point register numbers correlate to the numbers used in SPARC in m5 and statetrace.

src/cpu/exetrace.cc:
    Fixed up to deal with microcode, and to make floating point register numbers correlate to the numbers used in SPARC.
util/statetrace/arch/tracechild_sparc.cc:
util/statetrace/arch/tracechild_sparc.hh:
    Make floating point register numbers correlate to the numbers used in SPARC.

--HG--
extra : convert_revision : 878897292f696092453cf61d6eac2d1c407ca13b

18 years agoFixed a compiler error, disassembly output, and corrected the address calculation.
Gabe Black [Thu, 19 Oct 2006 00:48:08 +0000 (20:48 -0400)]
Fixed a compiler error, disassembly output, and corrected the address calculation.

--HG--
extra : convert_revision : d34b3c0443064addb6f454ac70fbaeda0678e329

18 years agoFixed up ldblockf_p, implemented stdfa properly, and got rid of some old code.
Gabe Black [Thu, 19 Oct 2006 00:44:51 +0000 (20:44 -0400)]
Fixed up ldblockf_p, implemented stdfa properly, and got rid of some old code.

--HG--
extra : convert_revision : 263b4b835d6d1bc9049acdc1398286277bede97a

18 years agohow did i not commit this already? the other way doesn't seem to work, need to conve...
Lisa Hsu [Wed, 18 Oct 2006 22:04:53 +0000 (18:04 -0400)]
how did i not commit this already?  the other way doesn't seem to work, need to convert to System ptr first to access System method.

src/python/m5/SimObject.py:
    how did i not commit this already?  the other way doesn't seem to work.

--HG--
extra : convert_revision : 55737d3d10742a1913a376d1febbc5809f2fab8f

18 years agoneed some initializations before doing the loop.
Lisa Hsu [Wed, 18 Oct 2006 22:01:33 +0000 (18:01 -0400)]
need some initializations before doing the loop.

--HG--
extra : convert_revision : e5e8b16ae4f119c923d8c0d295aa9569d7a8fe5b

18 years agoonly do this assert after you know you're not switched out or idle.
Lisa Hsu [Wed, 18 Oct 2006 21:59:11 +0000 (17:59 -0400)]
only do this assert after you know you're not switched out or idle.

--HG--
extra : convert_revision : 0cd0d31db44fe7e8e44bde90e1756873faca422f

18 years agoFix WriteInvalidateResp
Ron Dreslinski [Wed, 18 Oct 2006 20:38:02 +0000 (16:38 -0400)]
Fix WriteInvalidateResp

--HG--
extra : convert_revision : ac4281944202a9a2f166b305a1eaea507e484bcc

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Wed, 18 Oct 2006 17:34:52 +0000 (13:34 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : 9e47881686a6c060fa28e7edfd9a0b556099bf30

18 years agoBreak a lot of overly long lines.
Steve Reinhardt [Wed, 18 Oct 2006 15:41:05 +0000 (08:41 -0700)]
Break a lot of overly long lines.
Factor out some asserts that were on both
sides of an if/else.

--HG--
extra : convert_revision : 78f0c2d76a81a98216b2f281159c6b6ea0147731

18 years agoGet rid of doData() lines (were already commented out).
Steve Reinhardt [Wed, 18 Oct 2006 15:24:24 +0000 (08:24 -0700)]
Get rid of doData() lines (were already commented out).
Reindent due to resulting changes in nesting.

--HG--
extra : convert_revision : 6be099d572efb618efb08fbc06d7e0e4b5b4cab2

18 years agoGet rid of obsolete in-cache copy support.
Steve Reinhardt [Wed, 18 Oct 2006 15:16:22 +0000 (08:16 -0700)]
Get rid of obsolete in-cache copy support.

--HG--
extra : convert_revision : a701ed9d078c67718a33f4284c0403a8aaac7b25

18 years agoAdd --caches option to add caches to server CPUs.
Steve Reinhardt [Wed, 18 Oct 2006 06:30:11 +0000 (23:30 -0700)]
Add --caches option to add caches to server CPUs.

--HG--
extra : convert_revision : 6aa97dcc807e175215e73c638faf73be926d4cd4

18 years agoInclude packet_impl.hh (need this on my laptop,
Steve Reinhardt [Wed, 18 Oct 2006 04:16:17 +0000 (21:16 -0700)]
Include packet_impl.hh (need this on my laptop,
but not on zizzer... g++ 4 thing maybe?)

--HG--
extra : convert_revision : 31c49f1c55fe9daf6365411bfb5bb7f6ccc8032d

18 years agoEnable MP systems via cmd-line flag in fs.py.
Steve Reinhardt [Wed, 18 Oct 2006 04:15:11 +0000 (21:15 -0700)]
Enable MP systems via cmd-line flag in fs.py.

configs/example/fs.py:
    Add flag for MP server systems.
src/python/m5/objects/AlphaConsole.py:
src/python/m5/objects/IntrControl.py:
    Change CPU from 'any' to 'cpu[0]' to work better with MP sytems.
tests/configs/tsunami-simple-atomic-dual.py:
tests/configs/tsunami-simple-timing-dual.py:
    Don't need to set console & intrcontrol cpu
    params anymore (default is fixed now).

--HG--
extra : convert_revision : 9417b12b1b395ff7d6a9f2894e4123923c754daf

18 years agoadd code to serialize se structures. Lisa is working on the python side of things...
Ali Saidi [Tue, 17 Oct 2006 23:38:36 +0000 (19:38 -0400)]
add code to serialize se structures. Lisa is working on the python side of things and will test

src/mem/page_table.cc:
src/mem/page_table.hh:
    add code to serialize/unserialize page table
src/sim/process.cc:
src/sim/process.hh:
    add code to serialize/unserialize process

--HG--
extra : convert_revision : ee9eb5e2c38c5d317a2f381972c552d455e0db9e

18 years agoFixes for uni-coherence in timing mode for FS.
Ron Dreslinski [Tue, 17 Oct 2006 22:50:19 +0000 (18:50 -0400)]
Fixes for uni-coherence in timing mode for FS.
Still a bug in atomic uni-coherence in FS.

src/cpu/o3/fetch_impl.hh:
src/cpu/o3/lsq_impl.hh:
src/cpu/simple/atomic.cc:
src/cpu/simple/timing.cc:
    Make CPU models handle coherence requests
src/mem/cache/base_cache.cc:
    Properly signal coherence CSHRs
src/mem/cache/coherence/uni_coherence.cc:
    Only deallocate once

--HG--
extra : convert_revision : c4533de421c371c5532ee505e3ecd451511f5c99

18 years agoFixes to cache eliminating the assumption that the Packet is still valid after sendin...
Ron Dreslinski [Tue, 17 Oct 2006 20:47:22 +0000 (16:47 -0400)]
Fixes to cache eliminating the assumption that the Packet is still valid after sending out a request.
Still need to rework upgrades into this system, but works for now.

src/mem/cache/base_cache.cc:
    Re order code to be more readable
src/mem/cache/base_cache.hh:
    Be sure to delete the copy on a bus block
src/mem/cache/cache_impl.hh:
    Be sure to remove the copy on a writeback success
src/mem/cache/miss/mshr_queue.cc:
    Demorgans to make it easier to understand
src/mem/tport.cc:
    Delete writebacks

--HG--
extra : convert_revision : 9519fb37b46ead781d340de29bb342a322a6a92e

18 years agoProperly chack the pkt pointer on upgrades to insure no segfaults when writebacks...
Ron Dreslinski [Tue, 17 Oct 2006 19:07:40 +0000 (15:07 -0400)]
Properly chack the pkt pointer on upgrades to insure no segfaults when writebacks delete the packet.

--HG--
extra : convert_revision : 72b1c6296a16319f4d16c62bc7038365654dbc40

18 years agoFix it so that the cache does not assume to gave the packet it sent out via sendTiming.
Ron Dreslinski [Tue, 17 Oct 2006 19:05:21 +0000 (15:05 -0400)]
Fix it so that the cache does not assume to gave the packet it sent out via sendTiming.
Still need to fix upgrades to use this path

src/mem/cache/base_cache.cc:
    Copy the pkt to the MSHR before issuing the sendTiming where it may be changed/consumed
src/mem/cache/cache_impl.hh:
    Use copy of packet, because sendTiming may have changed the pkt
    Also, delete the copy when the time comes

--HG--
extra : convert_revision : 635cde6b4f08d010affde310c46b1caf50fbe424

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Tue, 17 Oct 2006 18:28:17 +0000 (14:28 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : e33d535feb0c3d975dc043efdc86efe0df05800c

18 years agoRename 'Machine' to 'SysConfig'.
Steve Reinhardt [Tue, 17 Oct 2006 18:08:49 +0000 (11:08 -0700)]
Rename 'Machine' to 'SysConfig'.
Clean up a little.

--HG--
extra : convert_revision : db5f36776209c76a593205c46b08aa147358f33a

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Tue, 17 Oct 2006 18:05:23 +0000 (14:05 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : c3650273684f3fbdcd2e14e95d09ee3c6de8d6b6

18 years agoCorrected the "Authors" line
Gabe Black [Mon, 16 Oct 2006 19:59:48 +0000 (15:59 -0400)]
Corrected the "Authors" line

--HG--
extra : convert_revision : 0202e130b170dcc2f45403c58cf51ec8c2e4e094

18 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Mon, 16 Oct 2006 19:56:53 +0000 (15:56 -0400)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  zeep.eecs.umich.edu:/home/gblack/m5/newmem

--HG--
extra : convert_revision : 898976bbd322e55bc234035456df8090c6dcf72d

18 years agoFix up microcode support.
Gabe Black [Mon, 16 Oct 2006 19:56:46 +0000 (15:56 -0400)]
Fix up microcode support.

src/arch/sparc/isa/formats/blockmem.isa:
    Several small and medium bug fixes.
src/cpu/simple/base.cc:
    Fixed a few compiler errors and made sure the next micro pc is set to 1 to prevent the first microop from executing twice. Also fixed a fetching bug.
src/cpu/thread_state.cc:
    Made sure the microPC and nextMicroPC are initialized properly.

--HG--
extra : convert_revision : a0fc8aa18d1ade916f17c557181a793c6108a8af

18 years agoChanged how floating point register numbers are decoded to fit with the spec.
Gabe Black [Mon, 16 Oct 2006 19:53:48 +0000 (15:53 -0400)]
Changed how floating point register numbers are decoded to fit with the spec.

--HG--
extra : convert_revision : 155f48c84d06619c9c1c43375beb9d0a1c7495c9

18 years agoMade sure the constructor for insts use ExtMachInst rather than MachInst, since other...
Gabe Black [Mon, 16 Oct 2006 19:52:14 +0000 (15:52 -0400)]
Made sure the constructor for insts use ExtMachInst rather than MachInst, since otherwise the EXT_ASI field is lost.

src/arch/sparc/isa/base.isa:
src/arch/sparc/isa/formats/micro.isa:
    Switch MachInst to ExtMachInst so that the EXT_ASI field is available to the instructions.
src/arch/sparc/utility.hh:
    Made sure EXT_ASI was set to the appropriate ASI value whether or not the asi register was used.

--HG--
extra : convert_revision : cc4363dfe7da81969959cec9d5ad48528edeb8ce

18 years agoAdded in missing portions of the stat structure copying function.
Gabe Black [Mon, 16 Oct 2006 01:54:59 +0000 (21:54 -0400)]
Added in missing portions of the stat structure copying function.

--HG--
extra : convert_revision : cfabcb07b2c0c5655a757e8c98999ec3cf791e09

18 years agoStarted implementing microcode.
Gabe Black [Mon, 16 Oct 2006 01:04:14 +0000 (21:04 -0400)]
Started implementing microcode.

--HG--
extra : convert_revision : 51df0454085e13df023efd8a0c0a12f9756c4690

18 years agoAdded an execute function to the macro op so it can be instantiated.
Gabe Black [Mon, 16 Oct 2006 00:54:35 +0000 (20:54 -0400)]
Added an execute function to the macro op so it can be instantiated.

--HG--
extra : convert_revision : 89dd46f5bbac966e6eb4f6f747419fa1d344eb87

18 years agoFix how additional template parameters are handled. Non string parameters are not...
Gabe Black [Mon, 16 Oct 2006 00:37:28 +0000 (20:37 -0400)]
Fix how additional template parameters are handled. Non string parameters are not processed as code.

src/arch/isa_parser.py:
    Changed the way the extra template parameters are specified. MIPS might need to be adjusted.
src/arch/sparc/isa/decoder.isa:
    Changed how Frd_N was set up.
src/arch/sparc/isa/formats/blockmem.isa:
    Fixed up handling of block memory operations
src/arch/sparc/isa/formats/integerop.isa:
src/arch/sparc/isa/formats/mem.isa:
src/arch/sparc/isa/formats/priv.isa:
    Fix up extra template parameters.

--HG--
extra : convert_revision : ebf850d192193521bb84ca36b577051f74338d23

18 years agoGet rid of unused CacheBlk << output operator.
Steve Reinhardt [Sat, 14 Oct 2006 06:09:05 +0000 (02:09 -0400)]
Get rid of unused CacheBlk << output operator.

--HG--
extra : convert_revision : d5c0aadc35edf5c9495afcd3375f1f64716ef845

18 years agoMerge 141.212.106.238:/home/gblack/m5/newmem_bus
Gabe Black [Fri, 13 Oct 2006 23:09:46 +0000 (19:09 -0400)]
Merge 141.212.106.238:/home/gblack/m5/newmem_bus
into  zizzer.eecs.umich.edu:/.automount/wexford/x/gblack/m5/newmem_bus

--HG--
extra : convert_revision : ff15f3805a9ed9aa81e92013d5b57399a30720bb

18 years agoFix stats for new bus model
Gabe Black [Fri, 13 Oct 2006 22:59:29 +0000 (18:59 -0400)]
Fix stats for new bus model

--HG--
extra : convert_revision : c081754c8eb8fa5b8e7336deb3fefb545789b8ac

18 years agoFix assertion. I haven't tested it fully (I can't reproduce Lisa's error) but I...
Kevin Lim [Fri, 13 Oct 2006 21:35:23 +0000 (17:35 -0400)]
Fix assertion.  I haven't tested it fully (I can't reproduce Lisa's error) but I believe it should fix what she's running into (which was definitely a bug).

src/cpu/o3/fetch_impl.hh:
    Move assertion to area where it should really always be true.  Sometimes you might recvRetry and not necessarily be blocked (if there was a squash).

--HG--
extra : convert_revision : 76ad35357e7f4c44fa544ffed071096a62053018

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Fri, 13 Oct 2006 19:47:35 +0000 (15:47 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : f62790e46a7e3eb88a6f8c7bfaa08526285248a3

18 years agoFix for DMA's in FS caches.
Ron Dreslinski [Fri, 13 Oct 2006 19:47:05 +0000 (15:47 -0400)]
Fix for DMA's in FS caches.
Fix CSHR's for flow control.
Fix for Bus Bridges reusing packets (clean flags up)

Now both timing/atomic caches with MOESI in UP fail at same point.

src/dev/io_device.hh:
    DMA's should send WriteInvalidates
src/mem/bridge.cc:
    Reusing packet, clean flags in the packet set by bus.
src/mem/cache/base_cache.cc:
src/mem/cache/base_cache.hh:
src/mem/cache/cache.hh:
src/mem/cache/cache_impl.hh:
src/mem/cache/coherence/simple_coherence.hh:
src/mem/cache/coherence/uni_coherence.cc:
src/mem/cache/coherence/uni_coherence.hh:
    Fix CSHR's for flow control.
src/mem/packet.hh:
    Make a writeInvalidateResp, since the DMA expects responses to it's writes

--HG--
extra : convert_revision : 59fd6658bcc0d076f4b143169caca946472a86cd

18 years agofix a bug in CopyStringOut. dprintk appears to work again.
Ali Saidi [Fri, 13 Oct 2006 18:28:46 +0000 (14:28 -0400)]
fix a bug in CopyStringOut. dprintk appears to work again.

--HG--
extra : convert_revision : cd0d13a85ddc7599308db8604a8f63a48679cc05

18 years agoMerge zizzer:/bk/newmem
Lisa Hsu [Thu, 12 Oct 2006 22:56:57 +0000 (18:56 -0400)]
Merge zizzer:/bk/newmem
into  zed.eecs.umich.edu:/z/hsul/work/m5/newmem

src/cpu/simple/timing.cc:
    hand merge

--HG--
extra : convert_revision : 083bf102249ad9bc63c447dbf85d3863f935f647

18 years agoChanged the sign extension function from mine to the provided one. Mine relied on...
Gabe Black [Thu, 12 Oct 2006 21:39:15 +0000 (17:39 -0400)]
Changed the sign extension function from mine to the provided one. Mine relied on implementation specific behavior, namely right shifting a signed value.

--HG--
extra : convert_revision : 4f5ef44d012de87919ad681024fe2ed0213a412f

18 years agoSome support for handling block loads and stores and ASIs properly.
Gabe Black [Thu, 12 Oct 2006 21:38:06 +0000 (17:38 -0400)]
Some support for handling block loads and stores and ASIs properly.

src/arch/sparc/isa/bitfields.isa:
    Added a field to retrieve the asi from the ExtMachInst
src/arch/sparc/isa/decoder.isa:
    Fixed up how the size of memory operations where handled, and use the new EXT_ASI bit field.
src/arch/sparc/isa/formats.isa:
    add includes for the new formats.
src/arch/sparc/isa/formats/basic.isa:
    Add a template for BasicDecodeWithMnemonic which is needed by the unimp format.
src/arch/sparc/isa/formats/mem.isa:
    Change around the memory format to figure out the memory access width on its own.
src/arch/sparc/isa/operands.isa:
    Added support for the operands of block loads/stores which are offset from Frd.
src/arch/sparc/utility.hh:
    Encoded the ASI into the ExtMachInst

--HG--
extra : convert_revision : 5c6026a07e3a919e738d27f78beb0faf6b060643

18 years agoStaticInst support for microcode
Gabe Black [Thu, 12 Oct 2006 21:32:02 +0000 (17:32 -0400)]
StaticInst support for microcode

--HG--
extra : convert_revision : c9e062637faf2166f0d36b914f3efa7f80626663

18 years agoThe beginnings of an instruction format to deal with block loads and stores. This...
Gabe Black [Thu, 12 Oct 2006 21:30:25 +0000 (17:30 -0400)]
The beginnings of an instruction format to deal with block loads and stores. This takes advantage of microcode.

--HG--
extra : convert_revision : ac912df76c781f40fc462f314451148c5cdfaf43

18 years agoSome support for macro/micro instructions in SPARC.
Gabe Black [Thu, 12 Oct 2006 21:29:28 +0000 (17:29 -0400)]
Some support for macro/micro instructions in SPARC.

--HG--
extra : convert_revision : 1f0687d58ab3a4823911a67d8d5c66b27cc211a5

18 years agoSupport for returning unimplemented instruction in the decoder, lifted from Alpha
Gabe Black [Thu, 12 Oct 2006 21:27:06 +0000 (17:27 -0400)]
Support for returning unimplemented instruction in the decoder, lifted from Alpha

--HG--
extra : convert_revision : 7e26053696b23fbc0b8cd5827a5072dcf2526e2b

18 years agoreplace functional code in tport with fixPacket().
Ali Saidi [Thu, 12 Oct 2006 19:30:30 +0000 (15:30 -0400)]
replace functional code in tport with fixPacket().
fixPacket() should be used anywhere a functional packet and timing packet are found to have the same address.

--HG--
extra : convert_revision : 783ec438271b24ddb0ae742b4efd1ed7d6be93f3

18 years agoMerge zizzer:/bk/newmem
Korey Sewell [Thu, 12 Oct 2006 19:05:29 +0000 (15:05 -0400)]
Merge zizzer:/bk/newmem
into  zooks.eecs.umich.edu:/y/ksewell/research/m5-sim/cleanrepo

--HG--
extra : convert_revision : f02fd56fc1ec658fe2a81d0e0b0d053b7606f7f2

18 years agoconfig file updates
Korey Sewell [Thu, 12 Oct 2006 19:04:14 +0000 (15:04 -0400)]
config file updates

--HG--
extra : convert_revision : b873e0b436d71d86b87b8d9df7115bcc7ceb2b50

18 years agoFix CSHR retrys
Ron Dreslinski [Thu, 12 Oct 2006 19:02:56 +0000 (15:02 -0400)]
Fix CSHR retrys

--HG--
extra : convert_revision : caa7664f6c945396fa38ce62fbda018ebed4eaa6

18 years agoMerge zizzer:/bk/newmem
Ali Saidi [Thu, 12 Oct 2006 19:02:50 +0000 (15:02 -0400)]
Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem.head

--HG--
extra : convert_revision : 0e184a0784100112db5841c587bd3dd638f8bdc0

18 years agosmall bus updates for functional accesses
Ali Saidi [Thu, 12 Oct 2006 19:02:25 +0000 (15:02 -0400)]
small bus updates for functional accesses

--HG--
extra : convert_revision : c7a6b199c74ed4b4ffab14bbffb51e72d75b7742

18 years agoMerge zizzer:/bk/newmem
Korey Sewell [Thu, 12 Oct 2006 18:36:41 +0000 (14:36 -0400)]
Merge zizzer:/bk/newmem
into  zooks.eecs.umich.edu:/y/ksewell/research/m5-sim/cleanrepo

--HG--
extra : convert_revision : 86abc4dabb7c72edc90fae951314d6a6b5c73705

18 years agoAdd test binary & inputs
Korey Sewell [Thu, 12 Oct 2006 18:36:21 +0000 (14:36 -0400)]
Add test binary & inputs

--HG--
extra : convert_revision : efc0249ae6f51b9f4f49741aafb2cad21e1fb11e

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Thu, 12 Oct 2006 18:31:31 +0000 (14:31 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : fa5b2cfa79d87a0612b8116d407a8b2959d9095a

18 years agoRemove bus and top level parameters from cache
Ron Dreslinski [Thu, 12 Oct 2006 18:21:25 +0000 (14:21 -0400)]
Remove bus and top level parameters from cache

src/mem/cache/base_cache.hh:
    Remove top level param from cache
src/mem/cache/coherence/uni_coherence.cc:
    Remove top level parameters from the cache

--HG--
extra : convert_revision : 4437aeedc20866869de7f9ab123dfa7baeebedf0

18 years agoMerge zizzer:/bk/newmem
Ali Saidi [Thu, 12 Oct 2006 18:18:42 +0000 (14:18 -0400)]
Merge zizzer:/bk/newmem
into  zeep.pool:/z/saidi/work/m5.newmem.head

src/mem/packet.hh:
    hand merge

--HG--
extra : convert_revision : 3f77707360235dc98c6b12a0367ca64a401313df

18 years agoadd a traceflag for functional accesses
Ali Saidi [Thu, 12 Oct 2006 18:15:09 +0000 (14:15 -0400)]
add a traceflag for functional accesses
implement fix packet and add the ability to print a packet to a ostream
remove tabs in packet.hh (Could people stop inserting them??!?!?!)
mark const functions in packet.hh as such

src/base/traceflags.py:
    add a traceflag for functional accesses
src/mem/packet.cc:
    implement fix packet and add the ability to print a packet to a ostream
src/mem/packet.hh:
    add the ability to print a packet to an ostream
    remove tabs in file
    mark const functions as such

--HG--
extra : convert_revision : 4297bce5e1d3abbab48be5bd9eb9e982b751fc7c

18 years agoCheck the response queue on functional accesses.
Ron Dreslinski [Thu, 12 Oct 2006 17:59:03 +0000 (13:59 -0400)]
Check the response queue on functional accesses.
The response queue is not tying up an MSHR, should we change that or assume infinite storage for responses?

src/mem/cache/base_cache.cc:
src/mem/tport.cc:
    Add in functional check of retry queued packets.

--HG--
extra : convert_revision : 0cb40b3a96d37a5e9eec95312d660ec6a9ce526a

18 years agoAnother memleak in the memtester (need [] with the delete)
Ron Dreslinski [Thu, 12 Oct 2006 17:45:28 +0000 (13:45 -0400)]
Another memleak in the memtester (need [] with the delete)

src/cpu/memtest/memtest.cc:
    Another memleak in the memtester

--HG--
extra : convert_revision : f7ab079e90d578fb6b9d1ff238d049fcce55b01b

18 years agoFix a memory leak in the memtester
Ron Dreslinski [Thu, 12 Oct 2006 17:43:12 +0000 (13:43 -0400)]
Fix a memory leak in the memtester

--HG--
extra : convert_revision : 93062b0f1a3ba7a5210e2f27099f20ae8f66522b

18 years agoFix problems with unCacheable addresses in timing-coherence
Ron Dreslinski [Thu, 12 Oct 2006 17:33:21 +0000 (13:33 -0400)]
Fix problems with unCacheable addresses in timing-coherence

src/base/traceflags.py:
src/mem/physical.cc:
    Add debug falgs fro physical memory accesses
src/mem/cache/cache_impl.hh:
    Snoops to uncacheable blocks should not happen
src/mem/cache/miss/miss_queue.cc:
    Set the size properly on unCacheable accesses

--HG--
extra : convert_revision : fc78192863afb11fc7c591fba169021b9e127d16

18 years agoMerge zizzer.eecs.umich.edu:/bk/newmem
Gabe Black [Thu, 12 Oct 2006 14:58:45 +0000 (10:58 -0400)]
Merge zizzer.eecs.umich.edu:/bk/newmem
into  zeep.eecs.umich.edu:/home/gblack/m5/newmem

--HG--
extra : convert_revision : 30b2475ba034550376455e1bc0e52e19a200fd5a

18 years agoMerge zizzer:/bk/newmem
Ron Dreslinski [Thu, 12 Oct 2006 01:04:11 +0000 (21:04 -0400)]
Merge zizzer:/bk/newmem
into  zazzer.eecs.umich.edu:/z/rdreslin/m5bk/newmemcleanest

--HG--
extra : convert_revision : b6224624ea493531e5ecc161bede7433f96d8a0f

18 years agoMake default ID unique (not broadcast)
Ron Dreslinski [Thu, 12 Oct 2006 00:54:06 +0000 (20:54 -0400)]
Make default ID unique (not broadcast)
Fix a segfault associated with DefaultId

src/mem/bus.cc:
    Handle a segfault in the bus when DefaultPort was being used
src/mem/bus.hh:
    Make the Default ID more unique (it overlapped with Broadcast ID)

--HG--
extra : convert_revision : 9182805c5cf4d9fe004e6c5be8547a8f41ed7bfe

18 years agoForgot to mark myself as on the retry list
Ron Dreslinski [Wed, 11 Oct 2006 23:47:11 +0000 (19:47 -0400)]
Forgot to mark myself as on the retry list

--HG--
extra : convert_revision : c20170320a284a7bf143a929e4d3aa1475a8bfe0

18 years agoadd spec2k tests
Korey Sewell [Wed, 11 Oct 2006 23:26:56 +0000 (19:26 -0400)]
add spec2k tests

--HG--
extra : convert_revision : 619d6af7013b597ade6440f8cf84d6d099e31763

18 years agoFix bus in FS mode.
Ron Dreslinski [Wed, 11 Oct 2006 23:25:48 +0000 (19:25 -0400)]
Fix bus in FS mode.

src/mem/bus.cc:
    Add debugging statement
src/mem/bus.hh:
    Fix implementation of bus for subsequent recvTimings while handling a retry request.
src/mem/tport.cc:
    Rework timing port to retry properly

--HG--
extra : convert_revision : fbfb5e8b4a625e49c6cd764da1df46a4f336b1b2