Informe Final Softcam

Informe Final Softcam

SoftCAM: una memoria direccionable por contenido para dispositivos de lógica programable Danilo Andrés Mendivelso Pardo Directores: Francisco Viveros Moreno y Jose Luis Uribe Aponte Pontificia Universidad Javeriana Facultad de Ingeniería Departamento de Electrónica Bogotá, mayo de 201 Tabla de contenido 1 Introducción ............................................................................................................................ 5 1.1 Justificación ........................................................................................................................................ 6 1.2 Convenciones tipográficas ................................................................................................................. 6 2 Marco teórico .......................................................................................................................... 7 2.1 Memoria Direccionable por Contenido (CAM) ................................................................................. 7 2.1.1 Enrutamiento en redes de paquetes ............................................................................................ 7 2.1.2 Caché de procesadores .............................................................................................................. 7 2.2 Componentes IP (IP cores) ................................................................................................................. 8 3 Objetivo del proyecto ............................................................................................................. 9 4 Desarrollo .............................................................................................................................. 10 4.1 Definiciones previas ......................................................................................................................... 10 4.2 Herramientas de desarrollo ............................................................................................................... 10 4.3 Primera iteración .............................................................................................................................. 12 4.3.1 Concepción ............................................................................................................................... 12 4.3.2 Diseño ...................................................................................................................................... 12 4.3.3 Limitaciones y conclusión del funcionamiento......................................................................... 12 4.4 Segunda iteración ............................................................................................................................. 13 4.4.1 Concepción ............................................................................................................................... 13 4.4.2 Diseño ...................................................................................................................................... 13 4.4.3 Conclusión del funcionamiento ................................................................................................ 14 4.5 Solución final ................................................................................................................................... 14 4.6 Arquitectura ...................................................................................................................................... 14 4.6.1 Diagrama de bloques ............................................................................................................... 15 4.6.2 Espacio de direcciones ............................................................................................................. 18 4.6.3 Descripción al nivel de transferencia de registros................................................................... 19 4.7 Implementación ................................................................................................................................ 21 4.7.1 Descripción en VHDL y síntesis ............................................................................................... 21 4.8 Operación ......................................................................................................................................... 24 4.8.1 Uso de SoftCAM en un proyecto .............................................................................................. 24 4.8.2 Operación del dispositivo ......................................................................................................... 25 5 Protocolo de pruebas ............................................................................................................ 27 5.1 Simulación ........................................................................................................................................ 27 5.1.1 SearchLogic .............................................................................................................................. 27 5.1.2 Control ..................................................................................................................................... 28 5.1.3 SoftCAM ................................................................................................................................... 29 5.2 Pruebas de la interfaz de lectura y escritura en FPGA ..................................................................... 30 5.2.1 Caso: Escritura de una posición de memoria .......................................................................... 30 5.2.2 Caso: Lectura de una posición de memoria ............................................................................. 30 5.3 Pruebas en FPGA de las operaciones de búsqueda .......................................................................... 30 5.3.1 Caso: Búsqueda de una clave que se conoce no se encuentra almacenada. ........................... 31 5.3.2 Caso: Búsqueda de una clave que se conoce está almacenada. .............................................. 33 6 Resultados, conclusiones y recomendaciones..................................................................... 34 6.1 Oportunidades de crecimiento de SoftCAM .................................................................................... 34 7 Bibliografía ........................................................................................................................... 36 Lista de figuras Figura 1. Uso de Microsoft Visual Studio Team Services. .......................................................................... 11 Figura 2. Vista web del repositorio del código VHDL en Team Foundation Server online. ....................... 11 Figura 3. Arquitectura de comparación directa. ........................................................................................... 12 Figura 4. Diagrama de la segunda idea. ....................................................................................................... 14 Figura 5. Vista general de entradas y salidas. .............................................................................................. 15 Figura 6. Bloques internos del sistema. ........................................................................................................ 16 Figura 7. Lógica de búsqueda (SearchLogic). .............................................................................................. 17 Figura 8. Contenido de un RAMSet. ............................................................................................................. 18 Figura 9. Direcciones externas. .................................................................................................................... 18 Figura 10. Proceso de búsqueda. .................................................................................................................. 19 Figura 11. Respuesta esperada ante una operación de búsqueda con acierto. .............................................. 20 Figura 12. Comportamiento esperado en caso de no encontrar acierto. ....................................................... 20 Figura 13. Estructura de archivos y carpetas. ............................................................................................... 22 Figura 14. Vista del resultado de síntesis del nivel más alto. ....................................................................... 23 Figura 15. Vista interior de SearchLogic como resultado de síntesis. ......................................................... 24 Figura 16.Contenido de un RAMSet en el resultado de síntesis. .................................................................. 24 Figura 17. Resultados de simulación de una escritura en SearchLogic. Este continúa en la siguiente figura. ...................................................................................................................................................................... 28 Figura 18. Resultados de simulación de una búsqueda de un dato anteriormente escrito en SearchLogic. Continuación del diagrama de tiempos anterior. .......................................................................................... 28 Figura 19. Resultados de simulación de la prueba de escritura y búsqueda de la unidad de control. .......... 29 Figura 20. Resultado de la simulación de la prueba de búsqueda sin acierto. ............................................. 29 Figura 21. Escritura de tres posiciones y búsqueda de la clave CAFEh con su respuesta. .......................... 29 Figura 22. Prueba

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    36 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us