Project

General

Profile

Feature #594

Renseigner les champs HK_LFR_LAST_ER_RID HK_LFR_LAST_ER_CODE HK_LFR_LAST_ER_TIME

Added by Veronique bouzid over 5 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Category:
-
Target version:
-
Start date:
26/01/2016
Due date:
% Done:

100%

Estimated time:

Description

Suite à la gestion des erreurs liées au timing cf (Task #590 et Feature #588) , il faudrait également renseigner les champs suivants associés à la dernière erreur
rencontrée.

- HK_LFR_LAST_ER_RID
- HK_LFR_LAST_ER_CODE
- HK_LFR_LAST_ER_TIME

Contexte du test
----------------------
FSW 3.0.0.13
VHDL 1.1.89
EM sans Timegen
SocExplorerEngine.getSocExplorer: Version = 0.6.2, Branch = default, Changeset = 819d0376d481
StarDundee

History

#1 Updated by Veronique bouzid over 5 years ago

  • Description updated (diff)

#2 Updated by paul leroy over 5 years ago

A partir de la révision 3.0.0.16 ces champs sont gérés. Pour les erreurs gérées par le driver SpaceWire, à chaque fabrication d'un HK, je relis les statistiques dans l'ordre dans lequel elles sont dans la structure fournie par le driver. Je note les différences entre la lecture des statistiques pour le HK précédent et je compare aux statistiques courantes. Si il y a des différences, les champs rid, code et time sont mis à jour avec la dernière différence constatée. Ces champs sont également mis à jour lors de la détection d'erreur sur les timecodes (cf liste des code utilisés extraite des sources du flight software).

Extrait de la doc du driver rtems:

// typedef struct {
// unsigned int tx_link_err; // NOT IN HK
// unsigned int rx_rmap_header_crc_err; // NOT IN HK
// unsigned int rx_rmap_data_crc_err; // NOT IN HK
// unsigned int rx_eep_err;
// unsigned int rx_truncated;
// unsigned int parity_err;
// unsigned int escape_err;
// unsigned int credit_err;
// unsigned int write_sync_err;
// unsigned int disconnect_err;
// unsigned int early_ep;
// unsigned int invalid_address;
// unsigned int packets_sent;
// unsigned int packets_received;
// } spw_stats;

Seul le tout premier champ ne génère pas de modification des champs hk_lfr_last_er_

Voici les valeurs que les champs peuvent prendre dans la révision 3.0.0.16 (extrait du fichier ccsds_types.h faisant partie des sources du soft de vol):

// HK_LFR_LAST_ER_RID
#define RID_LE_LFR_TIME 42119
#define RID_LE_LFR_DPU_SPW 42128
#define RID_LE_LFR_TIMEC 42129
#define RID_ME_LFR_DPU_SPW 42338
// HK_LFR_LAST_ER_CODE
#define CODE_PARITY 1
#define CODE_DISCONNECT 2
#define CODE_ESCAPE 3
#define CODE_CREDIT 4
#define CODE_WRITE_SYNC 5
#define CODE_EARLY_EOP_EEP 6
#define CODE_INVALID_ADDRESS 7
#define CODE_EEP 8
#define CODE_RX_TOO_BIG 9
#define CODE_HEADER_CRC 16
#define CODE_DATA_CRC 17
#define CODE_ERRONEOUS 20
#define CODE_MISSING 21
#define CODE_INVALID 22
#define CODE_TIMECODE_IT 24
#define CODE_NOT_SYNCHRO 25
#define CODE_TIMECODE_CTR 26

#3 Updated by paul leroy over 5 years ago

  • Assignee changed from paul leroy to Veronique bouzid

#4 Updated by bruno katra over 5 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

Testé OK + SRS mise à jour + SUM.

Also available in: Atom PDF