All Projects → fpw → SoCDP8

fpw / SoCDP8

Licence: AGPL-3.0, Unknown licenses found Licenses found AGPL-3.0 LICENSE Unknown LICENSE-HARDWARE
A SoC implementation of a PDP-8/I for the PiDP-8/I console

Programming Languages

c
50402 projects - #5 most used programming language
typescript
32286 projects
VHDL
269 projects
tcl
693 projects
BitBake
79 projects
shell
77523 projects

Projects that are alternatives of or similar to SoCDP8

rfsoc qpsk
PYNQ example of using the RFSoC as a QPSK transceiver.
Stars: ✭ 42 (+82.61%)
Mutual labels:  fpga-soc
ZYNQ-NVDLA
NVDLA (An Opensource DL Accelerator Framework) implementation on FPGA.
Stars: ✭ 144 (+526.09%)
Mutual labels:  zynq
Deep-DarkFantasy
Global Dark Mode for ALL apps on ANY platforms.
Stars: ✭ 16 (-30.43%)
Mutual labels:  zynq
ezdma
Simple, zero-copy DMA to/from userspace.
Stars: ✭ 70 (+204.35%)
Mutual labels:  zynq
PothosZynq
DMA source and sink blocks for Xilinx Zynq FPGAs
Stars: ✭ 19 (-17.39%)
Mutual labels:  zynq
hftrx
Embedded firmware for ham radio transceivers
Stars: ✭ 27 (+17.39%)
Mutual labels:  zynq
openarty
An Open Source configuration of the Arty platform
Stars: ✭ 93 (+304.35%)
Mutual labels:  fpga-soc
Awesome-Retro-Docs
A curated collection of technical documentation for Arcades, Handhelds, Consoles, Computers and MCU’s.
Stars: ✭ 128 (+456.52%)
Mutual labels:  vintage-computers
EBAZ4205
Vivado and PetaLinux projects for Zynq EBAZ4205 Board
Stars: ✭ 38 (+65.22%)
Mutual labels:  zynq
mksocfpga
Hostmot2 FPGA code for SoC/FPGA platforms from Altera and Xilinx
Stars: ✭ 23 (+0%)
Mutual labels:  zynq
SHA256Hasher
SHA-256 IP core for ZedBoard (Zynq SoC)
Stars: ✭ 25 (+8.7%)
Mutual labels:  zynq
ZedBoard-OLED
Driving the OLED display on the ZedBoard
Stars: ✭ 17 (-26.09%)
Mutual labels:  zynq
eddr3
mirror of https://git.elphel.com/Elphel/eddr3
Stars: ✭ 33 (+43.48%)
Mutual labels:  zynq
s6soc
CMod-S6 SoC
Stars: ✭ 30 (+30.43%)
Mutual labels:  fpga-soc
naps
An experiment for building gateware for the axiom micro / beta using nmigen and yosys
Stars: ✭ 28 (+21.74%)
Mutual labels:  zynq
HPS2FPGAmapping
SoCFPGA: Mapping HPS Peripherals, like I²C or CAN, over the FPGA fabric to FPGA I/O and using embedded Linux to control them (Intel Cyclone V)
Stars: ✭ 27 (+17.39%)
Mutual labels:  fpga-soc
SDR Matlab OFDM 802.11n
📡 Using Software Designed Radio to transmit MIMO-OFDM QPSK signals at 5 GHz
Stars: ✭ 44 (+91.3%)
Mutual labels:  zynq
SDR Matlab LTE
📡 Using Software Designed Radio to transmit LTE downlink signals at 2.4 GHz
Stars: ✭ 21 (-8.7%)
Mutual labels:  zynq
Openwifi
open-source IEEE 802.11 WiFi baseband FPGA (chip) design
Stars: ✭ 2,257 (+9713.04%)
Mutual labels:  zynq
zedboard-guide
No description or website provided.
Stars: ✭ 29 (+26.09%)
Mutual labels:  zynq

SoCDP8   Badge Hardware   Badge Software

This is an implementation of the 1968 DEC PDP-8/I on
a Xilinx Zynq, a FPGA controller with an ARM CPU.

Built on the PiDP-8/I Console by Oscar Vermeulen,
it acts as a replacement for the Raspberry Pi approach.



Preview



Why SoC ?

Drawback of the Raspberry Pi + Linux + SIMH approach:

  • Inaccurate Simulation : Doesn't allow for single stepping
  • Long Boot Times : Linux takes a few seconds to boot / start SIMH
  • Meticulous Shutdown : Linux needs a proper shutdown to not corrupt

The SoCDP8 implements the PDP-8/I in VHDL, targeting FPGAs.


Design

The system is modeled exactly as described in the
Maintenance Manual and Engineering Drawings.

The manual is treated as the project specification, registers
and signals are named as described in the book and register
transfers are modeled as specified in the drawings.


Peripherals

Peripherals are implemented on the ARM CPU on the SoC.

This makes device implementation, like the teletype, fairly easy.

Code for peripherals can access the onboard
SD Card to retrieve tapes, disk images, ..

When connected to the Ethernet / WiFi, the system, including
it's peripherals, can be controlled with a Web Browser.



Project Goals

  • Implementing the system as close as possible to the original specifications.

  • Providing a simple replacement for the Raspberry Pi,
    ideally the project runs on a SoC board that snaps into
    the PiDP-8/I Console in the same way the Pi does.

  • Have it be operable through a browser using
    a web socket connection between a web server
    on the ARM and the PDP-8 on the FPGA.



Supported SoCs

The project currently only targets the Zynq board
and utilizes the Pynq-Z2 for development only.


Tested Boards

Board
ZynqBerry
Xilinx Zynq 7010

- 130€ | Good Availability

- Raspberry Pi form factor

- No free GPIO pins

- Has the smallest Zynq

Pynq-Z2
Xilinx Zynq 7020

132€ | Good Availability

- Raspberry Pi Connectors

- Spare GPIO pins, such as a

PMOD pin, useful for sensors
- Switches, buttons, LEDs

- Requires a ribbon cable to
 fit in the PiDP-8/I box


Other Boards

Board
DE0-Nano-SoC
Altera Cyclone V

- 125€ | International Shipping

- Incompatible 40 pin connector,

 requires adapter.

- Many free GPIO pins

- Switches, buttons, LEDs



Project Status


Functional

  • Base System
  • Timesharing
  • Data Breaks
  • Interrupts
  • EAE
  • I/O

These features pass the MAINDEC tests and
can be loaded using the RIM / BIN loaders.

Runs On

  • Focal69
  • TSS/8
  • OS/8

Peripherals

Implemented in software with only basic functionality.


Deviations

To have the PiDP-8/I work with the Zynq boards,
a modification had to unfortunately be made.

The 1KΩ resistors had to be replaced by 220Ω ones
to support the pullup resistance of the Zynq drivers.

Thankfully 220Ω is compatible with the Raspberry Pi.


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].