mit-ll / CEP

The Common Evaluation Platform (CEP), based on UCB's Chipyard Framework, is an SoC design that contains only license-unencumbered, freely available components.
BSD 2-Clause "Simplified" License
60 stars 20 forks source link

Modifying the CORES #12

Closed Iripi97 closed 2 years ago

Iripi97 commented 3 years ago

I was just trying to experiment with the size of the CEP (remove a core). I tried removing the AES core and running CEP after generating the new bitstream and memory configuration file but it is failing to run all the tests now. Is this expected behavior? (Side note: I did not remake the bbl.bin file)

I only removed the instantiations for the AES module in the main Verilog file generated from the Chisel.

Any response would be greatly appreciated.

bchetwynd commented 3 years ago

You'll need to update ./cosim/drivers/cep_tests/cep_srot.cc under the function LLKI_Setup to remove the following statement:

Rebuild Linux and run cep_diag as you did before.

Iripi97 commented 3 years ago

@bchetwynd Thank you for the suggestion. After making the modifications you described the CEP tests for each core are passing.

I was wondering... the following tests still fail (they fail because they lock the VC707 up into a frozen state where it has to be reset to be used again):

  1. cepSrotErrTest
  2. cepAccessTest
  3. cepRegTest
  4. cepMacroBadKey
  5. cepMacroMix
  6. cepMultiThread
  7. cepSrotMaxKeyTest Is this expected behavior when removing one of the cores? (Side note: cep_AES failed as well, but this was expected since the core was removed).
dralabeing commented 2 years ago

Hi, Are there additional documentation or examples of CEP integration into other SoCs? We are trying to evaluate and potentially integrate CEP into our flow described here: https://github.com/The-OpenROAD-Project/

Any such information will be highly appreciated.

Thanks in advance.

bchetwynd commented 2 years ago

Unfortunately, there is no documentation available other than what is in this repository. I will note that both the current CEP and future versions are a mix of System Verilog, Verilog and Chisel generated verilog. I am uncertain how that fits into your flow.

I presume you are familiar with UC Berkeley's work on Chipyard?

dralabeing commented 2 years ago

Thanks @bchetwynd, We only support Verilog at the moment. Thanks for the link to Chipyard. No I wasn't familiar-will take a look

bchetwynd commented 2 years ago

@dralabeing - They seem have similar mission to your OpenROAD project. Good luck.

dralabeing commented 2 years ago

@dralabeing - They seem have similar mission to your OpenROAD project. Good luck.

@bchetwynd We are already engaged with Chipyard (I wasn't aware of that). Thanks for your help.