add crypto-router page start
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 19 Apr 2021 15:36:46 +0000 (16:36 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 19 Apr 2021 15:36:50 +0000 (16:36 +0100)
crypto_router_asic.mdwn [new file with mode: 0644]

diff --git a/crypto_router_asic.mdwn b/crypto_router_asic.mdwn
new file mode 100644 (file)
index 0000000..cd65249
--- /dev/null
@@ -0,0 +1,37 @@
+# Crypto-router ASIC
+
+* NLnet page: [[nlnet_2021_crypto_router]]
+* Top-level bugreport: <https://bugs.libre-soc.org/show_bug.cgi?id=589>
+
+# Specifications:
+
+All of these are entirely Libre-Licensed:
+
+* 300 mhz single-core, Libre-SOC OpenPOWER CPU
+* 180/130 nm (TBD)
+* 5x [[RGMII]] Gigabit Ethernet PHYs
+* 2x USB [[ULPI]] PHYs
+* Direct DMA interface (independent bulk transfer)
+* JTAG, GPIO, I2C, PWM, UART, SPI, QSPI, SD/MMC
+* On-board Dual-ported SRAM (for Packet Buffers)
+* Opencores [[sdram]]
+* Wishbone interfaces to all peripherals
+* XICS ICP / ICS Interrupt Controller
+
+# Example packet transfer:
+
+* Packet comes in on RGMII port 1.  Each PHY has its own dual-ported SRAM
+* Packet is **directly** stored in internal (dual-ported SRAM) by
+  the RGMII PHY itself
+* Interrupt notification is sent to the processor (XICS)
+* Processor inspects packet over Wishbone interface directly
+  connected to 2nd SRAM port.
+* Processor computes, based on decoding the ETH Frame, where the
+  packet must be sent to (which other RGM-II port: e.g. Port 2)
+* Processor initiates Memory-to-Memory DMA transfer
+* DMA Memory-to-Memory transfer, using Wishbone Bus, copies the ETH Frame
+  from one on-board SRAM to the target on-board SRAM associated with Port 2.
+* DMA Engine generates interrupt (XICS) to the CPU to say it is completed
+* Processor notifies target RGM-II PHY to activate "send" of frame out
+  through target RGM-II port 2.
+