Prévia do material em texto
Trabalho de Lógica Programável Bem-vindos ao estudo da Lógica Programável! Este trabalho prático visa introduzir vocês ao fascinante mundo da síntese digital utilizando dispositivos de Lógica Programável, especificamente CPLDs (Complex Programmable Logic Devices) e FPGAs (Field Programmable Gate Arrays). Esses dispositivos são componentes essenciais na construção de sistemas digitais modernos, permitindo a implementação de circuitos complexos com flexibilidade e eficiência. Durante este trabalho, vocês irão desenvolver, simular e testar uma série de circuitos digitais básicos utilizando VHDL (Very High-Speed Integrated Circuit Hardware Description Language), uma linguagem poderosa para modelagem de hardware. No mercado de tecnologia, CPLDs e FPGAs são amplamente utilizados devido à sua capacidade de rápida prototipagem e flexibilidade. Empresas de eletrônica e informática empregam esses dispositivos para desenvolver produtos inovadores e de alta performance. Por exemplo, em produtos de consumo como smartphones, tablets e dispositivos IoT (Internet of Things), FPGAs são utilizados para processar sinais rapidamente, melhorar a eficiência energética e aumentar a funcionalidade do dispositivo. Além disso, em equipamentos de rede e telecomunicações, esses dispositivos permitem a implementação de algoritmos de processamento de dados de alta velocidade, suportando a infraestrutura de internet e comunicação que utilizamos diariamente. Quartus II. ✓ Utilizar waveform para apresentar as análises de todas as combinações de entrada. Fazer os registros das saídas simuladas com captura de tela. Dica: indicar na captura de tela os sinais de entrada e saída. ✓ Os resultados da simulação devem ser explicados e discutidos. Atividade 1: Detector de Prioridade 12:4 (2 pontos) Desenvolver um circuito que identifique a posição da primeira entrada ativa do circuito. A saída deve ser de 4 bits, representando o índice da entrada com maior prioridade. Requisitos: • 12 entradas. • Saída de 4 bits indicando a entrada com maior prioridade. Avaliação: Código em VHDL (0,5 ponto): ✓ Organização do código; ✓ Código comentado; ✓ Funcionamento e simulação; Entrada 0 1 1 0 Saída Análise e Validação (1,5 ponto): ✓ Todas as análises referentes ao comportamento do circuito devem ser realizadas utilizando o software 0 0 0 0 0 1 0 0 0 0 0 0 Quartus II. ✓ Utilizar waveform para apresentar as análises de todas as combinações de entrada. Fazer os registros das saídas simuladas com captura de tela. Dica: indicar na captura de tela os sinais de entrada e saída. ✓ Os resultados da simulação devem ser explicados e discutidos. Atividade 2: Seletor de portas lógicas OR, NAND e XNOR (2 pontos) Implementar as portas lógicas OR, NAND e XOR que devem ser selecionáveis. Se a entrada de seleção for igual a “00”, a porta OR deve ser selecionada. Se a entrada de seleção for igual a “01”, a porta NAND deve ser selecionada. Se a entrada de seleção for igual a “10”, a porta XNOR deve ser selecionada. E, se a entrada de seleção for igual a “11”, nenhuma das portas deve ser selecionada. Requisitos: • Uma entrada de 2 bits (entrada da porta lógica); • Uma entrada de 2 bits (seleção das portas lógicas); • Uma saída de 1 bit; Entrada Avaliação: Código em VHDL (0,5 ponto): ✓ Organização do código; ✓ Código comentado; ✓ Funcionamento e simulação; Seleção sel (1) sel (0) Análise e Validação (1,5 ponto): ✓ Todas as análises referentes ao comportamento do circuito devem ser realizadas utilizando o software Saída Quartus II. ✓ Utilizar waveform para apresentar as análises de todas as combinações de entrada. Fazer os registros das saídas simuladas com captura de tela. Dica: indicar na captura de tela os sinais de entrada e saída. ✓ Os resultados da simulação devem ser explicados e discutidos. Atividade 3: Comparador de Magnitude de 4 bits (2 pontos) O comparador de magnitude de 4 bits compara duas entradas (dois números de 4 bits) e indica em sua saída qual delas tem a maior magnitude. Se entrada 1 for maior que a entrada 2, apenas a saída 2 (S2) deve ser ativada. Se entrada 1 for menor que a entrada 2, apenas a saída 1 (S1) deve ser ativada. E, se entrada 1 for igual a entrada 2, apenas a saída 0 (S0) deve ser ativada. Requisitos: • Duas entradas de 4 bits; • Uma saída de 3 bits; Avaliação: Código em VHDL (0,5 ponto): ✓ Organização do código; ✓ Código comentado; ✓ Funcionamento e simulação; Análise e Validação (1,5 ponto): Entrada 1 Entrada 2 Saídas ✓ Todas as análises referentes ao comportamento do circuito devem ser realizadas utilizando o software bits). Fazer os registros das saídas simuladas com captura de tela. Dica: indicar na captura de tela os sinais de entrada e saída. ✓ Os resultados da simulação devem ser explicados e discutidos. Atividade 4: Multiplexador de quatro entradas de 3 bits (2 pontos) Um multiplexador de quatro entradas seleciona uma das quatro entradas para ser passada para a saída com base nos sinais de seleção. Requisitos: • Quatro entradas de 3 bits cada; • Uma entrada de 2 bits (seleção) • Uma saída de 3 bits; Avaliação: Código em VHDL (0,5 ponto): ✓ Organização do código; ✓ Código comentado; ✓ Funcionamento e simulação; Análise e Validação (1,5 ponto): ✓ Todas as análises referentes ao comportamento do circuito devem ser realizadas utilizando o software Quartus II. ✓ Utilizar waveform para apresentar as análises de todas as combinações das entradas de seleção (2 simuladas com captura de tela. Dica: indicar na captura de tela os sinais de entrada e saída. ✓ Os resultados da simulação devem ser explicados e discutidos. Atividade 5: Contador Gray de 3 bits (2 pontos) O contador gera uma sequência de código Gray de 3 bits. Utilizar uma entrada de clock para incrementar o contador com borda de descida. Requisitos: • Uma entrada de clock. • Contagem em código Gray, com saída de 3 bits Avaliação: Código em VHDL (0,5 ponto): ✓ Organização do código; ✓ Código comentado; ✓ Funcionamento e simulação; Entrada 0 1 0 Saída Análise e Validação (1,5 ponto): ✓ Todas as análises referentes ao comportamento do circuito devem ser realizadas utilizando o software Quartus II. ✓ Utilizar waveform para apresentar a contagem no formato decimal. Fazer os registros das saídas 0