Page 1 of 1

Ciao a tutti

PostPosted: 09 Jul 2014, 10:46
by cernpassion
Ciao a tutti,

Come ben potete immaginare (dal mio username) lavoro al CERN nel'ambito dosimetria ed effetti delle radiazioni sui componenti elettronici :)
Sono capitato su questo forum veramente per caso cercando su google un soft core rad-tollerant per FPGA.

Sono un ingegnere elettronico e sto finendo il mio dottorato, sono sempre stato appassionato di elettronica e sopratutto di FPGA.

Un saluto a tutti

Re: Ciao a tutti

PostPosted: 09 Jul 2014, 11:37
by deluca
ti dò il benvenuto, cern-passion,

avete già avuto esperienza o sviluppato soft-core/IP-core di questo tipo per FPGA commerciali standard?

Re: Ciao a tutti

PostPosted: 09 Jul 2014, 12:35
by legacy
Al Cern ne hanno di giocattoli interessanti, a cominciare p.e. dal vostro interprete C poi evoluto a framework di analisi. Mi ricordo ancora il mega baco per il quale se buttavi un numero in console, un numero a caso, chesso' "2;" crashava all'istante perche' in un punto del parser quel numero veniva interpretato come indirizzo, sicche' all'esegutivo veniva tradotto in "salta all'indirizzo 0x0000.0002" e … :lol:

Questo per dire che cosa ? Che anche al Cern per mettere a punto un oggetto complesso, per validarlo, serve un grosso effort, tante ore uomo, e diverse attività testing.

Il Cern rilascia i sorgenti di quel bellissimo capolavoro, pero' … tutti gli altri che ho visto io … un bel po' meno.

In sostanza sto ipotizzando che sia molto ma molto dura vedere in rete un SoftCore hardened validato, io personalmente non ho visto che proof of concept al taglio didattico dell'elaborato accademico.



p.s. tu hai mai validato un SoftCore ? Non ci volevo entrare in queste faccende, c'e' un mio amico che si e' messo in testa di far funzionare un "coso" pipelined ad alte prestazioni (e per fortuna non superscalare e non execution out of order, e con una branch prediction abbastanza bovina) sicche' indossando il cappello ed il cinturone da cow boy alla console ecco che al botteghino degli bug's hunters hanno gia' battuto 19 taglie "dead or alive wanted" di cui ancora 17 latitanti :lol:

Re: Ciao a tutti

PostPosted: 09 Jul 2014, 13:06
by cernpassion
Ciao Giovanni e Legacy!

Qui l'approccio e' un po diverso... in primis che io sappia, nessuno usa un SoftCore... nessuno si fiderebbe di usare un microcontrollore, e infatti nessuno li usa. Come gia sapete ci sono tanti, tanti, tanti aspetti da considerare sia sotto il punto di vista di sviluppo hardware/firmware(HDL) sia dal punto di vista software.
Pero' questo e' quello che succede intorno a me, e non e' una questione generale di tutto il CERN. Quindi poiche sono di ampie vedute :) mi guardo intorno.
Nel mio caso un softcore sarebbe utile nel caso in cui mi permetterebbe di ridurre i tempi di sviluppo senza intaccare l'affidabilita'.
Cosa ne pensate?

Ciao da Ginevra

Re: Ciao a tutti

PostPosted: 09 Jul 2014, 13:07
by cernpassion
Ah inoltre la curiosita' e l'interesse mi e' venuta quando ho visto una presentazione di una azienda che parlava di openMSP430 rad-tol .... il fatto e' che l'utilita di un soft core cosi complesso io la devo ancora capire...

Re: Ciao a tutti

PostPosted: 09 Jul 2014, 13:29
by legacy
eh, lo capisco benissimo, provengo dal mondo Avionico dove nessuno si fida di alcun microcontrollore, in sostanza perche' credono poco a come bene possa reagisca l'hw a fronte di guasti, sicche' molte parti sono ancora elettromeccaniche, esattamente come nel ferroviario.

Re: Ciao a tutti

PostPosted: 10 Jul 2014, 19:13
by Leonardo
Benvenuto, quali FPGA utilizzi?

Ciao

Re: Ciao a tutti

PostPosted: 24 Jul 2014, 10:10
by cernpassion
Ciao Leonardo,

ho usato un po tutte le FPGA sul mercato da Xilinx, Altera e Actel/Microsemi.

Ciao

Re: Ciao a tutti

PostPosted: 24 Jul 2014, 13:30
by legacy
alla fine hai trovato qualcosa ?

per livelli di complexity, prima della rad-tol, c'e' il fault-tollerant, che e' un pelo + abbordabile

Re: Ciao a tutti

PostPosted: 24 Jul 2014, 13:44
by cernpassion
Alla fine non ancora, sono molto interessato a questo soft core minimale chiamato 'J1' che si puo' programmare in Forth. Renderlo fault-free non dovrebbe essere complicato.

Re: Ciao a tutti

PostPosted: 24 Jul 2014, 15:23
by legacy
Fort1 ? Una stack machine ? Io non ci investirei un pico secondo in un affare del genere. Per la cronaca un coso simile hanno provato ad infilato modi GPU in prodotti hobby e … nella V2 sono passati a tutt'altro, segno che non e' che sia sta gran crema.

Re: Ciao a tutti

PostPosted: 25 Jul 2014, 09:57
by cernpassion
Il buono di avere un core cosi minimale ha il vantaggio che essendo poco complesso si puo rendere rad-tol molto semplicemente. Poi, essendo sempre scettico nell'uso di soft core per applicazioni critiche o cmq per applicazioni complesse, un soft core di quel genere sarebbe utile per inizializzare componenti esterni con complesse e lunghe inizializzazioni, oppure per eseguire semplici state machine.. Che ne pensate?

Re: Ciao a tutti

PostPosted: 25 Jul 2014, 11:21
by legacy
cernpassion wrote:Il buono di avere un core cosi minimale ha il vantaggio che essendo poco complesso si puo Che ne pensate?


io penso che un coso stack-machine non lo userei mai! A parte il fatto che a programmare in Fort ci sono si e no 4 gatti al mondo (e ci fanno pure poco, e' troppo poco produttivo come approccio), a parte ciò, direi anche per il fatto che non e' proprio vero che il suo modello semplificato poi ti semplifichi la faccenda, anzi, secondo me le cose si complicano appena hai a che fare non con un solo softcore ma con N softcore ridondati di cui un voter si preoccupa di gestirne la coerenza.

E' un po', come dicevo, la scommessa che han fatto con GameDuino1: avevan pensato che il Forth1 avrebbe aiutato per il suo modello semplificato: risultato ? Quasi subito tutta la community e' switchata su GameDuino2 che usa una GPU ASIC di tutt'altro genere. Fa riflettere su quanto sia pure castrante come aggeggio.

Re: Ciao a tutti

PostPosted: 26 Jul 2014, 17:07
by deluca
@cerpassion
Sarebbe interessante aprire un topic apposito, visto l'interesse mostrato.

Il soft-core che intendi sviluppare dovrebbe essere impiegato in sistemi distribuiti slow-control?
Noi abbiamo scelto la versione soft-core di avr-atmega per la facilità di programmazione, infatti alla fine utilizziamo
tutti i tools che usiamo normalmente per la versione silicio.

La seconda versione del soc a cui stiamo lavorando vedrebbe l'utilizzo di memorie esterne mram che migliorerebbe notevolmente la resistenza alle radiazioni, specialmente TID e SEU.