--- a/src/lte/doc/Makefile Wed Dec 07 10:20:32 2011 +0100
+++ b/src/lte/doc/Makefile Wed Dec 07 15:34:40 2011 +0100
@@ -65,20 +65,29 @@
$(FIGURES)/lte-rlc-data-txon-dl.pdf_width = 10cm
$(FIGURES)/lte-rlc-data-txon-ul.pdf_width = 10cm
$(FIGURES)/lte-rlc-data-retx-ul.pdf_width = 10cm
-$(FIGURES)/phy.pdf_width = 12cm
+$(FIGURES)/lte-phy-interference.pdf_width = 12cm
IMAGES_PNG = ${IMAGES_EPS:.eps=.png}
IMAGES_PDF = ${IMAGES_EPS:.eps=.pdf}
+IMAGES_SEQDIAG = \
+ $(FIGURES)/lte-phy-interference.png \
+ $(FIGURES)/lte-phy-interference.pdf \
+ $(FIGURES)/helpers.png \
+ $(FIGURES)/helpers.pdf
+
IMAGES_OTHER = $(FIGURES)/fading_pedestrian.png \
$(FIGURES)/fading_vehicular.png \
$(FIGURES)/fading_urban_3kmph.png \
$(FIGURES)/fading_pedestrian.pdf \
$(FIGURES)/fading_vehicular.pdf \
$(FIGURES)/fading_urban_3kmph.pdf \
- $(FIGURES)/phy.png \
- $(FIGURES)/phy.pdf
+ $(FIGURES)/lte-phy-interference.png \
+ $(FIGURES)/lte-phy-interference.pdf \
+ $(FIGURES)/helpers.png \
+ $(FIGURES)/helpers.pdf \
+ $(IMAGES_SEQDIAG)
IMAGES = $(IMAGES_EPS) $(IMAGES_PNG) $(IMAGES_PDF) $(IMAGES_OTHER)
@@ -233,5 +242,3 @@
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
-
-
Binary file src/lte/doc/source/figures/helpers.pdf has changed
Binary file src/lte/doc/source/figures/helpers.png has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/lte/doc/source/figures/helpers.seqdiag Wed Dec 07 15:34:40 2011 +0100
@@ -0,0 +1,27 @@
+
+
+diagram {
+
+LteHelper => EpcHelper [label="AddEnb"] {
+ EpcHelper -> EpcHelper [label="create EpcEnbApplication"];
+ EpcHelper -> EpcHelper [label="Setup S1 link"];
+ EpcHelper => EpcSgwPgwApplication [label="AddEnb (enbIpv4Address)"];
+}
+
+
+LteHelper => LteUeRrc [label="GetRnti", return="RNTI"]
+LteHelper => LteEnbRrc [label="SetupRadioBearer", return="LCID"]
+
+LteHelper => EpcHelper [label="ActivateEpsBearer(UE IP, eNB IP, TFT, RNTI, LCID)"] {
+ EpcHelper => EpcSgwPgwApplication [label="ActivateS1Bearer (UE IP, eNB IP, TFT)", return="TEID"] {
+ EpcSgwPgwApplication => EpcSgwPgwApplication [label="Store UE IP<->eNB IP mapping"];
+ EpcSgwPgwApplication => EpcSgwPgwApplication [label="Create GTP-U tunnel endpoint"];
+ }
+ EpcHelper => EpcEnbApplication [label="ErabSetupRequest(TEID, RNTI, LCID )"] {
+ EpcEnbApplication -> EpcEnbApplication [label="Create GTP-U tunnel endpoint (TEID)"];
+ EpcEnbApplication -> EpcEnbApplication [label="store TEID<->(RNTI,LCID) mapping"]
+ }
+}
+
+
+}
\ No newline at end of file
Binary file src/lte/doc/source/figures/lte-phy-interference.pdf has changed
Binary file src/lte/doc/source/figures/lte-phy-interference.png has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/lte/doc/source/figures/lte-phy-interference.seqdiag Wed Dec 07 15:34:40 2011 +0100
@@ -0,0 +1,37 @@
+
+
+diagram {
+
+Scheduler;
+SpectrumChannel;
+
+Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal1)"] {
+ SpectrumChannel => LteSpectrumPhy [label="StartRx(interferer)"] {
+ LteSpectrumPhy => LteInterference [label="AddSignal()"];
+ }
+}
+
+Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal2)"] {
+ SpectrumChannel => LteSpectrumPhy [label="at 0.001s: StartRx(signal2)"] {
+ LteSpectrumPhy => LteInterference [label="AddSignal(signal2)"];
+ LteSpectrumPhy => LteInterference [label="StartRx(signal2)"];
+ LteSpectrumPhy => Scheduler [label="Schedule (EndRx)"];
+ }
+}
+
+Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal3)"] {
+ SpectrumChannel => LteSpectrumPhy [label="StartRx(signal3)"] {
+ LteSpectrumPhy => LteInterference [label="AddSignal(signal3)"];
+ }
+}
+
+Scheduler => LteSpectrumPhy [label="at 0.002s: EndRx()"] {
+ LteSpectrumPhy => LteInterference [label="EndRx()"] {
+ LteInterference => LteCqiSinrChunkProcessor [label="EvaluateSinrChunk()"];
+ LteInterference => LteCqiSinrChunkProcessor [label="End()"] {
+ LteCqiSinrChunkProcessor => LtePhy [label="GenerateCqiFeedback(SINR of signal2)"]
+ }
+ }
+}
+
+}
\ No newline at end of file
--- a/src/lte/doc/source/figures/phy.seqdiag Wed Dec 07 10:20:32 2011 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-
-
-diagram {
-
-Scheduler;
-SpectrumChannel;
-
-Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal1)"] {
- SpectrumChannel => LteSpectrumPhy [label="StartRx(interferer)"] {
- LteSpectrumPhy => LteInterference [label="AddSignal()"];
- }
-}
-
-Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal2)"] {
- SpectrumChannel => LteSpectrumPhy [label="at 0.001s: StartRx(signal2)"] {
- LteSpectrumPhy => LteInterference [label="AddSignal(signal2)"];
- LteSpectrumPhy => LteInterference [label="StartRx(signal2)"];
- LteSpectrumPhy => Scheduler [label="Schedule (EndRx)"];
- }
-}
-
-Scheduler => SpectrumChannel [label="at 0.001s: StartRx(signal3)"] {
- SpectrumChannel => LteSpectrumPhy [label="StartRx(signal3)"] {
- LteSpectrumPhy => LteInterference [label="AddSignal(signal3)"];
- }
-}
-
-Scheduler => LteSpectrumPhy [label="at 0.002s: EndRx()"] {
- LteSpectrumPhy => LteInterference [label="EndRx()"] {
- LteInterference => LteCqiSinrChunkProcessor [label="EvaluateSinrChunk()"];
- LteInterference => LteCqiSinrChunkProcessor [label="End()"] {
- LteCqiSinrChunkProcessor => LtePhy [label="GenerateCqiFeedback(SINR of signal2)"]
- }
- }
-}
-
-}
\ No newline at end of file
--- a/src/lte/doc/source/helpers.seqdiag Wed Dec 07 10:20:32 2011 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-
-
-diagram {
-
-LteHelper => EpcHelper [label="AddEnb"] {
- EpcHelper -> EpcHelper [label="create EpcEnbApplication"];
- EpcHelper -> EpcHelper [label="Setup S1 link"];
- EpcHelper => EpcSgwPgwApplication [label="AddEnb (enbIpv4Address)"];
-}
-
-
-LteHelper => LteUeRrc [label="GetRnti", return="RNTI"]
-LteHelper => LteEnbRrc [label="SetupRadioBearer", return="LCID"]
-
-LteHelper => EpcHelper [label="ActivateEpsBearer(UE IP, eNB IP, TFT, RNTI, LCID)"] {
- EpcHelper => EpcSgwPgwApplication [label="ActivateS1Bearer (UE IP, eNB IP, TFT)", return="TEID"] {
- EpcSgwPgwApplication => EpcSgwPgwApplication [label="Store UE IP<->eNB IP mapping"];
- EpcSgwPgwApplication => EpcSgwPgwApplication [label="Create GTP-U tunnel endpoint"];
- }
- EpcHelper => EpcEnbApplication [label="ErabSetupRequest(TEID, RNTI, LCID )"] {
- EpcEnbApplication -> EpcEnbApplication [label="Create GTP-U tunnel endpoint (TEID)"];
- EpcEnbApplication -> EpcEnbApplication [label="store TEID<->(RNTI,LCID) mapping"]
- }
-}
-
-
-}
\ No newline at end of file
--- a/src/lte/doc/source/lte-design.rst Wed Dec 07 10:20:32 2011 +0100
+++ b/src/lte/doc/source/lte-design.rst Wed Dec 07 15:34:40 2011 +0100
@@ -774,12 +774,12 @@
The PHY model is based on the well-known Gaussian interference models, according to which the powers of interfering signals (in linear units) are summed up together to determine the overall interference power.
-The sequence diagram of Figure :ref:`fig-phy` shows how interfering signals are processed to calculate the SINR, and how SINR is then used for the generation of CQI feedback.
+The sequence diagram of Figure :ref:`fig-lte-phy-interference` shows how interfering signals are processed to calculate the SINR, and how SINR is then used for the generation of CQI feedback.
-.. _fig-phy:
+.. _fig-lte-phy-interference:
-.. figure:: figures/phy.*
+.. figure:: figures/lte-phy-interference.*
:align: center
Sequence diagram of the PHY interference calculation procedure
@@ -941,9 +941,15 @@
interact in a master-slave fashion, with LteHelper being the Master
that interacts directly with the user program, and EpcHelper working
"under the hood" to configure the EPC upon explicit methods called by
-LteHelper. The exact interactions are displayed in the following diagram:
+LteHelper. The exact interactions are displayed in the Figure :ref:`fig-helpers`.
-.. seqdiag:: helpers.seqdiag
+.. _fig-helpers:
+
+.. figure:: figures/helpers.*
+ :align: center
+
+ Sequence diagram of the interaction between LteHelper and EpcHelper
+
A few notes on the above diagram: