TMC Channel CAMAC Multi-Hit TDC. Module Manual

Similar documents
TABLE OF CONTENTS LIST OF FIGURES LIST OF TABLES

Requirements and Specifications of the TDC for the ATLAS Precision Muon Tracker

DESIGN & IMPLEMENTATION OF SELF TIME DUMMY REPLICA TECHNIQUE IN 128X128 LOW VOLTAGE SRAM

Electronic Circuits EE359A

The Architecture of the BTeV Pixel Readout Chip

電子電路. Memory and Advanced Digital Circuits

Technical Information Manual

Module -18 Flip flops

Clock and control fast signal specification M.Postranecky, M.Warren and D.Wilson 02.Mar.2010

Dual 500ns ADC User Manual

HD44102D. (Dot Matrix Liquid Crystal Graphic Display Column Driver) Features. Description. Ordering Information

PC-OSCILLOSCOPE PCS500. Analog and digital circuit sections. Description of the operation

Electronic Readout System for Belle II Imaging Time of Propagation Detector

All-digital ramp waveform generator for two-step single-slope ADC

Analog CMOS Interface Circuits for UMSI Chip of Environmental Monitoring Microsystem

Fan in: The number of inputs of a logic gate can handle.

Dedan Kimathi University of technology. Department of Electrical and Electronic Engineering. EEE2406: Instrumentation. Lab 2

CAMAC products. CAEN Short Form Catalog Function Model Description Page

The domino sampling chip: a 1.2 GHz waveform sampling CMOS chip

Analog-to-Digital-Converter User Manual

4413 UPDATING PROGRAMMABLE DISCRIMINATOR 4415A NON-UPDATING PROGRAMMABLE DISCRIMINATOR

Analogue to Digital Conversion

Static Random Access Memory - SRAM Dr. Lynn Fuller Webpage:

LM12L Bit + Sign Data Acquisition System with Self-Calibration

MSCF-16-LN (Data sheet V5.0_01)

Memory Basics. historically defined as memory array with individual bit access refers to memory with both Read and Write capabilities

Data Sheet HSDL IR 3/16 Encode/Decode IC. Description. Features. Applications Interfaces with SIR infrared transceivers to perform: Pin Out

MT8980D Digital Switch

SH X Grayscale Dot Matrix OLED/PLED Driver with Controller. Features. General Description 1 V2.2

Auto refresh and self refresh refresh cycles / 64ms. Programmable CAS Latency ; 2, 3 Clocks

Analog Peak Detector and Derandomizer

GFT1012 2/4 Channel Precise Slave Generator

HY57V281620HC(L/S)T-S

An ASIC dedicated to the RPCs front-end. of the dimuon arm trigger in the ALICE experiment.

EE584 Introduction to VLSI Design Final Project Document Group 9 Ring Oscillator with Frequency selector

Revision No. History Draft Date Remark. 0.1 Initial Draft Jul Preliminary. 1.0 Release Aug. 2009

Quad 12-Bit Digital-to-Analog Converter (Serial Interface)

WaveStation Function/Arbitrary Waveform Generators

A10-Gb/slow-power adaptive continuous-time linear equalizer using asynchronous under-sampling histogram

OPERATOR'S MANUAL MODEL 3341 CAMAC 8-INPUT CHARGE ADC

SKY2000. Data Sheet DUAL-TRACK MAGNETIC STRIPE F2F DECODER IC. For More Information. Solution Way Co., Ltd

Digital Fundamentals 8/25/2016. Summary. Summary. Floyd. Chapter 1. Analog Quantities

I hope you have completed Part 2 of the Experiment and is ready for Part 3.

Part No. Clock Frequency Power Organization Interface Package. Normal. Low power

IR 3/16 Encode/Decode IC. Technical Data. HSDL pc, tape and reel HSDL-7001# pc, 50/tube

Technical Information Manual

Computer Architecture (TT 2012)

Part No. Clock Frequency Power Organization Interface Package. Normal. Low power

Technical Information Manual

MSCF-16 F (Data sheet V51_02)

WaveStation Function/Arbitrary Waveform Generators

TENTATIVE TOSHIBA MOS DIGITAL INTEGRATED CIRCUIT SILICON GATE CMOS

Revision No. History Draft Date Remark. 0.1 Initial Draft Jan Preliminary. 1.0 Final Version Apr. 2007

Figure 1: Functional Block Diagram

Auto refresh and self refresh refresh cycles / 64ms. Part No. Clock Frequency Power Organization Interface Package. Normal. 4Banks x 1Mbits x16

DESIGN OF HIGH FREQUENCY CMOS FRACTIONAL-N FREQUENCY DIVIDER

HY57V561620C(L)T(P)-S

Analogue to Digital Conversion

Revision No. History Draft Date Remark. 1.0 First Version Release Dec Corrected PIN ASSIGNMENT A12 to NC Jan. 2005

ECEN 720 High-Speed Links: Circuits and Systems. Lab3 Transmitter Circuits. Objective. Introduction. Transmitter Automatic Termination Adjustment

QUARTZ-MM PC/104 Counter/Timer & Digital I/O Module

MM58174A Microprocessor-Compatible Real-Time Clock

IES Digital Mock Test

A LOW POWER SINGLE PHASE CLOCK DISTRIBUTION USING 4/5 PRESCALER TECHNIQUE

TIMING, TRIGGER AND CONTROL INTERFACE MODULE FOR ATLAS SCT READ OUT ELECTRONICS

a8259 Features General Description Programmable Interrupt Controller

10-Bit, Low-Power, Rail-to-Rail Voltage-Output Serial DAC in SOT23

DFT for Testing High-Performance Pipelined Circuits with Slow-Speed Testers

Part No. Clock Frequency Power Organization Interface Package. Normal. Low power

Lecture 6: Digital/Analog Techniques

Development of Front-end Electronics and TDC LSI. for the ATLAS MDT

ZL Features. Description

CS/EE Homework 9 Solutions

SKY3000. Data Sheet TRIPLE-TRACK MAGNETIC STRIPE F2F DECODER IC. For More Information. Solution Way Co., Ltd

HY57V561620B(L/S)T 4 Banks x 4M x 16Bit Synchronous DRAM

WaveStation Function/Arbitrary Waveform Generators

Data Acquisition System for the Angra Project

512 x 8 Registered PROM

INF3430 Clock and Synchronization

Technical Information Manual

Circuit Design for a 2.2 GByte/s Memory Interface

ICS PLL BUILDING BLOCK

16 Meg FPM DRAM AS4LC4M4. 4M x 4 CMOS DRAM WITH FAST PAGE MODE, 3.3V PIN ASSIGNMENT ACTIVE POWER DISSIPATION PERFORMANCE RANGE

64/256/512/1K/2K/4K/8K x 9 Synchronous FIFOs

HY57V28420A. Revision History. Revision 1.1 (Dec. 2000)


Power And Area Optimization of Pulse Latch Shift Register

Design for Testability & Design for Debug

GFT Channel Digital Delay Generator

Quad Analog-to-Digital Converter Technical Documentation

Microprocessor & Interfacing Lecture Programmable Interval Timer

Winter 14 EXAMINATION Subject Code: Model Answer P a g e 1/28

CMPEN 411 VLSI Digital Circuits Spring Lecture 24: Peripheral Memory Circuits

Development of a 20 GS/s Sampling Chip in 130nm CMOS Technology

Digital Design and System Implementation. Overview of Physical Implementations

A Fast Locking Digital Phase-Locked Loop using Frequency Difference Stage

TC55VBM316AFTN/ASTN40,55

TAPR TICC Timestamping Counter Operation Manual. Introduction

GFT1504 4/8/10 channel Delay Generator

Datasheet C400. Four Channel Pulse Counting Detector Controller

Transcription:

TMC1004 32-Channel CAMAC Multi-Hit TDC Module Manual (Rev.1.0 Mar. 19, 1991) Rev.1.5 Aug. 3, 1993 Prepared by Y. Arai KEK, National Laboratory for High Energy Physics 1-1 Oho, Tsukuba, Ibaraki, Japan Tel : 0298-64-1171 ex.6212 Fax : 0298-64-2580 Internet : araiy@kekvax.kek.jp DECNET : KEKVAX::ARAIY

