Skip to content

Commit

Permalink
Update wbs
Browse files Browse the repository at this point in the history
  • Loading branch information
darius-bluespec committed Sep 12, 2024
1 parent c7b77d1 commit 8324b94
Showing 1 changed file with 82 additions and 49 deletions.
131 changes: 82 additions & 49 deletions wbs.md
Original file line number Diff line number Diff line change
@@ -1,49 +1,82 @@
= Composable Extensions Developement Plan =

1. Specifications
1.1. ISA Specification Package
1.1.1. privileged opcode and state multiplexing [1w, 2w, 4w]
1.1.2. unprivileged opcode and state multiplexing [1w, 2w, 4w]
1.1.3. privileged state management [1w, 2w, 4w]
1.2. Discovery
1.2.1. Unified Discovery [2d, 1w, 2w]
1.2.2. Devicetree [3d, 1w, 2w]
1.2.3. ACPI [3d, 1w, 3w]
1.3. Linux syscall
1.4. User space ABI
1.4.1. Composable custom extension aware calling convention
1.4.2. Legacy interoperability calling convention
1.5. User space API
1.6. Logic interface

A lengthy description of the item could be put here, and ignored
when a CSV file is generated from this as the source.

2. ISA Specification support
2.1. SAIL model
2.2. ACT
3. Proof of concept
3.1. QEMU model
3.1.1. ISA support
3.1.1.1. privileged opcode and state multiplexing
3.1.1.2. unprivileged opcode and state multiplexing
3.1.1.3. privileged state management
3.1.2. Sample extension
3.2. Hardware implementation
3.2.1. ISA support
3.2.1.1. privileged opcode and state multiplexing
3.2.1.2. unprivileged opcode and state multiplexing
3.2.1.3. privileged state management
3.2.2. Logic interface
3.2.3. Sample extension
3.3. Linux support
3.3.1. Devicetree configuration
3.3.2. ACPI configuration
3.3.3. Context save and restore
3.3.4. Syscall
3.4. User space ABI
3.4.1. binutils support
3.4.2. gcc support
3.4.3. glibc suppor
3.5. User space API
3.6. Sample application
= Composable Custom Extensions Developement Plan =

This file captures the work items for the Composable Custom
Extensions Task Group in a work breakdown structure (WBS) [1].

[1] https://en.wikipedia.org/wiki/Work_breakdown_structure

Tasks must follow the principles of a WBS:

- Any, and varying, levels of hierarchy are allowed. Only leaf
elements in the hierarchy represent work to be done. Thus, only
leaf elements have time estimates, dependencies, owners, etc.,
assigned to them.

- Every task is only captured in a single place; nothing is duplicated.

- Non-leaf elements can be considered as the sum of all leaf items
with respect to time estimates, dependencies, etc.

- Time estimates are three point estimates (optimistic, expected,
and pessimistic).

This file is intended to be machine readable with ad-hoc tooling.

Time estimates are work time; scheduling will be done separately.
For estimating purposes, one day (1d) is eight hours (8h), one week
(1w) is five days, and one month (1m) is thirty days.

spec Specifications
spec-isa ISA Specification Package
spec-isa-priv privileged opcode and state multiplexing dep=none owner=unknown [5w, 6w, 8w] progress=0%
spec-isa-unpriv unprivileged opcode and state multiplexing [3w, 4w, 6w]
spec-isa-state privileged state management [3w, 4w, 6w]
spec-disc Discovery
spec-disc-ud Unified Discovery [1w, 2w, 4w]
spec-disc-dt Devicetree [1w, 2w, 4w]
spec-disc-acpi ACPI [2w, 3w, 6w]
spec-linux Linux syscall
spec-abi User space ABI
spec-abi-cx Composable custom extension aware calling convention [4w, 6w, 8w]
spec-abi-legacy Legacy interoperability calling convention [4w, 6w, 8w]
spec-uapi User space API [1w, 4w, 6w]
spec-li Logic interface [8w, 12w, 16w]
rv ISA Specification support
rv-sail SAIL model
rv-sail-priv privileged opcode and state multiplexing dep=spec-isa-priv []
rv-sail-unpriv unprivileged opcode and state multiplexing dep=spec-isa-unpriv []
rv-sail-state privileged state management dep=spec-isa-state []
rv-act ACT
rv-act-priv privileged opcode and state multiplexing dep=spec-isa-priv [2w, 3w, 4w]
rv-act-unpriv unprivileged opcode and state multiplexing dep=spec-isa-unpriv [8d, 2w, 3w]
rv-act-state privileged state management dep=spec-isa-state [8d, 2w, 3w]
sw Software ecosystem support
sw-linux Linux support
sw-linux-dt Devicetree configuration dep=spec-disc-dt [1w, 8d, 2w]
sw-linux-acpi ACPI configuration dep=spec-disc-acpi [8d, 2w, 3w]
sw-linux-state Context save and restore dep=spec-isa-state [3w, 4w, 6w]
sw-linux-syscall Syscall dep=spec-linux [2w, 3w, 5w]
sw-abi User space ABI
sw-abi-binutils binutils support dep=spec-abi-cx,spec-abi-legacy [3w, 4w, 6w]
sw-abi-gcc gcc support dep=spec-abi-cx,spec-abi-legacy [2w, 3w, 5w]
sw-abi-glibc glibc support dep=spec-abi [1w, 2w, 4w]
sw-uapi User space API
sw-uapi-glibc glibc support dep=spec-linux,spec-uapi [1w, 2w, 4w]
poc Proof of concept
poc-qemu QEMU model
poc-qemu-isa ISA support
poc-qemu-isa-priv privileged opcode and state multiplexing dep=spec-isa-priv [2w, 4w, 6w]
poc-qemu-isa-unpriv unprivileged opcode and state multiplexing dep=spec-isa-unpriv [2w, 3w, 5w]
poc-qemu-isa-state privileged state management dep=spec-isa-state [2w, 3w, 5w]
poc-qemu-sampleext Sample extension [1w, 2w, 3w]
poc-hw Hardware implementation
poc-hw-isa ISA support
poc-hw-isa-priv privileged opcode and state multiplexing dep=spec-isa-priv [2w, 4w, 6w]
poc-hw-isa-unpriv unprivileged opcode and state multiplexing dep=spec-isa-unpriv [2w, 3w, 5w]
poc-hw-isa-state privileged state management dep=spec-isa-state [2w, 3w, 5w]
poc-hw-li Logic interface dep=spec-li [2w, 4w, 6w]
poc-hw-sampleext Sample extension dep=spec-li [4w, 6w, 8w]
poc-sampleapp Sample application dep=spec-uapi [2w, 3w, 4w]
poc-int Integration testing
poc-int-qemu QEMU model integration testing dep=sw,poc-qemu,poc-sampleapp [3w, 4w, 8w]
poc-int-hw Hardware implementation integration testing dep=sw,poc-hw,poc-sampleapp [3w, 4w, 8w]

0 comments on commit 8324b94

Please sign in to comment.