Files
retroSoC/publications/datasheets/sections/overview.typ
T
maksyuki 422f48d0cd feat: refactor and enhance documentation for Linux runtime, boot acceptance, and NPU integration
- Updated fault reference documentation to clarify Linux termination behavior and NPU-P6 requirements.
- Enhanced Linux runtime section with emphasis on platform setup and kernel handoff processes.
- Revised overview section to include detailed descriptions of NPU capabilities and memory configurations.
- Improved product use documentation to specify Linux rootfs behavior and acceptance checkpoints.
- Clarified reset summary to differentiate between Linux and smoke/NPU-P6 acceptance processes.
- Updated software section to reflect changes in Linux image loading and readiness protocols.
- Modified build scripts to support RV64 architecture and ensure proper ELF requirements.
- Enhanced NPU compiler to support cycle counting for RV64 and RV32 architectures.
- Added tests to validate new configurations and ensure compliance with updated publication contracts.
2026-10-01 12:41:05 +08:00

116 lines
5.5 KiB
Typst
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#import "../style.typ": *
#import "../figures.typ": *
// Publication status is explicit; successful build/tests do not change these marks.
#let artifact-status = (
(name:"Available",fill:"full"),
(name:"Functional",fill:"left-half"),
(name:"Reproduced",fill:"empty"),
(name:"Tapedout",fill:"empty"),
)
#cover(evaluation:artifact-status)[
#change-start("v05-rill-cover","Rill bilingual prototype brand in the existing cover metadata row")
#change-start("v05-emphasis-cover","Cover contact, partial Functional mark and selected feature emphasis")
#change-start("v05-product-brief","v0.5 document identity and implemented accelerator features")
#text(9pt, weight: "semibold", fill: gold)[PRODUCT DATASHEET / #doc.status]
#v(rhythm.cover-gap)
#text(30pt, weight: "semibold")[retroSoC Mini]
#linebreak()
#text(23pt, weight: "semibold", fill: gold)[Gen2/Gen2+]
#v(rhythm.cover-gap)
#text(13pt)[An Open-Source, Linux-Capable Asymmetric Dual-Core SoC]
#v(rhythm.cover-meta-gap)
// Inter's 1490/2048 em cap edge keeps CJK fallback from increasing this row.
#grid(columns: (1fr, 1fr),
[#text(font:("Inter","Noto Sans CJK SC"),weight:"bold",top-edge:0.7275390625em)[#doc.brand_name(#doc.brand_name_zh)] · v#doc.version \ #doc.date],
align(right)[#doc.author#link("mailto:"+doc.author_email)[(#doc.author_email)] \ #doc.maintainer],
)
#v(rhythm.cover-rule-gap)
#line(length:100%, stroke:1.1pt + gold)
= Product Brief
== Features
#columns(2, gutter: rhythm.cover-gutter)[
#set par(leading: rhythm.cover-leading, spacing: rhythm.cover-spacing)
#set list(tight:false,spacing:rhythm.cover-list-spacing,body-indent:rhythm.cover-list-indent)
*Compute and control*
- Hazard3 LP: boot, clocks, resource ownership and fault recovery.
- Dual-issue VexiiRiscv HP: RV64IMAFDC + Zicbom, Sv39.
- NPU: *64 dense MACs*, eight INT8 operator classes and 64 KiB private SRAM.
- JTAG debug; fixed EXT-L control and EXT-H AXI64 slots.
*Memory and interconnect*
- *32 KiB banked SRAM* in this profile; 4/16/32/64/128 KiB build options.
- AXI32 control, native AXI64 data paths and APB4 registers.
- SDRAM, QPI PSRAM and OPI/HyperBus-style external-memory controllers.
- XPI: four chip selects, 16 LUT sequences, 1/2/4-bit SDR transfers.
- *Eight DMA channels*; linked-list TCDs, 16-beat bursts and stream endpoints.
*Platform services*
- Two 32-bit timers with 16-bit prescalers; four-channel PWM.
- 64-bit RTC, two alarms and periodic wake.
- Window watchdog with early warning and retained reset cause.
- LP/HP local interrupts, PLIC and mailbox.
- ARCHINFO, SYSCTRL/RCU, resource ownership and first-fault/performance monitoring.
#colbreak()
*Connectivity*
- *32 GPIOs*: atomic outputs, pin interrupts and two alternate-function selections.
- Two UARTs with *64-byte TX/RX FIFOs*; UART0 DMA and RTS/CTS.
- Two I2C controllers: 7/10-bit addressing and 16-entry command/RX FIFOs.
- SPI-SD, two 1/4-bit SDR SDIO hosts and bidirectional PS/2.
- USB2: 8 endpoints, 16 host channels, 16 KiB packet RAM; external ULPI PHY.
- WS2812: 24-bit GRB with programmable pulse/reset timing.
*Media and data processing*
- Stereo 16/24-bit I2S master; 8-bit RGB565/YUV422 DVP with crop/snapshot capture.
- Baseline JPEG encode/decode up to 2048 × 2048, with private DMA.
- GA2D fill/copy/convert/opaque blend and A8 masks.
- APU WAV/FLAC decode; fixed KWS in the P7 configuration; MP3 unsupported.
- AES-128/192/256, SHA-224/256 and raw RSA-2048; programmable CRC.
- RNG source remains unqualified for production entropy.
*Development*
- Freestanding CRT/HAL and reference apps; simulation, synthesis and timing flows.
- Experimental Linux integration with separate qualification gates.
]
#v(1fr)
#note(below: 0pt)[This draft describes a reviewed RTL/configuration snapshot. It does not establish silicon
speed grades, electrical limits, production availability or certification. Gen2/Gen2+ is the
retained document title; no separate derivative specifications are inferred.]
#change-end("v05-product-brief")
#change-end("v05-emphasis-cover")
#change-end("v05-rill-cover")
]
#pagebreak()
== Overview
#change-start("v05-emphasis-overview","Cover-adjacent overview and evidence context")
#change-start("v05-overview","NPU-inclusive functional inventory and configuration reference")
retroSoC Mini combines a small management processor with an application processor and shared
memory and I/O. Hazard3 retains authority over startup, clock transitions, resource ownership
and fault recovery. VexiiRiscv supplies the application-side compute and Linux integration.
The design is intended for embedded control, basic human-machine interfaces, retro multimedia
experimentation, education and ASIC prototyping.
#figure(product-diagram(), caption:[Integrated Mini PRODUCT IP inventory, organized by function.])<product-diagram>
#change-start("v05-refresh-identity","Reviewed source identity for this same-version revision")
#ds-table("profile", [Document reference configuration],
([Property], [Reference]),
(
([Product profile], code(doc.profile)),
([Hardware source], code(doc.source_revision.slice(0,12))),
([Technology / SRAM], [IHP130 / 32 KiB, macro interface enabled]),
([Reset roots], [LP: REF24 at 24 MHz; HP: external 72 MHz]),
([Audio / PLL], [18.432 MHz input / PLL disabled]),
([HP boot example], code(doc.hp_profile)),
([MPW compatibility], code(doc.mpw_profile)),
), widths:(0.8fr,1.9fr),
)
#change-end("v05-overview")
#change-end("v05-refresh-identity")
#change-end("v05-emphasis-overview")