Commit graph

7080 commits

Author SHA1 Message Date
Steve Reinhardt
d85b26d65a Minor enhancements to Python config stuff:
- Add support for assigning NULL to SimObject pointers.  In Python,
this is a special value, distinct from None.
- Initial, incomplete pass at regenerating C++ parameter code (declarations
and INIT_PARAM macros) from .odesc files.

util/config/m5config.py:
    - Add support for assigning NULL to SimObject pointers.  In Python,
    this is a special value, distinct from None.
    - Initial, incomplete pass at regenerating C++ parameter code (declarations
    and INIT_PARAM macros) from .odesc files.

--HG--
extra : convert_revision : d7ae8f32e30b3c0829fd1a60589dd998e2e0d0d7
2004-04-28 16:28:37 -07:00
Erik Hallnor
05f29b8d8d Merge ehallnor@zizzer:/bk/m5
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5

--HG--
extra : convert_revision : f658c6d2e86a736702fcb88b0493904a72f5e47f
2004-04-28 16:14:29 -04:00
Erik Hallnor
3cfe87d95f Little updates do the documentation.
--HG--
extra : convert_revision : 647f2bc32064b1f330513d812d59357f01adc012
2004-04-28 16:12:20 -04:00
Erik Hallnor
851dc20bed Add an adaptive compression scheme.
--HG--
extra : convert_revision : 4ebf32976ba983cb3b9175cdf5f2e1359fa49c8b
2004-04-27 20:16:00 -04:00
Nathan Binkert
aa026cb009 Cleanup configs since bridges are now autosensing of addresses
and are bidirectional.

--HG--
extra : convert_revision : 840c940b4cee991f3a0c8e365fb60c0ef9166cf2
2004-04-22 18:10:35 -04:00
Lisa Hsu
53b54c2b65 just comment ns_gige.cc a little more
dev/ns_gige.cc:
    add some comments

--HG--
extra : convert_revision : 96ae82f1f48b8e2e2ba8a6a0e2f37d8f992d15b3
2004-04-21 18:43:39 -04:00
Lisa Hsu
bf8de77465 This is where I'm at for Linux Ethernet before I head to Mexico.
base/range.hh:
    andrew thought this might be a bug.
dev/etherpkt.cc:
    don't need std:: since there is a using directive
dev/ns_gige.cc:
    update to new PIO and PCI system
dev/ns_gige.hh:
    update to deal with new PIO and PCI setup
dev/ns_gige_reg.h:
    Add some new #defines that I ended up needing
dev/pcidev.cc:
    some changes to the debugging printfs of pci device

--HG--
extra : convert_revision : 955ba8e8e1c418cfe1c6549dc3451ea091541556
2004-04-21 18:23:41 -04:00
Erik Hallnor
407348adfb Fix the way write delay are sent on the data bus so that they are always sent. Also fixes the problem of sending both responses and write delays.
--HG--
extra : convert_revision : 3bb684526bf2ed5ab7b05c54d768291baf5dec02
2004-04-15 23:47:17 -04:00
Erik Hallnor
c053a94214 Code cleanup and debugging for the bus.
--HG--
extra : convert_revision : 8356dbf022e1aca71ff75f2947382af6a37d65b4
2004-04-14 18:44:38 -04:00
Erik Hallnor
db1b39cead Each direction in the BusBridge can now buffer max requests before blocking
--HG--
extra : convert_revision : c411cbf0affafebbc914d92d6691729fc3125486
2004-04-12 23:54:21 -04:00
Erik Hallnor
c7b0e5b58f Delete the new store data.
--HG--
extra : convert_revision : 1a03ab0500867e9855ff0cc343e29200c109cb1f
2004-04-12 23:52:53 -04:00
Erik Hallnor
f76c5ce05c Add data to stores to make compression results consistant across version of the code.
--HG--
extra : convert_revision : c72f46685e31cc93b1c1ddab78b8cf30473d4ac9
2004-04-12 22:07:33 -04:00
Erik Hallnor
cd232f6660 Connect the bus bridge up correctly, internally.
--HG--
extra : convert_revision : 323c0a79800721e4ecd253000095eb0a7a36bb29
2004-04-09 00:36:53 -04:00
Steve Reinhardt
d4069233eb Beta version of Python configuration tool. Generates .ini files from
Python script description.

