Grazie per i tuoi consigli. Posso secondo te condividere le risorse hw di una board FPGA per fa dialogare due dispositivi identici uno connesso con un Host usb e l'altro con lo slave?
Certo puoi farlo, diciamo che si può fare praticamente tutto anche con una singola FPGA con a bordo abbastanza risorse (quindi abbastanza costosa
)
Devi chiarire cosa intendi prima di tutto con USB: USB 1.1, 2.0 o 3.0? Al salire della velocità.. aumentano i problemi.
L'USB ha sempre dietro di se un software molto complesso perché è una comunicazione che funziona a pacchetti (con crc, token, handshake, etc..) quindi gestire tutto in hw è abbastanza complicato, non a caso le IP USB spesso.. non hanno neanche il prezzo pubblicato.
L'USB ha poi un suo diciamo standard elettrico che può non essere compatibile con la FPGA che in genere lavora ad una tensione minore. Serve quindi almeno un USB PHY esterno alla FPGA in molti casi se non lo ha già la dev-board.
Il consiglio che ti posso dare è quello di comprare per il prototipo un paio di convertitori USB->UART che si occupano di tutto. Potrebbero esistere anche dev-board con già a bordo uno di questi convertitori (o qualche altro chip che si occupa dell'USB), Giovanni magari ne sa di più.
Ciao