• Non ci sono risultati.

Con il termine architettura si indica l’insieme di componenti, funzioni e design di riferimento in base a cui un sistema deve essere pensato, costruito e sviluppato. Essa descrive i com- ponenti che caratterizzano il sistema preso in esame, le loro funzioni e in che modo sono legati tra loro attraverso delle interfacce fisiche. A queste ultime corrispondono altrettante interfacce logiche per le funzioni.

Un’architettura non descrive in che modo un sistema deve essere implementato, ma indica le linee guida da seguire per il costruttore. Queste regole devono essere tali che, quando i componenti hardware e software sono messi insieme, si possa ottenere un sistema che lavori con prestazioni non inferiori ai limiti prestabiliti in fase di progetto. Per un sistema `e molto importante una caratterizzazione attraverso diversi livelli di astrazione. Un tale approccio

consente di scomporre un problema complesso in sottoproblemi facilmente gestibili con una progettazione modulare (se si vuole aggiungere un nuovo servizio, pu`o darsi che sia necessario modificare le funzioni di un solo livello, riutilizzando le operazioni svolte dagli altri livelli). L’architettura di un Software Radio pu`o essere idealmente suddivisa in quattro livelli di astrazione:

ˆ Hardware Platform: questo `e il livello pi`u basso e comprende moduli programmabili, quali processori e logiche programmabili ( DSP, FPGA).

ˆ Radio Infrastructure: in questo livello i dati utili sono distribuiti ai diversi compo- nenti della piattaforma hardware.

ˆ Radio Applications: in questo livello i processi lavorano insieme per supportare una applicazione radio, inoltre tale strato prevede protocolli wireless e protocolli standard per lo scambio dati come TCP/IP.

ˆ Communications Services: nel pi`u alto livello di astrazione le applicazioni software consegnano agli utenti i servizi di comunicazione.

Tra i diversi livelli di astrazione esiste un legame che, generalmente, `e ottenuto attraverso una Applications Programming Interface( API) che fornisce una sintassi per accedere ai servizi offerti dal livello sottostante. In una architettura SR le applicazioni software devono essere totalmente astratte dalla piattaforma hardware utilizzata, in modo da ottenere la flessibilit`a tipica di un terminale siffatto. Questo obbiettivo pu`o essere raggiunto attraverso quello che si definisce “middleware”. Il middleware pu`o essere considerato come uno strato di software che si trova tra il sistema operativo e le applicazioni che possono essere supportare dal sistema. Grazie ad esso `e possibile sia l’integrazione dei diversi standard di comunicazione sia la comunicazione tra sistemi distribuiti che utilizzano hardware, sistemi operativi e linguaggi di programmazione diversi.

Il middleware pi`u appropriato per implementare un SR `e quello che prevede l’uso di una programmazione Object Oriented, che consiste nel suddividere il sistema in componenti in- dipendenti chiamati “oggetti” definiti via software. Un oggetto pu`o essere considerato un contenitore astratto che contiene codici, dati e informazioni relative sia al suo comportamento sia alle funzioni che svolge. Pi`u precisamente un oggetto `e identificabile come un insieme di variabili, messaggi e “methods”. Le variabili contengono dei dati utili per l’oggetto. I messaggi vengono utilizzati per la comunicazione con il resto del sistema. I methods sono dei codici che permettono di implementare ogni messaggio, ciascun methods restituisce un valore che rappresenta la risposta al messaggio. Attraverso la sua interfaccia un oggetto mostra le sue

funzionalit`a, ma non consente di accedere alla sua essenza, di conoscere il modo in cui opera. Nel caso specifico di SDR i moduli corrispondono proprio ai vari elementi degli stadi di un sistema di trasmissione (filtro, amplificatore, antenna, ecc.). Utilizzando tale sistema viene semplificato lo studio funzionale, la riusabilit`a del codice e il suo aggiornamento.

Il modo pi`u appropriato per implementare un sistema SDR, mantenendo la massima flessibilit`a, si realizza attraverso l’uso degli Object Brokers che costituiscono il middleware pi`u utilizzato, il CORBA (acronimo di Common Object Request Broker Architecture). Tale metodologia `e basata sulla programmazione Object Oriented ed `e in grado di fornire le astrazioni necessarie per sviluppare applicazioni distribuite, svincolandosi dall’eterogeneit`a della rete. Per lo sviluppo della struttura di comunicazione, e quindi per lo sviluppo di oggetti server (entit`a passive che offrono servizi) e oggetti client (entit`a attive che accedono ai loro servizi), lo standard CORBA definisce, mediante il linguaggio IDL (Interface Definition Language), un insieme di interfacce di base che si preoccupano di gestire la comunicazione tra moduli che, in mancanza di questo strumento, non potrebbero in alcun modo interagire. IDL definisce quindi la sintassi che un client deve utilizzare per richiedere di utilizzare dei servizi offerti dal server. Il programmatore, quindi, lavora esclusivamente ad alto livello e ha solo la responsabilit`a di definire le strutture dati che devono essere scambiate.

Con CORBA un qualsiasi programma su un calcolatore, con un qualsiasi sistema operativo e linguaggio di programmazione, pu`o interoperare con qualunque programma che gira su una qualunque macchina remota.

