6 votos

Quiero aplicar una ecuación matemática en FPGA, debo describir un CPU o puede hacerlo sólo por código?

Para un proyecto de la escuela estoy tratando de implementar una ecuación, por ejemplo como este: (EDIT)

B = ((A + 2) * |A - 10|) / (c * c)

todo es binario sin signo de los valores, de los valores absolutos siempre. La ecuación debe ser evaluado 57600 veces por segundo para una imagen de 240x240 píxeles.

No sé cómo empezar. Sería mejor implementar mediante la realización de un procesador MIPS y cargar una lista de instrucciones del programa en la asamblea y así?

O que debo hacer un acercamiento directo por código? Si es así, ¿qué metodología que debo seguir, debo hacer FSM? Debo usar relojes?

Traté de programa es fácil de combinacional (asignar... etc) y funciona, pero lo utiliza casi el 80% de las Limosnas. Yo no creo que esta sea la mejor manera, yo estoy tratando de hacer el menor uso de hardware posible, el tiempo no es una restricción. Estoy usando Quartus II y Verilog.

4voto

user44635 Puntos 4308

Dependiendo de lo que quieras aprender, hay muchos enfoques posibles.

Usted dice que el totalmente paralelo combinatoria de diseño de obras, y encaja en la FPGA. Resultado! Muchos estudiantes se detiene allí y escribir. Sin embargo, parece que te sientes que esto no es en el espíritu del proyecto.

La creación de su propio diseño del procesador desde cero sería un proyecto de 100 veces el tamaño de lo que se intenta, por un propósito general básico al menos. El uso de un VHDL existente núcleo de procesador tal vez sería demasiado fácil? El diseño de una ALU sólo con las instrucciones necesarias para estos cálculos todavía suena bastante un gran desvío.

El primer lugar me gustaría mirar al inicio serialising el diseño es que se dividen por c al cuadrado. La división es una operación que es muy caro o imposible hacer lo ancho total look up tables. Bit a Bit shift-resta es, quizás, la corriente principal. Buscar COORDIC como una forma alternativa de mecanizar. Puede que también desee considerar la posibilidad de bytes o nybble-cambio de ancho y restar, como una alternativa al método de aplicación, con un período de latencia y el uso de los recursos en algún lugar entre los dos métodos anteriores.

Tal vez usted podría mirar a la aplicación de serie de la aritmética como un ejercicio, por motivos de ahorro de espacio. Mantenga las variables en registros de desplazamiento, y el ciclo a través de un bit ALU+llevar, primero el LSB. Todo tipo de interesantes máquina de estado de asuntos a resolver.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X