arch/alpha/alpha_memory.cc:
dev/io_device.cc:
    Add DEFINE_SIM_OBJECT_CLASS_NAME for intermediate SimObjects.
test/paramtest.cc:
    Fix stupid spelling.

--HG--
extra : convert_revision : dc020208cb6507c1afb1ed771a7218daba678e09
2004-04-06 10:02:00 -07:00
Steve Reinhardt
82837b1c36 Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
--HG--
extra : convert_revision : ca1c124e667fb6d2927959a2078dd2e28c26cd2b
2004-04-05 11:01:01 -07:00
Steve Reinhardt
0ef91aa905 Changes to config to allow everything (including 'children'
and 'type') to be specified via instance name and not just
config class.  Old code only did instance-name lookup for
SimObject parameters.  This feature makes life easier for
transitioning to the Python script-based config.

sim/builder.cc:
    Use ConfigNode::find to look for "type" parameter so it can
    be found if set under instance name (not config class).
sim/param.cc:
    Make Param<bool> accept "1" for true and "0" for false.

--HG--
extra : convert_revision : f40d0878d0f03b2e216f0506c05d0e52db608cca
2004-04-05 11:00:48 -07:00
Erik Hallnor
704da6a10e Make BusBridge bidirectional. Add a new slave and master interface to help accomplish this.
--HG--
extra : convert_revision : 41bf9ce95e2965e13f7325b0b0b3be198ca86aee
2004-04-05 01:09:46 -04:00
Steve Reinhardt
65205b82ac More {Itb,Dtb} -> {ITB,DTB} renames (forgot to test build KERNEL).
Also missed renames in a bunch of config files somehow.
(See previous changeset for list of renames.)

arch/alpha/alpha_memory.cc:
arch/alpha/ev5.cc:
arch/alpha/faults.hh:
cpu/exec_context.cc:
cpu/exec_context.hh:
cpu/simple_cpu/simple_cpu.hh:
    More {Itb,Dtb} -> {ITB,DTB} renames (forgot to test build KERNEL).

--HG--
extra : convert_revision : b2c6ca0916b72b59895520fcacaf028667560a0d
2004-04-03 13:46:10 -08:00
Steve Reinhardt
b3b0a4705b Merge
--HG--
extra : convert_revision : dadfa2cd97908d769f1e2d5c645140f296ec6a82
2004-04-02 23:19:08 -08:00
Steve Reinhardt
782fb42992 Basic cleanup pass to get rid of a few things that made the Python
configuration unnecessarily awkward.  Biggest changes are:

- External and internal object names now match in all cases.  The
macros still allow them to be different; the only reason I didn't
get rid of that is that the macros themselves should be going away
soon.  In the few conflicting cases, I sometimes renamed the C++ object
and sometimes renamed the config object.  The latter sets of substitions
are:

s/BaseBus/Bus/;
s/MemoryObject/FunctionalMemory/;
s/MemoryControl/MemoryController/;
s/FUPool/FuncUnitPool/;

- SamplingCPU is temporarily broken... we need to change the model
of how this works in the .ini file.  Having it as a CPU proxy is
really awkward.

arch/alpha/alpha_memory.cc:
arch/alpha/alpha_memory.hh:
cpu/simple_cpu/simple_cpu.cc:
sim/process.cc:
    Rename objects to match config name.
cpu/base_cpu.cc:
    Uncomment SimObject define since SamplingCPU no longer
    does this for us.
dev/ethertap.cc:
    Use unsigned instead of uint16_t for params.
kern/tru64/tru64_system.cc:
    Use unsigned instead of uint64_t for init_param param.
test/paramtest.cc:
    Fix old SimObjectParam.

