Domanda di alto livello CPLD

M

mikez

Guest
Mi scuso in anticipo per non essere un tipo tecnico, ma ho una domanda sull'uso del CPLD.Sto lavorando su un PC basato su un'applicazione che coinvolge conteggio impulsi 50-60 sensori diversi (impulsi possono essere provenienti da sensori nel più breve tempo ogni 350 microsecondi o giù di lì).Speravo di scaricare un sacco di I / O funzioni dal PC su una CPLD, e quindi avere il PC appena letto il numero della CPLD.Il PC sarà in esecuzione un RTOS, e deve essere aggiornato con sensore di corrente conta ogni 500 microsecondi.Questo tipo di architettura fattibile?

Qualsiasi direzione sarebbe molto apprezzato!

 
Ciao

Non riuscivo a capire il tuo problema in chiaro.Che cosa ho ottenuto dalle sue parole è necessario un interruttore di circuito, come per selezionare uno tra i molti sensori di dati.E 'possibile con un CPLD ad una frequenza più alta.Se si è in grado di spiegare il problema in parole semplici, allora si aprirà presto una soluzione da esperta techies molti così.

Cordiali saluti,
Vishwa

 
Nella mia idea l'architettura è fattibile,

Qual è la larghezza di impulso minimo?
Sono questi impulsi sincrono con l'altro?O completamente asincrono?
PC legge i contatori ogni 500US?Pulse venire negli intervalli di 350US?Poi si passa un po 'per esempio 6 in contrasto con il pc che mostra il numero totale di impulsi ricevuti in questo periodo.ok?

 
Che tipo di interfaccia tra il CPLD e il PC?

Presumo che significa che ogni sensore * * uscite impulsi a 350US tasso.

La vostra garanzia di tasso di 500US RTOS con occasionali ritardi più lunghi no?350US è la frequenza del polso più veloce?Se sì, allora ogni sensore uscite di non più di due impulsi per RTOS leggere, quindi a due bit contatori sarebbe sufficiente.60 sincronizzatori input più 60-bit contatori due sembra fattibile a medio o grande CPLD, anche se vorrei scegliere un piccolo FPGA come Spartan-3.

 
Citazione:

Qual è la larghezza di impulso minimo?

Sono questi impulsi sincrono con l'altro?
O completamente asincrono?

PC legge i contatori ogni 500US?
Pulse venire negli intervalli di 350US?
 
Ciao Mike ...

Perché non si pensa di utilizzare un Microcontroler invece di un CPLD?Si potrebbe utilizzare uC per acquisire i segnali e potrebbe trasmettere al PC via interfaccia RS232 o USB (più costoso).

Forse si deve usare una semplice logica combinatoria o di un elevato I / O UC.Comunque se avete bisogno di utilizzare un periodo di circa 700us devi usare un hardwre dedicato al trattamento dei segnali e inviarlo per PC o utilizzare un sistema operativo molto dedicato.Ad esempio, Windows dal lavoro se il default più di 10ms.Non so su sistemi POSIX.Tuttavia per un uC è facile.

Si tratta di una più giusta idea

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Sorriso" border="0" />Saluti

 
È stata selezionata l'interfaccia tra tra la CPLD e il PC?Suona come si deve leggere almeno 240 kilobit / s (60 canali di due bit di ogni 500US).

Un piccolo FPGA ha costare approssimativamente simile a un medio-grande CPLD, FPGA e le è molto più flessibile (abbondanza di spazio per crescere).Tuttavia, la FPGA richiede una configurazione PROM esterna.

Renato - microcontroller probabilmente non va bene perché il progetto è 50-60 input di impulso, non uno solo.

 
Citazione:

Perché non si pensa di utilizzare un Microcontroler invece di un CPLD?
Si potrebbe utilizzare uC per acquisire i segnali e potrebbe trasmettere al PC via interfaccia RS232 o USB (più costoso).
 

Welcome to EDABoard.com

Sponsor

Back
Top