Table of Contents

Ledum

Ledum
320px-ledum_palustre_bluehend.jpg
founder: Yokotashi
depends on:
interested: abyssal
bluebear
ccx
hexo
joe
prilezitostnypetr
RAINBOF
sachy
santiago
tma
software license: FIXME
hardware license: FIXME

This project aims to design and develop a new central processing unit (CPU) with a primary focus on correctness and object capabilities. The design will prioritize formal verification techniques, ensuring the CPU’s functional correctness while introducing innovative approaches to resource management using object capabilities for improved security, efficiency, and modularity.

Project Objectives

  1. Achieve High Correctness in Design:
    • Use formal methods, simulation, and rigorous testing to verify that the CPU’s architecture is functionally correct.
    • Ensure that the CPU meets or exceeds industry standards for reliability and precision.
  2. Implement Object Capabilities Model:
    • Integrate an object capabilities model into the CPU’s architecture to allow fine-grained, secure management of memory and I/O resources.
    • Ensure that resource access control is embedded at the hardware level to improve security by default.
  3. Enable Scalable Security Mechanisms:
    • Design the CPU with scalable security features, leveraging capabilities to prevent unauthorized access and misuse of system resources.
    • Provide users with the flexibility to define and manage their own access control policies through object capabilities.
  4. Optimize Performance:
    • Ensure that the CPU achieves optimal performance in terms of throughput, latency, and power consumption, without compromising correctness or security.
    • Ensure, that the CPU architecture can be parallelized to achieve IPC>1 including OoO execution, although to do so isn't primary objective.
    • Balance hardware features for high-performance tasks with robust security measures for sensitive operations.
  5. Establish Robust Ecosystem Support:
    • Develop comprehensive software toolchains and drivers to support the object capability model.
    • Collaborate with industry partners to ensure broad compatibility with existing operating systems and applications.

Project Scope

In-Scope

Out of Scope

Workshops

As a part of our efforts, we have realized that different members of the team have different experience with various scientific and engineering fields and it would be very helpful to ensure that everyone has some basic understanding of all required topics. The workshops typically take place during the working group's regular meetings on Thursdays (see Events).

If there is enough interest, we are streaming the workshops online using https://meet.jit.si/. We are also trying to get our A/V streaming and editing skills to a level that allows for publishing the recordings of the workshops. Any help with such endeavor would be more than welcome.

Past Workshops

Planned

Design Topics

ISA Description

Warning: This part may change wildly at this stage.

Registers

Pointers

Tagging

Electronic Circuit Design

Integrated Circuit Design

Tooling

Miscellaneous

Current Progress

Tooling

As a proof-of-concept an assembly language compiler and IDE support was implemented for a very simple Harvard architecture 8-bit CPU. A graphical emulator for the same simple CPU was created as well. The aim of these tooling efforts is to provide a unified framework for creating custom instruction sets including their assemblers and emulators.

~~META: status = active &relation firstimage = :project:ledum:320px-ledum_palustre_bluehend.jpg ~~