From fb84879e66bc5a26241bcf0472688851f7240acb Mon Sep 17 00:00:00 2001 From: Atish Patra Date: Mon, 23 Mar 2020 12:48:56 -0700 Subject: platform: Add OpenPiton platform support OpenPiton is a research platform from Princeton University [1]. "OpenPiton is the world's first open source, general purpose, multithreaded manycore processor. It is a tiled manycore framework scalable from one to 1/2 billion cores." Add OpenSBI support for OpenPiton. As it is based on ariane core, it reuses the platform code from arine project. [1]. https://github.com/PrincetonUniversity/openpiton Signed-off-by: Atish Patra Reviewed-by: Anup Patel --- docs/platform/fpga-openpiton.md | 33 +++++++++++++++++++++++++++++++++ docs/platform/platform.md | 4 ++++ 2 files changed, 37 insertions(+) create mode 100644 docs/platform/fpga-openpiton.md (limited to 'docs') diff --git a/docs/platform/fpga-openpiton.md b/docs/platform/fpga-openpiton.md new file mode 100644 index 0000000..7861a19 --- /dev/null +++ b/docs/platform/fpga-openpiton.md @@ -0,0 +1,33 @@ +OpenPiton FPGA SoC Platform +======================== +OpenPiton is the world's first open source, general purpose, multithreaded +manycore processor. It is a tiled manycore framework scalable from one to +1/2 billion cores. Currently, OpenPiton supports the 64bit Ariane RISC-V +processor from ETH Zurich. To this end, Ariane has been equipped with a +different L1 cache subsystem that follows a write-through protocol and that has +support for cache invalidations and atomics. + +To build platform specific library and firmwares, provide the +*PLATFORM=fpga/openpiton* parameter to the top level `make` command. + +Platform Options +---------------- + +The *OpenPiton* platform does not have any platform-specific options. + +Building Ariane FPGA Platform +----------------------------- + +**Linux Kernel Payload** + +``` +make PLATFORM=fpga/openpiton FW_PAYLOAD_PATH=/arch/riscv/boot/Image +``` + +Booting Ariane FPGA Platform +---------------------------- + +**Linux Kernel Payload** + +As Linux kernel image is embedded in the OpenSBI firmware binary, Ariane will +directly boot into Linux directly after powered on. diff --git a/docs/platform/platform.md b/docs/platform/platform.md index d34ce7a..5580283 100644 --- a/docs/platform/platform.md +++ b/docs/platform/platform.md @@ -25,6 +25,9 @@ OpenSBI currently supports the following virtual and hardware platforms: * **Spike**: Platform support for the Spike emulator. +* **OpenPiton FPGA SoC**: Platform support OpenPiton research platform based on +ariane core. + The code for these supported platforms can be used as example to implement support for other platforms. The *platform/template* directory also provides template files for implementing support for a new platform. The *object.mk*, @@ -37,3 +40,4 @@ facilitate the implementation. [andes_ae350.md]: andes-ae350.md [thead-c910.md]: thead-c910.md [spike.md]: spike.md +[fpga_openpiton.md]: fpga_openpiton.md -- cgit v1.2.3