This page contains a table of method declarations and definitions for the AMC13 C++ Class.

NOTE!! The AMC13 class builds two ipDev objects which are used to talk to the two tongues on the AMC13.

Typdefs

Typedef Description
typedef uint32_t rv An AMC13 class typedef which easily allows the adjustment of return values for class methods

Enumerations

Enum Description
T2 = 0, T1 = 1 AMC13 class int enum for labeling tongues on the AMC13
spartan = T2, virtex = T1, kintex = T1 AMC13 class int enum for labeling which FPGA belongs to which tongue
virtex_t1 = 0, kintex_t1 = 1 AMC13 class int enum for differentiating between T1s with a Virtex and Kintex chip

Constructors and Destructors

Method Description
AMC13::AMC13(const std::string& t2IPAddress, const std::string& t2AddressMap, int& t2_ipBusV, const std::string& t1IPAddress, const std::string& t1AddressMap, int& t1_ipBusV, bool controlHub) An AMC13 class constructor which takes explicitly the IP addresses, address table paths, and IPbus versions for each tongue a bool which enables/disables the use of controlHub
AMC13::AMC13(const std::string& t2IPAddress, const std::string& t2AddressMap, const std::string& t1IPAddress, const std::string& t1AddressMap, bool controlHub) An AMC13 class constructor which takes explicitly the IP addresses and address table paths for each tongue a bool which enables/disables the use of controlHub. The IPbus versions for each chip default to IPbus v2.0
AMC13::AMC13(AMC13_env* p_Aeo) An AMC13 class constructor which takes a pointer to an AMC13_env object and lets the the environment decide what the AMC13 object's network settings will be
AMC13::AMC13(ipDev* v1, ipDev* v2) An AMC13 class constructor which takes two pointers to fully constructed ipDev objects and uses those as it's its own
AMC13::~AMC13() AMC13 destructor which deletes the ipDev objects created by the called constructor]]

Read and Write Functions

MethodSorted ascending Description
rv AMC13::read(int chip, const std::string& reg) An AMC13 class method which reads register name reg from tongue chip and returns the read value
rv AMC13::readAddress(int chip, uint32_t addr) An AMC13 class method which reads register address addr from tongue chip and returns the read value
size_t AMC13::readBlockAddress(int chip, uint32_t addr, size_t nWords, uint32_t* buffer, size_t bufMax) An AMC13 class method which block reads nWords words from register address addr on tongue chip into array buffer of size bufMax and returns the number of words read
std::map<std::string, rv> AMC13::readAllReadable(int chip) An AMC13 class method which reads all readable registers from the address table associated with tongue chip and returns a map of register names to read values
std::vector AMC13::readBlockAddress(int chip, uint32_t addr, size_t nWords) An AMC13 class method which block reads nWords words from register address addr on tongue chip and returns a vector of the read values
std::vector AMC13::readFifoAddress(int chip, uint32_t addr, size_t nWords) An AMC13 class method which FIFO reads nWords words from register address addr on tongue chip and returns a vector of the read values
void AMC13::write(int chip, const std::string& reg, uint32_t value) An AMC13 class method which writes value to register name reg on tongue chip
void AMC13::writeAddress(int chip, uint32_t addr, uint32_t value) An AMC13 class method which writes value to register address addr on tongue chip
void AMC13::writeBlockAddress(int chip, uint32_t addr, std::vector data) An AMC13 class method which block writes a vector data of uint32_t values from register address addr on tongue chip
void AMC13::writeFifoAddress(int chip, uint32_t addr, std::vector data) An AMC13 class method which FIFO writes a vector data of uint32_t values to register address addr on tongue chip
void AMC13::writeQueueAddress(int chip, uint32_t addr, std::vector data, size_t nWords) An AMC13 class method which queue writes a vector data of uint32_t values to register address addr on tongue chip
void AMC13::writeTest(int chip) An AMC13 class method which writes 64 incremental values from register address 0x0 on tongue chip

Control Functions

Method Description
void AMC13::reset(int chip) An AMC13 class method which issues a general reset to tongue chip
void AMC13::AMCInputEnable(std::string list, bool slotbased) An AMC13 class method which enables AMC inputs from comma-delimted list list. slotbased makes the list one-based instead of zero-based
void AMC13::enableAllTTC() An AMC13 class method which enables all AMC13 TTC inputs
void AMC13::daqLinkEnable(bool b) An AMC13 class method which enables/disables the DAQ Link with boolean b (not yet supported by the AMC13XG)
void AMC13::fakeDataEnable(bool b) An AMC13 class method which enables/disabled fake data generation in the AMC13 event builder with boolean b
void AMC13::localTtcSignalEnable(bool b) An AMC13 class method which enables/disables the locally generated TTC signal in the AMC13 with boolean b
void AMC13::genInternalL1AsEnable(bool b) An AMC13 class method which enables/disables locally generated L1As in the AMC13 with boolean b
void AMC13::ttcRxEnable(bool b) An AMC13 class method which enables/disables the TTC Rx module on the AMC13 with boolean b
void AMC13::monBufBackPressEnable(bool b) An AMC13 class method which enables/disables SDRAM backpressure on the AMC13 with boolean b
void AMC13::genInternalPeriodicL1As(bool b) An AMC13 class method which starts/stops the sending of locally generated periodic triggers on the AMC13 with boolean b
void AMC13::enableDaqLinkSenderReceiver() An AMC13 class method which enables the the DAQLSC as well as the DAQ receiver (not yet supported by the AMC13XG)
void AMC13::saveReceivedDaqData(bool b) An AMC13 class method which enables/disables the saving of received DAQLDC data in the SDRAM with boolean b (not yet supported by the AMC13XG)
void AMC13::megaMonitorScale(bool b) An AMC13 class method which enables/disables mega monitor scaling with boolean b
void AMC13::setPreScaleFactor(uint32_t noZos) An AMC13 class method which sets the number of lower bits set to zero in the prescale factor with argument noZos
void AMC13::genInternalSingleL1A(uint32_t n) An AMC13 class method which generates a burst of n internally generated L1As on the AMC13
void AMC13::setTrigType(uint32_t type) An AMC13 class method which sets the type of periodic trigger to be generated on the AMC13 with argument type
void AMC13::setLocalL1APeriod(uint32_t n) An AMC13 class method which sets the local L1A period to n for internally generated L1As on the AMC13
void AMC13::sendLocalEvnOrnReset(uint32_t a, uint32_t b) An AMC13 class method which sends a local EvN reset if a and OrN reset if b
void AMC13::setFEDid(uint32_t id) An AMC13 class method which sets the AMC13 FED ID to id
void AMC13::startRun() An AMC13 class method which puts the AMC13 into run mode
void AMC13::endRun() An AMC13 class method which takes the AMC13 out of run mode

DAQ Functions

Method Description
uint32_t AMC13::nextEventSize() An AMC13 class method which reads and returns the size of the next event in the SDRAM
uint32_t AMC13::readNextEvent( uint32_t *buffer, uint32_t max_buf) An AMC13 class method which reads the next event in the SDRAM of size max_buf into the array buffer and advances to the next event in memory
uint32_t AMC13::readNextEventNoAdvance( uint32_t *buffer, uint32_t max_buf) An AMC13 class method which reads the next event in the SDRAM of size max_buf into the array buffer without advancing to the next event in memory

-- CharlieHill - 30 May 2013


This topic: BUCMSPublic > WebHome > HcalDTC > CppClass > AMC13CppClass
Topic revision: r1 - 30 May 2013 - CharlieHill
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback