Commit Graph
100 Commits
Author SHA1 Message Date
maksyuki e901e02694 feat: enhance dependency management with fallback URLs and download functionality 2026-09-30 16:30:47 +08:00
maksyuki 649758fcdf feat: add references and improve documentation for retroSoC skills
- Introduced a new maintenance reference for dependency and environment routing.
- Enhanced the feature implementation skill with migration references for behavior-preserving changes.
- Added regression and RTL migration references to support feature review processes.
- Created a new physical flow skill with detailed execution and recovery guidelines.
- Updated evals for feature implementation and review skills to include new scenarios.
- Improved the AGENTS.md and tests to reflect the new skills and references.
2026-09-30 15:08:29 +08:00
maksyuki 2f36051fd1 feat: introduce retroSoC feature implementation and review skills
- Added new skills for retroSoC feature implementation and review, including YAML configurations and evaluation cases.
- Removed deprecated mini feature design and implementation skills.
- Updated documentation to reflect changes in skill names and functionalities.
- Adjusted test cases to ensure compatibility with the new skill structure and validate the presence of required files and metadata.
2026-09-30 12:19:56 +08:00
maksyuki 3ac9e73ab9 feat: refactor tests for mailbox and environment validation
- Updated mailbox purpose tests to reflect new write order and sequence handling.
- Added tests to ensure Linux-ready values match LP contract and constants match Linux helper.
- Introduced tests to verify that offset changes do not hide stale Linux helpers.
- Enhanced environment tests to report current locked launcher and runtime versions.
- Added checks for SBT launcher presence in environment labels.
- Improved full diagram tests to validate storage geometry and RSA vector configurations.
- Expanded register tests to ensure crypto interrupt registers publish all events and lifecycle annotations preserve security boundaries.
- Modified script tools tests to include Vexii generation validation and updated workflow assertions.
2026-09-30 10:51:04 +08:00
maksyuki 9a634a9dc3 feat: update documentation for Tiny Gen1 product and package specifications 2026-09-27 22:23:16 +08:00
maksyuki a45ebf9688 Merge branch 'feat/tiny' into dev
# Conflicts:
#	Makefile
#	README.md
#	publications/README.md
#	rtl/mk/software.mk
#	rtl/rtl_style_audit.json
2026-09-27 09:09:53 +08:00
maksyuki c8187284d0 feat(tiny): add scripts for SDC generation and packaging
- Introduced  to create pad-aware timing constraints for the Tiny IHP130 chip flow.
- Added  to create a checksummed delivery archive for the Tiny LibreLane implementation.
- Created  for synthesis-only header of the locked IHP SRAM macro physical views.
- Implemented  to limit OpenSTA report enumeration for path counts.
- Updated  to include power pad definitions.
- Enhanced  to handle power pad counts and validation.
- Added tests for Tiny flow and pin map validation, including power pad overrides and constraints.
2026-09-27 08:48:12 +08:00
maksyuki 50b7c47916 Merge branch 'feat/sw' into dev
# Conflicts:
#	Makefile
#	README.md
#	app/README.md
#	app/apps/hp_boot/main.c
#	configs/README.md
#	dependencies/dependencies.lock.json
#	publications/datasheets/sections/architecture.typ
#	publications/datasheets/sections/boot-bundle-format.typ
#	publications/datasheets/sections/linux-runtime.typ
#	publications/datasheets/sections/overview.typ
#	publications/datasheets/system-reference.json
#	publications/software_reference.py
#	scripts/build_hp_smoke.py
#	scripts/run_flow.py
2026-09-26 16:28:39 +08:00
maksyuki 0e36b6a82f feat: introduce RV64 support and related tooling for HP workloads
- Added build_hp_rtthread.py for building the RT-Thread kernel with RV64 support.
- Updated build_hp_smoke.py to target RV64 architecture and modified output filenames.
- Modified generate_vexiiriscv.py to reflect RV64 configuration and memory management.
- Created hp_tools.py for shared utilities related to RV64 builds.
- Enhanced package_hp_boot.py to package RV64 workloads and updated versioning.
- Implemented run_hp_sim.py for executing and validating HP workloads with specific markers.
- Developed setup_hp_rtthread.py for installing RT-Thread source and environment setup.
- Updated GenerateRetroSocHp.scala to generate RV64 application cores.
- Enhanced tests for HP boot bundles, platform specifications, and tool utilities to accommodate RV64 changes.
- Adjusted test cases to validate new workload types and ensure compatibility with RV64 architecture.
2026-09-26 15:47:26 +08:00
maksyuki 187b090244 feat: add CRYPTO-P2 targets and reporting script for synthesis, netlist, and STA validation 2026-09-26 15:11:09 +08:00
maksyuki 3c63fec8dc feat: refactor crypto test paths and add new tests for firmware validation
- Updated test paths in  to point to the new directory structure for crypto files.
- Introduced  to validate firmware identity and reject stale firmware based on source changes and simulation logs.
- Enhanced  to include additional memory status and control registers, ensuring alignment with RTL definitions.
2026-09-26 14:00:25 +08:00
maksyuki 2805ea9183 docs: add Tiny Gen1 support and related publications
- Introduced new Tiny Gen1 datasheet with waveform rendering capabilities.
- Implemented example functions for various peripherals including archinfo, clint, dma, gpio, i2c, pwm, rtc, sram, sysctrl, timer, uart, wdg, and xpi.
- Enhanced register reference parsing to accommodate Tiny-specific memory maps.
- Created a dedicated Tiny reference module to isolate Tiny publications from Mini inputs.
- Developed comprehensive tests to validate Tiny publication configurations, register inventories, and evidence claims.
- Updated RTL documentation to reflect the separation of Tiny and Mini product lines.
2026-09-25 18:09:49 +08:00
maksyuki 9c706ba0ff feat: refactor test scripts to update paths and improve organization
- Updated paths in test files to reflect new directory structure for RTL and script files.
- Changed references from rtl/mini to rtl/ip and scripts/rtl where applicable.
- Added a new test file for Tiny product isolation, ensuring independent ABI and bus acceptance.
- Enhanced tests for memory map generation and protocol contracts for Tiny architecture.
- Ensured that all tests are aligned with the latest directory structure and naming conventions.
2026-09-25 15:44:02 +08:00
maksyuki 75ed04e7ef feat: update HP Linux configuration validation and adjust simulation time 2026-09-25 11:22:13 +08:00
maksyuki b72e14ea40 feat: add comprehensive test suite for CRYPTO-P0 functionality
- Introduced  for independent mathematical operations and RSA fixtures.
- Implemented  for testing DMA channels with AES ECB and memory interactions.
- Created  to validate RSA-2048 operations and Montgomery reduction.
- Developed  for testing AES and SHA vector compliance.
- Added  to validate image packing, integer root calculations, and inventory checks.
- Ensured robust error handling and validation in tests to catch data corruption and recursive hierarchy issues.
2026-09-25 11:21:42 +08:00
maksyuki 92830d963d feat: replace the rom of apu into sram 2026-09-25 08:35:07 +08:00
maksyuki 9298a582a4 docs: update README.md to reflect changes in P5 and P6 specifications
- Clarified P5 capabilities including direct/ring WAV/FLAC jobs and new KWS model integration.
- Specified requirements for evidence acceptance related to P5 enhancements.
- Noted that P6 MP3 support remains deferred with emphasis on design requirements.
- Updated details on P9 refreeze requirements, including macro-backed storage and future obligations.
- Reinforced that existing system clock/reset/IRQ/resource assignments remain unchanged.
2026-09-24 08:58:32 +08:00
maksyuki 0b73994772 docs: update publications to reflect Rill branding and enhance datasheet layout 2026-09-24 07:42:26 +08:00
maksyuki 7592808464 feat: refactor JPEG table register bank and enhance flow script
- Updated the JPEG table register bank module to use combinational logic for data handling and simplified the write logic for quantization, DC, and AC entries.
- Introduced a new function in the run_flow script to handle process termination more gracefully, including signal handling for interrupts.
- Enhanced the flow script to log peak RSS memory usage during execution.
- Modified multiple testbench files to include new storage access signals and improved the test logic for better validation of KWS and SRAM interactions.
- Updated tests to validate the new peak RSS memory logging in the flow script.
- Adjusted Yosys synthesis recipes to include timeout settings and ensure proper reporting of pre-memory synthesis outputs.
2026-09-24 07:41:43 +08:00
maksyuki fc6440989f docs: add environment reference and enhance publication validation
- Introduced  to define the development environment and validate runtime/platform contracts.
- Enhanced  with  to ensure change markers adhere to publication rules.
- Updated  to integrate boot acceptance checks and ensure dependencies are correctly managed.
- Added tests for environment validation, publication change scope, and CI stages to prevent regression and ensure compliance with publication standards.
- Implemented checks in  to validate the presence of development environment dependencies.
- Refactored existing tests to improve coverage and ensure accurate validation of publication claims and software configurations.
2026-09-23 17:09:55 +08:00
maksyuki c3de7c602a feat: update development environment to include bzip2 library and adjust runtime library path 2026-09-23 15:51:51 +08:00
maksyuki e035f9f933 feat: update development environment to include bzip2 library and adjust tests for flake.nix 2026-09-23 15:05:58 +08:00
maksyuki 8970890dda feat: enhance development environment with ncursesTermlib integration and update tests for LD_LIBRARY_PATH 2026-09-23 14:25:34 +08:00
maksyuki e7ee2aaa69 feat: update development environment to use ncurses with termlib and adjust test assertions 2026-09-23 13:34:10 +08:00
maksyuki c2016108f5 feat: enhance development environment with ncurses ABI symlink and update tests for extraBuildCommands 2026-09-23 11:43:08 +08:00
maksyuki 04f03da45e feat: update development environment to include expat and readline, modify ncurses dependency 2026-09-23 11:15:16 +08:00
maksyuki c45ef309e7 feat: update development environment to include ncurses, Tcl, and Python shared libraries 2026-09-23 10:35:48 +08:00
maksyuki 2771481c50 feat: enhance development environment with additional libraries (ISL, Zstandard) and update tests 2026-09-23 09:35:34 +08:00
maksyuki c0426d9346 feat: update development environment to include zlib development headers and libraries 2026-09-23 09:22:51 +08:00
maksyuki 9871ebb9fe feat: add write_stamp function and update development environment with libmpc 2026-09-23 09:02:41 +08:00
maksyuki 448d639d0e feat: add Perl to development environment and enhance toolchain accessibility 2026-09-23 07:40:17 +08:00
maksyuki b209ccedfe feat: update development environment to use Python 3.10 and add write_activation function 2026-09-22 22:37:20 +08:00
maksyuki d9aa029504 docs: update README to enhance platform overview and correct ISA badge 2026-09-22 21:08:13 +08:00
maksyuki 220c6a1365 fix: verify updated cache action version in development environment workflow 2026-09-22 21:07:33 +08:00
maksyuki d4fba9fb96 feat: enhance development environment with Docker and Nix support, add SBT toolchain 2026-09-22 19:22:06 +08:00
maksyuki d0ec9aeba7 docs: enhance documentation with contribution guidelines and Git workflow details 2026-09-22 16:33:33 +08:00
maksyuki f9292b0e81 feat: update quality workflow to include NPU references and increase timeout 2026-09-22 16:12:18 +08:00
maksyuki a28b3ce11a feat: update NPU integration and validation in publications
- Modified waveforms.json to reflect changes in resource tracking from nine to ten positions for both resource-controller integration and reference monitor parameters.
- Enhanced dev_reference.py to include NPU sources and updated CI snapshot validation to accommodate new statuses and conclusions.
- Added example NPU implementation in npu.c for job submission and result handling.
- Updated format_reference.py to validate NPU descriptor word offsets against RTL definitions.
- Adjusted storage_reference.py to reflect changes in APU and NPU local memory configurations.
- Enhanced system_reference.py to include NPU implementation details and validate accelerator claims.
- Updated tests to reflect changes in the structure and coverage of NPU and APU components, ensuring accurate validation of configurations and claims.
- Introduced new tests in v05.py to ensure distinct handling of executable configurations and evidence for NPU and APU.
2026-09-22 14:50:41 +08:00
maksyuki ca4b06d304 Merge branch 'feat/npu' into dev 2026-09-22 12:23:21 +08:00
maksyuki 0cd5f0af4e Merge branch 'feat/apu' into dev 2026-09-22 09:50:55 +08:00
maksyuki e6b9a9f43d feat: add NPU-P6 tests and RTL model updates
- Introduced  for deterministic corpus framing, CRC checks, and regression evidence for NPU-P6.
- Added  to validate NPU-P6 reference execution.
- Created a new RTL model  for gate-level NPU transactions.
- Updated  to instantiate  and streamline the testbench.
- Enhanced  with capability checks and added NPU-P6 reference contract tests.
- Modified  to include  in the source list and refactor rejection logic.
- Updated README.md to document new test scripts and their purposes.
2026-09-22 07:30:54 +08:00
maksyuki 10c9ed8942 feat: add comprehensive tests for APU-P7 and APU-P8 functionality
- Introduced differential tests for the APU-P7 frontend profile-1 BAM to ensure consistency with ROM and generator outputs.
- Implemented concurrent decode and continuous KWS smoke tests for APU-P7 to validate system stability under load.
- Added accuracy qualification tests for APU-P7 to verify through-hardware performance against expected results.
- Created contention tests for APU-P8 to assess USB2/SDIO0/APU Gateway A interactions.
- Developed quiesced loader admission tests for APU-P8 to ensure proper handling of DMA operations.
- Added post-fault visibility tests for APU-P8 HP interconnect to confirm fault handling capabilities.
- Enhanced register parity tests to include ABI digest verification for consistency across implementations.
- Updated publication register tests to reflect changes in capability constants for P5 and P7 profiles.
2026-09-22 07:28:53 +08:00
maksyuki 52340d867c fix: update quality workflow and documentation to include third-party simulation models and timing-model fixtures 2026-09-21 17:12:00 +08:00
maksyuki 38ccbc7d93 feat: refactor NPU Executor Tests and Add Softmax Regression Tests
- Removed unsupported fault handling from  and replaced it with a test for average pooling execution.
- Updated the test for unsupported placements to validate average pooling and depthwise convolution placements.
- Introduced new tests for softmax functionality in , including parameter validation and edge cases.
- Added qualification tests to ensure rejection of common-mode numerical errors and incomplete runs in .
- Enhanced RTL tests to cover memory downsizing and kernel burst capabilities in  and .
- Adjusted boot status assertions in  to reflect updated expected values.
2026-09-21 16:25:46 +08:00
maksyuki 86886a9504 feat: enhance CI workflows and tests with improved timeout and dependency management 2026-09-21 15:31:47 +08:00
maksyuki d544788ec9 fix: update SDRAM simulation time and enhance test coverage for GA2D and SDRAM access 2026-09-21 12:35:56 +08:00
maksyuki e0b2e1cc42 feat: add additional NPU shell sources for enhanced functionality
This commit includes new shell source files for the NPU, specifically:
- npu_mac_array.sv
- npu_accumulator.sv
- npu_vector.sv
- npu_requantizer.sv

These additions aim to improve the testing coverage and functionality of the NPU RTL shell.
2026-09-20 20:14:27 +08:00
maksyuki 491d38fd0e docs: refactor SoC diagram typography and routing validation
- Introduced scoped typography rules for compact cells and emphasized labels in the SoC functional overview.
- Updated the  diagram to utilize new typography settings, including size adjustments for CDC and Gateway labels.
- Implemented geometry validation for SoC diagrams to ensure proper routing and clearance between elements.
- Added comprehensive tests for geometry validation, PDF typography checks, and compact text handling.
- Created new Python modules for shared geometry and PDF-bound typography checks to streamline validation processes.
- Enhanced documentation to clarify typography requirements and routing styles for SoC diagrams.
2026-09-20 12:34:57 +08:00
maksyuki d3ef9ae27f feat: enhance GA2D and Resource Controller Test Coverage
- Added validation checks for GA2D soft reset and error handling in .
- Improved resource controller tests in  to cover IRQ routing and ownership scenarios.
- Updated performance log tests in  to reflect changes in GA2D features and formats.
- Introduced a new netlist transaction test for GA2D in  to ensure synthesized block functionality.
- Modified publication software tests in  to account for new GA2D stages.
- Adjusted script tools tests in  for updated configuration values.
- Added print statements for better traceability in GA2D reference campaign tests.
2026-09-20 08:52:23 +08:00
maksyuki a2b12f911a feat: add RTL unit tests for NPU-P3 job execution
This commit introduces a comprehensive set of unit tests for the NPU-P3 job execution, covering the DMA engine, job decoder, and core functionalities. The tests utilize Icarus and Verilator for simulation and include descriptor validation, fault handling, and various operational scenarios. Key features include:

