Skip to content
@verilog-playground

Verilog Playground

Welcome to the Verilog Playground!

Overview

Practice Verilog and SystemVerilog on our playground:

  1. Write some code
  2. Click Run
  3. Check the logs
  4. Success! Interact with the simulator!

Website: https://verilog-playground.github.io

Animation

Repositories

Back-end: infrastructure

Front-end: verilog-playground.github.io

How it Works?

The front-end uses React and was created using create-react-app. It is hosted on GitHub Pages.

The back-end infrastructure is hosted on Amazon Web Services (AWS) and primarily consists of API Gateway and Lambda functions. The system is managed using the AWS Cloud Development Kit (CDK), which is an Infrastructure as Code (IaC) framework.

The simulation itself runs client-side. After the user submits the code, a Lambda function is triggered by API Gateway to start the transpilation process. This process first converts the Verilog/SystemVerilog code to C++ using Verilator, and then converts the C++ code to JavaScript using Emscripten. With the resulting JavaScript code in hand, the browser uses the eval function to interact with the simulation. The user receives logs about the process in real time, thanks to a WebSocket connection between the browser and the API Gateway.

Papers

Acknowledgements

  • Many thanks to my professors Elmar Melcher and Joseana Fechine for their support and incentive since the beginning of the project.
  • Many thanks to the Verilator and Emscripten developers for making it possible to run the simulation client-side, thereby enabling the creation of this project.

Pinned Loading

  1. infrastructure infrastructure Public

    JavaScript 1

  2. verilog-playground.github.io verilog-playground.github.io Public

    TypeScript 2

Repositories

Showing 4 of 4 repositories
  • verilog-playground/verilog-playground.github.io’s past year of commit activity
    TypeScript 2 0 0 0 Updated Nov 1, 2023
  • verilog-playground/infrastructure’s past year of commit activity
    JavaScript 1 0 0 0 Updated Oct 29, 2023
  • .github Public
    verilog-playground/.github’s past year of commit activity
    0 0 0 0 Updated Oct 29, 2023
  • art Public
    verilog-playground/art’s past year of commit activity
    1 0 0 0 Updated Oct 29, 2023

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…