Facultad de Ciencias e Ingeniería

URI permanente para esta comunidadhttp://54.81.141.168/handle/123456789/9119

Explorar

Resultados de búsqueda

Mostrando 1 - 2 de 2
  • Ítem
    Diseño de una arquitectura de codificación/decodificación de acuerdo al estándar de encriptación AES
    (Pontificia Universidad Católica del Perú, 2020-12-09) Madera Vivar, Carlo Santiago; Raffo Jara, Mario Andrés
    El presente trabajo consiste en el diseño de un circuito digital para codificación y decodificación del algoritmo de encriptación AES (Advanced Encryption Standard) 1 para la implementación en FPGA de tecnología 90 nm como el Cyclone II y Virtex IV de las compañías Altera y Xilinx respectivamente. Este algoritmo consta de cuatro bloques, los cuales son AddRoundKey, SubBytes e InvSubBytes, ShiftRows e InvShiftRows y MixColumns e InvMixColumns. El diseño del bloque SubBytes e InvSubBytes fue adaptado del diseño propuesto por Wolkerstorfer [1] usando la descomposición aritmética de GF ((24)2). De igual manera, el diseño del bloque MixColumns e InvMixColumns fue adaptado del diseño propuesto por Satoh [2] usando la técnica de descomposición matricial. Los bloques AddRoundKey, ShiftRows e InvShiftRows y el bloque completo AES fueron diseñados usando diversas técnicas de optimización como paralelismo de operaciones (pipeline), FSMD y ASMD. El presente trabajo compara dos arquitecturas propuestas para algoritmo AES utilizando cero, una y dos etapas de pipeline en el bloque SubBytes e InvSubBytes. Referente a las arquitecturas, la primera se realizó usando la técnica de FSMD, mientras que la segunda se realizó usando la técnica de ASMD. Se realizó la verificación funcional del circuito usando la herramienta de simulación ModelSim de la empresa MentorGraphics. Posteriormente se comparó los resultados con el documento del estándar de encriptación AES del NIST [3] obteniendo resultados exitosos. Los requerimientos más importantes para este diseño son la alta velocidad de transmisión de datos (throughput) y el menor consumo de ´área. En base a esto, se realizó el análisis de síntesis y se obtuvieron los siguientes resultados. Para una arquitectura en ASMD se obtuvo hasta 0.382 Mbits/LUT y 182.538 MHz usando la plataforma Virtex IV; mientras que para una plataforma Cyclone II se obtuvo 0.162 Mbits/LE y 122.9 MHz. Respecto a la arquitectura FSMD se obtuvo hasta 0.305 Mbits/LUT y 185.895 MHz usando la plataforma Virtex IV; mientras que para una plataforma Cyclone II se obtuvo 0.159 Mbits/LE y 122.26 MHz. De acuerdo a estos resultados, se comprueba que la mejor técnica para realizar el diseño del algoritmo AES es la de ASMD.
  • Ítem
    Functional verification framework of an AES encryption module
    (Pontificia Universidad Católica del Perú, 2018-08-06) Plasencia Balabarca, Frank Pedro; Mitacc Meza, Edward Máximo; Raffo Jara, Mario Andrés
    Over the time, the development of the digital design has increased dramatically and nowadays many different circuits and systems are designed for multiple purposes in short time lapses. However, this development has not been based only in the enhancement of the design tools, but also in the improvement of the verification tools, due to the outstanding role of the verification process that certifies the adequate performance and the fulfillment of the requirements. In the verification industry, robust methodologies such as the Universal Verification Methodology (UVM) are used, an example of this is [1], but they have not been implemented yet in countries such as Peru and they seem inconvenient for educational purposes. This research propose an alternative methodology for the verification process of designs at the industry scale with a modular structure that contributes to the development of more complex and elaborated designs in countries with little or none verification background and limited verification tools. This methodology is a functional verification methodology described in SystemVerilog and its effectiveness is evaluated in the verification of an AES (Advance Encryption Standard) encryption module obtained from [2]. The verification framework is based on a verification plan (developed in this research as well) with high quality standards as it is defined in the industry. This verification plan evaluates synchronization, data validity, signal stability, signal timing and behavior consistency using Assertions, functional coverage and code coverage. An analysis of the outcomes obtained shows that the AES encryption module was completely verified obtaining 100% of the Assertions evaluation, 100% of functional verification and over 95% of code coverage in all approaches (fsm, block, expression, toggle). Besides, the modular structure defines the intercommunication with the Design only in the bottom most level, which facilitates the reuse of the verification framework with different bus interfaces. Nonetheless, this unit level verification framework can be easily instantiated by a system level verification facilitating the scalability. Finally, the documentation, tutorials and verification plan templates were generated successfully and are aimed to the development of future projects in the GuE PUCP (Research group in Microelectronics). In conclusion, the methodology proposed for the verification framework of the AES encryption module is in fact capable of verifying designs at the industry scale with high level of reliability, defining a very detailed and standardized verification plan and containing a suitable structure for reuse and scalability.