Add README for eSim Microwatt integration flow
Signed-off-by: KirupaNithi <kirupanithi789@gmail.com>pull/468/head
parent
99934896c5
commit
804fcb329e
@ -0,0 +1,61 @@
|
||||
# Microwatt eSim Integration
|
||||
|
||||
## Overview
|
||||
|
||||
This directory contains initial integration support for running the OpenPOWER Microwatt core inside the eSim/NGHDL co-simulation environment.
|
||||
|
||||
The integration flow enables Microwatt to be compiled with GHDL and wrapped for NGHDL/XSPICE-based simulation inside eSim.
|
||||
|
||||
## Files
|
||||
|
||||
### `microwatt_cosim.vhdl`
|
||||
|
||||
NGHDL-compatible wrapper for Microwatt.
|
||||
|
||||
Exposed ports:
|
||||
|
||||
* `clk` : Clock input
|
||||
* `rst` : Reset input
|
||||
* `uart_tx` : UART transmit output
|
||||
|
||||
### `compile_for_nghdl.sh`
|
||||
|
||||
Build script used to:
|
||||
|
||||
* Compile Microwatt using GHDL
|
||||
* Build required helper objects
|
||||
* Elaborate the wrapper for NGHDL/XSPICE integration
|
||||
|
||||
## Build Flow
|
||||
|
||||
Run:
|
||||
|
||||
```bash
|
||||
bash esim/compile_for_nghdl.sh
|
||||
```
|
||||
|
||||
Successful compilation generates the NGHDL-compatible elaborated design.
|
||||
|
||||
## eSim Workflow
|
||||
|
||||
1. Compile Microwatt using the provided script
|
||||
2. Generate the NGHDL/XSPICE codemodel
|
||||
3. Import the generated block into eSim
|
||||
4. Create a schematic using:
|
||||
|
||||
* clock pulse
|
||||
* reset pulse
|
||||
* UART probe
|
||||
5. Run transient simulation
|
||||
|
||||
## Current Status
|
||||
|
||||
* Wrapper compilation successful
|
||||
* NGHDL integration validated
|
||||
* Basic schematic-level simulation setup completed
|
||||
|
||||
## Future Work
|
||||
|
||||
* Add memory and peripheral models
|
||||
* Expand validation workflows
|
||||
* Add example system-level designs
|
||||
Loading…
Reference in New Issue