feat: add QSPI Flash and Flash Read Binder modules

- Introduced  for handling QSPI flash memory operations, including command and address handling.
- Added  to interface with the C++ flash memory implementation, allowing for read operations via DPI-C.
- Created  for the flash memory implementation, supporting initialization, reading, and memory copying.
- Updated  to integrate the new QSPI Flash module and connect it with the existing system.
- Refactored file paths in various filelists and scripts to accommodate the new directory structure under .
- Enhanced the Python scripts for generating memory maps and preparing the environment for the new structure.
- Adjusted test scripts to reflect changes in the directory structure and ensure compatibility with the new modules.
This commit is contained in:
maksyuki committed 2026-07-20 16:50:57 +08:00
1 parent 82e5c605a8
commit fb3621e6b8
111 files changed
+411 -216

No files matched your search

+2 -2
View File
@@ -84,7 +84,7 @@ def test_generate_all_is_stable_and_expands_paths(tmp_path: Path) -> None:
assert {path: path.stat().st_mtime_ns for path in generated} == mtimes
assert (tmp_path / "def.fl").read_text(encoding="utf-8") == " ".join(defines) + "\n"
cluster = (tmp_path / "clusterip.fl").read_text(encoding="utf-8")
assert str(ROOT / "rtl/clusterip") in cluster
assert str(ROOT / "rtl/managed/clusterip") in cluster
def test_prepare_norflash_and_missing_firmware(tmp_path: Path) -> None:
@@ -583,7 +583,7 @@ def test_clean_all_stays_within_repository(tmp_path: Path) -> None:
generated = fake_root / "rtl/mini/.iverilog_build"
generated.mkdir(parents=True)
(generated / "simv").write_text("generated", encoding="utf-8")
dependency = fake_root / "rtl/ip/3rd-party"
dependency = fake_root / "rtl/managed/third_party"
dependency.mkdir(parents=True)
(dependency / "model.v").write_text("dependency", encoding="utf-8")