|
pflib v3.9.0-rc3-11-g2537d8f
Pretty Fine HGCROC Interaction Library
|
Interface for configuring the elinks. More...
#include <Elinks.h>
Public Member Functions | |
| int | nlinks () const |
| Get the number of links stored in this class. | |
| void | markActive (int ilink, bool active) |
| Mark a specific link as active (or inactive) depending on input. | |
| bool | isActive (int ilink) const |
| Check if a link is active. | |
| virtual std::vector< uint32_t > | spy (int ilink)=0 |
| spy into the passed link | |
| virtual void | setBitslip (int ilink, int bitslip)=0 |
| set the bitslip value (word-level adjustment) | |
| virtual int | scanBitslip (int ilink) |
| enable auto-setting of bitslip value (word-level adjustment) | |
| virtual int | getBitslip (int ilink)=0 |
| virtual uint32_t | getStatusRaw (int ilink)=0 |
| Get the status of the input link. | |
| virtual void | clearErrorCounters (int ilink)=0 |
| Clear the error counters for the input link. | |
| virtual void | readCounters (int link, uint32_t &nonidles, uint32_t &resyncs) |
| Decode the counters for non-idles and resyncs from the status bytes for the input link. | |
| virtual void | resetHard ()=0 |
| Hard reset the links. | |
| virtual int | scanAlign (int ilink, bool debug=false) |
| scan the input link attempting to bitalign it | |
| virtual void | setAlignPhase (int ilink, int iphase) |
| Set the bitalign delay for the input link. | |
| virtual int | getAlignPhase (int ilink) |
| Get the bit alignment phase. | |
Protected Member Functions | |
| Elinks (int nlinks) | |
Private Attributes | |
| int | n_links |
| number of links available, read from chip | |
| std::vector< bool > | m_linksActive |
| which links are "active", set by user | |
Interface for configuring the elinks.
|
pure virtual |
Clear the error counters for the input link.
| [in] | ilink | link index |
Implemented in pflib::bittware::OptoElinksBW, pflib::Capture_zcu, and pflib::zcu::OptoElinksZCU.
|
inlinevirtual |
Get the bit alignment phase.
Reimplemented in pflib::Capture_zcu.
|
pure virtual |
Get the status of the input link.
| [in] | ilink | link index |
Implemented in pflib::bittware::OptoElinksBW, pflib::Capture_zcu, and pflib::zcu::OptoElinksZCU.
|
inline |
Check if a link is active.
| [in] | ilink | link index |
|
inline |
Mark a specific link as active (or inactive) depending on input.
If the passed link index is outside the range of valid links, then this does nothing.
| [in] | ilink | link index |
| [in] | active | true if link is active |
|
inlinevirtual |
Decode the counters for non-idles and resyncs from the status bytes for the input link.
| [in] | link | link index |
| [out] | nonidles | set to the number of non-idles |
| [out] | resyncs | set to the number or resyncs |
|
pure virtual |
Hard reset the links.
Implemented in pflib::bittware::OptoElinksBW, pflib::Capture_zcu, and pflib::zcu::OptoElinksZCU.
|
virtual |
scan the input link attempting to bitalign it
| [in] | ilink | link index |
|
virtual |
enable auto-setting of bitslip value (word-level adjustment)
| [in] | ilink | link index |
Reimplemented in pflib::bittware::OptoElinksBW, and pflib::zcu::OptoElinksZCU.
|
inlinevirtual |
Set the bitalign delay for the input link.
| [in] | ilink | link index |
| [in] | idelay | delay to use |
Reimplemented in pflib::Capture_zcu.
|
pure virtual |
set the bitslip value (word-level adjustment)
| [in] | ilink | link index |
| [in] | bitslip | value for bitslip |
Implemented in pflib::bittware::OptoElinksBW, pflib::Capture_zcu, and pflib::zcu::OptoElinksZCU.
|
pure virtual |
spy into the passed link
| [in] | ilink | link index |
Implemented in pflib::bittware::OptoElinksBW, pflib::Capture_zcu, and pflib::zcu::OptoElinksZCU.