- Descriptor construction and validation mirroring ABI 1.0.
- Detailed test cases for valid and invalid descriptors.
- Core testbench scenarios for various operations including convolution, pooling, and fully connected layers.
- Integration of golden model comparisons for output verification.

These tests aim to ensure robust functionality and adherence to specifications for the NPU-P3 architecture.
2026-09-19 23:36:20 +08:00
maksyuki f94cf5e7e2 feat: add NPU register tests for RTL and SDK synchronization
- Introduced  to ensure consistency between RTL and C register definitions.
- Implemented exhaustive checks for offsets, scalar encodings, bit shifts, and enumerations.
- Added  for shell and control-CDC unit tests using Icarus and Verilator.
- Created test cases for NPU register and control CDC functionality, verifying successful simulation outputs.
2026-09-18 20:47:18 +08:00
maksyuki 95ee570a44 docs: add SOC architecture diagram and update related documentation
- Introduced a new SOC functional architecture diagram in .
- Updated  to include instructions for the new SOC diagram, including layout and design specifications.
- Modified  to activate changes related to the SOC functional overview.
- Enhanced  to include new SOC architecture catalog references.
- Updated  to account for the new SOC architecture diagrams in coverage checks.
- Created  for validating SOC diagram specifications and ensuring compliance with design rules.
- Added tests in  to validate SOC diagram structure and integrity.
- Adjusted existing tests to reflect the addition of SOC architecture coverage.
2026-09-17 20:06:40 +08:00
maksyuki 2fa939dda0 docs: add independent closing page and update validation for footer roles in publications 2026-09-17 15:21:48 +08:00
maksyuki fbc1050a31 feat: add GA2D waveform definitions, APU implementation validation, and update diagram coverage checks
- Introduced waveform definitions for GA2D operations and exceptions in waveforms.json.
- Added a new Python module for validating CI snapshots and APU implementation details.
- Enhanced diagram coverage validation to ensure accurate reporting of circuit and layout counts.
- Updated programming reference to dynamically calculate read/write credits based on master policies.
- Implemented tests for validating CI snapshot integrity and diagram coverage consistency.
- Added example usage of GA2D fill operation in a new C source file.
- Improved error handling in software reference for IRQ count validation.
- Adjusted diagram reference to check for legacy and version-specific instruction limits.
2026-09-17 14:33:38 +08:00
maksyuki f85ff59e33 feat: add RTL tests for NPU vector, memory, and patch packer
- Introduced  for comprehensive testing of the NPU vector module, covering bias preload, lane-masked accumulation, and fault conditions.
- Created  to implement differential tests for NPU compute-core RTL using Icarus Verilog and Verilator, ensuring bit-exact results against a numerical oracle.
- Added  to validate NPU memory and patch packer functionality, including SRAM models and various packing scenarios.
2026-09-17 09:11:56 +08:00
maksyuki c8953d9558 feat: add comprehensive tests for NPU-P0 models and reference implementations
- Introduced  to validate KWS and VWW locked model graphs against expected configurations, including operator sequences, tensor properties, and model integrity checks.
- Added  to cover numerical profiles and validate arithmetic operations, including convolution, depthwise convolution, fully connected layers, and various tensor operations.
- Created  to ensure proper setup and validation of NPU-P0 reference flow, including dataset integrity and model hash consistency.
- Implemented error handling tests for malformed buffers and model mutations to ensure robustness.
2026-09-16 16:40:55 +08:00
maksyuki 142b268a80 docs: update README files with NPU specification and integration details
- Added information about the Mini NPU specification, including its architecture and verification requirements, to rtl/README.md.
- Included details on the frozen NPU contract and its integration considerations in rtl/mini/README.md.
2026-09-16 10:24:57 +08:00
maksyuki 2a497ecef0 fix: update APUMC instruction-limit drift case for APUMC V2 constants
feat/apu splits the instruction limit into APUMC_MAX_INSTRUCTIONS_V1/V2
with APUMC_MAX_INSTRUCTIONS aliasing the V1 value, so the committed
plain '2048' assignment the drift test mutated no longer exists. Mutate
the alias assignment instead; the drift still disagrees with the RTL
define and must be rejected.
2026-09-15 19:08:18 +08:00
maksyuki 1b0a0da8eb fix: sync publication source bindings and storage geometry after APU merge
- system-reference.json: APU RX stream tready now feeds the KWS engine
  (s_kws_rx_ready) instead of a constant 0
