DS Logic - Better Embedded

Transcript

DS Logic - Better Embedded
DS Logic
Multifunction
Instruments For
Everyone
Streaming LIVE
Massimiliano D’Ambrosio
google.com/+MassimilianoDAmbrosio
@iv3unm
plus.hacklabudine.it
plus.gdgudine.it
DSLogic
Multifunction Instruments For Everyone
DSLogic
Multifunction Instruments For Everyone
Cos’è?
DS Logic è un strumento multifunzionale “openhardware” composto da una
board principale basata su una FPGA. Multifunzionale perché grazie a moduli
da collegare alla board, la trasformano in uno strumento da laboratorio in grado
di coprire diverse esigenze di analisi.
Cosa può diventare? Un analizzatore di stati logici e protocollo, un oscilloscopio
digitale, RF analyzer… ma grazie sua natura open puoi essere tu stesso a
sviluppare dei moduli aggiuntivi in vari settori, per esempio in quello medico.
La DSLogic si collega al nostro computer tramite l'USB dove il software
permette di acquisire i dati, analisi del protocollo, e la relativa rappresentazione
grafica.
4 DSLogic
hardware
Componenti
principali
256Mbits
SDRAM
(16Mbit
per CH)
USB
Controller
FPGA Xilinx
Spartan-6 (xc6slx9)
USB 2.0
FPGA
Field Programmable Gate Array
FPGA è la parte cruciale di tutto il sistema.
Si occupa della aquisizione del dati. Questi vengono
elaborati dal software DSLogic.
Nella versione definitiva della board è stato
utilizzato un FPGA Xilinx della famiglia
Spartan®-6 LX nella versione xc6slx9
Le prestazioni di questo FPGA permettono di
avere un Maximum sample rate di 400MHz.
Un dispositivo Field Programmable Gate Array è un circuito integrato le cui funzionalità sono
programmabili via software. Tali dispositivi consentono l'implementazione di funzioni logiche anche
molto complesse, e sono caratterizzati da un'elevata scalabilità. // fonte wikipedia
Caratteristiche
Interface Specs
CH15 ~ CH0:
Recommanded input voltage range: -0.6V to +6V
Absolute input voltage range: -30V to +30V
Input impedance: 250Kohm
Maximum Input Bandwidth: 50MHz
Compatible voltage systems: 1.8V/2.5V/3.3V/5V
Threshold for 1.8V to 3.6V: 0.7V(Low) / 1.4V(High)
Threshold for 5V: 1.4V(Low) / 3.6V(High)
CLK, TI, TO:
Compatible voltage systems: 3.3V
Maximum state clock: 50MHz
Sample Specs
Maximum sample rate:
4 channels @ 400MHz
8 channels @ 200MHz
16 channels @ 100MHz
Maximum sample depth:
Total 256M (16M samples per
channel)
DSLogic
extension
Dei moduli permetto di estendere le funzionalità. Questi si collegano alla board
principale.
Sono disponibili i moduli oscilloscopio e wireless.
Ma possiamo anche noi sviluppare i moduli da abbinare alla DSLogic in base alla nostre
esigenze, per analisi e/o rappresentazione dei dati.
DSLogic
Wireless extension
Wireless Specification
●
●
●
●
●
●
300 foot range at 250kbps
On-board ceramic 2.4GHz Antenna
250kbps, 1Mbps and 2Mbps on air data rates
Auto ACK
Auto Re-Transmit
6 data pipe MultiCeiver™
Oscilloscope
Oscilloscope Specification:
●
●
●
●
●
●
●
Bandwith: 30MHz
Max Sampling Rate: 200MHz @ 1 Channel / 100MHz @ 2
Channels
Input Channels: 2 Channels
Input Range: ±50 mV ~ ±50 V
Input coupling: AC / DC
Input characteristics: 1 MΩ ∥ 15 pF
Overvoltage protection: ±100 V (DC+AC peak)
3 DSLogic
software
DSLogic
Multifunction Instruments For Everyone
●
●
●
DSLogic software è opensource rilasciato con licenza GNU General
Public License (GPL), versione 3
È disponibile per
○ Windows
○ OS X
○ GNU/Linux e su altri OS e/o su hardware diverso, come ARM,
compilando i sorgenti.
si scarica da:
http://www.dreamsourcelab.com/download.html
https://github.com/DreamSourceLab/DSLogic
il software DSLogic si basa sul progetto opensource sigrok.
È una suite di software per l'analisi del segnale che supporta vari tipi di
dispositivi.
Logic analyzers
Mixed-signal devices
Oscilloscopes
Multimeters
LCR meters
Sound level meters
Thermometers
Hygrometers
Anemometers
Light meters
Energy meters
DAQs
Dataloggers
Function generators
RF receivers
Spectrum analyzers
Power supplies
GPIB interfaces
Potential other
candidates
www.sigrok.org
sigrok è in grado di decodificare diversi protocolli come:
USB
I2C
I2S
SPI
CAN
1-WIRE
…
Per un elenco completo http://www.sigrok.org/wiki/Protocol_decoders
------------------------------------------------------------------------------INSTALL
------------------------------------------------------------------------------Requirements
libsigrok4DSLoigc
- gcc (>= 4.0)
- make
- autoconf >= 2.63
- automake >= 1.11
- libtool
- pkg-config >= 0.22
- libglib >= 2.32.0
- libzip >= 0.10
- libusb-1.0 >= 1.0.16
- check >= 0.9.4 (optional, only needed to run unit tests)
DSLgoic-gui
- git
- g++
- make
- libtool
- pkg-config >= 0.22
- cmake >= 2.6
- libglib >= 2.28.0
- Qt >= 4.5
- libboost >= 1.42 (including the following libs):
- libboost-system
- libboost-thread
http://www.dreamsourcelab.com/download.html
- libsigrok4DSLogic >= 0.2.0
https://github.com/DreamSourceLab/DSLogic
DSLogic-gui
Alcune funzione del software
Protocol decoders
Attualmente decodifica i seguenti bus: I2C, SPI, seriale DMX512 e bus 1-wire.
Altri saranno aggiunti anche con l’aiuto della communita.
Trigger System
Sistema di trigger semplice ed avanzato è supportato da DSLogic. I pulsanti di
trigger possono attivare rapidamente flag uno stato alto, basso, fronte di salita o di
discesa. Possiamo impostare anche un insieme di trigger per una comparazione.
Pattern Search
È una caratteristica importante dell’ analizzatore logico. Tuttavia, possiamo solo
trovato su analizzatore logico high-end.
2 DSLogic
é openharware
?
Il progetto DSLogic oggi è
openhardware?
Hanno promesso che il
progetto sia opensource sia
per quanto riguarda la parte
hardware che software.
Per la seconda abbiamo i
sorgenti del software.
Per la parte hardware
attualmente solo gli schemi
della board solo in PDF.
Questo NON è sufficiente
per essere openhardware.
Definizione: I principi dell’Open Source Hardware
(OSHW) 1.0
http://www.oshwa.org/definition/italian/
1. La documentazione
L’hardware deve essere rilasciato con la
documentazione, inclusi i file di progettazione, e
deve permettere la modifica e la distribuzione dei
file di progettazione. Se la documentazione non è
fornita con il prodotto fisico, ci deve essere un modo
ben pubblicizzato di ottenere tale documentazione per
non più di un ragionevole costo di riproduzione,
preferibilmente il download via Internet senza spese.
La documentazione deve includere i file del
progetto nel formato preferito per apportare
modifiche, ad esempio, il formato nativo del file di
un programma CAD. File di progettazione
volutamente offuscati non sono ammessi. Forme
intermedie analogiche al codice informatico compilato,
non sono ammessi come sostituti. La licenza può
richiedere che i file di progettazione siano forniti in
formato open.
Leggendo il primo punto della definizione vediamo che manca
a.
Schema elettrico disponibile in formato CAD scaricabile dal sito del
produttore // È disponibile solo in PDF
b.
Layout del PCB (file gerber) // scaricabile dal sito del produttore
c.
elenco dei componenti/materiale disponibile in singoli pezzi (Bill of
Materials BOM) // normalmente disponibile direttamente da
distributori/rivenditori di componenti elettronici...
Speriamo che venga rilasciato
tutta la documentazione come
promesso.
DSLogiC + EMBEDDED
Sul mercato troviamo diverse board
embedded da abbinare al DS Logic ottenendo
un sistema completamente aperto.
Ottenendo uno strumento da personalizzare in
base alle nostre necessità.
Possiamo compilare DSLogic su ARM senza
problemi.
La sua flessibilità ed i bassi costi strizza l’
occhio anche verso i maker.
1 DSLogic
un po di storia su come è nato questo progetto
https://www.kickstarter.com/projects/dreamsourcelab/dslogic-multifunction-instruments-for-everyone
Il progetto è stato lanciato su Kickstarter a
dicembre 2013 dalla dreamsourcelab.com
Il primo goal a $ 10K
raggiunto in pochi giorni
(60% nelle prime 24 ore).
Hanno definito dei goal
successivi con delle
modifiche hardware ed
opzioni rispetto al progetto
originale.
Con i 30K c’è stato la
modifica più significativa con
il cambio della FPGA. questo
ha permesso di migliorare le
prestazioni del DSLogic
0 domande?
massimiliano@beaglebone:~$ cat contact.json
{
"Name":"Massimiliano D'Ambrosio",
"G+":"google.com/+MassimilianoDAmbrosio",
"Twitter":"@iv3unm",
"HackLab Udine": {
"Site":"www.hacklabudine.it",
"G+":"plus.hacklabudine.it",
"Twitter":"@hacklabudine",
"memo":"unOfficial Community BeagleBone Italia"
},
"Google Developer Group Udine": {
"Site":"www.gdgudine.it",
"G+":"plus.gdgudine.it",
"Twitter":"@gdgudine"
}
}
massimiliano@beaglebone:~$ sudo shutdown now
[sudo] password for massimiliano:
Broadcast message from root@beaglebone (pts/0) (Sat May 10 20:33:39
2014):
The system is going down to maintenance mode NOW!