Ambiente di sviluppo integrato HIDE (HW Integrated Development Environment)

Primo articolo di presentazione di un nuovo ambiente di sviluppo integrato per progettisti elettronici sia hardware che software. Hardware Integrated Development Environment (HIDE)

Generalità
Mentre nel mondo del processing ad alte prestazioni rivaleggiano fra loro poche architetture che possiamo riassumere nei seguenti componenti:
- Pentium (by Intel)
- Atlon (by AMD)
- PPC (by IBM e Freescale)

Nell’ambito del processing con prestazioni più contenute o nell’ambito del controllo di processo stiamo vivendo un momento estremamente esplosivo, si e’ passati dai datati 8051 o PIC (micro-controller a 8 bit con prestazioni di 1 o poco più MIPS) a componenti di tutto rispetto come gli ARM 7 e poi 9 e poi “strong” con frequenze di lavoro che vanno da qualche decina di MHz, fino a 200MHz e poi a 500MHz.

La situazione si è ancora di più complicata con l’avvento dei componenti programmabili ad alte prestazioni (e dal costo molto contenuto) non più relegati a rimpiazzare qualche MSI ma piuttosto a creare una nuova architettura con caratteristiche che ormai hanno poco da invidiare a strutture di calcolo più generali.

Il problema, in tutta questa abbondanza di risorse, e di come ci si può muovere per evitare spreco di risorse economiche, di persone e di tempo. Ogni fornitore di chip mette in vendita, o direttamente o tramite terze parti, schede di valutazione del prodotto, ma ciò non aiuta ancora l’utente a destreggiarsi facilmente, in genere queste evaluation board hanno lo scopo di aiutare il progettista a raggiungere le performances più alte permesse dal chip.

Noi, discreti conoscitori della tecnologia, dei prodotti, delle difficoltà di progettazione e altro pensiamo di poter aiutare l’utente proponendo un sistema che, permetta la valutazione, la comparazione e alla fine la scelta dell’architettura che meglio sposa il requisito dell’utente stesso.
La nostra soluzione consiste nel HIDE (HW Integrated Development Environment).

Cos’è HIDE
HIDE e’ una idea che permette di valutare, provare, studiare e infine scegliere l’architettura che meglio sposa il requisito del sistemista senza pero’ dover aspettare tanto tempo o perdere molto denaro prima di poter fare una prova conclusiva. In pratica noi cerchiamo di offrire supporto per la “connessione” (in senso lato) di tecnologie vicine ma forse con poche comunanze, oppure che richiedono requisiti di conoscenza non cosi’ facili da trovare.

Facciamo un esempio pratico
Supponiamo che un utente voglia realizzare una funzione per la quale il micro che ha individuato, tramite un proprio sistema di valutazione, e’ sufficiente per il processing dei dati ma si debba pero’ accompagnare a qualche altro elemento magari con più velocità.
Un esempio pratico potrebbe essere:
Devo campionare un segnale a frequenze molto alte (magari solo poche migliaia di campioni a 20 o 50MHz) ma poi’ avrò tutto il tempo necessario per analizzarlo.
Ora un micro con capacità medie di velocità potrebbe fare il processing ma sicuramente non potrebbe effettuare la cattura dei dati, che andrebbe fatta da un altro elemento con capacita’ di processing contenute ma molto veloce.
Fra i due si potrebbe interconnettere un FIFO o una memoria doppia pagina e’ il gioco e’ fatto.
Ora proviamo a vedere quanto tempo di sviluppo e che capacita’ di conoscenze sono necessarie, partiamo dal progetto HW:
- si deve conoscere come connettere il micro
- si deve conoscere come connettere l’altro elemento di processing (magari un DSP)
- e infine dobbiamo saper connettere una FIFO o equivalente.
Diciamo che probabilmente servono due profili per 1 mese.
Veniamo al SW:
- serve una conoscenza del micro general purpose
- ma serve anche una conoscenza per il DSP (o comunque l’altro processor).

Diciamo che anche qui’ forse due persone sono necessarie, immaginiamo fra l’altro che probabilmente ci si dovrà dotare di due ambienti di sviluppo diversi.

Ma tutto ciò non e’ ancora una cosa difficile, il problema vero e’ che prima di diversi mesi (ipotesi 3 mesi) non sarà possibile fare alcuna prova vera ma solo speculazioni teoriche su un qualche simulatore.
Come sarebbe bello poter dividere il problema, far lavorare le persone in parallelo, in pratica come sarebbe bello poter iniziare a provare domani lavorando anche in parallelo e magari con un HW e pate di FW gia’ sviluppati.

Maggiori informazioni
[email protected]

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend