Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Error injection per canale di comunicazione fibra ottica

Telefonia, radio, TV, internet, reti locali...comandi a distanza

Moderatore: Foto Utentejordan20

0
voti

[1] Error injection per canale di comunicazione fibra ottica

Messaggioda Foto Utentegvee » 27 ott 2025, 16:15

Un saluto a tutti O_/

Per un progetto personale sto usando una schedina FPGA con SFP ed un modulo transceiver a 6Gbps, con un cavo fibra ottica da 1m. Svariati km di cavo era fuori dal budget.

Essendo la lunghezza del cavo molto corta per apprezzare errori, l'obbiettivo che mi sono dato è inserire nella catena di comunicazione un error injection, per poter successivamente implementare un Reed Solomon per la correzione di errori.

Per dare un po' di contesto, il disegno che per il momento sto provando in simulazione è questo:


A parte il GTP sono tutti blocchi fatti da me (usare l'8b10b interno del GTP non mi divertiva molto), e sembra funzionare bene per il momento, in simulazione:

Screenshot_2025-10-27_13-59-30.png


Allo schema mancano gli LFSR di scrambling/descrambling più controllo di bypass per K symbols, che non ho ancora inserito nella catena ma almeno l'LFSR e pronto e testato.

Dunque, la domanda è: quale è il modus operandis professionale per applicare error injection in questi casi? Che io sappia esistono strumenti come protocol tester/analyzer (USB, PCIe, DP etc.) che svolgono queste funzioni ma costano una barca di soldi ovviamente, e a me servirebbe una soluzione low cost.. :mrgreen:
In fin dei conti non è un progetto professionale, pero c'è lambizione di fare le cose il meglio possibile.

Ho dunque pensato alle seguenti soluzioni con i suoi pro e contro:

  • LFSR con XOR mask variable in modo da fare lo scrambling/descrambling solo ad alcuni bit di entrata (ancora non ho deciso come controllarla), ne otterei una error injection pseudo-aleatorio, il beneficio è che in qualche modo posso controllare il numero di error bits.
  • TRNG: difficile se non impossible da simulare correttamente, ma otterei in implementazione una error injection il più possibile aleatoria con maggior probabilità di mandare in palla il Reed Solomon.
  • Sorgente di rumore esterna: non impossible, ma richiede condizionamento di segnale e la banda è limitata dall' ADC. Non mi convince per nulla.

Altro per il momento non mi viene in mente.
Qualche idea/suggerimento?

Grazie in anticipo.
O_/
Avatar utente
Foto Utentegvee
1.475 5 7
Sostenitore
Sostenitore
 
Messaggi: 526
Iscritto il: 11 feb 2018, 20:34

0
voti

[2] Re: Error injection per canale di comunicazione fibra ottica

Messaggioda Foto Utentegvee » 27 ott 2025, 18:47

Dunque, ho dato una occhiata (un po' veloce) a qualche standard e l'idea generale è sempre quella di iniettare interferenze dentro limiti safe in modo da non danneggiare le interfacce elettriche, p.e.:



In altri casi è molto utile usare una fonte con jitter superiore alle specifiche di funzionamento normale.
Mi ero scordato di questa soluzione ed in effetti è fattibile usando un clock con prestazioni povere ed adeguate allo scopo, quindi un po' di jitter non dovrebbe fare male...

Credo che la soluzione migliore tra quelle che ho listato sarà la prima, ovvero LFSR con XOR mask pseudo aleatoria, facile da implementare con un altro LFSR che potrebbe cominciare a scorrere a partire quando si ottiene del PLL, per esempio.. Ma sono ragionamenti fatti sul momento quindi da elaborare bene.. Proverò anche la soluzione con il clock scarso.

Sono sempre in ascolto per suggerimenti utili ed interessanti.

O_/
Avatar utente
Foto Utentegvee
1.475 5 7
Sostenitore
Sostenitore
 
Messaggi: 526
Iscritto il: 11 feb 2018, 20:34

2
voti

[3] Re: Error injection per canale di comunicazione fibra ottica

Messaggioda Foto Utentestefanopc » 27 ott 2025, 19:49

Coi protocolli moderni non saprei precisamente darti indicazioni.
Quando si utilizzava l'SDH invece il segnale gestito su questo genere di interfacce si divideva in due o più categorie tra cui le principali, Trama e Payload.
I controlli di errore venivano gestiti tramite il CRC di trasporto che veniva scritto nella trama ad ogni stadio di conversione ottico/elettrico.
Il ricevitore terminale poteva facilmente diagnosticare in quale punto del percorso si erano creati gli errori.
Per creare errori basta mandare in crisi lo stadio ricevente attenuando di proposito il mezzo trasmissivo.
Lo si faceva al collaudo con gli attenuatori variabili.
Indurre il trasmettitore a fare errori è spesso più pericoloso e in un sistema compatto come un modulo Sfp probabilmente quasi impossibile.
La fibra è facile da stressare in modo controllato ottenendo un attenuatore variabile abbastanza efficace anche se artigianale.
Per stressare si intende creare una curva più stretta del raggio minimo di curvatura in modo che una parte di luce fuoriesca dal suo percorso nel core.
Si fa frequentemente in campo per cercare con l'Otdr il giunto xyz o identificare un cavo ecc.
L'andamento del tasso di errore è abbastanza brusco all'aumentare della attenuazione al raggiungimento della soglia.
In pochi dB (2 o 3) si passa da 10^{-8} \: al fermo del collegamento.
Ciao
600 Elettra
Avatar utente
Foto Utentestefanopc
13,3k 5 9 13
Master EY
Master EY
 
Messaggi: 5567
Iscritto il: 4 ago 2020, 9:11

0
voti

[4] Re: Error injection per canale di comunicazione fibra ottica

Messaggioda Foto Utentegvee » 27 ott 2025, 21:08

Rispondo di fretta. Innanzitutto grazie per le info utili.

Lo schema anteriore è disegnato un po' di fretta, potrei benissimo mettere la corruzione all'uscita parallela del ricevitore (è un attimo). Per il momento non mi fido molto a piegare troppo la fibra, non è una Corning (il migliore o uno dei migliori produttori di fibra).

Darò una occhiata anche a qualche libro di optical communications.

O_/
Avatar utente
Foto Utentegvee
1.475 5 7
Sostenitore
Sostenitore
 
Messaggi: 526
Iscritto il: 11 feb 2018, 20:34

1
voti

[5] Re: Error injection per canale di comunicazione fibra ottica

Messaggioda Foto Utentestefanopc » 27 ott 2025, 22:57

Non volendo piegare troppo la fibra ci sono gli attenuatori fissi da 10 5 3 dB.
In ogni caso c'è il sistema di piegare senza rompere basta vedere chi lo fa comunemente una volta.
La differenza tra fibra lunga con attenuazione distribuita e attenuazione localizzata su una fibra corta ovviamente non produce esattamente gli stessi effetti.
Ciao
600 Elettra
Avatar utente
Foto Utentestefanopc
13,3k 5 9 13
Master EY
Master EY
 
Messaggi: 5567
Iscritto il: 4 ago 2020, 9:11

0
voti

[6] Re: Error injection per canale di comunicazione fibra ottica

Messaggioda Foto Utentegvee » 28 ott 2025, 11:35

stefanopc ha scritto:Non volendo piegare troppo la fibra ci sono gli attenuatori fissi da 10 5 3 dB.

Usare qualche attenuatore mi può sicuramente tornare utile. Vedo se ne trovo qualcuno ad un prezzo moderato.. :ok:
Avatar utente
Foto Utentegvee
1.475 5 7
Sostenitore
Sostenitore
 
Messaggi: 526
Iscritto il: 11 feb 2018, 20:34


Torna a Telecomunicazioni

Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti