Index 1.0 V192 Booster Extraction Start Gate 1.1 Introduction 1.1.1 New AGS Timeline 1.2 V192/V193 VMEbus Interface 1.3 V192 Extraction Start Gate Logic 1.4 V192 Jumpers 2.0 V193 RHIC 720Hz Module 2.1 Introduction 2.2 V193 Jumpers 3.0 Theory of Operation 3.1 V192/V193Module VMEbus Interface 3.2 V192/V193 Logic (PLD214) 3.2.1 V192 Booster Extraction Start Gate Logic 3.2.2 V193 720 Hz Logic 3.2.3 VMEbus Interface Logic 3.2.3.1 Registers 3.2.3.2 Interrupts 3.3 V192/V193 External Interfaces 3.3.1 Front Panel Input/output Connectors 3.3.2 Led Displays V192/V193 Module SN 3, with VME interface installed for testing, modules SN 1 & 2 don't contain the VME interface.![]()
The V192 extraction start gate is used to control the Booster event code, extraction start gate, XTRN_ST, on the AGS timeline. The Booster extraction start gate is passed to the AGS timeline on machine cycles which start with Supercycle Generator event codes BT[1..4], and blanked on all other cycles The extraction logic may be jumpered to always pass XTRN_ST.
The V192 module was required following the Summer-Fall 1996 consolidation of the AGS timeline. Prior to that time there were separate AGS and Gauss timelines. The consolidation eliminated the serial output modules of the Multibus AGS Realtime and AGS Gauss chassis. The extraction start gate logic was a function of the Realtime serial output module.
The V193 720 Hz module is used to provide a 720 Hz clock for the V115 wave form generators, and lower frequency clocks to control time stamp functions. The 720 Hz logic includes external clock and synchronization inputs.
The Supercycle Generator outputs a standard serial bi-phase-mark timeline that contains 32 event codes. The event codes are decoded by two V196 VME modules. Each V196 decodes 16 event codes, and provides 16 output strobes capable of driving a 50 termination.
The Booster timeline, is decoded by a single V196 VME module. The module currently decodes event code extraction start, XTRN_ST.The
V192 module was developed following the consolidation of the AGS timeline. The consolidation eliminated the Multibus serial output modules. The extraction start gate logic was located on the Realtime serial output module.
The V192/V193 has provisions for a simple A16 D8(OE) VMEbus interface. However, the integrated circuit bus buffers have not been installed.
BT[1..4] and BGE are XTRN_ST gate control inputs. BT[1..4] enable the gate, and BGE resets the gate if it occurs before XTRN_ST. XTRN_ST passes through the gate if enabled, and is blanked if the gate is disabled. If the gate is enabled, and XTRN_ST occurs, the trailing edge of XTRN_ST resets the gate. Two jumper patches control the extraction gate logic.
| V192 JUMPERS | ||
| LOCATION | JUMPER | FUNCTION |
| JP12 | ON | GATE ENABLED |
| JP12 | OFF | GATE DISABLED |
| JP13 | ON | PASS XTRN_ST |
| JP13 | OFF | GATE XTRN_ST |
| V193 JUMPERS | ||
| LOCATION | JUMPER | FUNCTION |
| JP14 | ON | CLOCK ENABLED |
| JP14 | OFF | CLOCK DISABLED |
| JP15 | ON | 1 KHz BASE CLOCK |
| JP15 | OFF | 720 Hz BASE CLOCK |
Reference:
D36-E1455 Module Assembly - V192 Booster Extraction Start Gate
Module
D36-E1451 Schematic Diagram - V192 Booster Extraction Start Gate
Module
D36-E1452 PWB Drilling - V192 Booster Extraction Start Gate
Module
D36-E1453 PWB Assembly - V192 Booster Extraction Start Gate
Module
D36-E1454 Front Panel Drill & Screen - V192 Booster Extraction
Start Gate Module
PLD214 Booster Extraction Start Gate
NOTE: The V192 printed wiring board design includes three
functions:
V192, V193, and VME interface. Normally only the V192 and
V193
functions are included.
The V192/V193 printed wiring boards have traces for a VMEbus intereface, however the integrated circuits are not installed. The VMEbus interface is designed to support a simple A16 D8(OE) VMEbus interface. The interface is described in paragraph 3.2.2.
PLD214 U7 is driven by an external 16 MHz TTL crystal oscillator, U4. The 16 MHz input is assigned to one of the EPLD global clock inputs. The clock is used by both the V192, and V193 circuits.
NOT_INPUT_BUFFER[8..1].d = /INPUT[8..1];
NOT_INPUT_BUFFER[8..1].clk = global(16_MHz);
NOT_INPUT_BUFFER[8..1].clrn = /SYSRST;
Six of of the 8-inputs, NOT_INPUT_BUFFER[8..1], are used by the booster extraction start gate logic. The function of the booster extraction start gate is to pass Booster event XTRCN_START (shortened to XTRN_ST on the front panel), under certain conditions:
If the extraction start gate logic is enabled, gate flip-flop, GATE, is set by inputs BT1 # BT2 # BT3 # BT4, and cleared by BGE or the trailing edge of XTRN_ST. The inputs BT1, BT2, BT3, BT4, and BGE are INPUT[1..5] respectively. BT[1..4] are derived from supercycle events 0x0F, 0xF1, 0x19, and 0x1A respectively which occur near the start of an AGS cycle. These inputs if present set the gate. If GATE is set, XTRN_ST, is passed to the module output EV11H. As XTRN_ST is output, its trailing edge triggers one-shot GATE_OS[1..0]. When GATE_OS[1..0] == b"10", GATE is reset. If no XTRN_ST occurs before BGE, BGE resets the GATE flip-flop near the end of the AGS cycle. GATE is forced set if JP13, MODE1, is installed.
GATE.prn = !(!/MODE[1] & !/MODE[0]); %J13 & J12%
GATE.d = VCC;
GATE.clk = BT1 # BT2 # BT3 # BT4;
GATE.clrn = !(GATE_OS[1] # BGE) & /SYSRST & !/MODE[0];
The V192 output expression:
EV11H = XTRN_ST & GATE;
if SYNC_OS[1] == 1 & /MODE[3] then 16_DIVIDE[] = 0; %sync 720 Hz% elsif SYNC_OS[1] == 1 & !/MODE[3] then 16_DIVIDE[] = 6222; %sync 1000 Hz% elsif 16_DIVIDE[] == 22221 & /MODE[3] then 16_DIVIDE[] = 0; %720 divide% elsif 16_DIVIDE[] == 22221 & !/MODE[3] then 16_DIVIDE[] = 6222;%1000 divide% else 16_DIVIDE[] = 16_DIVIDE[] + 1; %both% end if;
The divisor is controlled by two external signals, /MODE[3] and /INPUT[8]. /MODE[3], JP15 , jumper OFF the basic clock is 720 Hz, if ON 1000 Hz. The divisors are 22221 and 16000 respectively. /INPUT[8], SYNC, is synchronized, and converted to a single 16MHz pulse in one-shot SYNC_OS[1..0]. If SYNC is active, 16_DIVIDE[] is reset on the leading edge of front panel input SYNC. SYNC is normally an AGS operating function, synchronize the clock divider to AGS T0. The output of 16_DIVIDE[] is input to one-shot, OS[1..0], along with the front panel external clock INPUT[7], normally 720 Hz in RHIC. The one-shot input is controlled by SELECT. If asserted, SELECT, selects the external input, if negated, the output of 16_DIVIDE[]. The output of OS[1..0], a single 16MHz clock is stretched by one-shot OS[5..2] to 1 microsecond CLOCK_OUT. CLOCK_OUT is output from the EPLD and looped back as global(CLOCK_IN). Global(CLOCK_IN) is always present, even if /MODE[2] input jumper JP14 is OFF. Global(CLOCK_IN) is used in the LED display circuits.
Global(CLOCK_IN) is divided by 720 or 1000 in CLOCK_DIVIDE[], the divisor controlled by MODE[3]. The counter outputs are decoded by case statement:
case (AGS, CLOCK_DIVIDE[]) is
%720 Hz decodes%
when h"000" => (SIXTY, TEN, ONE) = b"111";
"
"
when h"2C4" => (SIXTY, TEN, ONE) = b"100";
%1000 Hz decodes%
when h"400" => (SIXTY, TEN, ONE) = b"011";
"
"
when h"784" => (SIXTY, TEN, ONE) = b"010";
when others => (SIXTY, TEN, ONE) = b"000";
end case;
When the divisor is 720, the outputs are SIXTY, TEN, and ONE; 60Hz, 10Hz, and 1Hz. When the divisor is 1000, the outputs are TEN and ONE; 10Hz, and 1Hz. 60Hz not available, its not a multiple of 1KHz.
The outputs SIXTY, TEN, and ONE are registered in flip-flops SIXTY_HZ, TEN_HZ, and ONE_HZ. The flip-flops eliminates any case statement decoder output glitches. The flip-flops also synchronize the 720/1000Hz output to the lower speed clocks.
ONE_HZ is further divided to provide 5 and 10 second ticks. Outputs FIVE and TEN are also registered, flip-flops FIVE_SEC and TEN_SEC.
Next EPLD input /MODULE is sampled. If !/MODULE & /IACK (not an \interrupt cycle), MODULE_ADDR is latched on the leading edge of SR[3]. As MODULE_ADDR latches, EPLD output /PROM_CS is asserted if the odd bytes of the VMEid are addressed. The odd bytes of the VMEid are contained in PROM U21. The PROM address is supplied by U11, and /PROM_CS enables the tri-state output of U21.
MODULE_ADDR triggers one-shot SELECT. SELECT drives the the front panel VME SELECT LED for one cycle of global(CLOCK_IN).
MODULE_ADDR, /DS1, and /DS0 control EPLD outputs /HI_ENA and /LO_ENA. These two outputs control 74LS645-1 bi-directional buffers U19 and 17 respectively. The buffers convert VMEbus D[15..00] into a byte interface. U19 drives VMEbus D[15..08], and U17 drives VMEbus D[07..00]. Both U19 and U17 are driven by the modules bi-directional byte data bus DATA[7..0]. /LO_ENA is also driven during an interrupt cycle, STATUS, to output the interrupt vector INT_VEC[7..0]. The direction input to U19 and U17 is VMEbus /WRITE. /WRITE controls the data transfer direction.
NOTE: 74LS645-1 is a high current version of the 74LS645. The -1 will sink the 48 ma required by the VMEbus terminators.
On the leading edge of SR[2], internal registers are latched if a VMEbus write cycle !/WRITE. While MODULE_ADDR is set in the /WRITE mode, the EPLD tri-state data bus DATA[7..0] is enabled by D_STATE[7..0] if EPLD registers are addressed.
Finally on the leading edge of SR[1], the VMEbus response, DDTACK, is set. The front end computer responds by clearing DS[1..0]. As DS[1..0] clear, the shift register and MODULE_ADDR ending the VMEbus cycle.
The registers are connected to an output multiplexer in the EPLD. The multiplexer, case statement:
case (STATUS, ADDR6, ADDR[3..0] is when b"00xxx0" => D_TSTATE[7..0].in = PERIOD[7..0]; " " when b"1xxxxx" => D_TSTATE[7..0].in = INT_VEC[7..0]; end case;
The two examples of the case statement above show two special cases. The first line shows the development of the ASCII period in the VMEid. The period is developed in the EPLD, and the text in PROM U21. The last line shows the interrupt vector, INT_VEC[7..0], which is output during the interrupt cycle. The statements in between are the eight register outputs.
CHANGE sets flip-flop IRQX. IRQX is output to 74LS138 U24 along with INT_LEV[2..0]. U24 decodes the interrupt level /IRQ[7..1], IRQ[0] is reserved by the front end computer. IRQX enables U24, and one output, buffered by 74LS641-1 U25 requests an interrupt IRQ[7..1]*. On the next assertion of /DS0 flip-flop LOCAL sets indicating a local module interrupt request.
NOTE: 74LS641-1 is a high current version of the 74LS641. The -1 will sink the 48 ma required by the VMEbus terminators.
The front end computer responds with an interrupt cycle which asserts /IACK. /IACK is distributed to every VME chassis slot to indicate an interrupt cycle in progress. At slot 1, /IACK loops back as /IACKIN-/IACKOUT, the interrupt daisy chain.
If the module receives /IACKIN, the interrupt timing shift register INT_SR[2..0] starts:
EPLD outputs PULSE[8..1] are buffered by TI SN75130N U9 and U14. The SN75130N is designed to drive four 50 ohm terminators to greater than +3VDC. The SN75130N also contains built-in short circuit protection. Lemo output connectors are located on a separate ground plane. The plane may be connected to DGND, JP16, or AGND, JP17. The outputs Lemo of U9 and U14 are terminated in 470 ohms. The 470 ohms terminator provides a scope trigger if the output is not used, and will not disturb the 50 ohm line termination.
The sixteen LEDs located under the Lemo connectors are registered to stretch the pulse lengths, and multiplexed to conserve pins. NOT_INPUT_BUFFER[8..1] trigger eight one-shots INPUT_REG[8..1][1..0]. The one shot clock is LED_DISPLAY[3]. Gate and time outputs trigger one-shots OUTPUT_REG[8..1] which are also clocked by LED_DISPLAY[3]. LED_DISPLAY[3..0] is a 16-bit counter driven by global(16_MHz). The count provides a LED on time of 1.4 ms when the 16-channel multiplex is considered. Within the EPLD, the display LEDS are multiplexed by case statement:
case LED[3..0] is
when 0 => /LIGHT = !INPUT_REG1[1];
"
"
when 15 => /LIGHT = !OUTPUT_REG[8];
end case;
EPLD outputs LED[3..0] and /LIGHT drive the LED displays. LED[3..0] drives 74LS138 decoders U18 and U22. /LIGHT enables U18 or U22 if the LED associated with the current multiplexer state should be illuminated. U18 and U22 decoder outputs drive 74LS641-1 buffers U20 and U23. U20 and U23 drive the LED indicators.
All LED indicators have built in resistors.