--HG--
extra : convert_revision : 378ebbc6a71ad0694501d09979a44d111a59e8dc
2004-04-02 22:57:08 -08:00
Erik Hallnor
ae06629947 Add new range functions to DmaInterface as well.
--HG--
extra : convert_revision : 3a7aa3e6495de86c365128b4bd1ef41fe8ff4142
2004-04-02 04:13:48 -05:00
Erik Hallnor
92c1584f1a Add automatic bus bridge address range setting/resetting. You can no longer directly set a address range on a bus bridge.
--HG--
extra : convert_revision : 708fb67b82c619f340f2b5a95f4542b573004774
2004-04-02 03:03:30 -05:00
Steve Reinhardt
3622f332f9 Fix dependencies (broken since Nate's tree-build change).
--HG--
extra : convert_revision : 7be203a46c53ac7cf464ac3857e27259a846dcfb
2004-04-01 22:18:00 -08:00
Erik Hallnor
ac016ab4b0 Add a average references to a cache block stat.
--HG--
extra : convert_revision : ba0ff82985a44c8e2de129194b1f755199469f8f
2004-04-01 18:23:17 -05:00
Nathan Binkert
13483c98be Get rid of the printExtraOutput stuff
--HG--
extra : convert_revision : d82718ad4b3c5dd56a99c727e78b39917f9d4541
2004-03-26 05:43:29 -05:00
Nathan Binkert
f299bb01ac Merge zizzer.eecs.umich.edu:/bk/m5
into crampon.:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : f210926c232d2999703bbb0adf08899d8c041729
2004-03-25 05:46:35 -05:00
Nathan Binkert
ae48fb794c Get rid of symlink hack in makefile
--HG--
extra : convert_revision : c1bc90a1d823f8034da692afd6005456ef98831b
2004-03-25 05:46:16 -05:00
Steve Reinhardt
aeb8e8ccb7 Minor cleanup from building & diffing behavior
on various platforms.

base/hashmap.hh:
    gcc on Alpha doesn't always define __LP64__,
    even though it arguably should.
cpu/exec_context.cc:
    Clear register file on non-full-system too (even though
    it typically gets overwritten by the initial regs from
    the Process object).
sim/process.cc:
    Clear initial register copy in Process object.
    Not all regs get initialized when the executable is loaded.

--HG--
extra : convert_revision : f1fe4734a5ea81331d70994cb5284b1e9db0dceb
2004-03-24 23:29:10 -08:00
Nathan Binkert
97c11561ff Don't indent namespaces because it just wastes space
--HG--
extra : convert_revision : 2236838a40bf77689a3d75df718c0da410c3fbb6
2004-03-24 10:25:18 -05:00
Nathan Binkert
438c7f5b64 Get rid of the old VPATH stuff for getting at source files
instead, require a path for each file.

--HG--
extra : convert_revision : 9ecab85eefd10ee988edce06dd6c94e8df42ad95
2004-03-24 10:00:29 -05:00
Nathan Binkert
2ae06f42b3 Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : b0af82ea6028d1f7f6756edf266945732c25ad52
2004-03-24 05:16:13 -05:00
Nathan Binkert
8b0f69166e Hacks to make the libelf stuff work in openbsd.
base/loader/elf_object.cc:
    The symbol versioning stuff screws up OpenBSD.  We don't need it anyway

--HG--
extra : convert_revision : 736d5c1baaf7f5727665f84cc08e3781e193b389
2004-03-24 05:13:49 -05:00
Erik Hallnor
6cb02394c0 Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
--HG--
extra : convert_revision : d950120ed0f96421bb953a96db94fb4aecf2241d
2004-03-24 04:41:27 -05:00
Erik Hallnor
81882c0d10 A few memory system performance enhancements.
base/compression/lzss_compression.cc:
base/compression/lzss_compression.hh:
    Rework for better performance

--HG--
extra : convert_revision : b13d706e0e23cbe7122b611258354c66cf5f3c70
2004-03-24 04:41:19 -05:00
Nathan Binkert
5e3b1f09c8 memory.ini:
make the default width narrower

--HG--
extra : convert_revision : eb25a979d065e9e3aaf030417a22c581209d8630
2004-03-24 04:39:22 -05:00
Nathan Binkert
2484aeaee7 Minor changes to Time
base/time.cc:
base/time.hh:
    Don't set the current time in the constructor.  Use a flag and
    make the default to not set the time.
    Change reset() to set().  Dunno.  Just seems right.

--HG--
extra : convert_revision : 5a3b09ed30376d4863b45b2bae551ba1c3aff8e1
2004-03-24 04:35:48 -05:00
Nathan Binkert
832a0917cf ULL()
--HG--
extra : convert_revision : 543313ec248457e6cb2f8315881f030545e8cf45
2004-03-24 02:59:43 -05:00
Lisa Hsu
f4168a708c Merge zizzer:/bk/linux into zower.eecs.umich.edu:/z/hsul/work/bk/linux
--HG--
extra : convert_revision : 69440981a018ce8b7c1c8a73404da0a39faa3ac3
2004-03-23 17:11:19 -05:00
Andrew Schultz
75cef1a801 Add initial support for IDE
--HG--
extra : convert_revision : e07dc6c87b0b692d428b541d4032fcf82996ef15
2004-03-23 17:10:07 -05:00
Lisa Hsu
b45fd9c541 Merge zizzer:/bk/linux into zower.eecs.umich.edu:/z/hsul/work/bk/linux
--HG--
extra : convert_revision : 7af5650ceae277ce838e778bba1fba86285d6dca
2004-03-22 17:11:36 -05:00
Andrew Schultz
e8f7aca8cf Automerge
--HG--
extra : convert_revision : d79abea2623f31a27735640363dfbf655c226b62
2004-03-22 16:59:43 -05:00
Andrew Schultz
c8640365c2 Change member variable names to lower case
--HG--
extra : convert_revision : 390c30b8313e7acbd7d77b106716f7147d181111
2004-03-22 16:58:18 -05:00
Andrew Schultz
8baccdc6d3 Changed to inherit from DmaDevice to avoid multiple inheritance (now
assumes that all PCI devices are DmaDevices, and if not, they can just
ignore the DMA stuff)

--HG--
extra : convert_revision : aa58b658370696674ca4c32b265bc0400e5dda5a
2004-03-22 16:50:09 -05:00
Erik Hallnor
b18a36a6f2 Fix to compile m5.fast
--HG--
extra : convert_revision : b557975e2b03944abd5243ab9ea3e3ff6a915981
2004-03-22 13:59:51 -05:00
Lisa Hsu
ddeaa4d5e1 Merge zizzer:/bk/linux into zower.eecs.umich.edu:/z/hsul/work/bk/linux
--HG--
extra : convert_revision : b4e2fc55ec9cd0caa7cdf02de8a61c66e8b35c67
2004-03-22 13:21:18 -05:00
Lisa Hsu
3bc851b7db forgot to check this in earlier - no confusion between types and member names!
dev/pcidev.cc:
    member variables should begin with lowercase so they don't get confused with types.
dev/pcidev.hh:
    member variables must begin with lowercase so they don't get confused with types.

--HG--
extra : convert_revision : f083baa60d0fbf64d858d684ff70ee06e7b7765d
2004-03-22 13:15:14 -05:00
Erik Hallnor
ea604923aa Update to store uncompressed data in the cache blocks at all times. This will allow us to simulate compression without paying the uncompress penalty on reads.
This also had the side-effect of getting copies and compression working together (collecting of code in helper function made this easier.)

--HG--
extra : convert_revision : f81d3d7254b5a0c1cc82a7389c95a0b71ff67fc0
2004-03-21 01:20:19 -05:00
Ron Dreslinski
b4ff8c555f Make it so that alpha_console can read the frequency from the correct
sim object(depends on which platform tsunami/tlaser is being used)

dev/alpha_console.cc:
    Use dynamice casting once during build to get at the proper device to calculate the frequency.
    It is either a tsunami_IO or a tlaser_clock depending on platform (tsunami/tlaser).
    If the simobject is not of either of those types then panic
dev/alpha_console.hh:
    Pass in a SimObject * that is to either a tlaser_clock or a tsunami_IO
sim/sim_object.cc:
    Make it so that you can have a SimObjectParam of type SimObject:

    example:
    SimObjectParam<SimObject *> so;

--HG--
extra : convert_revision : 08239ef23762b8ea11311630b73fe885d939402e
2004-03-19 14:51:02 -05:00
Ali Saidi
1eb0c9626a Updated kern/* code so we can have one console code and the simulator
changes the HWRPB to the correct system type/variation.

kern/linux/linux_system.cc:
kern/tru64/tru64_system.cc:
    Added code to change system type/variation so that we can have one console

--HG--
extra : convert_revision : 5f35f7d965419cd3038e2e85e05a20884b2f6068
2004-03-17 16:12:13 -05:00
Erik Hallnor
2d38766e09 Pass cache block pointer when we have it.
--HG--
extra : convert_revision : 453690e0d7b53ecb7a9a3eb75a6365d13fd27573
2004-03-15 21:24:50 -05:00