2.2.1 Architettura Software

Per implementare dentro una SDR, un sistema che deve essere compatibile con altri sistemi, `

e necessario utilizzare una architettura comune, standardizzata e aperta. In questo modo i produttori possono far riferimento ad un unico modello, rendendo possibile la compatibilit`a tra dispositivi diversi. Un’architettura aperta non `e definita attraverso regole molto strette, ma rappresenta pi`u una visione concettuale. Non indica quale sia l’implementazione di un sistema, ma le caratteristiche principali che questo deve avere. L’utilizzo di una tale architettura permette di ottenere dei vantaggi commerciali notevoli. Il fatto che esista un unico modello di riferimento per i diversi produttori promuove la competizione tra loro, quindi una probabile diminuzione dei prezzi nel mercato.

Nel mondo l’adozione di standard software per lo sviluppo della SDR `e promossa da due organizzazioni . La Software Communications Architecture Specification (SCAS o pi`u sem- plicemente SCA), scelta dal progetto JTRS (Joint Tactical Radio System), fissa gli obbiettivi

per i futuri sistemi di comunicazione (ad esempio l’aumento della flessibilit`a dell’interoper- abilit`a, dell’aggiornamento e la riduzione dei costi di supporto, acquisizione e operazione). L’altra azione invece `e portata avanti dal SDR-forum, che ha sviluppato la cosidetta Dis- tributed Object Computing Software Radio Architecture (DOCSRA), una struttura software per architetture radio aperte, e le cosidette object-oriented radio che hanno la possibilit`a di essere programmabili via software. Questa struttura usa le metodologie raccomandate dal IEEE per la descrizione di una architettura.

Le due architetture, SCA e DOCSRA, sono entrambe di tipo object oriented ed hanno idee simili e alcune caratteristiche comuni. Nel prossimo capitolo si analizzar`a pi`u in dettaglio lo standard SCA che sta alla base di questo lavoro.

2.2.2 Architettura Hardware

L’architettura di una Software Defined Radio ideale basata su DSP `e mostrata in figura 2.2, si noti che il convertitore A/D ha al suo interno un filtro anti-aliasing e che il convertitore D/A ha internamente un filtro ricostruttore. La SDR ideale ha le seguenti caratteristiche:

ˆ Gli schemi di modulazione, di equalizzazione, dei protocolli e di canalizzazione per il trasmettitore e per il ricevitore sono realizzati internamente al digital processing subsystem via software. Tuttavia come gi`a evidenziato prima c’`e una grande variet`a di soluzioni hardware per l’elaborazione del segnale in sostituzione del DSP.

ˆ Il circolatore ideale `e usato per separare il segnale trasmesso da quello ricevuto, questo componente vanta un perfetto accoppiamento sia con l’antenna che con l’amplificatore di potenza, cosa utopica in realt`a. L’alternativa `e il diplexer, un componente a frequenza fissa all’interno della radio.

ˆ L’amplificatore di potenza lineare, o linearizzato, fornisce un segnale ad elevata potenza in trasmissione con bassa emissione sui canali adiacenti. Notiamo che possiamo ottenere questa caratteristica attraverso una sintesi a RF, in questo caso la funzione del con- vertitore D/A e dell’amplificatore di potenza possono essere combinati in un singolo blocco.

ˆ Filtri anti-alias e filtri ricostruttori, sono necessari in questo tipo di architettura ma non sono mostrati in figura 2.2. Questi, tuttavia, dovrebbero essere relativamente facili da implementare assumendo che i convertitori A/D e D/A hanno frequenze di campionamento di molti GHz. Al giorno d’oggi trasmettitore e ricevitore possono raggiungere eccellenti rate nei terminali portatili e specialmente nelle base station. Il principale cambiamento sarebbe trasformarli da passa banda a passa basso dove serve. Il ricevitore che mostra lo schema di figura 2.2 `e definito ideale in quanto ci sono parti che introducono problemi come ad esempio:

ˆ l’ADC a radiofrequenza `e molto difficile da realizzare

ˆ le parti analogiche che operano a radiofrequenza supportano con grande difficolt`a il ”multiband”, infatti, allo stato attuale, `e necessario utilizzare pi`u stadi che elaborano il segnale analogico a radiofrequenze, facendoli operare in parallelo.

Come gi`a detto queste sono solo alcune delle problematiche relative alle caratteristiche del- l’implementazione di un sistema SDR.

Documenti correlati