The A2O core was a follow-on to A2I, written in Verilog, and supported a lower thread count than A2I, but higher performance per thread, using out-of-order execution (register renaming, reservation stations, completion buffer) and a store queue
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
openpowerwtf c309e9145c add intr masking 1 month ago
..
bin add wishbone interface 2 months ago
build litex 64le 1 month ago
pd/synth add pd 2 months ago
sim litex software build 32BE 1 month ago
src verilator optimization experiments 1 month ago
verilog add intr masking 1 month ago
.gitignore vvp 3 months ago
readme.md update 1 month ago

readme.md

Testing RTL with new environments

Working

  • RTL

    • updated source to remove a bunch of Verilator warnings
    • updated source for compatibility with Icaraus -g2012
    • changed arrays to use clk1x
    • refactored nclk[] to separate clk, rst signals and removed lcb's from clock path
  • Verilator

    • too big(?) to build with verilator --public_flat_rw with cocotb; but --private can override it; see if it finishes
    • executing boot code and tst with a2o_litex wrapper
    • executing boot code and tst with litex-gen'd SOC
  • Icarus (w/cocotb)

    • executing boot code and tst with core/node/a2o_litex
  • Yosys

    • finishes compile

Next To Do

  • create Cython code for sharing between cocotb and verilator tb
  • OpenLane experiments with blackbox arrays and yosys/abc/sta
  • create FPGA version of GPR/FPR (4R4W) using (4)4R1W banks and valid table
  • parse vcd/fst and serve browser code for custom trace screens (handle spec/arch mapped facilities, arrays, etc.)

node

  • test BE/LE versions; kernel can stay BE until jump to BIOS; any problem with BIOS to initial ROM copy/zero or is it always words?
  • add L2 internally (before WB); or at least a store queue