Difference: CppClass (1 vs. 2)

Revision 217 Sep 2012 - CharlieHill

Line: 1 to 1
 
META TOPICPARENT name="HcalDTC"
Changed:
<
<
C++ Class 27 May 2012
>
>
AMC13 Class 27 May 2012
 

Control

  • void reset(int chip);
Changed:
<
<
  • void enableTTC();
  • void flashDoCommand(int length);
  • void enableFlashWrite();
  • void waitForWriteDone();
  • void eraseFlashSector(uint32_t s);

Special reads

  • rv firmware(int chip);
    • get firmware versions of both FPGSs
  • void ttcErrorCounts(int chip, rv& singleBit, rv& multiBit, rv& bunchCount);
    • get TTC error counts
  • void ttcBcnEvnOrn(int chip, rv& bunchNumber, rv& eventNumber, rv& orbitNumber);
    • get TTC bunch, event, and orbit numbers
>
>
  • uint32_t parseInputEnableList(string list);
  • void AMCInputEnable(string list);
  • daqLinkEnable(bool b);
  • void fakeDataEnable(bool b);
  • void ttcRxEnable(bool b);
  • void monBufBackPress(bool b);
  • void startRun();
  • void endRun();

DAQ

  • uint32_t nextEventSize();
  • uint32_t readNextEvent( uint32_t *buffer, uint32_t max_buf);
  • uint32_t readNextEventNoAdvance( uint32_t *buffer, uint32_t max_buf);
 

General read/write

  • rv read(int chip, const std::string& reg);
Deleted:
<
<
    • single word read by register name
 
  • rv readAddress(int chip, uint32_t add);
Deleted:
<
<
    • single word read by address
  • void write(int chip, const std::string& reg, rv value);
    • single word write by register name
  • void writeAddress(int chip, rv add, rv value);
    • single word write by address
  • std::map<std::string, uint32_t> readAllReadable(int chip);
    • read all readable registers in address table
 
  • std::vector readBlock(int chip, const std::string& reg, size_t nWords);
Deleted:
<
<
    • block read by register name
 
  • std::vector readBlockAddress(int chip, uint32_t add, size_t nWords);
Changed:
<
<
    • block read by address
>
>
  • size_t readBlockAddress(int chip, uint32_t add, size_t nWords, uint32_t* buffer, size_t bufMax);
  • std::map<std::string, uint32_t> readAllReadable(int chip);
  • void write(int chip, const std::string& reg, rv value);
  • void writeAddress(int chip, rv add, rv value);
 
  • void writeBlockAddress(int chip, uint32_t add, std::vector data, size_t nWords);
Deleted:
<
<
    • block write by address
 
  • void writeQueueAddress(int chip, uint32_t add, std::vector data, size_t nWords);
Changed:
<
<
    • queued write by address

Flash read/write

  • std::vector readFlashPage(uint32_t add);
    • read one page (0x100 bytes) from the flash memory
  • void programFlash(const std::string& mcsFileName, uint32_t add);
    • program the flash memory from an mcs file to specified byte address
  • void writeFlashPage(uint32_t wadd, std::vector data);
    • write one page of data to the flash
  • void verifyFlash(const std::string& mcsFileName, uint32_t add);
    • verify the contents of the flash memory at byte address against an mcs file
  • std::vector firmwareFromFlash(uint32_t add, int pages);
    • read specified number of pages from the flash at specified address into a vector
  • std::vector firmwareFromMcs(const std::string& mcsFileName);
    • read contenst of an mcs file (data bytes) into vector

Printing

  • void printTtcErrorCounts();
  • void printTtcBcnEvnOrn(int chip, int nTimes);
  • void printRegisterValues(int chip);
  • void printFlashPage(uint32_t add);
>
>
  • void writeTest(int chip);
  -- JimRohlf - 27 May 2012

Revision 127 May 2012 - JimRohlf

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="HcalDTC"
C++ Class 27 May 2012

Control

  • void reset(int chip);
  • void enableTTC();
  • void flashDoCommand(int length);
  • void enableFlashWrite();
  • void waitForWriteDone();
  • void eraseFlashSector(uint32_t s);

Special reads

  • rv firmware(int chip);
    • get firmware versions of both FPGSs
  • void ttcErrorCounts(int chip, rv& singleBit, rv& multiBit, rv& bunchCount);
    • get TTC error counts
  • void ttcBcnEvnOrn(int chip, rv& bunchNumber, rv& eventNumber, rv& orbitNumber);
    • get TTC bunch, event, and orbit numbers

General read/write

  • rv read(int chip, const std::string& reg);
    • single word read by register name
  • rv readAddress(int chip, uint32_t add);
    • single word read by address
  • void write(int chip, const std::string& reg, rv value);
    • single word write by register name
  • void writeAddress(int chip, rv add, rv value);
    • single word write by address
  • std::map<std::string, uint32_t> readAllReadable(int chip);
    • read all readable registers in address table
  • std::vector readBlock(int chip, const std::string& reg, size_t nWords);
    • block read by register name
  • std::vector readBlockAddress(int chip, uint32_t add, size_t nWords);
    • block read by address
  • void writeBlockAddress(int chip, uint32_t add, std::vector data, size_t nWords);
    • block write by address
  • void writeQueueAddress(int chip, uint32_t add, std::vector data, size_t nWords);
    • queued write by address

Flash read/write

  • std::vector readFlashPage(uint32_t add);
    • read one page (0x100 bytes) from the flash memory
  • void programFlash(const std::string& mcsFileName, uint32_t add);
    • program the flash memory from an mcs file to specified byte address
  • void writeFlashPage(uint32_t wadd, std::vector data);
    • write one page of data to the flash
  • void verifyFlash(const std::string& mcsFileName, uint32_t add);
    • verify the contents of the flash memory at byte address against an mcs file
  • std::vector firmwareFromFlash(uint32_t add, int pages);
    • read specified number of pages from the flash at specified address into a vector
  • std::vector firmwareFromMcs(const std::string& mcsFileName);
    • read contenst of an mcs file (data bytes) into vector

Printing

  • void printTtcErrorCounts();
  • void printTtcBcnEvnOrn(int chip, int nTimes);
  • void printRegisterValues(int chip);
  • void printFlashPage(uint32_t add);

-- JimRohlf - 27 May 2012

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback