Difference between revisions of "PDP-11 ON RETRO-EP4CE15"
Jump to navigation
Jump to search
Blwikiadmin (talk | contribs) |
Blwikiadmin (talk | contribs) |
||
Line 22: | Line 22: | ||
* [https://github.com/douggilliland/Retro-Computers/tree/master/PDP-11/PDP2011/PDP2011_20210216/RETRO-EP4CE15_CYCLONEV Our PDP-11 FPGA Builds] | * [https://github.com/douggilliland/Retro-Computers/tree/master/PDP-11/PDP2011/PDP2011_20210216/RETRO-EP4CE15_CYCLONEV Our PDP-11 FPGA Builds] | ||
− | ** [https://github.com/douggilliland/Retro-Computers/wiki/PDP-11-45-with-Front_Panel PDP-11/45 build] | + | ** [https://github.com/douggilliland/Retro-Computers/wiki/PDP-11-45-with-Front_Panel PDP-11/45 build] - with Front Panel |
+ | ** [https://github.com/douggilliland/Retro-Computers/tree/master/PDP-11/PDP2011/PDP_11_45/PDP11_45 PDP-11/45 build] - "standalone" | ||
** [https://github.com/douggilliland/Retro-Computers/wiki/PDP-11-70-with-Front_Panel PDP-11/70 build] | ** [https://github.com/douggilliland/Retro-Computers/wiki/PDP-11-70-with-Front_Panel PDP-11/70 build] | ||
+ | ** [https://github.com/douggilliland/Retro-Computers/tree/master/PDP-11/PDP2011/PDP_11_70 PDP-11/70 build] - "standalone" | ||
==== Disks (SD card images) that work with PDP2011 build ==== | ==== Disks (SD card images) that work with PDP2011 build ==== |
Revision as of 11:50, 30 April 2022
Contents
- 1 Hardware
- 2 PDP2011 FPGA Builds
- 3 Switches
- 4 Connectors
- 4.1 P1 - VGA (5CEFA2F23 Card)
- 4.2 P2 - PS/2 Keyboard
- 4.3 P3 - Serial Ports - I/O connector
- 4.4 P4 - SD Card (5CEFA2F23 FPGA pin numbers)
- 4.5 J1 - I/O Connector (5CEFA2F23 FPGA Card pin numbers)
- 4.6 Pin List for 5CEFA2F23I7 FPGA on RETRO-EP4CE15 Card
- 4.7 J4 - USB-B B (5CEFA2F23 FPGA Card pin numbers) Serial Port
- 5 Resources
- 6 Programming the FPGA EEPROM (5CEFA2F23 FPGA)
- 7 Pin List
Hardware
- RETRO-EP4CE15 FPGA base board
- FPGA card mounted on base board
PDP2011 FPGA Builds
- Our PDP-11 FPGA Builds
- PDP-11/45 build - with Front Panel
- PDP-11/45 build - "standalone"
- PDP-11/70 build
- PDP-11/70 build - "standalone"
Disks (SD card images) that work with PDP2011 build
- PDP-11/45
- DOS/BATCH-11 (rk05)
- RT-11 4.0 (rk05)
- RT-11FB 4.0 (rk05)
- RT-11 5.4 (rk05)
- UNIX V7 (rl02)
- PDP-11/70
Other PDP2011 Builds
- PDP2011 by Sytse van Slooten - the original project
- David Richards PDP-11 Build on A-ESTF V2 EP4CE22 Board
- W11 PDP-11/70 Project
Software
Disk Images
- RL images are in chunks of 256 bytes, and require inserting 256 bytes padding after each of those chunks
- sdfmt converts files to 256 out of 512 bytes - Runs under Linux
- System Disk Images
- Disk Images
- W11 OS Disk sets - Well documented
- OS Kits
Documentation
- PDP-11 Processor Handbook 1981 - on BitSavers
- PDP-11/45 System User's Manual
- PDP-11/70 Processor Handbook
Switches
- LEDS-SWITCHES-2
- 32-pin connector
- Cables to 50-pin connector on RETRO-EP4CE15 Card
Function | Marking | 5CEFA2 FPGA Pin |
---|---|---|
resetbtn pushbutton | PB8 | PIN_M22 |
PWR LED | D8 | PIN_L22 |
sdHC LED | D7 | PIN_M18 |
FETch LED | D6 | PIN_M20 |
sdWR LED | D5 | PIN_P16 |
sdRD LED | D4 | PIN_T19 |
RH Drive (rp) LED | D3 | PIN_R22 |
RK Drive LED | D2 | PIN_U20 |
RL Drive LED | D1 | PIN_U22 |
K11 (tty1) Slide switch | SS4 | PIN_P22 |
RH Drive (rp) (UP) Slide switch | SS3 | PIN_T22 |
RK Drive (UP) Slide switch | SS2 | PIN_V20 |
RL Drive (UP) Slide switch | SS1 | PIN_V21 |
Connectors
P1 - VGA (5CEFA2F23 Card)
- videoR0 = U8-49 = PIN_E12
- videoR1 = U8-50 = PIN_D12
- videoG0 = U8-51 = PIN_D13
- videoG1 = U8-52 = PIN_C13
- videoB0 = U8-53 = PIN_B13
- videoB1 = U8-54 = PIN_A13
- hSync = U8-55 = PIN_A15
- vSync = U8-56 = PIN_A14
P2 - PS/2 Keyboard
- PS2DAT = U7-8 = PIN_BANK_2A_AA1
- PS2CLK = U7-8 = PIN_NANK_2A_AA2
P3 - Serial Ports - I/O connector
- fpgaRx1 (in) = PIN_C11
- Needs weak pullup
- set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to rxd1
- Needs weak pullup
- fpgaTx1 (out) = PIN_G10
- fpgaRts1 = U7-44 = PIN_F10
- fpgaCts1 = U7-46 = PIN_B11
IO conn
- Second serial port on I/O connector
- rx2 (in) = PIN_M18
- tx2 (out) = PIN_L19
- rts2 (out) = PIN_N19
- cts2 (in) = PIN_M21
P4 - SD Card (5CEFA2F23 FPGA pin numbers)
- This build only works with SD Cards, not SD/HC or other newer cards.
- These cards are 1 GB or 2 GB in size.
- SDCS = U7-57 = PIN_BANK_7A_B15
- MOSI = U7-58 = PIN_BANK_7A_C15
- SCK = U7-59 = PIN_BANK_7A_C16
- MISO = U7-60 = PIN_BANK_7A_B16
- SD_DETECT - PIN_B12
J1 - I/O Connector (5CEFA2F23 FPGA Card pin numbers)
- LEDS-SWITCHES-2 Card wired to RETRO-EP4CE15 Card
- Wiring "flipped" and directly in order
- Note extra ground/power pins on the Front Panel card
Pin List for 5CEFA2F23I7 FPGA on RETRO-EP4CE15 Card
J4 - USB-B B (5CEFA2F23 FPGA Card pin numbers) Serial Port
- On-board FT230X FTDI USB to Serial
Resources
- PDP2011 by Sytse van Slooten
- Active as of 2021-11
- David J Richards PDP-11 Build - copied and adapted from pdp2011 by Sytse van Slooten
- PDP-11 on BitSavers
- Scott L Baker PDP11-SOC
- PDP-11/20 CPU
- UART + Timer + I/O Ports coded in VHDL
- 8KB RAM
- Implemented on the Lattice iCE40-hx8k dev board
- w11: PDP 11/70 CPU and SoC
- PDP-11/70 CPU with memory management unit, but without floating point unit,
- Quick start Guide
- OS Kits (Disk Images)
- Guide to run operating system images on w11a systems
- Guide to install and build w11a systems, test benches and support software
Programming the FPGA EEPROM (5CEFA2F23 FPGA)
- File
- Convert Programming File
- Configuration Device = MT25QL128
- Mode = Active Serial
- Programming File Type: *.jic
- Advanced = Check both Disables...
- Select Flash Loader
- Add Device = Cyclone V and 5CEFA2
- Select SOF Data
- Select Add File and select the .sof file
- Generate
- In Tools, Programmer
- Mode: JTAG
- Add file and select the .jic file
- Select Program/Configure
- Takes a while to program
- Press button near VGA
Pin List
- With LEDS-SWITCHES-2 card
To | Direction | Location | I/O Standard | Pull-Up |
---|---|---|---|---|
clkin | Input | PIN_M9 | 3.3-V LVTTL | |
cts1 | Input | PIN_B11 | 3.3-V LVTTL | |
dram_addr[0] | Output | PIN_P8 | 3.3-V LVTTL | |
dram_addr[1] | Output | PIN_P7 | 3.3-V LVTTL | |
dram_addr[10] | Output | PIN_R6 | 3.3-V LVTTL | |
dram_addr[11] | Output | PIN_T9 | 3.3-V LVTTL | |
dram_addr[12] | Output | PIN_Y9 | 3.3-V LVTTL | |
dram_addr[2] | Output | PIN_N8 | 3.3-V LVTTL | |
dram_addr[3] | Output | PIN_N6 | 3.3-V LVTTL | |
dram_addr[4] | Output | PIN_U6 | 3.3-V LVTTL | |
dram_addr[5] | Output | PIN_U7 | 3.3-V LVTTL | |
dram_addr[6] | Output | PIN_V6 | 3.3-V LVTTL | |
dram_addr[7] | Output | PIN_U8 | 3.3-V LVTTL | |
dram_addr[8] | Output | PIN_T8 | 3.3-V LVTTL | |
dram_addr[9] | Output | PIN_W8 | 3.3-V LVTTL | |
dram_ba_0 | Output | PIN_T7 | 3.3-V LVTTL | |
dram_ba_1 | Output | PIN_P9 | 3.3-V LVTTL | |
dram_cas_n | Output | PIN_AA7 | 3.3-V LVTTL | |
dram_cke | Output | PIN_V9 | 3.3-V LVTTL | |
dram_clk | Output | PIN_AB11 | 3.3-V LVTTL | |
dram_cs_n | Output | PIN_AB5 | 3.3-V LVTTL | |
dram_dq[0] | Bidir | PIN_AA12 | 3.3-V LVTTL | |
dram_dq[1] | Bidir | PIN_Y11 | 3.3-V LVTTL | |
dram_dq[10] | Bidir | PIN_U11 | 3.3-V LVTTL | |
dram_dq[11] | Bidir | PIN_R10 | 3.3-V LVTTL | |
dram_dq[12] | Bidir | PIN_R11 | 3.3-V LVTTL | |
dram_dq[13] | Bidir | PIN_U12 | 3.3-V LVTTL | |
dram_dq[14] | Bidir | PIN_R12 | 3.3-V LVTTL | |
dram_dq[15] | Bidir | PIN_P12 | 3.3-V LVTTL | |
dram_dq[2] | Bidir | PIN_AA10 | 3.3-V LVTTL | |
dram_dq[3] | Bidir | PIN_AB10 | 3.3-V LVTTL | |
dram_dq[4] | Bidir | PIN_Y10 | 3.3-V LVTTL | |
dram_dq[5] | Bidir | PIN_AA9 | 3.3-V LVTTL | |
dram_dq[6] | Bidir | PIN_AB8 | 3.3-V LVTTL | |
dram_dq[7] | Bidir | PIN_AA8 | 3.3-V LVTTL | |
dram_dq[8] | Bidir | PIN_U10 | 3.3-V LVTTL | |
dram_dq[9] | Bidir | PIN_T10 | 3.3-V LVTTL | |
dram_ldqm | Output | PIN_AB7 | 3.3-V LVTTL | |
dram_ras_n | Output | PIN_AB6 | 3.3-V LVTTL | |
dram_udqm | Output | PIN_V10 | 3.3-V LVTTL | |
dram_we_n | Output | PIN_W9 | 3.3-V LVTTL | |
i_PB[1] | Input | PIN_W19 | 3.3-V LVTTL | |
i_PB[2] | Input | PIN_U21 | 3.3-V LVTTL | |
i_PB[3] | Input | PIN_R21 | 3.3-V LVTTL | |
i_PB[4] | Input | PIN_T20 | 3.3-V LVTTL | |
i_PB[5] | Input | PIN_N21 | 3.3-V LVTTL | |
i_PB[6] | Input | PIN_M21 | 3.3-V LVTTL | |
i_PB[7] | Input | PIN_L19 | 3.3-V LVTTL | |
i_PB[8] | Input | PIN_M22 | 3.3-V LVTTL | |
i_SS[1] | Input | PIN_V21 | 3.3-V LVTTL | |
i_SS[2] | Input | PIN_V20 | 3.3-V LVTTL | |
i_SS[3] | Input | PIN_T22 | 3.3-V LVTTL | |
i_SS[4] | Input | PIN_P22 | 3.3-V LVTTL | |
i_SS[5] | Input | PIN_P17 | 3.3-V LVTTL | |
i_SS[6] | Input | PIN_N20 | 3.3-V LVTTL | |
i_SS[7] | Input | PIN_N19 | 3.3-V LVTTL | |
i_SS[8] | Input | PIN_L18 | 3.3-V LVTTL | |
o_LED[1] | Output | PIN_U22 | 3.3-V LVTTL | |
o_LED[2] | Output | PIN_U20 | 3.3-V LVTTL | |
o_LED[3] | Output | PIN_R22 | 3.3-V LVTTL | |
o_LED[4] | Output | PIN_T19 | 3.3-V LVTTL | |
o_LED[5] | Output | PIN_P16 | 3.3-V LVTTL | |
o_LED[6] | Output | PIN_M20 | 3.3-V LVTTL | |
o_LED[7] | Output | PIN_M18 | 3.3-V LVTTL | |
o_LED[8] | Output | PIN_L22 | 3.3-V LVTTL | |
ps2k_c | Input | PIN_AA2 | 3.3-V LVTTL | |
ps2k_d | Input | PIN_AA1 | 3.3-V LVTTL | |
rts1 | Output | PIN_F10 | 3.3-V LVTTL | |
rx1 | Input | PIN_C11 | 3.3-V LVTTL | |
sdcard_cs | Output | PIN_B15 | 3.3-V LVTTL | |
sdcard_miso | Input | PIN_B16 | 3.3-V LVTTL | |
sdcard_mosi | Output | PIN_C15 | 3.3-V LVTTL | |
sdcard_sclk | Output | PIN_C16 | 3.3-V LVTTL | |
tx1 | Output | PIN_G10 | 3.3-V LVTTL | |
vgab[0] | Output | PIN_B13 | 3.3-V LVTTL | |
vgab[1] | Output | PIN_A13 | 3.3-V LVTTL | |
vgag[0] | Output | PIN_D13 | 3.3-V LVTTL | |
vgag[1] | Output | PIN_C13 | 3.3-V LVTTL | |
vgah | Output | PIN_A15 | 3.3-V LVTTL | |
vgar[0] | Output | PIN_E12 | 3.3-V LVTTL | |
vgar[1] | Output | PIN_D12 | 3.3-V LVTTL | |
vgav | Output | PIN_A14 | 3.3-V LVTTL | |
xu_cs | Output | 3.3-V LVTTL | ||
xu_debug_tx | Output | 3.3-V LVTTL | ||
xu_miso | Input | 3.3-V LVTTL | ||
xu_mosi | Output | 3.3-V LVTTL | ||
xu_sclk | Output | 3.3-V LVTTL |
qsf file
set_global_assignment -name FAMILY "Cyclone V" set_global_assignment -name DEVICE 5CEFA2F23I7 set_global_assignment -name TOP_LEVEL_ENTITY top set_global_assignment -name ORIGINAL_QUARTUS_VERSION 9.0 set_global_assignment -name PROJECT_CREATION_TIME_DATE "23:14:32 MARCH 19, 2009" set_global_assignment -name LAST_QUARTUS_VERSION "21.1.0 Lite Edition" set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL" set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION "USE AS REGULAR IO" set_global_assignment -name RESERVE_ASDO_AFTER_CONFIGURATION "AS INPUT TRI-STATED" set_global_assignment -name MIN_CORE_JUNCTION_TEMP "-40" set_global_assignment -name MAX_CORE_JUNCTION_TEMP 100 set_global_assignment -name POWER_PRESET_COOLING_SOLUTION "23 MM HEAT SINK WITH 200 LFPM AIRFLOW" set_global_assignment -name POWER_BOARD_THERMAL_MODEL "NONE (CONSERVATIVE)" # Clock set_location_assignment PIN_M9 -to clkin # Pushbuttons on LEDS-SWITCHES-2 card set_location_assignment PIN_M22 -to i_PB[8] set_location_assignment PIN_L19 -to i_PB[7] set_location_assignment PIN_M21 -to i_PB[6] set_location_assignment PIN_N21 -to i_PB[5] set_location_assignment PIN_T20 -to i_PB[4] set_location_assignment PIN_R21 -to i_PB[3] set_location_assignment PIN_U21 -to i_PB[2] set_location_assignment PIN_W19 -to i_PB[1] set_location_assignment PIN_L18 -to i_SS[8] set_location_assignment PIN_N19 -to i_SS[7] set_location_assignment PIN_N20 -to i_SS[6] set_location_assignment PIN_P17 -to i_SS[5] set_location_assignment PIN_P22 -to i_SS[4] set_location_assignment PIN_T22 -to i_SS[3] set_location_assignment PIN_V20 -to i_SS[2] set_location_assignment PIN_V21 -to i_SS[1] # LEDs on LEDS-SWITCHES-2 card set_location_assignment PIN_L22 -to o_LED[8] set_location_assignment PIN_M18 -to o_LED[7] set_location_assignment PIN_M20 -to o_LED[6] set_location_assignment PIN_P16 -to o_LED[5] set_location_assignment PIN_T19 -to o_LED[4] set_location_assignment PIN_R22 -to o_LED[3] set_location_assignment PIN_U20 -to o_LED[2] set_location_assignment PIN_U22 -to o_LED[1] # SDRAM set_location_assignment PIN_Y9 -to dram_addr[12] set_location_assignment PIN_T9 -to dram_addr[11] set_location_assignment PIN_R6 -to dram_addr[10] set_location_assignment PIN_W8 -to dram_addr[9] set_location_assignment PIN_T8 -to dram_addr[8] set_location_assignment PIN_U8 -to dram_addr[7] set_location_assignment PIN_V6 -to dram_addr[6] set_location_assignment PIN_U7 -to dram_addr[5] set_location_assignment PIN_U6 -to dram_addr[4] set_location_assignment PIN_N6 -to dram_addr[3] set_location_assignment PIN_N8 -to dram_addr[2] set_location_assignment PIN_P7 -to dram_addr[1] set_location_assignment PIN_P8 -to dram_addr[0] set_location_assignment PIN_P9 -to dram_ba_1 set_location_assignment PIN_T7 -to dram_ba_0 set_location_assignment PIN_AA7 -to dram_cas_n set_location_assignment PIN_V9 -to dram_cke set_location_assignment PIN_AB11 -to dram_clk set_location_assignment PIN_AB5 -to dram_cs_n set_location_assignment PIN_P12 -to dram_dq[15] set_location_assignment PIN_R12 -to dram_dq[14] set_location_assignment PIN_U12 -to dram_dq[13] set_location_assignment PIN_R11 -to dram_dq[12] set_location_assignment PIN_R10 -to dram_dq[11] set_location_assignment PIN_U11 -to dram_dq[10] set_location_assignment PIN_T10 -to dram_dq[9] set_location_assignment PIN_U10 -to dram_dq[8] set_location_assignment PIN_AA8 -to dram_dq[7] set_location_assignment PIN_AB8 -to dram_dq[6] set_location_assignment PIN_AA9 -to dram_dq[5] set_location_assignment PIN_Y10 -to dram_dq[4] set_location_assignment PIN_AB10 -to dram_dq[3] set_location_assignment PIN_AA10 -to dram_dq[2] set_location_assignment PIN_Y11 -to dram_dq[1] set_location_assignment PIN_AA12 -to dram_dq[0] set_location_assignment PIN_V10 -to dram_udqm set_location_assignment PIN_AB7 -to dram_ldqm set_location_assignment PIN_AB6 -to dram_ras_n set_location_assignment PIN_W9 -to dram_we_n # Serial port (USB-to-Serial) set_location_assignment PIN_C11 -to rx1 set_location_assignment PIN_G10 -to tx1 set_location_assignment PIN_F10 -to rts1 set_location_assignment PIN_B11 -to cts1 # Second serial port # SD Card set_location_assignment PIN_C16 -to sdcard_sclk set_location_assignment PIN_B15 -to sdcard_cs set_location_assignment PIN_B16 -to sdcard_miso set_location_assignment PIN_C15 -to sdcard_mosi # Ethernet # PS/2 Keyboard set_location_assignment PIN_AA2 -to ps2k_c set_location_assignment PIN_AA1 -to ps2k_d # Video set_location_assignment PIN_E12 -to vgar[0] set_location_assignment PIN_D12 -to vgar[1] set_location_assignment PIN_B13 -to vgab[0] set_location_assignment PIN_A13 -to vgab[1] set_location_assignment PIN_D13 -to vgag[0] set_location_assignment PIN_C13 -to vgag[1] set_location_assignment PIN_A15 -to vgah set_location_assignment PIN_A14 -to vgav