- diagram-layouts.json: APUMC header packs the requested abi word and
  entry words mask entry_pc/first_pc/last_pc for APUMC V2
- diagram-storage.json: APU control store implements the 4096-word
  (32 KiB) V1.1 refreeze
- diagram-circuits.json: pre-existing GA2D master 6 missing from the two
  axi4_data_crossbar master_read_limit bindings (broken on dev before
  the merge)
- test_script_tools.py: pre-existing whitespace-strict SOC_SIM_TIME
  assertion broken by dev's app.mk alignment change (failed on dev
  before the merge); use the test's regex idiom
2026-09-15 17:20:28 +08:00
maksyuki ded1a327de Merge branch 'feat/apu' into dev
# Conflicts:
#	Makefile
#	publications/datasheets/ips/apu.typ
#	rtl/mini/mk/formal.mk
#	tests/rtl/axi4_target_guard_tb.sv
2026-09-15 16:28:12 +08:00
maksyuki 8a7c45498b feat: enhance regression workflows and formal checks documentation 2026-09-15 15:41:00 +08:00
maksyuki 6d64850684 feat: update JPEG master credit handling and documentation
- Adjusted the native JPEG path to reflect one normal read and one normal write credit for master slot 6 in various documentation files, including README.md, datasheets, and programming references.
- Updated the bus programming section to clarify the admission policy and error handling for the JPEG private path.
- Enhanced the media formats and product use sections to specify the implications of the new credit structure on system integration and performance.
- Modified the RTL implementation to ensure proper credit allocation for the JPEG master in the AXI4 data crossbar.
- Updated regression tests to validate the new credit handling and ensure compliance with the updated specifications.
- Increased simulation timeout for Verilator to accommodate new testing requirements.
2026-09-15 12:08:16 +08:00
maksyuki 109326021d feat: update GA2D to Phase 5: Adjust tests and references
- Updated testbench and wrapper test cases to reflect GA2D Phase 5 changes.
- Modified Python test scripts to validate Phase 5 functionality and requirements.
- Enhanced DMA tests for byte-accurate coverage in Phase 5.
- Adjusted register parity tests to include Phase 5 capability and limits.
- Updated publication software tests to reference GA2D Phase 5.
- Changed formal target tests to utilize Phase 5 production hierarchy.
2026-09-15 10:04:51 +08:00
maksyuki cf6bcf7a45 feat: refactor GA2D tests and update to Phase 4 specifications
- Updated resource_controller_tb.sv to verify resource STATUS bit layout after HP handoff.
- Modified test_ga2d.py to reflect changes for GA2D Phase 4, including memory map generation and source file handling.
- Introduced new test_ga2d_dma.py for independent FILL/COPY reference-model coverage.
- Updated test_ga2d_platform.py to check for the activation of the private AXI64 master and IRQ routing.
- Adjusted test_ga2d_register_parity.py to validate new scalar encodings for Phase 4.
- Enhanced test_hp_boot_bundle.py to ensure HP boot uses the private GA2D mailbox and resource lifecycle.
- Updated test_hp_platform.py to verify GA2D lifecycle markers and cache handshake budget.
- Modified test_performance_log.py to include GA2D workload and configuration facts in performance logs.
- Adjusted test_publication_retrieval.py and test_publication_software.py to reflect changes in GA2D stages.
- Updated test_script_tools.py to ensure GA2D formal filelists are correctly scoped.
- Refactored test_soc_topology.py to validate the private master policy and active shell in GA2D Phase 4.
2026-09-14 21:46:26 +08:00
maksyuki 9a3bf4a6ca feat: enhance GA2D RTL and Test Infrastructure
- Updated resource_controller_tb.sv to include additional checks for IRQ handling and lifecycle states for GA2D resource.
- Modified soc_irq_topology_tb.sv to accommodate 64-bit IRQ vector handling and updated expectations for IRQ routing.
- Introduced test_ga2d.py for directed verification of GA2D Phase 3 APB4 shell functionality.
- Revised test_ga2d_platform.py to reflect changes in GA2D integration and ensure proper IRQ routing.
- Added test_ga2d_register_parity.py to synchronize GA2D RTL and SDK register constants.
- Updated test_lp_irq.py to reflect changes in IRQ allocation and metadata for GA2D.
- Enhanced test_memory_map.py to verify GA2D MMIO region presence in the memory map.
- Adjusted test_publication_software.py to include GA2D in application results.
- Modified test_soc_topology.py to ensure correct topology generation for GA2D, including IRQ and APB bindings.
2026-09-14 09:49:08 +08:00
maksyuki e77d7b3299 feat: enhance testbench and system control for GA2D and data plane fault handling
- Updated onchip_ram64_tb to increase ID_WIDTH from 6 to 7 and adjusted related write/read tasks.
- Modified resource_controller_tb to accommodate an expanded resource count from 8 to 9, updating related logic signals.
- Enhanced sysctrl_tb to introduce new fault handling logic for data plane faults, including additional fault validation and delivery mechanisms.
- Added tests for clock and reset domains to ensure proper handling of data plane faults and their reset contracts.
- Introduced new test_ga2d_platform.py to verify GA2D Phase 2 functionality, including lifecycle and recovery processes.
- Updated test_soc_topology.py to ensure proper data master policies and validate GA2D integration within the system.
- Enhanced sysctrl.py to ensure the fault master retains the high bit for data plane faults.
2026-09-14 07:19:18 +08:00
maksyuki 8dd24e7880 Add support for Hazard3 external IRQ handling and metadata generation
- Introduced new CSRs for Hazard3 external interrupts in system_csr.h.
- Expanded the IRQ API in irq.h to include external IRQ enable/disable and priority setting functions.
- Implemented external IRQ handling in system_irq_handler.c, including registration, enabling, and dispatching.
- Created a new source file irq_nocsr.c for CSR-disabled firmware, providing stubs for external IRQ functions.
- Updated booter.c to reflect the new external IRQ count in printed specifications.
- Modified the soc_topology generation script to accommodate 64-bit IRQ vectors and external IRQ count.
- Enhanced the integration tests to validate the new IRQ handling and metadata generation.
- Adjusted various files to ensure compatibility with the new external IRQ architecture, including Verilog modules and test cases.
2026-09-13 16:40:18 +08:00
maksyuki e79f6ccf12 docs: update resource-controller and architecture documentation for GA2D phases
- Added details about the approved GA2D contract and its phased implementation in resource-controller.md.
- Updated lp-hp-architecture.md to reflect the frozen GA2D specification and its implications for product descriptions.
- Enhanced rtl/README.md with information on the Mini GA2D graphics accelerator's architecture and pending implementation.
- Clarified integration requirements in rtl/mini/integration/README.md regarding GA2D's phased changes and their impact on existing allocations.
2026-09-13 08:33:53 +08:00
maksyuki 15f4dd555c feat: add KWS engine and related tests for APU-P7
- Implemented the KWS engine in the RTL and added necessary components including KWS SRAM client and model loader.
- Enhanced the APU ring scheduler testbench to validate KWS descriptors.
- Introduced new Python tests for KWS functionality, including model import validation, inference checks, and error handling for mutated models.
- Updated existing tests to include KWS components and ensure proper integration within the APU architecture.
- Refactored code for clarity and consistency, including adjustments to signal handling and memory management in test cases.
2026-09-12 22:11:49 +08:00
maksyuki ec320a1974 docs: update i2s.md to include APU-P7 contract requirements for rx_flush_busy_o
Added a section detailing the export of the PCLK-synchronized RX warm-flush-busy state as
 to the APU's . This change addresses the P7
