// // // 4-Jun-2016 "Un-Tent" ALL Via Lands used in the Configuration // Flash Memory Geometry. I will keep the edge of // the Solder Mask back 0.125 mm from the edge of // the Drill Hole on both sides of all vias in // this geometry. // // 25-Aug-2016 Remove from this file all of the Pin/Pad Stacks // that are not actually being used in the Confircuration // Flash PROM Geometry. // // // // Pin/Pad Stack names actually used in the Configuration Flash Memory Geometry: // // FLASH_64_SMD_PAD # SMD Pad Only on the Mentor PAD_1 layer // // FLASH_64_PAD_VIA_NE # Pad on PAD_1 and via to the North-East // FLASH_64_PAD_VIA_SE # Pad on PAD_1 and via to the South-East // FLASH_64_PAD_VIA_SW # Pad on PAD_1 and via to the South-West // FLASH_64_PAD_VIA_NW # Pad on PAD_1 and via to the North-West // // // The NE, NW, SE, SW tags are for pin/pad stacks that have their via // via offset by 0.5 mm in both the X and Y directions to put the via // right in the center of the 4 surounding SMD pads. // //---------------------------------------------------------------------------- // // FLASH_64_SMD_PAD SMD Pad Only Pin/Pad Stack $$create_pin("FLASH_64_SMD_PAD", @replace); $$page(0.0,0.0,0.0, @mm, 0.0, 0.0, [0.0, 0.0, 'PI$FLASH_64_SMD_PAD']); $$point_mode(@vertex); $$attribute( "TERMINAL_SURFACE_DEFINITION", ""); $$circle( "PAD_1", 0.000, 0.000, 0.40, 0.0); $$circle( "SOLDER_MASK_1", 0.000, 0.000, 0.50, 0.0); $$circle( "PASTE_MASK_1", 0.000, 0.000, 0.40, 0.0); //---------------------------------------------------------------------------- //---------------------------------------------------------------------------- //---------------------------------------------------------------------------- //---------------------------------------------------------------------------- // FLASH_64_PAD_VIA_NE Pin PadStack Pad with a Via 0.7071mm to the North-East // ----------------==== ---------- // When using the FLASH_64_PAD_VIA_NE pin padstack you must instance it with a // $$attribute( "COMPONENT_PIN_DEFINITION", ... // that has X,Y values shifted from the actual bga pad location. // // Specifically when using the FLASH_64_PAD_VIA_NE pin padstack // COMPONENT_PIN_DEFINITION X value = bga pad X value plus 0.500 mm. // COMPONENT_PIN_DEFINITION Y value = bga pad Y value plus 0.500 mm. $$create_pin("FLASH_64_PAD_VIA_NE"); $$page(0.0, 0.0, 0.0, @mm, 0.0, 0.0, [0.0,0.0,'PI$FLASH_64_PAD_VIA_NE'] ); $$point_mode(@vertex); $$attribute( "TERMINAL_THRUHOLE_DEFINITION", ""); $$attribute( "TERMINAL_DRILL_SIZE", "", , @scale , , [0.3, 0.0]); $$circle( "SIGNAL", 0.000, 0.000, 0.61, 0.0); $$circle( "POWER", 0.000, 0.000, 0.85, 0.0); $$circle( "SOLDER_MASK", 0.000, 0.000, 0.55, 0.0 ); $$circle( "BREAKOUT_1", -0.500, -0.500, 0.40, 0.0); $$circle( "SOLDER_MASK_1", -0.500, -0.500, 0.50, 0.0); $$circle( "PASTE_MASK_1", -0.500, -0.500, 0.40, 0.0); $$path( "BREAKOUT_1", 0.150, , [-0.500, -0.500, 0.000, 0.000] ); //---------------------------------------------------------------------------- // FLASH_64_PAD_VIA_SE Pin PadStack Pad with a Via 0.7071mm to the South-East // ----------------==== ---------- // When using the FLASH_64_PAD_VIA_SE pin padstack you must instance it with a // $$attribute( "COMPONENT_PIN_DEFINITION", ... // that has X,Y values shifted from the actual bga pad location. // // Specifically when using the FLASH_64_PAD_VIA_SE pin padstack // COMPONENT_PIN_DEFINITION X value = bga pad X value plus 0.500 mm. // COMPONENT_PIN_DEFINITION Y value = bga pad Y value minus 0.500 mm. $$create_pin("FLASH_64_PAD_VIA_SE"); $$page(0.0, 0.0, 0.0, @mm, 0.0, 0.0, [0.0,0.0,'PI$FLASH_64_PAD_VIA_SE'] ); $$point_mode(@vertex); $$attribute( "TERMINAL_THRUHOLE_DEFINITION", ""); $$attribute( "TERMINAL_DRILL_SIZE", "", , @scale , , [0.3, 0.0]); $$circle( "SIGNAL", 0.000, 0.000, 0.61, 0.0); $$circle( "POWER", 0.000, 0.000, 0.85, 0.0); $$circle( "SOLDER_MASK", 0.000, 0.000, 0.55, 0.0 ); $$circle( "BREAKOUT_1", -0.500, 0.500, 0.40, 0.0); $$circle( "SOLDER_MASK_1", -0.500, 0.500, 0.50, 0.0); $$circle( "PASTE_MASK_1", -0.500, 0.500, 0.40, 0.0); $$path( "BREAKOUT_1", 0.150, , [-0.500, 0.500, 0.000, 0.000] ); //---------------------------------------------------------------------------- // FLASH_64_PAD_VIA_SW Pin PadStack Pad with a Via 0.7071mm to the South-West // ----------------==== ---------- // When using the FLASH_64_PAD_VIA_SW pin padstack you must instance it with a // $$attribute( "COMPONENT_PIN_DEFINITION", ... // that has X,Y values shifted from the actual bga pad location. // // Specifically when using the FLASH_64_PAD_VIA_SW pin padstack // COMPONENT_PIN_DEFINITION X value = bga pad X value minus 0.500 mm. // COMPONENT_PIN_DEFINITION Y value = bga pad Y value minus 0.500 mm. $$create_pin("FLASH_64_PAD_VIA_SW"); $$page(0.0, 0.0, 0.0, @mm, 0.0, 0.0, [0.0,0.0,'PI$FLASH_64_PAD_VIA_SW'] ); $$point_mode(@vertex); $$attribute( "TERMINAL_THRUHOLE_DEFINITION", ""); $$attribute( "TERMINAL_DRILL_SIZE", "", , @scale , , [0.3, 0.0]); $$circle( "SIGNAL", 0.000, 0.000, 0.61, 0.0); $$circle( "POWER", 0.000, 0.000, 0.85, 0.0); $$circle( "SOLDER_MASK", 0.000, 0.000, 0.55, 0.0 ); $$circle( "BREAKOUT_1", 0.500, 0.500, 0.40, 0.0); $$circle( "SOLDER_MASK_1", 0.500, 0.500, 0.50, 0.0); $$circle( "PASTE_MASK_1", 0.500, 0.500, 0.40, 0.0); $$path( "BREAKOUT_1", 0.150, , [ 0.500, 0.500, 0.000, 0.000] ); //---------------------------------------------------------------------------- // FLASH_64_PAD_VIA_NW Pin PadStack Pad with a Via 0.7071mm to the North-West // ----------------==== ---------- // When using the FLASH_64_PAD_VIA_NW pin padstack you must instance it with a // $$attribute( "COMPONENT_PIN_DEFINITION", ... // that has X,Y values shifted from the actual bga pad location. // // Specifically when using the FLASH_64_PAD_VIA_NW pin padstack // COMPONENT_PIN_DEFINITION X value = bga pad X value minus 0.500 mm. // COMPONENT_PIN_DEFINITION Y value = bga pad Y value plus 0.500 mm. $$create_pin("FLASH_64_PAD_VIA_NW"); $$page(0.0, 0.0, 0.0, @mm, 0.0, 0.0, [0.0,0.0,'PI$FLASH_64_PAD_VIA_NW'] ); $$point_mode(@vertex); $$attribute( "TERMINAL_THRUHOLE_DEFINITION", ""); $$attribute( "TERMINAL_DRILL_SIZE", "", , @scale , , [0.3, 0.0]); $$circle( "SIGNAL", 0.000, 0.000, 0.61, 0.0); $$circle( "POWER", 0.000, 0.000, 0.85, 0.0); $$circle( "SOLDER_MASK", 0.000, 0.000, 0.55, 0.0 ); $$circle( "BREAKOUT_1", 0.500, -0.500, 0.40, 0.0); $$circle( "SOLDER_MASK_1", 0.500, -0.500, 0.50, 0.0); $$circle( "PASTE_MASK_1", 0.500, -0.500, 0.40, 0.0); $$path( "BREAKOUT_1", 0.150, , [ 0.500, -0.500, 0.000, 0.000] ); //---------------------------------------------------------------------------- //----------------------------------------------------------------------------