jmjos / ratatoskr Goto Github PK
View Code? Open in Web Editor NEWRatatoskr NoC Simulator
License: MIT License
Ratatoskr NoC Simulator
License: MIT License
Implement the novel router architecture.
make both a 2D and a 3D version? Maybe run both on 8x8x2 noc
64 nodes = 32 nodes times 2 = 8x4x2 NoC
scripts/feature_paper
).Define a novel power model, based on transmission matrices, for leackages within routers. Probabaly we will need matrices for buffers, cb and something clever for the routing unit.
Need to define models first! Implementation is easy going.
Include the functionality from the old version into the new code. Also improve the usage of the python scripts by good documentation.
use the topology files as already defined once (you will remember, those from hetero_XYZ_same clock etc.)
Cheers, Moritz
Write routine and assert the correct values
Routers are not actually double data rate, but on the negative clock cycle the valid signal is set false in order to make the receive function sensitivity okay. That's bad... probably
These scripts will generate reports.
If I use
[Config]
simulationTime = 100000
flitsPerPacket = 32
bitWidth = 8
benchmark = synthetic
libDir = config
[Synthetic]
simDir = sim
restarts = 16
warmupStart = 100
warmupDuration = 990
warmupRate = 0.02
runRateMin = 0.01
runRateMax = 0.08
runRateStep = 0.01
runStartAfterWarmup = 10
runDuration = 100000
numCores = -1
[Report]
bufferReportRouters = [5, 6, 9, 10, 21, 22, 25, 26, 37, 38, 41, 42]
;------VHDL------
[Hardware]
x = [8, 4]
y = [8, 4]
z = 2
routing = XYZ
clockDelay = [1, 1, 1]
bufferDepthType = single
bufferDepth = 4
buffersDepths = [10, 20, 30, 40]
vcCount = 4
topologyFile = network
flitSize = 64
portNum = 7
config.ini file in the bin folder and run python configure.py
, the resulting network.xml
file is not correctly connected. It has diagonal links that you can see using python plot_network.py
The correct file must follow 3D mesh, i.e. that each router is only connected to direct neighbors in west, east, north, south, up, and down direction. Please fix this in the xml_writers.py
Current config scripts generate synthetic only. The application scripts are mostly done from previous scripts, but they need integration.
Important todos:
Probably some overflow.
Whenever a simulation is started, an empty log.txt is created. This old feature must be removed.
Add support for:
Within the GlobalReport.h member variables for all energy events are given. Implement those in the router model!
Timing of send and receive is broken. Example:
9080ns: Router4[ East0] - Send Flit [B_74613: 4-->22]
9080ns: Router5[ East0] - Send Flit [H_74610: 4-->22]
9080ns: Router4[Local0] - Receive Flit [B_74616: 4-->22]
9080ns: Router5[ West0] - Receive Flit [B_74613: 4-->22]
9081ns: Router4[ East0] - Send Flit [B_74614: 4-->22]
9081ns: Router5[ East0] - Send Flit [B_74611: 4-->22]
9081ns: Router4[Local0] - Receive Flit [B_74617: 4-->22]
9081ns: Router5[ West0] - Receive Flit [B_74614: 4-->22]
9081ns: Router6[ West0] - Receive Flit [B_74611: 4-->22]
B_74613 is send and received in same time, B_74610 is missing completely, although later its sent
in factory
changed datadestination to task instead of node. where is the mapping applied?
[Report]
bufferReportRouters = []
in configure.py generates xmls that break simulator
in config.xml it's =5 and in the code it's =2.
still waiting for files from Bremen
Add support for:
Implement test scripts for:
use python scripts, called from travis.yml
Delete ac and as
Xis etc are router coordinates. No need for them in config.ini, they must be a level deeper and automatically generated for the whole network. Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.