view venus/src/core/rf_pa_block.v @ 98:3ab69117b09f default tip

minnie/doc/Design-spec: finished in the first pass
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 01 Oct 2023 08:17:05 +0000
parents 3ed0f7a9c489
children
line wrap: on
line source

/*
 * This module encapsulates the RF PA along with its power bypass caps
 * and the Rs and Cs on the control inputs.
 */

module rf_pa_block (GND, VBAT, Band_Select, Tx_Enable, APC_in,
			LB_RF_in, HB_RF_in, LB_RF_out, HB_RF_out);

input GND, VBAT;
input Band_Select, Tx_Enable, APC_in;
input LB_RF_in, HB_RF_in;
output LB_RF_out, HB_RF_out;

/*
 * A little bit of muck with the control inputs, following Leonardo
 * and Openmoko schematics.  On FC Venus we completely eliminate
 * R621 and R622.
 */

wire APC_after_resistor;

resistor R623 (APC_in, APC_after_resistor);
capacitor C648 (APC_after_resistor, GND);
capacitor C656 (Band_Select, GND);

/* instantiate the PA itself */

RF3166 PA (.HB_RF_in(HB_RF_in),
	   .Band_Select(Band_Select),
	   .Tx_Enable(Tx_Enable),
	   .Vbatt(VBAT),
	   .GND(GND),
	   .Vramp(APC_after_resistor),
	   .LB_RF_in(LB_RF_in),
	   .LB_RF_out(LB_RF_out),
	   .HB_RF_out(HB_RF_out)
	);

/* 4 bypass caps per both Leonardo and Openmoko schematics */

capacitor C651 (VBAT, GND);
capacitor C652 (VBAT, GND);
capacitor C653 (VBAT, GND);
capacitor C654 (VBAT, GND);

endmodule