TopRv
RV32I ソフトコアのブリングアップ用トップ (docs/riscv.md パッチ計画 #6)
既存の Top(UART エコー + LCD + PSRAM + TF カード)とは別のビットストリームで, ソフトコアだけを動かす最小構成.LUT 予算の都合で両者は同居できないため, ペリフェラルをソフトウェアへ移すまでの間はこのトップで検証する (docs/riscv.md「残課題・リスク」の LUT 予算).
flowchart LR
ROM["RvBootRom<br>(software/hello.S)"] --> SOC
SOC["RvSoc<br>RvCore + ROM + RAM + MMIO"] -- "stream_if" --> TX["Uart TX"] -- uart_tx --> PC["PC (COMポート)"]
SOC -- "AXI4-Lite" --> PS["PsramSubsystem<br>rPLL + SDR phy + ctrl + bridge"] <--> RAM["内蔵 PSRAM ch0"]
TX -. "傍受 (valid && ready)" .-> CON["TextConsole"] --> LCD["5inch LCD"]
SOC --> LEDS["leds (active-low)"]
Parameters
| OscFreq | u32 | オシレータ周波数 [Hz] |
|---|---|---|
| NumLeds | u32 | LED 数 |
Ports
| i_clk | input | clock | 27 MHz オシレータ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| i_rst | input | reset | S1 ボタン (active-low) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| leds | output | logic| LED (active-low)
|
uart_tx |
output |
logic |
UART TX
|
uart_rx |
input |
logic |
UART RX (未使用.読み捨てる)
|
lcd_clk |
output |
logic |
LCD ピクセルクロック (反転出力)
|
lcd_de |
output |
logic |
LCD データイネーブル
|
lcd_hsync |
output |
logic |
LCD 水平同期 (負極性)
|
lcd_vsync |
output |
logic |
LCD 垂直同期 (負極性)
|
lcd_r |
output |
logic<5> |
LCD R (RGB565)
|
lcd_g |
output |
logic<6> |
LCD G (RGB565)
|
lcd_b |
output |
logic<5> |
LCD B (RGB565)
|
O_psram_ck |
output |
logic<2> |
PSRAM CK (ch1:ch0)
|
O_psram_ck_n |
output |
logic<2> |
PSRAM CK# (差動)
|
O_psram_cs_n |
output |
logic<2> |
PSRAM CS#
|
O_psram_reset_n |
output |
logic<2> |
PSRAM RESET#
|
IO_psram_dq |
inout |
trilogic<16> |
PSRAM DQ (ch0=下位8bit)
|
IO_psram_rwds |
inout |
trilogic<2> |
PSRAM RWDS (ch0=bit0)
|
tf_sclk |
output |
logic |
TF SCK
|
tf_mosi |
output |
logic |
TF MOSI
|
tf_cs_n |
output |
logic |
TF CS#
|
tf_miso |
input |
logic |
TF MISO
|
|