Fisiolologia di una radio ( a 2,4 o 5 Ghz)
Questo articolo fa seguito al precedente “anatomia di una radio a 2,4 o 5 Ghz” e ne costituisce il seguito logico.
Avevo il problema di trovare un titolo per questa parte: dopo un poco di scraniatura mi è venuto quasi automatico di continuare sul parallelo “biologico“: ogni essere vivente ed in particolare gli animali ( e anche l’uomo…) sono delle strutture complessissime in cui troviamo una serie di organi ognuno con una sua struttura e un suo funzionamento che vengono tenute insieme e coordinate miracolosamente da un sistema di controllo e gestione che è il cervello….
Il paragone con una radio sembra un poco azzardata… ma il parallelismo anche se azzardato e molto lontano, in realtà esiste anche se ad un livello di complessità enormemente minore.
Cercherò di usare questo parallelismo per provare a portarvi a sentire la “naturalezza” di certe cose che ci troviamo ad approfondire nel nostro percorso verso l’utilizzabilità di una radio per i nostri scopi.
Tutti sicuramente sappiamo come funziona il nostro organismo anche se grossolanamente: ogni organo fa delle cose molto particolari e molto complesse; nel suo normale funzionamento ogni organo riceve però una serie di informazioni e comandi dal nostro cervello e fornisce come risposta una serie di dati e informazioni.
Il nostro cervello ha il compito di “controllare il funzionamento dei vari organi”, tramite il sistema nervoso che trasporta degli stimoli elettrici in maniera bidirezionale verso i vari organi e mantiene il coordinamento del tutto.
Ogni organo “espone” verso in cervello una certa “interfaccia”: è come se ogni organo mostrasse una serie di manopole e display al cervello, consentendo a quest’ultimo di impostare il funzionamento dell’organo e leggerne lo stato di funzionamento.
Il cervello ha la capacità di interpretare gli stimoli che provengono dagli organi e la capacità di analizzare, “ragionare”, sulla situazione corrente e “controllare” gli organi affinchè tutto vada nel modo giusto.
Volendo formalizzare un poco il tutto cercando di avvicinarci al nostro obiettivo ( la radio) poteremmo dire che ogni chip “espone” una interfaccia caratterizzata da una sua “API Application Programming Interface” .
Il cervello a sua volta si comporta come un computer che esegue un suo “programma” che interagisce con gli organi sfruttandone le API che vengono esposte: per ogni funzionalità che il cervello deve controllare ci dovrà essere una “funzione” che il cervello può usare tramite le API fornite per realizzare e controllare quella funzione.
Un organo/chip per poter essere controllato DEVE avere una sua API, altrimenti nessuno riuscirà a controllarlo!
Nei moderni sistemi elettronici, e per es. nelle nostre radio, troviamo esattamente lo stesso tipo di “stratificazione”.
Il primo livello, il più basso, è costituito dall’HW in senso stretto che è composto da pezzi fisici quali ad es. transistor, circuiti integrati, chips, etc. che vengono prodotti da ditte specializzate in aree funzionali specifiche in cui rappresentano delle “eccellenze”.
Difficilmente chi produce dell’HW fornisce una descrizione estremamente dettagliata delle cose che progetta e produce per una serie di ragioni:
- sarebbe estremamente difficile far conoscere a tutti gli “internals” di una certa funzione
- se anche fosse possibile, siccome dietro ci sta una mole di lavoro e conoscenze notevole è ben difficile che una azienda ne voglia far conoscere i dettagli per proteggere il suo lavoro
- si parla quindi di IP (Intellectual Propertiy) ovvero proprietà intellettuale per tutto quello che ci sta dietro ad un pezzo di HW
- l’IP diventa oggetto “economico” per cui le aziende spesso per evitare di re-inventare la ruota anzichè sviluppare da zero delle funzioni, preferiscono “comprare” la relativa IP da chi ha già sviluppato quella funzione risparmiando tempo e denaro.
- ovviamente sorge il problema di come far capire ai potenziali “utilizzatori” o “compratori” della IP di una certa funzione cosa in realtà fa quella funzione e come….
- la soluzione consolidata è che per ogni funzione viene in genere prodotta una “documentazione” che è finalizzata proprio a far capire cosa fa un pezzo di HW e come lo fa: questa documentazione non viene in genere resa pubblica se non in parte e solo quando quella funzione è ormai consolidata e disponibile per l’acquisto da parte degli interessati: questo implica spesso anche discorsi di brevetti per proteggere la “proprietà intellettuale” e consentire di monetizzare gli sforzi che ci sono dietro.
- come si fa allora a “vendere” una funzione se non ne posso parlare: si distribuisce la documentazione agli interessati chiedendo che firmino un “non disclosure agreement” ovvero un impegno legale a non ri-distribuire le informazioni ad altri, a pena di pesantissime sanzioni economiche.
- una parte essenziale di ogni funzione è proprio costituito da tutte le informazioni relative a come di può usare quella funzione e con quali API è possibile controllarla.
Capito quindi come gira il fumo dell’HW, diventa chiaro che ad un utilizzatore potenziale di quel pezzo di silicio poco importa sapere cosa ci sta dentro nei dettagli: quello che sicuramente gli interessa sono le funzioni che fa e come si possono “controllare e gestire”.
Il modo ormai standard per fornire queste informazioni è tramite dei documenti che descrivono per ogni chip le cose che abbiamo citato e come sia possibile collegarsi al chip stesso: questi dati costituiscono in genere il “datasheet” del chip.
Insieme al datasheet per ogni chip vengono forniti una serie di “programmi SW” che servono proprio per interagire con le funzioni interne al chip da parte di un “processore”: si parla di “hardware-dependent-software” ovvero più in generale di “BSP Board Support Package”.
Il BSP di un chip fornisce una serie di funzioni SW che implementano le famose API (Application Programming Interface) per quel chip: queste sono la chiave per capire che cosa fa il chip internamente e come eventualmente si può modificare il funzionamento del chip per fargli fare anche cose diverse o in modo diverso da come il produttore ha progettato il chip.
Come vedete siamo arrivati al punto chiave del nostro spirito di sperimentazione: l’utilizzatore normale non andrà mai a smanettare dove lo sperimentatore, grazie alle API dei circuiti, si avventurerà !!!!
Sorge però un problema: queste API sono interfacce SW; per usarle e per poter smanettare sull’HW bisogna fare un poco di strada ancora 🙂
Dobbiamo allora continuare nel nostro parallelo biologico per vedere come fare a far funzionare il cervello e il controllo da parte sua sugli organi della nostra radio…
Il cervello è niente di diverso (anche se per gli esseri viventi estremamente più complesso…) da un computer di casa nostra con la sola piccola differenza che i suoi “sensi” sono finalizzati non solo a colloquiare con l’uomo che è sempre presente, ma anche e soprattutto a colloquiare con gli altri “organi” della radio, ovvero i chips che costituiscono l’HW della radio.
Da un punto di vista fisico ormai esistono delle “interfacce” abbastanza standardizzate tra processori e pezzi di HW (chips), per cui non è un grosso problema.
Il reale problema è costituito da come via SW sia possibile arrivare ad usare le famose API esposte dai blocchi funzionali presenti nell’HW.
La chiave per realizzare questo è insita nel concetto di “stratificazione” (ovvero di layring in inglese): il concetto è sempre lo stesso di prima, ma applicato questa volta a pezzi di SW anzicchè a pezzi di HW !
Negli ultimi decenni c’è stato un enorme lavoro a livello di università, aziende e liberi cittadini su come organizzare il SW di un computer, di come far sì da coordinare le varie funzionalità e come alla fine riuscire ad utilizzare l’HW da parte di un computer.
Spesso queste attività a livello di SW si sono tradotte in delle funzionalità ben definite e rese ri-utilizzabili da altri in modo da poterle “monetizzare” nè più nè meno come per i chips HW. ne è derivato un enorme mercato di “IP SW” ovvero di Intellectual Properties SW che consentono ad aziende interessate di evitare di sviluppare delle funzioni e invece comprarle da chi le ha già sviluppate.
Mettendo insieme una serie di “chips SW” è quindi possibile realizzare la funzionalità del nostro cervello della radio!
In un futuro articolo cercherò di entrare nel dettaglio di come questo cervello interagisce con l’HW tramite le famose API… per il momento mi preme solo evidenziare in cosa si traduce il tutto…
In pratica tutto il SW necessario al funzionamento di un processore annesso ai chips che costituiscono l’HW della radio si traduce in un “file” all’interno del quale sono compresi una serie di pezzi di SW e che può essere “caricato” su di una memoria permanente presente sul circuito: si parla di “immagine FW” proprio per evidenziare che è un SW che diventa parte dell’HW e che contiene al suo interno tutto il necessario per far funzionare il dispositivo finito.
Quando un dispositivo quale la nostra radio viene acceso, parte automaticamente un pezzettino di SW/FW che si chiama “boot-loader” la cui funzione è quella di “montare” l’immagine FW e renderla disponibile al processore per poterne leggere tutto il resto del SW.
Il processore prende quindi in mano la situazione e comincia ad eseguire una serie di programmi il cui scopo è di creare l’ambiente esecutivo in cui il nostro cervello possa operare: è come uno che si sveglia di mattina e cerca di rendersi conto di che ora è, che tempo fa fuori, chi è in casa, chi sta facendo che cosa: questa fase prende il nome di “inizializzazione” dell’ambiente e può durare da qualche secondo a qualche minuto.
Durante l’inizializzazione il processore, inviando una lunga serie di comandi ai vari pezzi (chips) presenti sul circuito ne programma il funzionamento in modo da ottenere la funzionalità complessiva desiderata.
Una funzione importante che viene attivata è la cosidetta “GUI Grafic User Interface” o più in generale la modalità di interazione con l’operatore… umano !
Su questo tema dci intratterremo a lungo in seguito: per ora basti pensare che è il modo con cui l’utilizzatore del dispositivo può interagire con lo stesso per fargli fare quello che serve !
Finita l’inizializzazione il processore … si riposa 🙂
In cosa consista questo “riposo” che in inglese viene detto “idle” ovviamente dipende molto dal caso specifico.. ne parleremo anche di questo in seguito.
A questo punto , se siete ancora svegli 🙁 🙂 spero che vi sia più chiaro come frullano le cose in un moderno apparecchio radio….
In futuri articoli proverò ad approfondire il tema della struttura SW di una moderna radio, dei principali componenti del SW e di come noi radioamatori possiamo smanettarci sopra nel senso stretto del termine.
Un ulteriore tema che mi propongo di approfondire con voi riguarda la parte radio ed in particolare i “modi di trasmissione” che si possono utilizzare.
Caro Mike,tutto chiaro,ancora una volta,ti ringrazio e saluti Nereo
Ciao Michele,
come già avuto modo di comunicarti che il progetto è molto interessante ed utile in modo particolare a comunità non solo radioamatoriali. Occorre però tempo per poter memorizzare tutto il materiale che ci hai inviato, in special modo per noi ragazzi ottantenni. Grazie Mikè un caro saluto da I8YLW.
Caro Enzo …..
grazie per il commento !
come sai ed hai sicuramente sperimentato gli anni arrivati a 50 si contano … all’inverso 🙂 vedi tanti giovanotti novantenni o centenari !
il vantaggiodi questi giovanotti è che non si lasciano spaventare dalla novità perchè hanno sperimentato nella loro … vecchiaia ( quando avevano 30-40 anni…) che tutto è possibile con la calma e la pazienza…. 🙂
ciao
Michele