TMC1004 32-Channel Multi- Hit TDC Module 32CH TMC RUN STRT STOP TRIG OUT I N 0 15 32 channels in single-w idth module 1ns / bit least count, σ= 0.52 ns time resoluti on 1024 bits / channel (or 2kbit / 2 ch, or 4kbit/ 4ch) Common stop or Common start operation No clear/dizitization t ime needed Rising edge detection a nd 6 bit encoded data output for each 32 ns data, or raw data dump for full d ata Very stable for tempera ture, voltage variation Q stop block transfer r eadout for encoded data ECL differential input for signal NIM level start / stop signal input NIM level trigger outpu t for test purpose I N 16 31 KEK

Specifications Signal Inputs : 32 Channel. ECL-differential. Input Impedance 100 Ω. Two 40-pin Flat Cable Connector. Input signal is stretched to about 32 ns internally if the width is less than 32 ns. START Input : STOP Input : TRIGGER Output : Least Time Count : Time Range : Double Hit Resolution : One, common to all channels, 50 Ω impedance; Lemo-type connector; NIM level. Used in common Start mode. One, common to all channels, 50 Ω impedance; Lemo-type connector; NIM level. Used in common Stop mode. Lemo-type connector; NIM level. Generate synchronous output pulse with internal clock when started. Used for test purpose. 1 ns/bit 1.024 µs (4 ch), 2.048 µs (2 ch) or 4.096 µs (1 ch) 32 ns Timing Measurement Error : σ = 0.52 ns (including digitization error) Integral Linearity Error : < 1.5 bit Differential Linearity : < 0.2 ns Variation of Slope : < 0.1 % (2.6-3.4 V) (time-to-digital conversion factor) < 0.1 % (15-55 C) < 0.1 % (chip to chip) Channel to Channel Discontinuity: < 0.5 bit Data Readout : Data : Fast readout is done through encoded data readout (6 bit/ch) by F(0). The row which is read out is pointed by the Read Pointer (CSR1). For debugging and other purpose which requires entire data, Serial I/O mode through CSR0 can be used. This mode read out entire data of the TMC chip, but takes much longer readout time. The proper CAMAC address and F(1) gates the 4 channel data of a TMC chip onto the R(1) to R(24). A(0) through A(7) are used for chip number. R24 R18 R12 R6 R1 Chip 0 : A(0) Ch 3 Ch 2 Ch 1 Ch 0 Chip 1 : A(1) Ch 7 Ch 6 Ch 5 Ch 4 : : : : Chip 7 : A(7) Ch 31 Ch 30 Ch 29 Ch 28 CAMAC Commands : Z or C : All registers are simultaneously cleared by the CAMAC "Clear" or "Initialize" command. Requires "S2". X : An X=1 (Command Accepted) response is generated when a valid F, N, and A command is generated.

CAMAC Function Code : F(0) : Read Data; requires N and A. A(0) through A(7) are used for chip address. F(1) : Read CSR0 register; requires N and A. A(0) through A(7) are used for chip address. F(4) : Read CSR1 (Read Pointer) register; requires N and A. A(0) through A(7) are used for chip address. F(6) : Read CSR2 (Write Pointer) register; requires N and A. A(0) through A(7) are used for chip address. F(9) : Reset. Reset all CSR registers and internal circuit. F(17) : Write CSR0 register; requires N and A. A(0) through A(7) are used for chip address. F(20) : Write CSR1 (Read Pointer) register; requires N and A. A(0) through A(7) are used for chip address. F(22) : Write CSR2 (Write Pointer) register; requires N and A. A(0) through A(7) are used for chip address. F(25) : Start signal recording. Used in common start mode. Functions as same as the START input, but F(25) starts signal recording with synchronous to the internal clock. Packaging : CAMAC 1 width module. Power Requirement : +6 V at 1.2 A, -6V at 0.5 A.

