Code Monkey home page Code Monkey logo

zslwyuan / paas_v1.0 Goto Github PK

View Code? Open in Web Editor NEW
41.0 3.0 16.0 38.22 MB

PAAS: A System Level Simulator for Heterogeneous (CPU-FPGA) Computing Systems

License: GNU General Public License v3.0

Python 1.12% Shell 0.02% C++ 28.27% C 4.44% Makefile 0.05% CMake 0.01% M4 0.01% HTML 0.02% Verilog 4.58% SystemVerilog 0.01% Assembly 0.04% Perl 0.02% R 0.01% LLVM 2.37% Tcl 0.12% Ada 57.28% VHDL 1.65% Emacs Lisp 0.01% Java 0.01% Roff 0.01%
simulation gem5 cpu-fpga fpga computer-architecture verilog co-simulation vhdl

paas_v1.0's Introduction

This is Processor Accelerator Architecture Simulator (PAAS) for heterogeneous computing system, which has been presented in 2017 27th International Conference on Field Programmable Logic and Applications (FPL). The related paper can be checked on IEEE Xplore: https://ieeexplore.ieee.org/document/8056775/.

If it is hard for you to make PAAS work on your system, a virtual machine is provided on Google Drive here, and you can run the PAAS directly in the virtual machine (password is gem5lab)(project shortcut is in the desktop)

For the detailed MANUAL, please click. If you still have some other problems, please do not hesitate to contact us: [email protected]

PAAS integrates gem5 and Verilator and further develops the infrastructure of the two simulators to provide system designers with unique features for system simulation and exploration:

a) Co-simulation of hardware accelerators (described in Verilog), CPUs and memory system
b) Shared virtual address space between accelerators and CPUs
c) Runtime control of accelerators
d) Capabilities of accelerators for exploiting both fine-grained and coarse-grained memory access
e) Support of flexible architecture (eg. ACP (accelerator coherency port) and CAPI (Coherent Accelerator Processor Interface))
f) Parallized simulation and reconfigurability of FPGA-based accelerator

image

image

If you have questions or ask for a manual, please send mail to [email protected]

Enjoy using PAAS and please share your modifications and extensions.

Compared to gem5, there are things of original gem5 have been modified, so please note them:

'AllMemory' in params.py

'translate' in tlb.cc

fpga part in the directories: ./src/mem, ./src/arch, ./src/cpu

Some examples of designs can be found in ./configs and hope them will help you undenstand the basic description of archtecture.

paas_v1.0's People

Contributors

cocodede avatar zslwyuan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

paas_v1.0's Issues

Fail to test gem5 in the virtual machine

Hello, when I run 'build/X86/gem5.opt configs/tutorial/simple.py' to test gem5, I got an error as follow:

gem5 Simulator System.  http://gem5.org
gem5 is copyrighted software; use the --copyright option for details.

gem5 compiled Feb  6 2020 21:12:03
gem5 started Dec 23 2020 20:41:52
gem5 executing on gem5lab-VirtualBox, pid 11520
command line: build/X86/gem5.opt /home/gem5lab/Desktop/PAAS/PAAS_V1.0-master/configs/tuturial/simple.py

Global frequency set at 1000000000000 ticks per second
warn: DRAM device capacity (8192 Mbytes) does not match the address range assigned (512 Mbytes)
fatal: system.cpu1.ModuleName without default or user set value

Could you please give any help? Thanks~

fpga process cannot work

Please pay attention to the permission of the executable files if you download the PAAS from
Github!!!! It might lead to a fatal error call “fpga process cannot work!”

error when Testing GEM5

hey~
I've encountered a weird problem.When I tested GEM5 using

build/X86/gem5.opt configs/tutorial/simple.py

An error reminded that there are something wrong in the *.py under the tutorial folder.

Traceback (most recent call last):
File "", line 1, in
File "/home/embedded/paas/PAAS_V1.0-master/src/python/m5/main.py", line 400, in main
exec filecode in scope
File "configs/tuturial/1.py", line 19, in
system.mem_ctrl = DDR3_1600_8x8()
NameError: name 'DDR3_1600_8x8' is not defined

Having tested a few *.py files under the tutorial folder,there are always some strange problems.
Like AttributeError: Not allowed to set pio on 'SimObjectVector'

But when I ran sudo build/X86/gem5.opt configs/example/se.py -c tests/test-progs/hello/bin/x86/linux/hello
It seems like everything is OK....

So what should I do to resolve it?

Btw,I use g++4.8 python 2.7 with ubuntu 16.04.

Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.