Difference between pages "EP2C5-DB" and "RF Attenuators"

From Land Boards Wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
[[File:tindie-mediums.png|link=https://www.tindie.com/products/land_boards/z80-6502-6809-fpga-multicomp-pcb-ep2c5-db/]]
+
== Homebrew RF Attenuators ==
  
<video type="youtube">7O0njivn-Po</video>
+
[[file:Atten_30dB_20dV_P1812-720px.jpg]]
  
== EP2C5-DB FPGA card ==
+
== Attenuators ==
  
[[File:P971-cropped-720px.jpg]]
+
[[file:Chart_mW_vs_dbM.PNG]]
  
I love [http://searle.x10host.com/Multicomp/index.html Grant Searle's Multicomp project]. It lets you easily create 6502, Z80, 6809 Retrocomputers of the late 1970s era. This card provides all of the connections needed.
+
=== 30 dB Attenuator ===
  
Grant's original design used an EP2 and that's exactly what this cards USES. Note that's not compatible with the latest version Altera/Intel Quartus but you can download older versions like 13.1 SP. Just make sure it supports the Cyclone II family of FPGAs. We also have an [https://www.tindie.com/products/land_boards/z80-6502-6809-fpga-multicomp-pcb-retro-ep4/ EP4 version of this card for sale on Tindie].
+
* [http://leleivre.com/rf_pipad.html Pi Attenuator Calculator]
  
== Features ==
+
[[file:Atten30dB_P116-720px.jpg]]
  
* [[Cyclone II EP2C5 Mini Dev Board]]
+
[[file:30dB_Attenuator.PNG]]
** [https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=EP2c5+fpga+board&_sacat=0&LH_TitleDesc=0&_osacat=0&_odkw=EP2+fpga EP2C5T144C8N FPGA Card] - Ebay listing
 
* 6 bit video on VGA (2:2:2 R:G:B)
 
* 128KB of SRAM for banked use in CP/M
 
* PS/2 Keyboard Mini-DIN connector
 
* Connector for serial ports
 
** Can attach inexpensive FTDI USB to serial converter
 
* SD Card
 
* DC power jack (on FPGA card)
 
  
=== EP2 Resources ===
+
* Built
 +
** Standard 5% resistor values
 +
** R1 = 820 in parallel with 22K = 790.6 ohms
 +
** R2 = 2 paralleled 120 Ohm 1/4W resistors paralleled with 470 ohms = 53.2 ohms
 +
** Flat from 0-30 MHz
 +
** Measured attenuation is flat
 +
*** -30.01dB at 1 MHz
 +
*** -30.24dB at 30 MHz
 +
** Input Impedance - 53.1 ohms, 21.3nF
 +
** SWR 1.06
 +
** 1/2W max (5VDC max, 0 ohm source)
  
* EP2CE5 had 13 of 1Kx9 SRAM blocks
+
* NanoVNA scan data
  
[[File:EP2XX_Resources.PNG]]
+
[[file:30dB_Attenuator_NanoVNA_Setup_Curve_900MHz.PNG]]
  
== Stackup with FTDI Card ==
+
[[file:30dB_Attenuator_NanoVNA_Data_900MHz.PNG]]
  
[[File:P1752-CROPPED-720PX.jpg]]
+
* LTSPICE Simulation
  
* [[FTDI-49MM]]
+
[[file:LTSPice_30dB.PNG]]
  
== VGA - Ideal Drive 2:2:2 Case ==
+
=== 20 dB Attenuator ===
  
* FPGA has a 3.3V driver which can drive 8 mA
+
[[file:Atten_20dB_P115-720px.jpg]]
* Ideal case drive current
 
** 0.7V into 75 Ohms = 9.33 mA
 
* R-2R values
 
** Ideal resistor values are 417.9 ohms and 835.7 ohms
 
** [http://www.brannonelectronics.com/images/STANDARD%20VALUE.pdf Standard value 1% resistors]
 
** 1% standard values are [https://www.mouser.com/ProductDetail/652-CR0805FX-4220ELF 422 (Mouser)], [https://www.mouser.com/ProductDetail/603-RC0805FR-07845RL 845 (Mouser)] Ohms
 
*** Get closest values
 
*** 0V, 0.228V, 0.460V, 0.693V
 
* Voltage steps are:
 
  
[[File:VGA_Sim_2R_Voltage.PNG]]
+
[[file:20dB_Attenuator.PNG]]
  
* Current steps are:
+
* Build
 +
** Standard 5% resistor values
 +
** R1 = 2 of 510 in parallel also in parallel with 8.2K = 247.3 ohms
 +
** R2 = 2 paralleled 150 Ohm 1/2W resistors paralleled with 330 ohms = 61.11 ohms
 +
** Flat from 0-30 MHz
 +
** Measured attenuation is flat
 +
** Input Impedance - tbd ohms, tbd nF
 +
** SWR tbd
 +
** 1W max (8.6 V max, 0 ohm source)
  
[[File:VGA_Sim_2R_Current.PNG]]
+
[[file:20dB_Attenuator_NanoVNA_Setup_Curve_900MHz.PNG]]
  
== Connectors ==
+
[[file:20dB_Attenuator_NanoVNA_Data_900MHz.PNG]]
  
=== J1 - VGA ===
+
* LTSPICE Simulation
  
=== J4 - SD Card ===
+
[[file:LTSPice_20dB.PNG]]
  
 +
=== 10 dB Attenuator ===
  
=== J5 - Serial Ports 1/2 ===
+
[[file:Atten_10dB_P115-720px.jpg]]
  
* Connects to FTDI Module
+
[[file:10dB_Attenuator.PNG]]
  
# RTS
+
* Build
# RXD
+
** Standard 5% resistor values
# TXD
+
** R1 = 2 of 150 in parallel also in parallel with 1.5K = 71.43 ohms (0.3% error)
# GND
+
** R2 = 3 of 330 Ohm 1/4W parallel resistors paralleled with 810 ohms = 96.85 ohms (0.62% error)
 +
** Flat from 0-30 MHz
 +
** Measured attenuation is flat
 +
** Input Impedance - tbd ohms, tbd nF
 +
** SWR tbd
 +
** 3/4W max (9.1 V max, 0 ohm source)
  
[[File:EP2C5-DB_FTDI.PNG]]
+
[[file:10dB_Attenuator_NanoVNA_Setup_Curve_900MHz.PNG]]
  
==== FTDI Module ====
+
[[file:10dB_Attenuator_NanoVNA_Data_900MHz.PNG]]
  
[[File:FTDI_rot.jpg]]
+
* LTSPICE Simulation
  
==== FTDI Wiring ====
+
[[file:LTSPice_10dB.PNG]]
  
** J5-1 (marked RTS on PCB) to FTDI CTS pin
+
=== Attenuator Construction ===
** J5-3 (marked RX on PCB) to FTDI TX pin
 
** J5-5 (marked TX on PCB) to FTDI RX pin
 
** J5-7 (marked GND on PCB) to FTDI GND pin
 
  
[[File:EP2C5-DB_FTDI_Wiring.PNG]]
+
* Single side copper clad PCB
 +
** Approx 2"x1"
 +
* Clean with steel wool
 +
* Solder SMA connectors
 +
** Use large alligator clips to hold while soldering
 +
** Solder on sides only
  
=== J6 - 8-bit I/O connector ===
+
[[file:Atten_01_SMAs_720px.jpg]]
  
* FPGA Pins
+
* Cut "T" Shaped pads
 +
** I used nibbler
 +
* Center fits between connector ground pins
 +
* Glue down pads with Superglue
  
# 3.3V
+
[[file:Atten_02_Pads_720px.jpg]]
# 3.3V
 
# 25
 
# 31
 
# 41
 
# 40
 
# 43
 
# 42
 
# 45
 
# 44
 
# GND
 
# GND
 
  
=== J8 - 8-bit I/O connector ===
+
* Solder center pin with big solder blob
 +
** A bit too high for direct contact
 +
* Verify raised pad does not short to ground
  
* FPGA Pins
+
[[file:Atten_03_Solder CenterPads_720px.jpg]]
  
# 3.3V
+
* Solder side resistor(s)
# 3.3V
+
* Leave room for center resistor(s)
# 48
 
# 47
 
# 52
 
# 51
 
# 58
 
# 55
 
# 76
 
# 69
 
# GND
 
# GND
 
  
== Schematics ==
+
[[file:Atten_04_Solder Side_Resistors_720px.jpg]]
  
* [http://land-boards.com/EP2C5-DB/EP2C5-DB_Schematic_Rev_X5.pdf Rev X5 schematic]
+
* Measure side resistors from pad to ground
* [http://land-boards.com/EP2C5-DB/EP2C5-DB_Schematic_Rev_X6.pdf Rev X6 schematic]
+
* Should match value
 +
* Solder center resistor(s)
  
== Multicomp Builds ==
+
[[file:Atten_05_Solder Center_Resistors_720px.jpg]]
  
* [https://github.com/douggilliland/MultiComp/tree/master/MultiComp_On_EP2C5 Github repository for Multicomp builds]
+
* Verify no shorts between centers and ground
  
== Programming the Flash PROM Memory ==
+
== References ==
  
=== Permanent (.pof file) ===
+
<video type="youtube">A5gGeV7CiQ0</video>
 
 
[[File:Program-permanent-720px.png]]
 
 
 
=== Temporary (.sof file) ===
 
 
 
[[File:Program-temporarily-720px.png]]
 
 
 
== Pin List (Multicomp) ==
 
<pre>
 
# Clocks and reset
 
set_location_assignment PIN_17 -to clk
 
set_location_assignment PIN_144 -to n_reset
 
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to n_reset
 
# PS/2
 
set_location_assignment PIN_87 -to ps2Data
 
set_location_assignment PIN_86 -to ps2Clk
 
# ACIA (Serial)
 
set_location_assignment PIN_60 -to serSelect
 
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to serSelect
 
set_location_assignment PIN_104 -to urts1
 
set_location_assignment PIN_101 -to urxd1
 
set_location_assignment PIN_103 -to utxd1
 
# External SRAM
 
set_location_assignment PIN_4 -to n_sRamWE
 
set_location_assignment PIN_126 -to n_sRamCS
 
set_location_assignment PIN_134 -to n_sRamOE
 
set_location_assignment PIN_32 -to sramAddress[16]
 
set_location_assignment PIN_8 -to sramAddress[15]
 
set_location_assignment PIN_30 -to sramAddress[14]
 
set_location_assignment PIN_24 -to sramAddress[13]
 
set_location_assignment PIN_28 -to sramAddress[12]
 
set_location_assignment PIN_136 -to sramAddress[11]
 
set_location_assignment PIN_132 -to sramAddress[10]
 
set_location_assignment PIN_139 -to sramAddress[9]
 
set_location_assignment PIN_142 -to sramAddress[8]
 
set_location_assignment PIN_143 -to sramAddress[7]
 
set_location_assignment PIN_141 -to sramAddress[6]
 
set_location_assignment PIN_137 -to sramAddress[5]
 
set_location_assignment PIN_133 -to sramAddress[3]
 
set_location_assignment PIN_135 -to sramAddress[4]
 
set_location_assignment PIN_129 -to sramAddress[2]
 
set_location_assignment PIN_125 -to sramAddress[1]
 
set_location_assignment PIN_121 -to sramAddress[0]
 
set_location_assignment PIN_122 -to sramData[7]
 
set_location_assignment PIN_120 -to sramData[6]
 
set_location_assignment PIN_118 -to sramData[5]
 
set_location_assignment PIN_114 -to sramData[4]
 
set_location_assignment PIN_112 -to sramData[3]
 
set_location_assignment PIN_113 -to sramData[2]
 
set_location_assignment PIN_115 -to sramData[1]
 
set_location_assignment PIN_119 -to sramData[0]
 
# Composite Video
 
set_location_assignment PIN_75 -to video
 
set_location_assignment PIN_74 -to videoSync
 
# VGA
 
set_location_assignment PIN_64 -to videoB0
 
set_location_assignment PIN_63 -to videoB1
 
set_location_assignment PIN_67 -to videoG0
 
set_location_assignment PIN_65 -to videoG1
 
set_location_assignment PIN_70 -to videoR0
 
set_location_assignment PIN_69 -to videoR1
 
set_location_assignment PIN_71 -to hSync
 
set_location_assignment PIN_72 -to vSync
 
# J6 IO
 
set_location_assignment PIN_25 -to J6IO8[0]
 
set_location_assignment PIN_31 -to J6IO8[1]
 
set_location_assignment PIN_41 -to J6IO8[2]
 
set_location_assignment PIN_40 -to J6IO8[3]
 
set_location_assignment PIN_43 -to J6IO8[4]
 
set_location_assignment PIN_42 -to J6IO8[5]
 
set_location_assignment PIN_45 -to J6IO8[6]
 
set_location_assignment PIN_44 -to J6IO8[7]
 
# J8 I/O
 
set_location_assignment PIN_48 -to J8IO8[0]
 
set_location_assignment PIN_47 -to J8IO8[1]
 
set_location_assignment PIN_52 -to J8IO8[2]
 
set_location_assignment PIN_51 -to J8IO8[3]
 
set_location_assignment PIN_58 -to J8IO8[4]
 
set_location_assignment PIN_55 -to J8IO8[5]
 
</pre>
 
 
 
== EP2C5-DB Assembly Sheet ==
 
 
 
* [[EP2C5-DB Rev X6 Assembly Sheet]]
 
* [[EP2C5-DB-TH Rev 1 Assembly Sheet]]
 

Revision as of 11:50, 7 September 2021

Homebrew RF Attenuators

Atten 30dB 20dV P1812-720px.jpg

Attenuators

Chart mW vs dbM.PNG

30 dB Attenuator

Atten30dB P116-720px.jpg

30dB Attenuator.PNG

  • Built
    • Standard 5% resistor values
    • R1 = 820 in parallel with 22K = 790.6 ohms
    • R2 = 2 paralleled 120 Ohm 1/4W resistors paralleled with 470 ohms = 53.2 ohms
    • Flat from 0-30 MHz
    • Measured attenuation is flat
      • -30.01dB at 1 MHz
      • -30.24dB at 30 MHz
    • Input Impedance - 53.1 ohms, 21.3nF
    • SWR 1.06
    • 1/2W max (5VDC max, 0 ohm source)
  • NanoVNA scan data

30dB Attenuator NanoVNA Setup Curve 900MHz.PNG

30dB Attenuator NanoVNA Data 900MHz.PNG

  • LTSPICE Simulation

LTSPice 30dB.PNG

20 dB Attenuator

Atten 20dB P115-720px.jpg

20dB Attenuator.PNG

  • Build
    • Standard 5% resistor values
    • R1 = 2 of 510 in parallel also in parallel with 8.2K = 247.3 ohms
    • R2 = 2 paralleled 150 Ohm 1/2W resistors paralleled with 330 ohms = 61.11 ohms
    • Flat from 0-30 MHz
    • Measured attenuation is flat
    • Input Impedance - tbd ohms, tbd nF
    • SWR tbd
    • 1W max (8.6 V max, 0 ohm source)

20dB Attenuator NanoVNA Setup Curve 900MHz.PNG

20dB Attenuator NanoVNA Data 900MHz.PNG

  • LTSPICE Simulation

LTSPice 20dB.PNG

10 dB Attenuator

File:Atten 10dB P115-720px.jpg

10dB Attenuator.PNG

  • Build
    • Standard 5% resistor values
    • R1 = 2 of 150 in parallel also in parallel with 1.5K = 71.43 ohms (0.3% error)
    • R2 = 3 of 330 Ohm 1/4W parallel resistors paralleled with 810 ohms = 96.85 ohms (0.62% error)
    • Flat from 0-30 MHz
    • Measured attenuation is flat
    • Input Impedance - tbd ohms, tbd nF
    • SWR tbd
    • 3/4W max (9.1 V max, 0 ohm source)

File:10dB Attenuator NanoVNA Setup Curve 900MHz.PNG

File:10dB Attenuator NanoVNA Data 900MHz.PNG

  • LTSPICE Simulation

LTSPice 10dB.PNG

Attenuator Construction

  • Single side copper clad PCB
    • Approx 2"x1"
  • Clean with steel wool
  • Solder SMA connectors
    • Use large alligator clips to hold while soldering
    • Solder on sides only

Atten 01 SMAs 720px.jpg

  • Cut "T" Shaped pads
    • I used nibbler
  • Center fits between connector ground pins
  • Glue down pads with Superglue

Atten 02 Pads 720px.jpg

  • Solder center pin with big solder blob
    • A bit too high for direct contact
  • Verify raised pad does not short to ground

Atten 03 Solder CenterPads 720px.jpg

  • Solder side resistor(s)
  • Leave room for center resistor(s)

Atten 04 Solder Side Resistors 720px.jpg

  • Measure side resistors from pad to ground
  • Should match value
  • Solder center resistor(s)

Atten 05 Solder Center Resistors 720px.jpg

  • Verify no shorts between centers and ground

References