EEL 510231 – Sistemas Digitais e Dispositivos Lógicos Reconfiguráveis
Semestre 2015/1
Curso: Programa de Pós-Graduação em Engenharia Elétrica
Código da disciplina: EEL 510231
Número de créditos: 3
Professor: Eduardo Augusto Bezerra
Horário das aulas
- Qua 17:00-20:00
Ementa
Conceitos introdutórios de sistemas digitais; Circuitos combinacionais e sequenciais; Projeto de sistemas digitais no nível de transferência entre registradores (RT); Modelo clássico de CPU com bloco de dados e bloco de controle; Dispositivos lógicos reconfiguráveis; Prototipação de sistemas digitais.
Metodologia
- O conteúdo programático será desenvolvido por meio de aulas expositivas com auxílio de recursos multimídia.
- Aulas teóricas, expositivas, com slides preparados a partir do livro texto da disciplina.
- Exercícios teóricos a serem resolvidos em aula e extra-classe pelos alunos.
- Aulas práticas, em laboratório, onde os alunos seguirão tutoriais fornecidos pelo professor com instruções para utilização de ferramentas e placas de desenvolvimento.
- Leitura e discussão de artigos científicos clássicos e no estado da arte.
- Apresentação de seminários preparados pelos alunos.
- O material utilizado nas aulas práticas e teóricas será disponibilizado na página da disciplina e na plataforma Moodle.
- Ao longo do curso, far-se-á uso de HDLs para descrever os circuitos e sistemas digitais apresentados.
Programa
- Introdução
- Circuitos combinacionais
- Circuitos sequenciais
- Lógica reconfigurável
- Fluxo de projeto de sistemas digitais com ferramentas de EDA
- Sistemas digitais e linguagens de descrição de hardware
- Álgebra de Boole e funções booleanas
- Codificadores, decodificadores, multiplexadores, demultiplexadores
- Circuitos aritméticos, somadores, comparadores, contadores, deslocadores, multiplicadores
- Unidade Lógico e Aritmética (ULA): síntese e simulação com uma linguagem de descrição de hardware
- Circuitos sequenciais e controladores
- Latches e flip-flops
- Finite State Machines (FSMs)
- Projeto de controladores utilizando FSMs
- Síntese de FSMs com uma linguagem de descrição de hardware
- Estudo de caso
- Projeto do bloco de dados (data path) e do bloco de controle de uma unidade de processamento
- Descrição no nível RTL (Register Transfer Level) de uma unidade de processamento utilizando uma linguagem de descrição de hardware
- Simulação, síntese lógica, síntese física e prototipação em hardware da unidade de processamento
Avaliação
- A média geral do trimestre (MT) é obtida a partir da média geométrica: MT = sqrt(T x S), onde T é a nota do trabalho teórico/prático, e S é a nota da preparação/apresentação dos seminários.
- Condições para a aprovação: freqüência > 75% e MS >= 6,0
Bibliografia
- Frank Vahid, “Sistemas Digitais: projeto, otimização e HDLs”, Bookman, 2008.
- Frank Vahid, “Digital Design”, 1st ed., Wiley, 2007.
- Randy Katz, Gaetano Borrielo, “Contemporary Logic Design””, 2nd ed., Prentice Hall, 2005.
- John P. Uyemura, “Sistemas digitais: Uma abordagem integrada”, Thomson, 2002.
- John F. Wakerly, “Digital design: Principles and practices”, Prentice Hall, 2005.
- Volnei A. Pedroni, “Circuit Design with VHDL”, The MIT Press, 2004.
- Frank Vahid, “VHDL for Digital Design”, 1st ed., Wiley, 2007.
- Pong P. Chu, “FPGA Prototyping by VHDL Examples: Xilinx Spartan-3 Version”, Wiley-Interscience, 2008.
- David A. Patterson, John L. Hennessy, “Computer Organization and Design: The Hardware/Software Interface”, Morgan Kaufmann, 4th edition, 2008.
- “Advancing the SystemC Analog/Mixed-Signal (AMS) Extensions – Introducing Dynamic Timed Data Flow“; Martin Barnasconi, Karsten Einwich, Christoph Grimm, Torsten Maehne, Alain Vachoux; September 2011.
- “Electronic System Level Design: An Open-Source Approach“; Sandro Rigo, Rodolfo Azevedo, Luiz Santos.
- “SystemC Synthesizable Subset”
- “IP-XACT“
- “Open Verification Library (OVL)“
Ferramentas e materiais
- Slides do Frank Vahid: página do autor e cópia local
- Exercícios do Frank Vahid: exercícios para fixação dos conteúdos
- Apostila de sistemas digitais do Prof. Güntzel do INE/UFSC: http://www.inf.ufsc.br/~guntzel/isd/isd.html
- Slides da disciplina de técnicas digitais do Prof. Güntzel do INE/UFSC: Página na UFPEL e versão local
- Software utilizado nas aulas práticas – “Quartus II Web Edition” da Altera. Para obter o software:
- Entrar no site da empresa Altera http://www.altera.com
- Entrar no “Download Center“, localizado no canto superior direito da página
- Na barra vertical do lado esquerdo, localizar o menu Archives e entrar no All Design Software
- Na tabela, coluna “Quartus II Web Edition”, selecionar “9.1 SP2“
- Opcionalmente, poderá ser utilizada a versão mais recente do Quartus II Web Edition
- Documentação e arquivos para o kit de ensino DE2 da Altera:
- Introdução ao kit DE2
- Manual do kit DE2
- Arquivo com a pinagem do FPGA do kit – Pinos.csv
- Exercícios de laboratório da Altera
- Lab. 1 da Altera – ver Aula 4 a seguir
- Lab. 2 da Altera – ver Aula 4 a seguir
- Ferramenta para ensino de sistemas digitais da UFRGS:
- Material sobre VHDL:
Trabalho prático
- Especificação do Trabalho Final: “Projeto e implementação em VHDL/FPGA de arquitetura para execução de um conjunto reduzido de instruções do MIPS“
Organização das aulas
Aula | Conteúdo |
1 [25/mar] |
Material de apoio:
|
2 [01/abr] | Sistemas digitais e síntese em VHDL para FPGAs: |
3 [08/abr] | Sistemas digitais e síntese em VHDL para FPGAs: |
4 [15/abr] | Exercícios na DE2: Implementação do multiplicador dos slides da Altera. |
5 [22/abr] | Exercícios na DE2: Vending machine controller. |
6 [29/abr] | Exercícios na DE2: Vending machine controller; Photoshop em hardware. |
7 [06/mai] | Descrição do funcionamento de uma arquitetura multiciclo:
|
8 [13/mai] | Descrição do funcionamento de uma arquitetura multiciclo:
|
9 [*20/mai] | Descrição do funcionamento de uma arquitetura multiciclo: |
10 [27/mai] | Descrição do funcionamento de uma arquitetura multiciclo:
|
11 [03/jun] |
|
12 [10/jun] |
|
13 [17/jun] |
|
14 [24/jun] | Apresentações de seminários.Entrega do projeto final (Moodle).
Apresentação do projeto final. |
15 [01/jul] | Encerramento. |
Artigos para apresentação em 2015/1:
- Hung, E.; Quinton, B.; Wilton, S.J.E., “Linking the Verification and Validation of Complex Integrated Circuits Through Shared Coverage Metrics,” IEEE Design & Test, vol.30, no.4, pp.8,15, Aug. 2013.
- Subramanyan, P.; Tsiskaridze, N.; Wenchao Li; Gascon, A.; Wei Yang Tan; Tiwari, A.; Shankar, N.; Seshia, S.A.; Malik, S., “Reverse Engineering Digital Circuits Using Structural and Functional Analyses,” IEEE Transactions on Emerging Topics in Computing, vol.2, no.1, pp.63,80, March 2014
- Azcondo, F.J.; de Castro, A.; Brañas, C., “Course on Digital Electronics Oriented to Describing Systems in VHDL,” IEEE Transactions on Industrial Electronics, vol.57, no.10, pp.3308,3316, Oct. 2010.
- Abdallah, A.; Feron, E.M.; Hellestrand, G.; Koopman, P.; Wolf, M., “Hardware/Software Codesign of Aerospace and Automotive Systems,” Proceedings of the IEEE, vol.98, no.4, pp.584,602, April 2010.
- Brackenbury, L.E.M.; Plana, L.A.; Pepper, J., “System-on-Chip Design and Implementation,” IEEE Transactions on Education, vol.53, no.2, pp.272,281, May 2010.
- Guralnik, E.; Aharoni, M.; Birnbaum, A.J.; Koyfman, A., “Simulation-Based Verification of Floating-Point Division,” IEEE Transactions on Computers, vol.60, no.2, pp.176,188, Feb. 2011.
- “FPGA architectural research: a survey“; Brown, S.; IEEE Design & Test of Computers; Vol 13; issue 4; pp. 9; 1996.
- “Convergence in reconfigurable embedded systems“; Valderrama, Carlos Jojczyk, Laurent Possa, Paulo; IEEE ICECS 2010; pp. 1144; 12-15 Dec. 2010.
- “Survey of New Trends in Industry for Programmable Hardware: FPGAs, MPPAs, MPSoCs, Structured ASICs, eFPGAs and New Wave of Innovation in FPGAs“; S.Z. Ahmed et. al.; FPL 2010; Aug. 31 2010-Sept 2 2010.
- “Closing the SoC design gap“; Henkel, J.; Computer; Vol 36; issue 9; pp. 119-121; Sept. 2003.
- “A CubeSat design to validate the Virtex-5 FPGA for spaceborne image processing“; D. L. Bekker et. al.; IEEE Aerospace Conference; pp. 1; Mar. 2010.
- “Architecture of field-programmable gate arrays“; Rose, J. El Gamal, A. Sangiovanni-Vincentelli, A.; Proceedings of the IEEE; Vol. 81; Issue 7; Jul. 1993.
- “FPGA Design Methodology for Industrial Control Systems—A Review“; Monmasson, E. Cirstea, M.N.; IEEE Transactions on Industrial Electronics; Vol 54; Issue 4; Aug. 2007.
- “A Real/Complex Logarithmic Number System ALU“; Arnold, M.G. Collange, S.; IEEE Transactions on Computers; pp. 202; Vol. 60 Issue 2; Feb. 2011.
- “Design and Implementation of an Arithmetic Processor Unit Based on the Logarithmic Number System“; Carrillo, S. Carrillo, H. Viveros, F.; IEEE Latin America Transactions (Revista IEEE America Latina); Vol 8; issue 6; pp. 605; Dec. 2010.
- “An HIL-Based Reconfigurable Platform for Design, Implementation, and Verification of Electrical System Digital Controllers“; Karimi, S. Poure, P. Saadate, S.; IEEE Transactions on Industrial Electronics; pp. 1226; Vol. 57 Issue 4; Apr. 2010.
Conjunto completo de artigos da disciplina:
- Hung, E.; Quinton, B.; Wilton, S.J.E., “Linking the Verification and Validation of Complex Integrated Circuits Through Shared Coverage Metrics,” IEEE Design & Test, vol.30, no.4, pp.8,15, Aug. 2013.
- Subramanyan, P.; Tsiskaridze, N.; Wenchao Li; Gascon, A.; Wei Yang Tan; Tiwari, A.; Shankar, N.; Seshia, S.A.; Malik, S., “Reverse Engineering Digital Circuits Using Structural and Functional Analyses,” IEEE Transactions on Emerging Topics in Computing, vol.2, no.1, pp.63,80, March 2014
- Azcondo, F.J.; de Castro, A.; Brañas, C., “Course on Digital Electronics Oriented to Describing Systems in VHDL,” IEEE Transactions on Industrial Electronics, vol.57, no.10, pp.3308,3316, Oct. 2010.
- Abdallah, A.; Feron, E.M.; Hellestrand, G.; Koopman, P.; Wolf, M., “Hardware/Software Codesign of Aerospace and Automotive Systems,” Proceedings of the IEEE, vol.98, no.4, pp.584,602, April 2010.
- Brackenbury, L.E.M.; Plana, L.A.; Pepper, J., “System-on-Chip Design and Implementation,” IEEE Transactions on Education, vol.53, no.2, pp.272,281, May 2010.
- Guralnik, E.; Aharoni, M.; Birnbaum, A.J.; Koyfman, A., “Simulation-Based Verification of Floating-Point Division,” IEEE Transactions on Computers, vol.60, no.2, pp.176,188, Feb. 2011.
- “FPGA architectural research: a survey“; Brown, S.; IEEE Design & Test of Computers; Vol 13; issue 4; pp. 9; 1996.
- “Convergence in reconfigurable embedded systems“; Valderrama, Carlos Jojczyk, Laurent Possa, Paulo; IEEE ICECS 2010; pp. 1144; 12-15 Dec. 2010.
- “Survey of New Trends in Industry for Programmable Hardware: FPGAs, MPPAs, MPSoCs, Structured ASICs, eFPGAs and New Wave of Innovation in FPGAs“; S.Z. Ahmed et. al.; FPL 2010; Aug. 31 2010-Sept 2 2010.
- “Closing the SoC design gap“; Henkel, J.; Computer; Vol 36; issue 9; pp. 119-121; Sept. 2003.
- “A CubeSat design to validate the Virtex-5 FPGA for spaceborne image processing“; D. L. Bekker et. al.; IEEE Aerospace Conference; pp. 1; Mar. 2010.
- “Architecture of field-programmable gate arrays“; Rose, J. El Gamal, A. Sangiovanni-Vincentelli, A.; Proceedings of the IEEE; Vol. 81; Issue 7; Jul. 1993.
- “FPGA Design Methodology for Industrial Control Systems—A Review“; Monmasson, E. Cirstea, M.N.; IEEE Transactions on Industrial Electronics; Vol 54; Issue 4; Aug. 2007.
- “A Real/Complex Logarithmic Number System ALU“; Arnold, M.G. Collange, S.; IEEE Transactions on Computers; pp. 202; Vol. 60 Issue 2; Feb. 2011.
- “Design and Implementation of an Arithmetic Processor Unit Based on the Logarithmic Number System“; Carrillo, S. Carrillo, H. Viveros, F.; IEEE Latin America Transactions (Revista IEEE America Latina); Vol 8; issue 6; pp. 605; Dec. 2010.
- “An HIL-Based Reconfigurable Platform for Design, Implementation, and Verification of Electrical System Digital Controllers“; Karimi, S. Poure, P. Saadate, S.; IEEE Transactions on Industrial Electronics; pp. 1226; Vol. 57 Issue 4; Apr. 2010.
- “A guide to migrating from microprocessor to FPGA: coping with the support tool limitations“; E.A.Bezerra and M.P.Gough; Microprocessors and Microsystems; Vol 23; pp 561-572; March 2000.
- “A survey of dynamically reconfigurable FPGA devices“; Donthi, S. Haggard, R.L.; System Theory, 2003.; pp. 422; Mar. 2003.
- “Reconfigurable computing architecture survey and introduction“; Azarian, A. Ahmadi, M.; ICCSIT 2009; pp. 269; 8-11 Aug. 2009.
- “FPGA supercomputing platforms: A survey“; Awad, M.; FPL 2009; pp. 564; Aug. 2009.
- “HW acceleration for FPGA-based drive controllers“; S. Ben Othman et. al.; ISIE 2010; pp. 196; Jul. 2010.
- “Modern fault tolerant architectures based on partial dynamic reconfiguration in FPGAs“; Straka, M. Kastil, J. Kotasek, Z.; DDECS 2010; Apr. 2010.
- “Hardware design of independent experimental platform based on FPGA“; Hu Haoran Wu Jiani Zhang Fei; ICCSNA 2010; Jun. 2010.
- “FPGA Design Methodology for Industrial Control Systems—A Review“; Monmasson, E. Cirstea, M.N.; IEEE Transactions on Industrial Electronics; Vol. 54; Issue 4; Aug. 2007.
- “A modularized FPGA-based embedded system development platform“; Yu-Tsang Chang et. al.; IEEE IECON 2010; pp. 1697; Nov. 2010.
- “Creation of Partial FPGA Configurations at Run-Time“; Silva, M.L. Ferreira, J.C.; DSD 2010; pp. 80; Sept. 2010.
- “Low power State Machine design on FPGAs“; Saleem, A. Khan, S.A.; ICACTE 2010; Aug. 2010.
- “Design of high speed data acquisition system based on FPGA and DSP“; Zhang Baofeng Wang Ya Zhu Juncha ; ICAie 2010; pp. 132; Oct. 2010.
- “UCORE: Reconfigurable Platform for Educational Purposes“; F.J. Quiles et. al.; ReConFig 2010; Dec. 2010.
- “iBoard: A highly-capable, high-performance, reconfigurable FPGA-based building block for flight instrument digital electronics“; He, Yutao Ashtijou, Mohammad; NASA/ESA AHS 2010; pp. 73; June 2010.
- “Faults Coverage Improvement Based on Fault Simulation and Partial Duplication“; J. Borecky et. al.; DSD 2010; pp. 380; Sept. 2010.
- “Rapid development of space applications with responsive digital electronics board and LabVIEW FPGA“; M. McMickell et. al.; NASA/ESA AHS 2010; pp. 79; June 2010.
- “A biomimetic model for bats’ echolocation signal processing and it’s implementation on FPGA“; Binbin Cheng Fei Yang Jing Xu; ICSPS 2010; Jul. 2010.
- “A direct bitstream manipulation approach for Virtex4-based evolvable systems“; Cancare, F. Santambrogio, M.D. Sciuto, D.; ISCAS 2010; pp. 853; Jun. 2010.
- “Design of combinational logic training system using FPGA“; Sothong, S. Chayratsami, P.; IEEE Frontiers in Education (FIE); Oct. 2010.
- “Design and Implementation of HDLC Protocol and Manchester Encoding Based on FPGA in Train Communication Network“; Guozheng Li Nanlin Tan; ICIC 2010; pp. 105; Jun. 2010.
- Raffelsieper, M.; Mousavi, M.R.; Sleuters, J., “Process Algebra as a Common Framework for Hardware/Software Coverification,” IEEE Embedded Systems Letters, vol.3, no.1, pp.9,12, March 2011.
- “Applying Model-Checking to Post-Silicon-Verification: Bridging the Specification-Realisation Gap“; Dahmoune, O. de B Johnston, R.; ReConFig 2010; Dec. 2010.
- “Area-efficient FPGA logic elements: Architecture and synthesis“; J.H. Anderson, Qiang Wang; Design Automation Conference (ASP-DAC), 2011 16th Asia and South Pacific; pp. 369-375; Jan. 2011
- “Efficient absolute difference circuits in Virtex-5 FPGAs“;S. Perri, P. Zicari, P. Corsonello; MELECON 2010 – 2010 15th IEEE Mediterranean Electrotechnical Conference, pp. 309-313; Apr 2010
- “Roving STARs: an integrated approach to on-line testing, diagnosis, and fault tolerance for FPGAs in adaptive computing systems“; Abramovici, M.; Emmert, J.M.; Stroud, C.E.; The Third NASA/DoD Workshop on Evolvable Hardware, 2001, pp.73-92, 2001
- LEON3 ViP: A Virtual Platform with Fault Injection Capabilities
- SystemC Cosimulation and Emulation of Multiprocessor SoC Designs
- A SystemC-Based Transaction Level Modeling of On-Chip-Bus
- A Transaction Level Assertion Verification Framework in SystemC: An Application Study
- Induction-Based Formal Verification of SystemC TLM Designs
- SystemC-AMS model of a dynamic large-scale satellite-based AIS-like network
- Designing a Fault-Tolerant Satellite System in SystemC
- Wieman, T.; Bhattacharya, B.; Jeremiassen, T.; Schroder, C.; Vanthournout, B., “An Overview of Open SystemC Initiative Standards Development,” IEEE Design & Test of Computers, vol.29, no.2, pp.14,22, April 2012.