add network simulation C++ code

This commit is contained in:
Howard Mao
2017-07-01 19:58:31 -07:00
parent b662854750
commit cb6290539c
4 changed files with 22 additions and 6 deletions

View File

@@ -33,7 +33,7 @@ class WithSimBlockDevice extends Config((site, here, up) => {
}
})
class WithSimpleNIC extends Config((site, here, up) => {
class WithLoopbackNIC extends Config((site, here, up) => {
case BuildTop => (p: Parameters) => {
val top = Module(LazyModule(new ExampleTopWithSimpleNIC()(p)).module)
top.connectNicLoopback()
@@ -41,6 +41,14 @@ class WithSimpleNIC extends Config((site, here, up) => {
}
})
class WithSimNetwork extends Config((site, here, up) => {
case BuildTop => (p: Parameters) => {
val top = Module(LazyModule(new ExampleTopWithSimpleNIC()(p)).module)
top.connectSimNetwork()
top
}
})
class BaseExampleConfig extends Config(
new WithoutTLMonitors ++
new WithSerialAdapter ++
@@ -60,8 +68,11 @@ class SimBlockDeviceConfig extends Config(
class BlockDeviceModelConfig extends Config(
new WithBlockDevice ++ new WithBlockDeviceModel ++ new BaseExampleConfig)
class SimpleNICConfig extends Config(
new WithSimpleNIC ++ new BaseExampleConfig)
class LoopbackNICConfig extends Config(
new WithLoopbackNIC ++ new BaseExampleConfig)
class SimNetworkConfig extends Config(
new WithSimNetwork ++ new BaseExampleConfig)
class WithTwoTrackers extends WithNBlockDeviceTrackers(2)
class WithFourTrackers extends WithNBlockDeviceTrackers(4)