implementation obligation and clarifies the handling of audio resets and KWS mono pairing
in the context of the I2S interface.
2026-09-11 22:32:38 +08:00
maksyuki 135cfdd5b7 feat: clarify APU-P6 MP3 decoding status and update documentation for current release scope 2026-09-11 20:33:23 +08:00
maksyuki 10223b9342 feat: update CoreMark configurations and clock settings for improved simulation accuracy 2026-09-11 10:09:25 +08:00
maksyuki c785d4d798 feat: update validation section for P6 with detailed prerequisites and implementation notes 2026-09-11 08:58:08 +08:00
maksyuki 126d304d21 feat: update documentation for P6 MP3 profile, compatibility, and capacity details 2026-09-11 08:48:41 +08:00
maksyuki 836371663f feat: enhance APU codec handling and testing with improved error reporting and frame validation 2026-09-11 08:05:23 +08:00
maksyuki 8382265f15 fix: update simulation timeout for coremark benchmark in nightly extra commands 2026-09-09 20:18:48 +08:00
maksyuki 245e7ca147 docs: update footer link styling and remove underline exception 2026-09-09 19:39:25 +08:00
maksyuki 3d538ac84a docs: refactor diagram and storage handling in publications
- Enhanced  to include instruction families and layouts, improving the APU formats and circuit validation.
- Introduced  for handling binary layouts derived from C structures.
- Added  to manage APU instruction families and ensure opcode integrity.
- Updated  to track global presentation changes, specifically repository footer modifications.
- Created  to resolve architectural storage geometry and validate storage configurations.
- Implemented comprehensive tests in  and  to ensure correctness of diagram coverage and storage geometry.
2026-09-09 18:31:45 +08:00
maksyuki 81c5c89fcd docs: update quality workflow and enhance APU simulation tests 2026-09-09 14:43:32 +08:00
maksyuki 6185729265 docs: add diagram and package reference modules with validation and testing
- Introduced  for managing diagram dependencies, validating fields, and collecting diagram data.
- Added  to handle version-qualified publication packages, including validation of package integrity and runtime imports.
- Updated  to integrate diagram dependencies into source path resolution.
- Created  to implement comprehensive tests for diagram validation, package integrity, and runtime import checks.
2026-09-09 13:04:59 +08:00
maksyuki 084226f3a3 docs: refactor datasheet sections and enhance API bundle validation
- Removed unnecessary change markers in fault-reference.typ, linux-runtime.typ, performance-reference.typ, release-verification.typ, software-runtime.typ, usage-appendices.typ.
- Added new timeout and completion semantics in style.md, detailing boot-bundle byte format and API behavior.
- Introduced new API semantics in system-reference.json, including detailed descriptions for various functions.
- Updated software_reference.py to integrate API bundle validation and ensure dependencies are correctly managed.
- Created a comprehensive test suite in test_publication_api_bundle.py to validate API behavior and byte-format tables against actual code.
- Enhanced boot bundle structure with detailed header and entry field specifications, ensuring compliance with serialization and alignment rules.
2026-09-09 09:42:04 +08:00
maksyuki d96d12679b docs: add software and structure reference modules with validation and diagnostics
- Implemented  to handle software publication data, including function extraction, dependency validation, and runtime profile management.
- Created  to manage publication chapter/IP entries, ensuring structural integrity without affecting pagination.
- Enhanced  to integrate software dependencies into the system reference collection process.
- Introduced comprehensive tests in  to validate software-derived publication claims and ensure structural integrity of publication entries.
2026-09-08 23:08:55 +08:00
maksyuki 6ac5b51f99 docs: add retrieval reference and report changes functionality
- Implemented  to bind final content/navigation page ranges to a baseline and the delivered PDF, including validation of change markers and printed page checks.
- Introduced  for publication-only register lookup, including functions for dependencies, validation, register indexing, and diagnostic code handling.
- Updated  to include dependencies from the new retrieval reference.
- Created comprehensive tests in  to ensure the integrity of retrieval references, diagnostic codes, and report validations.
2026-09-08 20:37:04 +08:00
maksyuki fbb0e3ebb2 docs: Enhance system reference with implementation details and new sections
- Updated  to include product details collection.
- Added new sections to datasheets:
  -  for programming and service procedures.
  -  summarizing interface standards and supported subsets.
  -  detailing data formats and interoperability.
  -  outlining processor configuration and capabilities.
  -  summarizing reset states and initialization dependencies.
