|
||||||||||||||||||
Carrera:
Ingenieria Electrónica
Clave de la asignatura: ETF-1014 GRUPO: E3B Horas teoría-horas práctica-créditos: 3-2-5 ING. MIGUEL ANGEL PÉREZ SOLANO CUB. No. 3 INGENIERO EN COMUNICACIONES Y ELECTRÓNICA/MAESTRIA EN EDUCACIÓN ESCUELA SUPERIOR DE INGENIERIA MECÁNICA Y ELÉCTRICA (ESIME)- IPN |
||||||||||||||||||
|
||||||||||||||||||
|
||||||||||||||||||
REQUISITOS NECESARIOS PARA TENER EXITO AL CURSAR ESTA
MATERIA
|
||||||||||||||||||
Presentación | ||||||||||||||||||
Este
curso trata del diseño de sistemas digitales, taambien llamado
DISEÑO LOGICO. Este proceso da lugar al nombre la materia;
DISEÑO DIGITAL. Un sistema digital
es aquel en el que todas las señales que procesan estan
representadas por valores discretos. Las computadoras y calculadoras
son ejemplos obvios, pero la mayoria de los sistemas (equipos)
electronicos contienen una gran cantidad de electrónica
trabajando con lógica digital. Internamente los sistemas
digitales por lo general operan con señales de dos valores, que
se etiquetan com 0 y 1, conociendose como estados lógicos o bits (binary digital).
La manifestacion física de tales estados lógicos es mediante dos voltajes (ej. 1=5V y 0= 0V) conocidos como niveles lógicos de voltaje. La generacion electrónica de una señal discreta de 2 niveles de voltaje, se da mediante el proceso de conmutacion de un transistores, proceso que se explicará en clase. Es muy importante saber que arreglos de transistores en conmutacion dan lugar a las compuertas lógicas, y las existentes son; AND, OR, NOT, NAND, NOR, XOR y XNOR, que ejecutan operaciones lógicas. Asi tambien la conexion de compuertas lógicas mediante un diseño basado en algebra de Boole, da lugar a circuitos lógicos, circuitos que realizan una función logica. Es importante recalcar que los circuitos lógicos que se construyen en la electronica digital se dividen en; Combinacionales y Secuenciales. Una vez que se ya se tienen identificados los diferentes circuitos lógicos, se da lugar al diseño digital de equipos electronicos (sistemas digitales) que realizan las tareas de proceso de datos binarios. Este tipo de sistemas digitales son conocidos como computadoras. |
||||||||||||||||||
Basandome en mi experiencia y analizando el estado del arte de la electrónica digital, me atrevo a presentar algunas observaciones acerca del diseño digital, que son evidentes. Primero, el tamaño de la circuiteria lógica está escalando muy rapidamente, esto nos tiene en las dimensiones de los nanometros para el transistor. por lo anterior se considera imposible diseñar sistemas electrónicos by hand. Segundo, El proceso de mover desde una descripción de alto nivel de como trabaja un circuito (Ej. desde una tabla de verdad) a un formato que sea apto para ser implementado en un circuito real (ej. un diagrama lógico minimizado) es simple y bien definido. Ambas observaciones nos motivan al uso de herramientas asistidas por computadora (CAD) para realizar dicho diseño. En este curso utilizaremos como medio para describir circuitos logicos usando un lenguaje basado en texto; tanto combinacionales como secuenciales a los llamsdos lenguages descriptivos de hardware (HDL). Estos lenguajes proporcion un medio para describir grandes sistemas digitales sin la necesitad de esquematicos, lo cual se puede volver impractico en diseños muy grandes. Se apoya uno en un diagrama a bloques solo para definir conexiones que se describiran en el lenguaje. Los HDLs en su evolución soportan simulación lógica a diferentes niveles de abstracción, lo que proporciona al ingeniero diseñador la posibilidad de verificar la funcionalidad de sistemas grandes a un alto nivel de abstracción y posponer los detalles de implementacion del circuito durante el ciclo de diseño. Los HDLs soportan una fase de "sintesis", lo cual permite a las herramientas CAD hacer una descripción funcional de sistema y automaticamente crear la circuiteria a nivel-compuerta para que sea implementado fisicamente en un hardware. Existen hoy en dia 2 HDLs muy utilizados; Verilog (no tiene un acronimo, solo es un nombre comercial; trade) y VHDL (Very high-speed integrated circuit hardware descriptionlanguage: Lenguaje descriptivo de hardware para circuitos integrados de muy alta velocidad). El uso de estos 2 HDLs es dividido casi a partes iguales dentro de industria del diseño digital. Por experiencia una vez que se aprende un HDL es sencillo aprender el otro. En este curso trabajaremos con el lenguaje Verilog HDL con el cuál comprobaremos de manera práctica todo el conocimiento teórico visto en clase. Verilog es ampliamente utilizado en el diseño de circuitos integrados customizables, por lo que hay gran cantidad de informacion en linea. El objetivo de este curso es introducirse al mundo del diseño electrónico con herramientas CAD involucradas en el estado-del-arte de la fabricacion de circuitos integrados. |
||||||||||||||||||
TEMARIO (bajarlo en pdf) |
||||||||||||||||||
UNIDAD 1: FUNDAMENTOS DE DISEÑO DIGITAL.
1.1 Diferencias entre sistemas digitales y sistemas analógicos.
1.2. Sistemas numéricos. 1.2.1. Binario. 1.2.2. Octal. 1.2.3. Hexadecimal. 1.2.4. Conversión entre sistemas numéricos. 1.3 Códigos Binarios. 1.3.1 Código BCD (aritmético). 1.3.2 Código XS-3 (aritmético). 1.3.3 Código Gray (no-aritmético). 1.3.4 Código ASCII (alfanumérico). 1.4 Aritmética Binaria con números no signados (unsigned), y signados (signed). 1.5. Compuertas lógicas. 1.6. Familias lógicas de circuitos integrados. 1.7. Algebra booleana. 1.7.1. Postulados y teoremas booleanos.
1.7.2. Simplificación de funciones.. |
||||||||||||||||||
|
||||||||||||||||||
UNIDAD II: LOGICA COMBINACIONAL. |
||||||||||||||||||
|
||||||||||||||||||
UNIDAD III: DISEÑO COMBINACIONAL EN SSI | ||||||||||||||||||
|
||||||||||||||||||
UNIDAD IV: DISEÑO COMBINACIONAL EN MSI | ||||||||||||||||||
|
||||||||||||||||||
UNIDAD V: LOGICA SECUENCIAL | ||||||||||||||||||
|
||||||||||||||||||
UNIDAD VI: INTRODUCCION AL LENGUAJE VERILOG CIRCUITOS COMBINACIONALES |
||||||||||||||||||
|
||||||||||||||||||
|
||||||||||||||||||
VIVADO and VERILOG (HDL) | ||||||||||||||||||
Verilog HDL: Es
un lenguaje Descriptivo de Hardware, el cuál es utilizado
para describir circuitos digitales de manera textual. Escribiremos
nuestros diseños para los FPGAs (como si se estuviera
escribiendo códigos en C o ensamblador para microcontroladores)
utilizando el, lexico, semantica y sintaxis de dicho lenguaje.
Aprenderlo no es dificil si se tienen conocimientos en programacion de
lenguaje C. Check out this wiki page (http://en.wikipedia.org/wiki/Verilog) or check this tutorial (http://www.asic-world.com/verilog/index.html).
.
Vivado: Vivado® Design Suite, es la herramienta IDE de Xilinx para la serie 7 de FPGA y SoC que incluye las familias Artix, Zynq, Virtex y Kintex y las nuevas generaciones de embebidos por desarrollar. Permite el desarrollo de soluciones usando técnicas de diseño basadas en RTL (Register Transfer Level) y con diseños HL (High Level), con lo que se puede hacer abstracciones mas rápidas de los modelos de concepto usando variaciones del lenguaje System C en C/C++. Vivado reemplaza todo el conjunto de herramientas disponibles en ISE y las combina en un entorno mas integrado que se ejecuta completamente en memoria y permite acelerar los tiempos de síntesis e implementación de los diseños. |
||||||||||||||||||
1.-Learning FPGA and VERILOG: A beginner´s guide. VIDEOS QUE LES SIRVEN DE APOYO PARA SU FORMACION COMO INGENIEROS DE HARDWARE.
1.- SYNTHESIZING AND DESIGN with VIVADO in Xilinx VERILOG platform . 2.- VERILOG HDL basics by Altera-Intel. |
||||||||||||||||||
TEORIA SOBRE LOS FPGA´s | ||||||||||||||||||
VIDEOS QUE LES SIRVEN DE APOYO PARA SU FORMACION COMO INGENIEROS DE HARDWARE
1.- Introduccion a los FPGA´s para la industria: (Parte 1). (Parte 2). |
||||||||||||||||||
TEAMWORKS | ||||||||||||||||||