Mudanças entre as edições de "ELD129002-Engtelecom (Diário) - Prof. Marcos Moecke"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 145: Linha 145:
 
|}
 
|}
  
;LER PARA O PRÓXIMO ENCONTRO:
+
;PARA O PRÓXIMO ENCONTRO:
* Capítulo 1. Do Zero ao Um, seção 1.4 do livro [https://moodle.ifsc.edu.br/pluginfile.php/159985/mod_resource/content/1/DDCA_portugues.pdf#page=34 Projeto Digital e Arquitetura de Computadores], diponibilizado gratuitamente pela www.imgtec.com.
+
* Ler capítulo 1. Do Zero ao Um, seção 1.4 do livro [https://moodle.ifsc.edu.br/pluginfile.php/159985/mod_resource/content/1/DDCA_portugues.pdf#page=34 Projeto Digital e Arquitetura de Computadores], diponibilizado gratuitamente pela www.imgtec.com.
 
* Ver [https://moodle.ifsc.edu.br/pluginfile.php/311786/mod_resource/content/2/Sistemas%20num%C3%A9ricos.pdf Slides - Sistemas Numéricos]
 
* Ver [https://moodle.ifsc.edu.br/pluginfile.php/311786/mod_resource/content/2/Sistemas%20num%C3%A9ricos.pdf Slides - Sistemas Numéricos]
 
* Ver mais sobre [https://pt.wikipedia.org/wiki/Byte Byte] ou [https://en.wikipedia.org/wiki/Byte Byte.en] e os [https://pt.wikipedia.org/wiki/Prefixo_bin%C3%A1rio prefixos binários] na Wikipedia
 
* Ver mais sobre [https://pt.wikipedia.org/wiki/Byte Byte] ou [https://en.wikipedia.org/wiki/Byte Byte.en] e os [https://pt.wikipedia.org/wiki/Prefixo_bin%C3%A1rio prefixos binários] na Wikipedia
  
 
;Encontro 3 (22 fev) - Conversão de bases entre sistemas numéricos:
 
;Encontro 3 (22 fev) - Conversão de bases entre sistemas numéricos:
 +
*Conversão entre os sistemas de numeração '''decimal - binário - hexadecimal'''.
 +
*Regra geral de conversão de valor para um sistema de numeração
 +
:* Dividir o resultado obtido pela base.
 +
:* Repetir sucessivas vezes até obter resultado zero. 
 +
:* Os restos obtidos são os digitos que representam o valor.
 +
:* O primeiro digito obtido é o '''menos significativo'''. 
 +
:* O último digito obtido é o '''mais significativo'''.
 
*[https://moodle.ifsc.edu.br/pluginfile.php/311786/mod_resource/content/2/Sistemas%20num%C3%A9ricos.pdf#page=15 Slides - Sistemas Numéricos (conversão entre sistemas)]
 
*[https://moodle.ifsc.edu.br/pluginfile.php/311786/mod_resource/content/2/Sistemas%20num%C3%A9ricos.pdf#page=15 Slides - Sistemas Numéricos (conversão entre sistemas)]
* Iniciar a resolução dos [https://moodle.ifsc.edu.br/pluginfile.php/159985/mod_resource/content/1/DDCA_portugues.pdf#page=74 Exercícios 1.7 ao 1.49 Capítulo 1 - Projeto Digital e Arquitetura de Computadores]
 
<!--
 
;Encontro 3 (3 ago) - Sistemas numéricos:
 
  
 
;Códigos numéricos binários:
 
;Códigos numéricos binários:
Linha 579: Linha 583:
 
*Para obter o número negativo em complemento de um deve-se complementar (inverter) todos os bits do número binário positivo.
 
*Para obter o número negativo em complemento de um deve-se complementar (inverter) todos os bits do número binário positivo.
 
*Para obter o número negativo em complemento de dois deve-se: a) obter o complemento de um (complementar (inverter) todos os bits do número binário positivo ); b) somar 1 ao resultado.
 
*Para obter o número negativo em complemento de dois deve-se: a) obter o complemento de um (complementar (inverter) todos os bits do número binário positivo ); b) somar 1 ao resultado.
*Para obter o número negativo em sinal-magnitude é necessário apenas adicionar um bit 1 a esquerda do lsb.
+
*Para obter o número negativo em sinal-magnitude é necessário apenas adicionar um bit 1 a esquerda do msb.
 
*Note que em todos os casos a representação de números com sinal, sempre implica na necessidade de um bit a mais.
 
*Note que em todos os casos a representação de números com sinal, sempre implica na necessidade de um bit a mais.
  
Linha 587: Linha 591:
 
  -13 (decimal) = 11101 (binário em sinal-magnitude)
 
  -13 (decimal) = 11101 (binário em sinal-magnitude)
  
 +
;PARA O PRÓXIMO ENCONTRO:
 +
* Iniciar a resolução dos [https://moodle.ifsc.edu.br/pluginfile.php/159985/mod_resource/content/1/DDCA_portugues.pdf#page=74 Exercícios 1.7 ao 1.49 Capítulo 1 - Projeto Digital e Arquitetura de Computadores]
 +
 +
<!--
 +
;Encontro 3 (3 ago) - Sistemas numéricos:
 
;Código ASCII:
 
;Código ASCII:
 
O código '''ASCII''' (''American Standard Code for Information Interchange''), é um padrão de codificação de caracteres para comunicação digital. Ele tem apenas 128 pontos de código, sendo 95 são caracteres imprimíveis e os demais são não imprimíveis (em azul no quadro abaixo), sendo usados para diversos controles de equipamentos eletrônicos. Atualmente esse código está sendo substituido pelos códigos '''UNICODE''', que tem milhões de pontos de código, mas nos UNICODE os primeiros 128 são iguais ao conjunto ASCII.
 
O código '''ASCII''' (''American Standard Code for Information Interchange''), é um padrão de codificação de caracteres para comunicação digital. Ele tem apenas 128 pontos de código, sendo 95 são caracteres imprimíveis e os demais são não imprimíveis (em azul no quadro abaixo), sendo usados para diversos controles de equipamentos eletrônicos. Atualmente esse código está sendo substituido pelos códigos '''UNICODE''', que tem milhões de pontos de código, mas nos UNICODE os primeiros 128 são iguais ao conjunto ASCII.

Edição das 14h12min de 22 de fevereiro de 2024

Registro on-line das aulas

Unidade 1 - Aula inicial, Introdução a disciplina

  • 1 ENCONTRO
Unidade 1 - Aula inicial, Introdução a disciplina
Encontro 1 (15 fev)
  • A página da UC contém os materiais que não alteram entre semestre.
  • Relação com as outras UCs do Eixo Sistemas Computacionais (Marrom). Ver grafo do curriculo
  • ELD129002 - ELETRÔNICA DIGITAL I (ELD1): Sistema de numeração e códigos. Lógica booleana. Circuitos combinacionais. Circuitos aritméticos. Linguagem de descrição de hardware. Implementação e teste de circuitos digitais. Projeto de circuitos lógicos.
  • ELD129003 - ELETRÔNICA DIGITAL II (ELD2): Dispositivos lógicos programáveis. Circuitos sequenciais. Metodologia síncrona. Projeto hierárquico e parametrizado. Máquinas de estados finita. Register Transfer Methodology. Teste de circuitos digitais. Implementação em FPGA. Introdução a Linguagem de Descrição de Hardware.
  • AOC129004 - ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES (AOC): Introdução à Arquitetura Computadores. Linguagem Assembly. Linguagem de Máquina. Programação Assembly. Modos de Endereçamento. Processo de compilação e carga de um programa. Introdução à Organização de Computadores. Organização Monociclo e Multiciclo. Pipeline. Memória e Sistema de E/S.
  • MIC129007 - MICROCONTROLADORES (MIC): Introdução a Microcontroladores e Aplicações. Arquitetura de um microcontrolador. Pilha e Subrotinas. Interrupção. Contadores e Temporizadores. Interface com Periféricos. Programação em alto nível (ex.: C, C++ e RUST) para Microcontroladores: Mapeamento de tipos e estruturas de alto nível para sistemas com recursos limitados. Projeto de hardware e firmware com microcontroladores.
  • STE129008 - STE - SISTEMAS EMBARCADOS (STE): Conceitos em Sistemas Embarcados. Metodologia de Desenvolvimento de Sistemas Embarcados. Sistemas Operacionais para Sistemas Embarcados. Ferramentas de desenvolvimento e depuração. Barramentos e dispositivos de acesso a redes. Desenvolvimento de Projeto.
  • Nesta página está o Registro diário dos encontros e avaliações.
  • A entrega de atividades e avaliações será através da plataforma Moodle. A inscrição dos alunos é automática a partir do SIGAA.
  • Para a comunicação entre professor-aluno, além dos avisos no SIGAA, utilizaremos o chat institucional. A princípio todos os alunos já estão previamente cadastrados pelo seu email institucional. Confiram enviando uma mensagem de apresentação.
  • Utilizaremos durante as aulas algumas ferramentas computacionas como o site do Falstad para entender circuitos digitais e fazer simulações básicas.
  • Também utilizaremos os softwares Quartus Light e ModelSim instalados nas maquinas do laboratório para praticar a parte de programação de hardware (descrição de hardware). Esses softwares também podem ser usados através da Nuvem do IFSC..
LER PARA O PRÓXIMO ENCONTRO

Unidade 2 - Sistema de numeração e códigos

  • 4 ENCONTROS
Unidade 2 - Sistema de numeração e códigos
Encontro 2 (20 fev) - Sistemas numéricos

O ser humano precisa contar para determinar quantidades de coisas, com as quantidades ele pode fazer operações matemáticas e comparações.

  • Os números permitem representar quantidades de forma simbólica.
  • Os símbolos utilizados são chamados de dígitos.
  • Em alguns sistemas a posição do símbolo faz diferença (sistemas posicionais), enquanto que em outros o símbolo já representa a quantidade.
  • Dependendo do sistema podem existir diferentes tipos e quantidades de símbolos.
  • Sistema decimal:
  • É o sistema utilizado no dia a dia das tarefas diárias
  • Utiliza 10 símbolos (dígitos). 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9
  • É um sistema posicional, onde a posição do dígito tem um peso dado pela base (10) elevado ao expoente da posição.
  • Exemplo: o número representado 135, corresponde a 1 centena (10² = 100), 3 dezenas (10¹ = 10) e 5 unidades (10⁰ = 1), pois
1*10² + 3*10¹ + 5*10⁰ = 1*100 + 3*10 + 5*1 = 100 + 30 + 5 = 135
  • Com o sistema podemos contar quantidades, representar quantidades inteiras e fracionárias, comparar valores (quantidades), fazer operações de soma, subtração, multiplicação, divisão, entre outras;
  • Exemplos:
Contar: …, 34, 35, 36, 37, …
Somar: 21 + 46 + 100 = 100 + 20 + 40 + 1 + 6 = 100 + 60 + 7 = 167;
Multiplicar: 3 x 6 = 6 + 6 + 6 = 18;
Dividir: 35/7 = (5+ 5 + 5 + 5 + 5 + 5 +5)/7 = (5*7)/7 = 5;
Representar frações: 12/10 = 1,2; 3/4 = 0,75
Comparar valores: 145 > 14,5; 230 = 2,3x102
  • Outros sistemas:
  • Nos computadores e circuitos digitais, para fazer a representação de números são utilizadas normalmente duas tensões, sendo uma para representar o dígito “0” (0 volt), e outra para representar o dígito “1” ( X volts).
  • Este sistema é chamado de sistema binário, pois utiliza apenas dois dígitos (0 e 1).
  • O sistema também é posicional, e permite representar quantidades e fazer operações matemáticas e comparações
  • OBS: Muitas vezes os números binários são representados através do sistema hexadecimal ou do sistema octal (já em desuso).
  • Sistema binário:
  • Utiliza apenas 2 símbolos (dígitos). 0 e 1
  • É um sistema posicional, onde a posição do dígito tem um peso dado pela base (2) elevado ao expoente da posição.
  • Exemplo: o número representado 111, corresponde a 1 quadra (2² = 4), 1 dupla (2¹ = 2) e 1 unidade (2⁰ = 1).
1*2² + 1*2¹ + 1*2⁰ = 1*4 + 1*2 + 1*1 = 4 + 2 + 1 = 7
  • O que são bits, nibbles, bytes e word (palavra) de bits
↓msb lsb↓
0 1 1 0 0 1 1 0 1 1 1 0 0 0 1 1
nibble nibble nibble nibble
byte (MSB) byte (LSB)
word (palavra)
  • Note no quadro acima:
  • o nibble corresponde ao grupo de 4 bits (meio byte)
  • o byte corresponde ao grupo de 8 bits. Este grupo de 8 bits também é denominado de forma mais exata de octeto.
  • a word corresponde ao grupo de 16 bits (as vezes 32 bits)
  • a double word corresponte ao grupo de 32 bits (as vezes 64 bits)
  • o bit menos significativo (lsb - less significative bit)
  • o bit mais significativo (msb - most significative bit)
  • o byte menos significativo (LSB - Less Significative Byte)
  • o byte mais significativo (MSB - Most Significative Byte)
  • Prefixos e multiplos utilizados para quantidades de informação
Nome Símbolo Número de bytes Aproximação decimal
Byte B / Byte 1 1
kilobyte kB / kByte (mil)
Megabyte MB / MByte (milhão)
Gigabyte GB / GByte (bilhão)
Terabyte TB / TByte (trilhão)
Petabyte PB / PByte (quadrilhão)
PARA O PRÓXIMO ENCONTRO
Encontro 3 (22 fev) - Conversão de bases entre sistemas numéricos
  • Conversão entre os sistemas de numeração decimal - binário - hexadecimal.
  • Regra geral de conversão de valor para um sistema de numeração
  • Dividir o resultado obtido pela base.
  • Repetir sucessivas vezes até obter resultado zero.
  • Os restos obtidos são os digitos que representam o valor.
  • O primeiro digito obtido é o menos significativo.
  • O último digito obtido é o mais significativo.
Códigos numéricos binários
  • Número sem sinal (UNSIGNED)
Neste caso apenas números inteiros naturais podem ser representados.
Usando bits é possível representar números inteiros no intervalo de .
Por exemplo usando 8 bits =>
bit 7 6 5 4 3 2 1 0
valor 1 0 1 0 0 1 1 1
peso 27 26 25 24 23 22 21 20
peso +128 +64 +32 +16 +8 +4 +2 +1
somar +128 +32 +4 +2 +1
resultado 128 + 32 + 4 + 2 + 1 = 167
  • Número com sinal (Sinal-Magnitude ou Magnitude e Sinal)
Neste caso os números inteiros negativos são representados com 1 no msb, e o positivos com 0 no msb.
Usando bits é possível representar números inteiros no intervalo de . Nesta representação existem dois zeros, o +0 e o -0.
Por exemplo usando 8 bits =>
bit 7 6 5 4 3 2 1 0
peso 26 25 24 23 22 21 20
peso +64 +32 +16 +8 +4 +2 +1
valor 1 0 1 0 0 1 1 1
somar - +32 +4 +2 +1
resultado - ( 32 + 4 + 2 + 1) = - 39
valor 0 0 1 0 0 1 1 1
somar + +32 +4 +2 +1
resultado + ( 32 + 4 + 2 + 1) = +39
  • Número com sinal (Complemento de 2 ou SIGNED)
Neste caso o msb corresponde ao peso negativo, de modo que ao colocar 1 no msb o número inteiro passa a ser negativo, e se o msb for 0, o número será positivo.
Usando bits é possível representar números inteiros no intervalo de . Nesta representação existem apenas um zero.
Por exemplo usando 8 bits =>
Neste caso note que quando todos os bits são 1, o número representado será o -1,
bit 7 6 5 4 3 2 1 0
peso 27
26 25 24 23 22 21 20
peso -128 +64 +32 +16 +8 +4 +2 +1
valor 1 0 1 0 0 1 1 1
somar -128 +32 +4 +2 +1
resultado - 128 + 32 + 4 + 2 + 1 = -128 + 39 = -89
valor 0 0 1 0 0 1 1 1
somar +32 +4 +2 +1
resultado 32 + 4 + 2 + 1 = +39
valor 1 1 1 1 1 1 1 1
somar -128 +64 +32 +16 +8 +4 +2 +1
resultado -128 + 64 + 32 +16 + 8 + 4 + 2 + 1 = -128 + 127 = -1


Comparação das representações

Representação binária
Decimal Sem sinal Sinal-magnitude Complemento de um Complemento de dois
+15 1111
+14 1110
+13 1101
+12 1100
+11 1011
+10 1010
+9 1001
+8 1000
+7 0111 0111 0111 0111
+6 0110 0110 0110 0110
+5 0101 0101 0101 0101
+4 0100 0100 0100 0100
+3 0011 0011 0011 0011
+2 0010 0010 0010 0010
+1 0001 0001 0001 0001
+0 0000 0000
0 0000 0000
−0 1000 1111
−1 1001 1110 1111
−2 1010 1101 1110
−3 1011 1100 1101
−4 1100 1011 1100
−5 1101 1010 1011
−6 1110 1001 1010
−7 1111 1000 1001
−8 1000
  • Para obter o número negativo em complemento de um deve-se complementar (inverter) todos os bits do número binário positivo.
  • Para obter o número negativo em complemento de dois deve-se: a) obter o complemento de um (complementar (inverter) todos os bits do número binário positivo ); b) somar 1 ao resultado.
  • Para obter o número negativo em sinal-magnitude é necessário apenas adicionar um bit 1 a esquerda do msb.
  • Note que em todos os casos a representação de números com sinal, sempre implica na necessidade de um bit a mais.
 13 (decimal) = 01101 (binário sem sinal)
-13 (decimal) = 10010 (binário em complemento de um)
-13 (decimal) = 10010 + 1 = 10011 (binário em complemento de dois)
-13 (decimal) = 11101 (binário em sinal-magnitude)
PARA O PRÓXIMO ENCONTRO

Unidade 3 - Funções, portas lógicas e álgebra booleana

  • 10 ENCONTROS
Unidade 3 - Funções, portas lógicas e álgebra booleana

Unidade 4 - Introdução a linguagem VHDL e Quartus/ModelSim

  • 6 ENCONTROS
Unidade 4 - Introdução a linguagem VHDL e Quartus/ModelSim

Unidade 5 - Circuitos lógicos combinacionais (com VHDL)

  • 12 ENCONTROS
Unidade 5 - Circuitos lógicos combinacionais (com VHDL)

Unidade 6 - Circuitos aritméticos (com VHDL)

  • 5 ENCONTROS
Unidade 6 - Circuitos aritméticos (com VHDL)

Avaliações

Durante o semestre serão realizadas 4 avaliações. As avaliações devem ser enviadas pela plataforma Moodle com os arquivos solicitados.

Data das avaliações
  • A1 - :
  • A2 - :
  • R - Recuperação de A1 a A2 :

Atividade relâmpago (AR)

As atividades relâmpago devem ser entregues no Moodle da disciplina. A não entrega dessas atividades não gera nenhum desconto, apenas geram pontos de BÔNUS que são adicionados aos conceitos das avaliações A1 a AN.

Atividade extra-classe (AE)

A média ponderada das atividades extra-classe será considerada no cálculo do conceito final da UC. A entrega das mesmas será feita pelo Moodle, e cada dia de atraso irá descontar 0,2 na nota da atividade. Muitas dessas atividades também geram pontos de BÔNUS que são adicionados aos conceitos das avaliações A1 a AN. Para os BÔNUS só serão considerados projetos entregues no prazo.

Referências Bibliográficas:


Curso de Engenharia de Telecomunicações