Settings There are several switches and jumpers in the module. User should set up these settings correctly. The meaning of each switches and jumpers are described below. SW1, SW2, and SW3 : Common Stop / Common Start selection switches. These switches select Common Stop or Common Start mode in accordance with measurement style. All these switches must be same position as indicated in PC board, otherwise the circuit does not work correctly. SW4 : Stop Counter value (default = 32). Used in common start mode; selectable between 0 to 255. In Common Start mode, input signal is written to TMC's after receiving "START" signal or F(25) command. The operation will stop after passing the period defined in this switch. The period is selected from a multiple of 32 ns. The bit where switch is off has value "1". If you set the period longer than the depth of the channel, first part of the data and the start mark will be lost naturally. Ex) If the position "1", "2", and "4" is off and others are on, the period will be 32 ns x 7 = 224 ns. CONF0, CONF1 : Configuration select pin (default = 0). Each chip has these jumper pins, so there are 8 sets of jumpers. They select depth of a channel in each chip. CONF CONF0 CONF1 Depth Channel/chip 0 close close 1 k bit 4 channels 1 open close 2 k bit 2 Channels. Ch0 and 1, Ch2 and 3 are connected together. Each channel needs same signal in inputs. 2 close open 4 k bit 1 Channels. Ch0, 1, 2 and 3are connected together. Each channel needs same signal in input. OVWRP : Always open.

Input Connector Pin Assignment Upper Connector Pin No. Assignment Pin No. Assignment 1 no connection 2 no connection 3 Ch 0 + 4 Ch 0-5 Ch 1 + 6 Ch 1-7 Ch 2 + 8 Ch 2-9 Ch 3 + 10 Ch 3-11 Ch 4 + 12 Ch 4-13 Ch 5 + 14 Ch 5-15 Ch 6 + 16 Ch 6-17 Ch 7 + 18 Ch 7-19 Ch 8 + 20 Ch 8-21 Ch 9 + 22 Ch 9-23 Ch 10 + 24 Ch 10-25 Ch 11 + 26 Ch 11-27 Ch 12 + 28 Ch 12-29 Ch 13 + 30 Ch 13-31 Ch 14 + 32 Ch 14-33 Ch 15 + 34 Ch 15-35 no connection 36 no connection 37 no connection 38 no connection 39 no connection 40 no connection Lower Connector Pin No. Assignment Pin No. Assignment 1 no connection 2 no connection 3 Ch 16 + 4 Ch 16-5 Ch 17 + 6 Ch 17-7 Ch 18 + 8 Ch 18-9 Ch 19 + 10 Ch 19-11 Ch 20 + 12 Ch 20-13 Ch 21 + 14 Ch 21-15 Ch 22 + 16 Ch 22-17 Ch 23 + 18 Ch 23-19 Ch 24 + 20 Ch 24-21 Ch 25 + 22 Ch 25-23 Ch 26 + 24 Ch 26-25 Ch 27 + 26 Ch 27-27 Ch 28 + 28 Ch 28-29 Ch 29 + 30 Ch 29-31 Ch 30 + 32 Ch 30-33 Ch 31 + 34 Ch 31-35 no connection 36 no connection 37 no connection 38 no connection 39 no connection 40 no connection

General Description The TMC 32-Ch CAMAC module was designed to evaluate the newly developed TMC1004 chip which is a low-power and high-resolution Multi-hit Time-to-Digital Converter chip. The TMC chip is developed for readout of a drift chamber in high-rate experiment such as the SSC. The chip has special kind of memories which record input pulses in 1 ns time resolution. TMC1004 chip has 4 channels of circuit and each channel has 1024 bits of memories. Thus each channel records signal of 1 µsec period. The chip also can be configured to 2 channels times 2 k bits or 1 channel times 4 k bits. The TMC 32-Ch CAMAC module consists of 8 TMC1004 chips, so it has 32 input channel. Although the TMC1004 is designed for deadtime-less readout, this CAMAC module can not operate as deadtime-less because the CAMAC cycle is very slow comparing with the input data bandwidth. The module runs in "Common Stop" or "Common Start" mode which is selectable by internal switches. Detailed explanation of the CAMAC circuit is also found in reference 1. CAMAC Module Circuit Description Figure 1 shows the block diagram of the TMC 32-channel CAMAC module. The module contains 8 TMC chips, thus the 4 channels are grouped and most of the operations are applied to one of eight chips. These eight chips are accesses by using subaddress A(0) through A(7). Four channel data are read out at once as the format shown in Fig. 1. Each chip has three CSR registers. The contents of the registers are shown in Table 1.

CH0 CH1 TMC A(0) Data 24 TMC A(1) C A M A C C R AT CAMAC I/F E CH32 TMC A(7) Control Com. Start Com. Stop Start/Stop Control [Data Format] 23 18 17 12 11 6 5 0 -------------------------------------------------------------- CH3 data CH2 data CH1 data CH0 data -------------------------------------------------------------- F( 0) A(0-7) : Read Data F( 1) A(0-7) : Read CSR0 F( 4) A(0-7) : Read CSR1 F( 6) A(0-7) : Read CSR2 F(17) A(0-7) : Write CSR0 F(20) A(0-7) : Write CSR1 F(22) A(0-7) : Write CSR2 F( 9) : Reset F(25) : Start Fig.1 Block Diagram of the TMC 32-Channel CAMAC module

Table 1 CSR Registers bit 6 5 4 3 2 1 0 CSR0 - MOD1 MOD0 SIO3 SIO2 SIO1 SIO0 CSR1 Read Pointer Value [RP] CSR2 Write Pointer Value [WP] * CSR0 ( = 0 after reset [read/write]) SIO3 ~ 0 : Serial I/O bits. These bits are valid only in the serial i/o mode. One bit data for each channel is read/written through these bits from/to the address pointed by the read counter(row position) and the write counter(column position). MOD0,1 : MODE = [MOD1,MOD0]. * MODE = 0 (Stand alone Mode) : Usually this mode is used. Data are read out from the row pointed by the Read Pointer. (Caution: If the data recording is in progress, the Read Pointer will also be counted up with the Write Pointer.) * MODE = 1 (Slave Mode) : Not use. * MODE = 2 (Serial I/O Mode) : This mode is used mainly for testing each bit in the memory. Data are read/write from/to the address pointed by the CSR1(row address) and CSR2(column address) through bit 0 ~ 3 in the CSR0. Bit 0 corresponds to the data in the CH0 and bit 1 corresponds to CH1 and so on. * CSR1 ( = 2 after reset [read/write]) RP : Read Pointer Value. The contents of the read counter are set through this register. The value read back indicates present value of the read counter. The counter is incremented by the system clock (31.25 MHz) during data recording. This register also works as a row address register in the Serial I/O mode. * CSR2 ( = 0 after reset [read/write]) WP : Write Pointer Value. The contents of the write counter are set through this register. Present value of the write counter is read back. The counter is incremented by the system clock (31.25 MHz) during data recording. This register also works as a column address register in the Serial I/O mode.

Data Format and Conversion Since the TMC1004 chip is designed for high-rate application, the time recording is continuous and does not have any timing reference point inherently. However, for usual application, we need a start time or a stop time information. In this CAMAC module, these timing are recorded in TMC in addition to the input signal timing. Start or Stop timing is recorded in the first or the last 2 columns as shown in Table 2. In common start mode, input multiplexer will change inputs from start signal to input signal at third row (N+2). In common stop mode, input multiplexer will change inputs from input signal to stop signal when reciving stop pulse (M-3), and record the stop pulse which is delayed internally in row M-2 and M-1. Start/Stop pulse has about 12 ns width, and can be discriminated from input signal which has more than 32 ns pulse width. Table 2. Raw data map of the TMC chip for Common Start/Stop mode [Common Start Mode] Start pulse recording area Row N Start pulse recording area Row N+1... Input signal recording area Row N+2 Input signal recording area Row N+3 : : Input signal recording area Row N+31 ( N = Initial Value of the Write Pointer.) [Common Stop Mode] Input signal recording area Row M-32 Input signal recording area Row M-31 : : Input signal recording area... Row M-3 Stop pulse recording area Row M-2 Stop pulse recording area Row M-1 ( M = Final Value of the Write Pointer.) Fig. 2 Timing for (a) common start,, and (b) common stop mode. (a) Common START Mode CLK START* WSTART CP 32ns ROW 0 1 2 N-1 Counter 0 1 2 3 4 N 0 A COM SEL (P=Q)*

