TODOPIC
Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?
22 de Diciembre de 2014, 04:43:53

Ingresar con nombre de usuario, contraseña y duración de la sesión
Buscar:     Búsqueda Avanzada
352568 Mensajes en 39588 Temas por 41376 Usuarios
Último usuario: jorgeB
* Inicio Ayuda Buscar Calendario Ingresar Registrarse
Buscar en TodoPIC
+  TODOPIC
|-+  Otros microcontroladores/dispositivos programables
| |-+  PAL - GAL - FPGA - ASIC
| | |-+  VHDL (Lenguaje para descripción y modelado de hardware) (Moderadores: antoniof, jorgevert)
| | | |-+  Calculos probabilisticos ??
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Marcar como favorito Imprimir
Autor Tema: Calculos probabilisticos ??  (Leído 3537 veces)
jtutiven
PIC10
*
Desconectado Desconectado

Mensajes: 2


« : 12 de Febrero de 2007, 21:30:33 »

Conozco un poco de vhdl, tirando a casi nada...
Pero sin embargo en la universidad tengo de proyecto un programa que me permita ingresar 15 datos y luego que muestre por medio de un menu la media, moda, mediana, mayor, menor , numeros ordenados, en fin el problema uqe tengo es con la moda y en definitiva es la minimizacion. me agradaria saber como reutilizar codigo ya que no tengo claro muy bien eso, aun no me acostumbro a la programacion concurrente.
los datos ingresados los almaceno en una memoria ya implementada en vhdl, pero mi problema es que cada modulo es decir ejmeplo ordenar utilizo internamente otra vez otra memoria esto me ocupa demasiado espacio en la fpga, existe una forma de no utilizar, se me ocurrio con buses pero no se como funcionan gracias.
En línea
Modulay
Moderadores
DsPIC30
*****
Desconectado Desconectado

Sexo: Masculino
España España

Mensajes: 2652



« Respuesta #1 : 13 de Febrero de 2007, 06:04:52 »

Bueno,el problema que expones es bastante concreto,aunque parece dislumbrar otras varias cuestiones que tampoco pareces tener muy claras.
Estaría bien que detallases que es lo que llevas hecho y como lo has hecho y postear algo de código.¿Cómo es el diagrama de bloques de tu sistema? ¿modelas los diferentes módulos en unidades de diseño separadas?.Así podremos tener algo con lo que empezar.
Saludo
En línea
togarha
PIC12
**
Desconectado Desconectado

Mensajes: 87


« Respuesta #2 : 13 de Febrero de 2007, 06:39:12 »

Buenas,

Como tienes que presentarlos? en un lcd?

Sea como sea como tienes que presentarlos, la presentacion es mucho mas lenta que el calculo, entonces lo mejor seria seguramente el ordenarlos conforme vas presentandolos....

Pero como dice modulay, porque no pones lo que tengas hecho, como son los datos (longitud en bits...)

salu2
En línea
juanitoteleco
PIC10
*
Desconectado Desconectado

España España

Mensajes: 3


« Respuesta #3 : 11 de Diciembre de 2007, 05:03:08 »

Hola, soy nuevo por aquí y soy un apasionado de las FPGAs...... Smile

Lo primero que deberías hacer sería definir un tipo de datos con el que trabajar; luego hacerte pequeños módulos de suma/resta y multiplicación/división, para seguidamente empezar a interconectar todo, unos cuantos buffers y ya finalmente preocupate por la forma de sacarlos "al mundo exterior" Wink


SALUDOS!!!!
En línea
reiniertl
Moderadores
PIC24H
*****
Desconectado Desconectado

Sexo: Masculino
Cuba Cuba

Mensajes: 1181



« Respuesta #4 : 11 de Diciembre de 2007, 10:50:03 »

Es obligatorio hacerlo todo por Hw, podrías hacer un codiseño HW, SW y utilizar un procesador embebido para que te haga el trabajo de calcular y ordenar.

De todos modos si utilizas técnicas de desarrollo Hw, no creo que te haga falta utilizar más memoria que aquella donde almacenas los 15 datos a los que debes aplicarle los cálculos, más un grupo de registros donde guardes algunos resultados.

Por ejemplo la media y la mediana se calculan mediante fórmulas recursivas, así que no necesitas nada más que recorrer la memoria a modo de lista enlazada y hacer los cálculos, en resumen necesitas además de acceso a la memoria:

Un registro para almacenar el resultado del cáluclo que al final reflejará el valor de la media o mediana, según sea el caso
Dos registros uno que será el puntero al dato q procesar y otro que será el del final de la lista o algo por el estilo, depende de tu implementación
Un algoritmo recursivo (un process) para hacer el cálculo.

El mayor y menor también requieren recorrer la lista y comparar dos valores, te quedas siempre con el mayor o el menor, segín sea el caso.

Y el ordenamiento, lo puedes hacer mediante el método de la burbuja, con lo que no te hace falta ninguna memoria adicional.

El problema mayor lo tienes  con la moda, que requiere contar aquel valor que más veces se repite, pero para ello una lista ordenada será muy útil, y dos registros donde guardas el conteo mayor obtenido y el del número que estés procesando, al final una comparación y metes en el registro de la moda aquel que sea mayor.

A lo mejor con cosas así resuleves, ahora te falta ordenar todo eso de manera que pudas hacer tus propias entidades y componentes, etc, por supuesto que hacer un módulo de división o cosas así puede ayudar, pero recuerda que muchas cosas ya veien implementadas en el propio VHDL, como la suma, resta, multiplicación y comparación. Con la multiplicación suma y resta podrías dividir, pero estoy seguro que encontrarás cosas para dividir sin mucho problema, y sin tener que hacerlas tú mismo.

Saludos
Reinier
En línea
TODOPIC
   

 En línea
Páginas: [1] Imprimir 
« anterior próximo »
Ir a:  

Impulsado por MySQL Impulsado por PHP Powered by SMF 1.1.20 | SMF © 2006-2008, Simple Machines XHTML 1.0 válido! CSS válido!
Página creada en 0.085 segundos con 24 consultas.
anything