Update lowrisc_ibex to lowRISC/ibex@6b9165f

Update code from upstream repository
https://github.com/lowRISC/ibex.git to revision
6b9165fa66b49534226acfcb739f2c252be4853c

* [doc] Update READMEs with best CoreMark results (Greg Chadwick)
* [sw] Enable choice of -march= string for CoreMark (Greg Chadwick)
* Value passed to UVM set_timeout is calculated as 1000000000 basing
  on 1ns/1ps timescale. But if you are using precompiled UVM it may be
  compiled with other timescale depending on compilation option used
  when it was compiled or tools default timescale value (uvm does not
  set timescale int the code). In this case for us precompiled UVM
  timescale is 1ps/1ps - so UVM gets 1000000000 in set timeout but
  interprets it as ps. As a result timeout is 1000 times smaller that
  you expect. That is why we are getting timeouts. It is hard to find
  perfect solution. One of them is to recompile the UVM with
  -timescale 1ns/ps (or whatever you will use for your design). (Dawid
  Zimonczyk)
* update readme for Riviera-PRO (Dawid Zimonczyk)
* correct wrong assignment to enum (Dawid Zimonczyk)
* Lint: Fix some line length warnings (Philipp Wagner)
* ibex_counter: Use always_ff (Philipp Wagner)
* Enforce lint of simple system in CI (Philipp Wagner)
* Specify data type for all parameters in simple_system (Philipp
  Wagner)
* Clarifications to the README of the simple system (Philipp Wagner)
* Only include necessary LFSR primitive (Philipp Wagner)
* Update lowrisc_ip to lowRISC/opentitan@ebf4663b (Philipp Wagner)
* [dv/ibex] Add two new interrupt/debug tests (Udi)
* [doc] Fix spelling of CoreMark (Pirmin Vogel)
* Handle --help properly in simple_system top-level (Rupert Swarbrick)
* Update lowrisc_ip to lowRISC/opentitan@9ac4f9c8 (Rupert Swarbrick)
* Use the Xilinx primitives for the Arty board (Philipp Wagner)
* [doc] Clarify that the supported version of the B extension is a
  draft (Pirmin Vogel)
* Clean up Verilator sections in core files (Philipp Wagner)
* Fix and waive Verilator lint errors in tb_cs_registers (Philipp
  Wagner)
* Remove lowrisc:prim:clock_gating from shared core collections
  (Philipp Wagner)
* Add lint for ibex_simple_system to CI (Philipp Wagner)
* ibex_simple_system: Add lint target (Philipp Wagner)
* Simplify lint targets (Philipp Wagner)
* Remove unrelated files from lint in ibex_core_tracing (Philipp
  Wagner)
* Add dependency on prim_clock_gating (Philipp Wagner)
* Fix Ibex description in core file (Philipp Wagner)
* icache: Depend on prim_assert (Philipp Wagner)
* Fix SRAM initialisation for fpga/artya example (Rupert Swarbrick)
* Drop SRAM_INIT_FILE from ibex_riscv_compliance.core (Rupert
  Swarbrick)
* Get simple_system working for VCS (Rupert Swarbrick)
* Pass MemInitFile parameter from our ram_*p wrappers (Rupert
  Swarbrick)
* Update lowrisc_ip to lowRISC/opentitan@976d9b9c (Philipp Wagner)
* Icache: It's not a draft any more (Philipp Wagner)
* Remove outdated documentation (Philipp Wagner)
* CI: Show exact command to run Verilator lint (Philipp Wagner)
* CI: Enable Verible lint for all configs (Philipp Wagner)
* CI: use the new binary name of Verible (Philipp Wagner)
* Add a waiver file for Verible lint (Philipp Wagner)
* Fix Verible lint issues (Philipp Wagner)
* Add some formal cover properties for ICache (Rupert Swarbrick)
* Add an ICacheECC parameter to ICache formal flow (Rupert Swarbrick)
* Formal protocol checking for icache <-> core interface (Rupert
  Swarbrick)
* A simple formal flow for the ICache based on SymbiYosys (Rupert
  Swarbrick)
* Move riscv-formal code into formal/riscv-formal (Rupert Swarbrick)
* [doc] Add bitmanip spec to introduction page (Philipp Wagner)
* [CI] Update Verible version (Philipp Wagner)
* Update lowrisc_ip to lowRISC/opentitan@5cae0cf1 (Rupert Swarbrick)
* [bitmanip] Optimizations and Parametrization (ganoam)
* [rtl] Fix icache xprop issue (Tom Roberts)
* Prevent writing CSR_SECURESEED to get the seed of dummy instruction
  (Xiang Wang)

Signed-off-by: Michael Schaffner <msf@opentitan.org>
47 files changed
tree: 215e1e8359fea7ca057cbf36b6434b3bfaa20951
  1. .github/
  2. ci/
  3. doc/
  4. hw/
  5. site/
  6. sw/
  7. test/
  8. util/
  9. .clang-format
  10. .dockerignore
  11. .flake8
  12. .gitignore
  13. .style.yapf
  14. _index.md
  15. apt-requirements.txt
  16. azure-pipelines.yml
  17. check_tool_requirements.core
  18. CLA
  19. COMMITTERS
  20. CONTRIBUTING.md
  21. LICENSE
  22. meson.build
  23. meson_init.sh
  24. meson_options.txt
  25. python-requirements.txt
  26. README.md
  27. tool_requirements.py
  28. toolchain.txt
README.md

OpenTitan

OpenTitan logo

About the project

OpenTitan is an open source silicon Root of Trust (RoT) project. OpenTitan will make the silicon RoT design and implementation more transparent, trustworthy, and secure for enterprises, platform providers, and chip manufacturers. OpenTitan is administered by lowRISC CIC as a collaborative project to produce high quality, open IP for instantiation as a full-featured product. See the OpenTitan site and OpenTitan docs for more information about the project.

About this repository

This repository contains hardware, software and utilities written as part of the OpenTitan project. It is structured as monolithic repository, or “monorepo”, where all components live in one repository. It exists to enable collaboration across partners participating in the OpenTitan project.

Documentation

The project contains comprehensive documentation of all IPs and tools. You can access it online at docs.opentitan.org.

How to contribute

Have a look at CONTRIBUTING for guidelines on how to contribute code to this repository.

Licensing

Unless otherwise noted, everything in this repository is covered by the Apache License, Version 2.0 (see LICENSE for full text).