Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Synchronization controller #43

Closed
christiaanb opened this issue Apr 6, 2022 · 2 comments
Closed

Synchronization controller #43

christiaanb opened this issue Apr 6, 2022 · 2 comments

Comments

@christiaanb
Copy link
Contributor

christiaanb commented Apr 6, 2022

{- | Adjust core oscillator based on phase-difference excursions

Control algorithm is described in https://arxiv.org/abs/2111.05296
See also https://arxiv.org/abs/2109.14111
-}
synchronizationController ::
  HiddenClockResetEnable core =>
  -- | Vector of the:
  -- phase-difference excursions of all the domain-crossing incoming links
  Signal core (Vec n (BitVector 64)) ->
  -- |
  -- 1. Increase core frequency by "step"
  -- 2. Decrease core frequency by "step"
  ( Signal core Bool
  , Signal core Bool)
synchronizationController ... = ...
@martijnbastiaan
Copy link
Contributor

Related: #44

@martijnbastiaan
Copy link
Contributor

This has been implemented in #119. We've based our implementation on https://github.com/bittide/Callisto.jl.

lmbollen added a commit that referenced this issue Jan 8, 2025
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 68886c8879d3df885e977a658f245a8a782079e8
lmbollen added a commit that referenced this issue Jan 9, 2025
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: ca418fcb0024e12b4b2f9340d34aad47eaca370d
lmbollen added a commit that referenced this issue Jan 10, 2025
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 3a26b8bdd1a1863030b89943d4bf229c2ce97831
lmbollen added a commit that referenced this issue Jan 13, 2025
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 3a26b8bdd1a1863030b89943d4bf229c2ce97831
lmbollen added a commit that referenced this issue Jan 15, 2025
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 3a26b8bdd1a1863030b89943d4bf229c2ce97831
lmbollen added a commit that referenced this issue Jan 22, 2025
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 3a26b8bdd1a1863030b89943d4bf229c2ce97831
lmbollen added a commit that referenced this issue Jan 23, 2025
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 3a26b8bdd1a1863030b89943d4bf229c2ce97831
lmbollen added a commit that referenced this issue Jan 24, 2025
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: 3a26b8bdd1a1863030b89943d4bf229c2ce97831
lmbollen added a commit that referenced this issue Feb 19, 2025
da3b01a2 Set cache path to Cabal store set in `shell.nix` (#65)
3f9758a1 Check whether Nix shell works on CI (#61)
9363f8d4 Merge pull request #63 from clash-lang/improve-expect-functions
79c5e34a Add timeout to expect functions
ed39928d Add call stack to `waitForLine`
f1d76ead Use `tail` instead of `streaming` to follow files (#64)
e86580bf Remove enable from `cpu` (#58)
c69899c2 Drop register on wishbone bus (#59)
1715fc73 Print `JTAG bridge ready` and wait for it to prevent race conditions (#57)
1ca5a69d Merge pull request #53 from clash-lang/add-fourmolu
5e11a6f6 Add `.git-blame-ignore-revs`
2bd141e6 Add fourmolu formatting
96ad7244 Use `HasCallStack` instead of manual source line tracking (#52)
3900cb07 Bump OpenOCD (#54)
3a26b8bd Correcetly simulate passed time before first clock edge in verilator (#50)
51239127 Add post fetch step that removes `.git` (#48)
ca418fcb Merge pull request #47 from clash-lang/lucas/move-stoptime-ndmreset
27c82690 Move `ndmreset` and `stoptime` from `JtagOut` to `CpuOut`
68886c88 Merge pull request #46 from clash-lang/run-clang-format
a32dbc98 Add `clang-format-check` to ci
68ca4d0e Format with `clang-format`
9a676aa6 Add `clang` to nix shell
0d4be0e0 Merge pull request #45 from clash-lang/lucas/bump-jtag-interface
61c7719d Bump GHC versions on Docker images and rebuild
5f9a53c9 Add `.scala-build` to `.gitignore`
2c1ec3a3 Remove `openocd-vexriscv` from `nix` and `docker`
deabc085 Switch to `openocd-vexriscv` and use `remote-bitbang`
d987e396 Replace `DebugPlugin` with `EmbeddedRiscvJtag`
59298429 Add `nix` derivation for `openocv-riscv`
2dfda13f Add `.metals` to `.gitignore`
554f4af1 Bump scala and spinal version
720e5d44 Add execute permissions to `update-vexriscv.pu`
ad6edb75 Merge pull request #44 from clash-lang/lucas/add-docker-readme
636ac968 Extend readme with CI info
ac10433d Bump GHA actions (#43)
59215117 Merge pull request #42 from clash-lang/add-all-check
e697bfdd Fix typo: ouput -> output
e7e8e29c Add all check to CI

git-subtree-dir: clash-vexriscv
git-subtree-split: da3b01a2fc91f55cec7fa33c1f07f88631d02ecf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants