gem5 v24.0.0.0
|
#include <pixelpump.hh>
Public Member Functions | |
DisplayTimings (unsigned width, unsigned height, unsigned hbp, unsigned h_sync, unsigned hfp, unsigned vbp, unsigned v_sync, unsigned vfp) | |
Create a display timing configuration struct. | |
void | serialize (CheckpointOut &cp) const override |
Serialize an object. | |
void | unserialize (CheckpointIn &cp) override |
Unserialize an object. | |
Cycles | cyclesPerLine () const |
How many pixel clocks are required for one line? | |
Cycles | cyclesPerFrame () const |
How many pixel clocks are required for one frame? | |
unsigned | lineVSyncStart () const |
Calculate the first line of the vsync signal. | |
unsigned | lineVBackPorchStart () const |
Calculate the first line of the vertical back porch. | |
unsigned | lineFirstVisible () const |
Calculate the first line of the visible region. | |
unsigned | lineFrontPorchStart () const |
Calculate the first line of the back porch. | |
unsigned | linesPerFrame () const |
Calculate the total number of lines in a frame. | |
![]() | |
Serializable () | |
virtual | ~Serializable () |
void | serializeSection (CheckpointOut &cp, const char *name) const |
Serialize an object into a new section. | |
void | serializeSection (CheckpointOut &cp, const std::string &name) const |
void | unserializeSection (CheckpointIn &cp, const char *name) |
Unserialize an a child object. | |
void | unserializeSection (CheckpointIn &cp, const std::string &name) |
Public Attributes | |
unsigned | width |
Display width in pixels. | |
unsigned | height |
Display height in pixels. | |
unsigned | hBackPorch |
Horizontal back porch in pixels. | |
unsigned | hFrontPorch |
Horizontal front porch in pixels. | |
unsigned | hSync |
Horizontal sync signal length in pixels. | |
unsigned | vBackPorch |
Vertical back porch in lines. | |
unsigned | vFrontPorch |
Vertical front porch in lines. | |
unsigned | vSync |
Vertical sync signal in lines. | |
Static Public Attributes | |
static const DisplayTimings | vga |
Additional Inherited Members | |
![]() | |
static const std::string & | currentSection () |
Gets the fully-qualified name of the active section. | |
static void | generateCheckpointOut (const std::string &cpt_dir, std::ofstream &outstream) |
Generate a checkpoint file so that the serialization can be routed to it. | |
Definition at line 51 of file pixelpump.hh.
gem5::DisplayTimings::DisplayTimings | ( | unsigned | width, |
unsigned | height, | ||
unsigned | hbp, | ||
unsigned | h_sync, | ||
unsigned | hfp, | ||
unsigned | vbp, | ||
unsigned | v_sync, | ||
unsigned | vfp ) |
Create a display timing configuration struct.
width | Width of the visible area of the screen. |
height | Height of the visible area of the screen. |
hfp | Horizontal front porch in pixel clocks. |
h_sync | Horizontal sync in pixel clocks. |
hbp | Horizontal back porch in pixel clocks. |
vfp | Vertical front porch in scan lines. |
v_sync | Vertical sync in scan lines. |
vbp | Vertical back porch in scan lines. |
Definition at line 51 of file pixelpump.cc.
|
inline |
How many pixel clocks are required for one frame?
Definition at line 81 of file pixelpump.hh.
References cyclesPerLine(), and linesPerFrame().
|
inline |
How many pixel clocks are required for one line?
Definition at line 74 of file pixelpump.hh.
References hBackPorch, hSync, and width.
Referenced by gem5::BasePixelPump::beginLine(), and cyclesPerFrame().
|
inline |
Calculate the first line of the visible region.
Definition at line 102 of file pixelpump.hh.
References lineVBackPorchStart(), and vBackPorch.
Referenced by gem5::BasePixelPump::beginLine(), lineFrontPorchStart(), gem5::BasePixelPump::posY(), gem5::BasePixelPump::renderFrame(), and gem5::BasePixelPump::visibleLine().
|
inline |
Calculate the first line of the back porch.
Definition at line 109 of file pixelpump.hh.
References height, and lineFirstVisible().
Referenced by gem5::BasePixelPump::beginLine(), linesPerFrame(), gem5::BasePixelPump::renderFrame(), and gem5::BasePixelPump::visibleLine().
|
inline |
Calculate the total number of lines in a frame.
Definition at line 116 of file pixelpump.hh.
References lineFrontPorchStart(), and vFrontPorch.
Referenced by gem5::BasePixelPump::beginLine(), cyclesPerFrame(), and gem5::BasePixelPump::updateTimings().
|
inline |
Calculate the first line of the vertical back porch.
Definition at line 95 of file pixelpump.hh.
References lineVSyncStart(), and vSync.
Referenced by gem5::BasePixelPump::beginLine(), lineFirstVisible(), and gem5::BasePixelPump::renderFrame().
|
inline |
Calculate the first line of the vsync signal.
Definition at line 88 of file pixelpump.hh.
Referenced by gem5::BasePixelPump::beginLine(), lineVBackPorchStart(), and gem5::BasePixelPump::renderFrame().
|
overridevirtual |
Serialize an object.
Output an object's state into the current checkpoint section.
cp | Checkpoint state |
Implements gem5::Serializable.
Definition at line 61 of file pixelpump.cc.
References hBackPorch, height, hFrontPorch, hSync, SERIALIZE_SCALAR, vBackPorch, vFrontPorch, vSync, and width.
|
overridevirtual |
Unserialize an object.
Read an object's state from the current checkpoint section.
cp | Checkpoint state |
Implements gem5::Serializable.
Definition at line 76 of file pixelpump.cc.
References hBackPorch, height, hFrontPorch, hSync, UNSERIALIZE_SCALAR, vBackPorch, vFrontPorch, vSync, and width.
unsigned gem5::DisplayTimings::hBackPorch |
Horizontal back porch in pixels.
Definition at line 127 of file pixelpump.hh.
Referenced by gem5::BasePixelPump::beginLine(), cyclesPerLine(), serialize(), and unserialize().
unsigned gem5::DisplayTimings::height |
Display height in pixels.
Definition at line 124 of file pixelpump.hh.
Referenced by lineFrontPorchStart(), gem5::BasePixelPump::renderPixels(), serialize(), unserialize(), and gem5::BasePixelPump::updateTimings().
unsigned gem5::DisplayTimings::hFrontPorch |
Horizontal front porch in pixels.
Definition at line 129 of file pixelpump.hh.
Referenced by serialize(), and unserialize().
unsigned gem5::DisplayTimings::hSync |
Horizontal sync signal length in pixels.
Definition at line 131 of file pixelpump.hh.
Referenced by gem5::BasePixelPump::beginLine(), cyclesPerLine(), serialize(), and unserialize().
unsigned gem5::DisplayTimings::vBackPorch |
Vertical back porch in lines.
Definition at line 134 of file pixelpump.hh.
Referenced by lineFirstVisible(), serialize(), and unserialize().
unsigned gem5::DisplayTimings::vFrontPorch |
Vertical front porch in lines.
Definition at line 136 of file pixelpump.hh.
Referenced by linesPerFrame(), serialize(), and unserialize().
|
static |
Definition at line 140 of file pixelpump.hh.
unsigned gem5::DisplayTimings::vSync |
Vertical sync signal in lines.
Definition at line 138 of file pixelpump.hh.
Referenced by lineVBackPorchStart(), serialize(), and unserialize().
unsigned gem5::DisplayTimings::width |
Display width in pixels.
Definition at line 122 of file pixelpump.hh.
Referenced by cyclesPerLine(), gem5::BasePixelPump::renderPixels(), serialize(), unserialize(), and gem5::BasePixelPump::updateTimings().