(b) Common STOP Mode CLK 32ns STOP* WSTART ROW M-4 M-3 M-2 M-1 M A COM SEL (P=Q)* Each Row data (32 bits) is encoded to 6 bit as shown in Table 3. The most significant bit shows the value of the first bit of a row, and the remaining 5 bits show the position of the "0" to first "1" transition. Table 3 Data Encoding Schme Bit Pattern of inside TMC Encoded Data <------- Time 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 5 * 4 3 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 0 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 0 0 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 0 0 0 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 0 0 0 0 0 0 1 : : : : 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 (not appear) 1 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 1 1 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 x 1 1 0 0 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 0 x x 1 1 0 0 1 : : : : 1 0 x x x x x x x x x x x x x x x x x x x x x x x x x x x x x 1 1 1 1 1 (*) Bit 5 of the encoded data is used for distinguish the transition between row. An example of data taking and conversion flow is shown below. The common stop mode and CONF=0 are assumed in the example.

TMC Chip Circuit Description The idea of Time Memory Cell (TMC) was proposed by us and tested by making a TEG chip 2. The cell utilizes low-power and high-density characteristics of a CMOS memory cell and gate delay time. Figure 2 shows the basic operation of the TMC. As the write signal (WL) timing in each TMC cell is delayed by 1 ns, timing information of the input lines (TIN and TIN*) is recorded to memory cells sequentially. To keep the delay time constant, the delay time of the delay element is controlled through the Vg line by a feedback circuit which refers to an external system clock period. TIN* TIN TMC Cell Vg WL WL TIN 1 ns Time Fig.2 Input signal write operation in the TMC cells. The TMC1004 has been developed using an 0.8 µm CMOS process. It contains 4 channels and each channel has 1024 TMC cells (32 rows and 32 columns). The chip achieves more than 10 times the density of a 1 GHz GaAs shift register while dissipating less than 1/100 of the power. The schematic of the TMC cell is shown in Fig. 3. Each cell has one timing-information write port (TIN and TIN*) and one data-read/write port (BL and BL*). Two PMOS transistors (M1 and M2) are added to the previous design 1 to ease write operation by cutting the F/F paths in the cell. Transistor parameters of the delay element were selected to obtain a gate delay time close to 1 ns/bit. To get high precision and consistency between rows a feedback circuit adjust the total delay of the 32 cells in a row to be 32 ± 0.5 ns.

BL WORD Dual Port Cell BL* M1 M2 TIN* TIN Vg WL Delay Element Fig.3. TMC cell circuit. Figure 4 shows the schematic of the feedback circuit. When an external clock (φ1) sets two flipflops (F1 and F2) at the falling edge, capacitors C1 and C2 begin to charge. The charging of C1 is stopped by the falling edge of the pulse at the end of the delay line. The charging of C2 stops at the next falling edge of the clock pulse (φ2). Hence, the voltage difference between C1 and C2 is proportional to the time difference between the delay line and clock period. If the delay time is less than the clock period, C3 charges during a store period increasing the delay of the delay line. If the delay time is longer than the one clock period, C3 discharges reducing the delay.

Φ 1 1 ns x 32 Vg Reference Cell F1 32 ns Start R S Q + C1 - C3 Φ 2 Reference Time F2 R Q S Vg Reset Fig.4. Feedback circuit. C2 Store The Block diagram of the TMC1004 is shown in Fig. 5. The chip has four TMC arrays, each with 32 rows by 32 columns of TMC cells. For accessing the four arrays, there are two pointers (Write and Read) each of which consists of 7 bit counter and decoder. The write pointer is incremented in each clock (CLK) cycle which initiates a pulse in the delay line of the designated row. The read pointer selects a row for readout and is incremented by the same clock (CLK). This scheme with two pointers and dual port cells enables read and write operations to proceed simultaneously. The four TMC arrays can be configured as 1, 2, or 4 channels by setting external pins. The 1, 2, and 4 channel modes utilize respectively the lower 5, 6 or 7 bits of the counters.

