# Presentation: 403518

## FPLD Decoder:  Components & Functions

**Florida State University**
**Roberto A Brown**
**6/11/99**

**Notes:**
Do you need to define what FPLD is?  I didn’t see it defined anywhere in the presentation!

## Introduction	 

- FPLD Decoder = Input Stage of  Clusterfinder
- Tasks:
- Receive Data
- Recognize Type of Data
- Activate submodule that deals with particular data type.
- Store/prepare information for later use

**Notes:**
Second bullet point:	
I put in data elements, this may or may not be what the element is, maybe it should just say element? Be sure to undo the italics!  Also what is the model?  Do you mean to break the input stream? Or is the FPLD decoder?  Maybe you should change the word model?
Fourth Bullet point:
I took out the last word, unit.  I am not sure if you mean the sub module or not, but I didn’t know what the “unit” was.  Should there be another bullet saying something about what a unit does?  You just use the word sub-module previously so I put that word instead.

## Main components of FPLD Decoder

- FIFO
- Track Keeper and EOE check
- Selector Unit
- 4 Data Types Submodules:
- Sequencer ID Module
- HDI Module
- Chip ID Module
- Channel ID and Content Module

## Slide 4

**Notes:**
Looks good
:-)

## FIFO

- Used to match the frequency of the FPGA to the unit that is sending the information
- Ensures that the input information has read entirely before sending it to other decoder components

**Notes:**
Define what FPGA stands for

## Track Keeper & End of Event Check 

- The Track Keeper is triggered as soon as an input is detected.
- The Track Keeper is used to activate the different components of the decoder during different stages.

- The EOE is recognized by the Track Keeper device, which in turn gets reset.
- EOE is when the two MSB (most significant bits) of the input stream are equal to one.

## Selector Device

- The Selector Device is responsible for activating the different identification devices (ID).
- At a particular Track Keeper value, an enable output goes high, which in turn activates one of the ID devices.
- For example:
-  When Track Keeper value is equal to one thus, the selector device will activate the sequencer ID.
- When Track Keeper value is equal to two thus, the selector device will activate the HDI device.

**Notes:**
Define HDI?

## Sequencer Identification Device

- The Sequencer ID stores the first group of incoming information (8 bits).
- The Sequencer ID is activated by an enable output coming from the Selector Device, when the Track Keeper value is equal to one.
- Once the Sequencer ID has stored the information, the enable returns to low, and information will not be stored until the Selector Device sends another signal to the Sequencer ID.

## HDI Identification Device

- The HDI ID stores an 8 bit word from the input stream.
- The HDI Device is activated by an enable output coming from the Selector Device, when the track Keeper value is equal to two.
- Once the HDI ID has stored the information, the enable returns to low, and information will not be stored until the Selector Device sends another signal to the HDI ID.

**Notes:**
This is alright, but what does this device DO?  The previous device, the Sequencer ID, stores the first 8bits... so what does this do?  Also, is it HDI or HDI Information?  You have it both ways in the rest of the presentation, pick one way and stick to it throughout!  I think you should just add a first bullet that says... 
The HDI Device does.......  
And then the second bullet tells how it is activated.

## Chip Identification Device

- The Chip ID becomes partially activated after the track Keeper value is greater than or equal to three.
- The Chip ID becomes active when the selector detects that the 2 MSB of the input stream are “1” and “0”.

- The remaining six bits of the input are stored as the chip number.
- Then the Chip ID needs to ensure that the succeeding input stream is all zeros.
- If the succeeding input (8bits) is not all zeros then an error has occurred and all functions need to be aborted.

## Channel Address & Content Device

- This device is partially activated when the Track Keeper value is greater or equal to three.
- The device becomes active when the Selector detects that the 2 MSB are “0” and “0”.
- The remaining six bits of the input stream are stored as the Channel Address.
- The succeeding input (8bits) are stored as the Channel Content.

## VHDL Symbol View of Decoder

## Outstanding Issues

- How to store the information for an ongoing line of inputs
- If the impact of the particles hits various strips.
- How much RAM will be needed to store all the information?
- Should an external memory be used to store the information?
- How to access the information stored for later retrieval.
- Cluster Finding and centroid determination.