- Introduced  for tracing CPU configurations and reset observations.
- Created tests in  to validate implementation details and programming results.
2026-09-08 17:21:47 +08:00
maksyuki 84332d4573 feat: enhance APU Codec Tests and Register Definitions
- Added new tests for FLAC encoding and decoding, including handling of rice parameters and partial LPC tail.
- Introduced WAV PCM encoding tests to ensure correct behavior across various configurations.
- Updated test cases to validate the handling of malformed FLAC files and metadata structures.
- Enhanced the APU register tests to include expanded P5 profile capabilities and ensure accurate register descriptions.
- Improved assertions for manifest checks in the APU release tests to validate ABI and instruction counts.
- Refactored existing tests for clarity and maintainability, ensuring they align with the latest APU specifications.
2026-09-08 14:45:40 +08:00
maksyuki c8f377cbf6 docs: add programming reference module and associated tests
- Implemented  to handle publication data for routed resources and integer timing/buffer examples.
- Introduced functions for UART, I2C, timer, and I2S timing calculations, along with buffer budget calculations.
- Added validation for programming specifications and constants extraction from source files.
- Updated  to integrate programming dependencies into the system reference collection.
- Created comprehensive tests in  to ensure the correctness of programming specifications and timing calculations.
2026-09-08 14:22:41 +08:00
maksyuki 5ff310d15f docs: add system reference validation and testing
- Implemented  to validate publication-only system guidance and its evidence dependencies.
- Added functions to check source paths, validate references, and collect system reference data.
- Created comprehensive tests in  to ensure proper validation of IP coverage, source dependencies, and report requirements.
- Included tests for various edge cases such as missing sources, duplicate identifiers, and report validation.
2026-09-08 11:22:07 +08:00
maksyuki a674ec78d0 docs: update datasheet styles for heading links and waveform text normalization 2026-09-08 10:01:42 +08:00
maksyuki d6250a90f9 docs: add figure-directory support for tables and figures in datasheet style 2026-09-08 09:47:47 +08:00
maksyuki 27cc86c6e8 feat: enhance datasheet overview and style with artifact evaluation component 2026-09-08 07:53:35 +08:00
maksyuki 9ef65968f0 docs: implement waveform validation and testing framework
- Added  to validate publication waveform lanes against SystemVerilog declarations.
- Introduced functions for parsing declarations, checking dimensions, and validating signal properties.
- Created  to ensure signal labels refer to valid declarations with correct bit selections.
- Updated waveform styling in  for improved visual consistency.
2026-09-07 21:14:09 +08:00
maksyuki cb6311ae7f docs: enhance publication styles and typography
- Introduced a comprehensive rhythm system for consistent spacing across various elements in datasheets.
- Improved heading layout to accommodate chapter openers and section breaks more effectively.
- Updated table styling to ensure proper stroke and spacing, enhancing readability.
- Refined code block and inline code styling for better visibility and consistency.
- Added new tests to validate the preservation of list structures and typography rules in publications.
- Enhanced waveform rendering with improved color handling and SVG styling.
2026-09-07 20:38:54 +08:00
maksyuki eed7cb8982 feat: add comprehensive tests for publication register validation
This commit introduces a new test suite for validating publication register data, ensuring that real ABI values and complete bit layouts are retained. The tests cover various scenarios including register interface checks, field overlap validation, duplicate offsets, reset value checks, and more. Additionally, it verifies that API listings contain only declarations and that page validation rejects shared start pages.
2026-09-06 22:00:57 +08:00
maksyuki 56eb92312e feat: update documentation for P5 capacity refreeze, including control store expansion and APB V1.1 compatibility 2026-09-06 08:19:08 +08:00
maksyuki 167db9fa86 feat: add datasheet sections for overview, peripherals, pins, software, and style
- Introduced a new overview section detailing the product features and specifications for the retroSoC Mini.
- Created a comprehensive peripherals section outlining memory interfaces, GPIO, DMA, timers, multimedia, and encryption components.
- Added a pins section that includes pin mapping, GPIO alternate-function matrix, and electrical specifications.
- Developed a software section covering boot sequence, runtime environment, applications, and Linux driver status.
- Established a style file to define the visual presentation of the datasheet.
- Implemented tests for validating datasheet generation and ensuring integrity of engineering inputs.
2026-09-06 08:01:05 +08:00
maksyuki ef754cd0ac feat: update APU register testbench and add codec transport tests
- Modified the capability register value in apu_reg_tb.sv to 0x01bd.
- Simplified rejected write checks for the COMMAND register in apu_reg_tb.sv.
- Added backend build ID input to the ring scheduler testbench.
- Updated test cases in test_apu.py to include new codec transport and controller files.
- Created new test file test_apu_codec_transport.py for APU-P5 transport assembler and parser tests.
- Added codec profile and dependency tests in test_apu_codecs.py.
- Enhanced register parity tests to include P5 primitive mask.
- Improved script tools tests for file download functionality and dependency helpers.
2026-09-06 07:43:16 +08:00
maksyuki bdeaf7e22c feat: implement code changes to enhance functionality and improve performance 2026-09-05 08:12:58 +08:00
maksyuki 57ffd03216 feat: update APU tests to synchronize with P4 ISA and add APU primitives filelist checks
- Modified test_apu_register_parity.py to reflect changes in P4 ISA definitions.
- Updated test_apu_register_parity.py to include new manifest entries for P4.
- Enhanced test_script_tools.py to include checks for APU primitives filelists.
- Added assertions for APU primitives in the formal filelists test to ensure proper scoping and inclusion.
2026-09-05 07:29:50 +08:00
maksyuki 29a667415b feat: update APU capabilities and specifications for Phase 4 enhancements 2026-09-04 12:59:49 +08:00
maksyuki 67281e224f feat: add APU-P3 tests and enhancements for RTL and microcode integration
- Introduced new test cases for APU-P3 loader, control store, and sequencer functionality in .
- Enhanced the APU ring scheduler and stream router testbenches to validate reset timing and state transitions.
- Added comprehensive tests for APU microcode tools, ensuring assembler and interpreter consistency.
- Updated register parity tests to synchronize APU RTL and SDK ABI across P3.
- Expanded formal filelist generation to include APU loader and sequencer.
- Improved SBY configuration for formal verification with Bitwuzla.
2026-09-04 11:56:05 +08:00