DOUT0 DOUT1 DOUT2 DOUT3 CIO CS* 6 6 6 6 7 Encoder Encoder Encoder Encoder COLUMN I/O COLUMN I/O COLUMN I/O COLUMN I/O CSR W R P I O T I E N T E R 32 32 32 32 CH 0 32 X 32 TMC CH 1 32 X 32 TMC CH 2 32 X 32 TMC CH 3 32 X 32 TMC Feedback Feedback Feedback Feedback R E P A O D I N T E R CLK CLK DS* TIN0 TIN1 TIN2 TIN3 Fig. 5. Block diagram of the TMC1004. The 32 bit row data is encoded to 6 bits. The most significant bit shows the value of the first bit of a row, and the remaining 5 bits show the position of the "0" to first "1" transition. Since the transition times will be spaced by at least 32 ns, the encoding reduces the output pin requirement and the amount of data without sacrificing information. The readout cycle is pipelined to 2 stage and the cycle continues while the trigger signal DS* is asserted. The data are read out through the DOUT lines. There are 3 CSR registers which set/show the operating mode and the settings of the pointers. All TMC cells can also be read and written through the CSR register. This access path is used for testing each TMC cell. The CSR register is accessed through the CS* and the CIO lines. Fig.6. Photograph of the TMC1004 chip. References [1]Y. Arai, T. Matsumura and K. Endo, IEEE Journal of Solid-State Circuits. Vol. 27, No. 3, 359(1992).

[2] Y. Arai and T. Baba, 1988 Symposium on VLSI Circuits, Tokyo, Aug.1988, IEEE CAT. No. 88 TH 0227-9 Page 121.

[Appendix A : Sample Program] C...A part of Sample Readout Program for the TMC CAMAC module C... Common Start mode. C C...Start : C...Stop : C...Read out Final Row Position from CSR2 (Write Pointer) IADD=0 CALL CAM16(CHAN,CRATE,ISLOT,IADD, 6,MM,ERRSTAT) MM = MM - 32 IF (MM.lt.0) MM=MM + 32! MM points first Row of data recording C...Find Start Time STIME=0 C...Set Start Row to CSR1 (Read Pointer) DO RR=MM,MM+1 CALL CAM16(CHAN,CRATE,ISLOT,IADD,20,RR,ERRSTAT) C...Read out strt time CALL CAM24(CHAN,CRATE,ISLOT,IADD,0,IDATA_4,ERRSTAT) DD=IAND(IDATA_4,'3F'x) ZQ=IAND(DD,'20'x) TT=IAND(DD,'1F'x) IF(ZQ.EQ.0) GO TO 556 STIME=RR*32 GO TO 555 556 CONTINUE IF(TT.EQ.0) GO TO 71 STIME=RR*32+TT GO TO 555 71 CONTINUE ENDDO TYPE *,'Error! No Start Time Data' C... 555 CONTINUE C...Find Stop Time DO 70 IADD = 0,7 DO RR=MM+2,MM+31 C...Write Start Row to CSR1 CALL CAM16(CHAN,CRATE,ISLOT,IADD,20,RR,ERRSTAT) C...Read out one chip data CALL CAM24(CHAN,CRATE,ISLOT,IADD,0,IDATA_4,ERRSTAT) IDATA_S(RR)=IDATA_4 ENDDO C...Extract one channel data DO 70 JL=0,3 ICHAN=4*IADD+JL+1 IT1=6*JL ZZ = 0 DO 70 RR=MM+2,MM+31 IDATA_4=IDATA_S(RR) DD=ISHFT(IDATA_4,-IT1) DD=IAND(DD,'77'O) TT=0 IF(ZZ.NE.0) GO TO 511 ZQ=IAND(DD,'40'O) IF(ZQ.NE.0) GO TO 515 514 CONTINUE TT=IAND(DD,'37'O)

IF(TT.EQ.0) GO TO 70 515 CONTINUE M(1,ICNT) = ICHAN M(2,ICNT) = RR*32 + TT - STIME ICNT = ICNT + 1 ZZ=1 GO TO 70 511 CONTINUE ZQ=IAND(DD,'40'O) IF(ZQ.NE.0) GO TO 70 ZZ=0 GO TO 514 70 CONTINUE! Channel No. of ICNT data! Timing data of ICNT data