·
Ciência da Computação ·
Sistemas Digitais
Send your question to AI and receive an answer instantly
Recommended for you
3
Trabalho Pratico 3 - Projeto de Maquina de Estados FSM e Descricao VHDL para Traffic Filter
Sistemas Digitais
PUC
4
TP3-Cronometro-de-Xadrez-Projeto-VHDL-FSM
Sistemas Digitais
PUC
4
Trabalho Pratico Sistemas Digitais Calculo Mediana Media Moda MIPS
Sistemas Digitais
PUC
1
Atividade Avaliativa A1 Sistemas Digitais - Tabelas Verdade e Expressões Lógicas
Sistemas Digitais
UVA
54
Aula 5-4 Máquinas de Estados Finitos-2022 1
Sistemas Digitais
UFPE
7
CE3512 Sistemas Digitais - Lista de Exercicios 4 - Projeto de Sequencias Numericas
Sistemas Digitais
FEI
1
Trabalho Final - Sistemas Digitais 2022-2
Sistemas Digitais
UFU
46
Aula 5-3 Registradores e Contadores-2022 1
Sistemas Digitais
UFPE
12
CE3512 Sistemas Digitais - Lista de Exercicios 2 - Multiplexadores e Portas Universais
Sistemas Digitais
FEI
11
Lista de Exercícios de Projeto de Sistemas Digitais - Lista 3
Sistemas Digitais
FEI
Preview text
Fundamentos de Sistemas Digitais 4646B04 28062022 1 5 TP4 FUNDAMENTOS DE SISTEMAS DIGITAIS 1 ORIENTAÇÕES GERAIS Entrega do TP4 01julho Sextafeira 09h45 a Não haverá extensão de prazo pois as notas devem ser entregues 72 horas antes da G2 3 dias úteis A G2 é no dia 0607 quartafeira as notas devem ser publicadas até sábado 9h45 Compõe as 72 horas úteis sábadosegunda segundaterça terçaquarta b O trabalho pode ser desenvolvido individualmente ou em duplas A especificação do trabalho a ser realizado é definido pela fórmula çã onde d1 e d2 correspondem aos dígitos menos significativo da matrícula sem dígito verificador do aluno ou dupla Há 4 especificações diferentes 0 a 3 detalhadas abaixo Exemplo de dupla 201011194 e 211010467 çã 1 2 3 c Entregar um arquivo em formato zip nomeandoo nomeAluno1nomeAluno2zip contendo 3 arquivos relatoriopdf tp4asm mipstxt d Em hipótese alguma serão aceitos códigos fontes eou demais elementos plagiados Em caso de ocorrência desta grave infração a nota de todos os alunos envolvidos será zerada 2 AVALIAÇÃO Parte 1 3 pontos Relatório relatoriopdf contendo 5 seções 1 pseudocódigo do programa explicando o mesmo 2 uma tabela que relacione as principais variáveis do pseudocódigo com os registradores da arquitetura MIPS 3 um exemplo da área de dados com a solução esperada diferente da apresentada incluindo outro valor de n 4 telas capturadas do simulador MARS com explicação do que as telas apresentam ver abaixo um exemplo Estas telas devem apresentar a simulação com a área de dados definida pelos alunos 5 telas capturadas do simulador MODELSIM com explicação do que a tela apresenta ver abaixo exemplos Apresentar diagramas de tempos que mostrem os estados dos registradores e a memória de dados Por exemplo i memória de dados no início da simulação ii média dos vetores iii memória de dados ao final da simulação Parte 2 4 pontos Código em linguagem assembly tp4asm com comentários e corretamente indentado Parte 3 3 pontos Arquivo com o dump de memória mipstxt que permita simular o programa em assembly com o código VHDL do processador fornecido Fundamentos de Sistemas Digitais 4646B04 28062022 2 5 3 ESPECIFICAÇÕES DO TP4 1 Calcular VM valor médio máximomínimo dos valores contidos nos vetores A B C todos com dimensão n VM 1 2 3 2 Criar um vetor D com os elementos dos três vetores A B C que sejam maioresmenores que VM gravando o vetor D na memória de dados 3 Gravar o número de elementos de D na área de dados no endereço k ESPECIFICAÇÃO Valor médio VM vetor D 0 máximo maiores que VM 1 máximo menores que VM 2 mínimo maiores que VM 3 mínimo menores que VM IMPORTANTE 1 Para executar a divisão por n utilizar o código de divisão serial seção 4 deste documento ou no Moodle divserialasm 2 Utilizar o wavedo disponível no Moodle 3 Usar apenas as 20 instruções do subconjunto das instruções do processador MIPS especificadas na disciplina e as pseudoinstruções la blt bgt quando necessário Instruções que não pertencem ao subconjunto inviabilizam a simulação VHDL 31 Exemplo de execução para a especificação 0 Abaixo a área da memória de dados a ser utilizada no TP4 com um conjunto de valores em decimal para exemplificar a execução do problema para a especificação 0 Cada alunogrupo terá necessariamente uma área de dados com valores diferentes do apresentado abaixo incluindo o valor de n data A word 810 100 560 380 600 87 B word 800 555 817 124 890 456 C word 345 200 700 180 600 490 n word 6 k word 0 D word 0 Obtemos as seguintes médias 41 6 2537 é 41 422 42 6 1 3642 é1 42 607 43 6 2 2515 é2 43 419 Fundamentos de Sistemas Digitais 4646B04 28062022 3 5 VM 422 607 419 DEF média máxima Assim o vetor D 810 800 817 890 700 elementos maiores que a média máxima E o valor de k 5 número de elementos de D IMPORTANTE Gerar o dump da memória de dados em hexadecimal como abaixo a simulação para efeitos de visualização no MARS e no MODELSIM pode ser em formato decimal Para visualizar no MARS em decimal Settingsà Values displayed in hexadecimal Para simular em VHDL é necessário que o arquivo esteja em formato hexadecimal como abaixo 0x10010000 0x0000032a 0x00000064 0x00000230 0x0000017c 0x00000258 0x00000057 0x00000320 0x0000022b 0x10010020 0x00000331 0x0000007c 0x0000037a 0x000001c8 0x00000159 0x000000c8 0x000002bc 0x000000b4 0x10010040 0x00000258 0x000001ea 0x00000006 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x10010060 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4 CÓDIGO ASSEMBLY PARA DIVISÃO SERIAL subrotina divider divide o conteúdo de 1 por s0 e retorna em v1 text globl main main exemplo de uso da divisão la s1 d1 lw s10s1 lê o dividendo la s0 d2 lw s00s0 lê o divisor jal divider resposta em v0 e v1 fim j fim s1 s0 v0 resto v1 divisão divider lui t0 0x8000 máscara para isolar bit mais significativo li t1 32 contador de iterações xor v0 v0 v0 registrador Pv0Av1 com 0 e o dividendo s1 add v1 s1 0 dloop and t2 v1 t0 isola em t2 o bit mais significativo do registador A v1 sll v0 v0 1 desloca para a esquerda o registrado PA sll v1 v1 1 beq t2 0 di1 ori v0 v0 1 coloca 1 no bit menos significativo do registador Pv0 di1 sub t2 v0 s0 subtrai Pv0 do divisor s0 blt t2 0 di2 add v0 t2 0 se a subtração deu positiva Pv0 recebe o valor da subtração ori v1 v1 1 e Av1 recebe 1 no bit menos significativo di2 addi t1 t1 1 decrementa o número de iterações bne t1 0 dloop jr ra data d1 word 0x3FABCD 4172749 resposta em v1 28910xB4B resto em v0 103640C d2 word 0x5A3 1443 Algoritmo 1 desloca PA para a esquerda 1 bit 2 sub ß PB 3 if sub0 then A00 else A01 Pßsub P A B n n n1 Deslocamento 0 1 n1 n1 n1 Controle sub Fundamentos de Sistemas Digitais 4646B04 28062022 4 5 5 SEÇÃO 4 DO RELATÓRIO TELAS CAPTURADAS DO SIMULADOR MARS a Área de dados antes de iniciar a execução b Área de dados ao final da execução 6 SEÇÃO 5 DO RELATÓRIO TELAS CAPTURADAS DO SIMULADOR MODELSIM a Mostrar o correto carregamento dos dados na memória de dados abaixo os valores também são apresentados em notação em decimal b Mostrar o correto cálculo das médias assim como a leitura dos vetores Neste exemplo temos a primeira média 422 em v1 e resto 5 em v0 não usado no problema assim como a leitura do segundo vetor em t2 data A word 810 100 560 380 600 87 B word 800 555 817 124 890 456 C word 345 200 700 180 600 490 n word 6 k word 0 D word 0 Leitura do segundo vetor Média e resto do primeiro vetor em v1 e v0 A C k n B D Fundamentos de Sistemas Digitais 4646B04 5 5 c Simulação completa com a gravação na memória de dados do vetor D 810 800 817 890 700 e número de elementos de D igual a 5 na posição de memória mem19 OBSERVAR O TEMPO DE SIMULAÇÃO para esta implementação 50 µs Somatório 1 Divisão 1 Média 1 Somatório 2 Divisão 2 Média 2 Somatório 3 Divisão 3 Média 3 Máxima média k número de elementos em D n Vetor D na memória de dados
Send your question to AI and receive an answer instantly
Recommended for you
3
Trabalho Pratico 3 - Projeto de Maquina de Estados FSM e Descricao VHDL para Traffic Filter
Sistemas Digitais
PUC
4
TP3-Cronometro-de-Xadrez-Projeto-VHDL-FSM
Sistemas Digitais
PUC
4
Trabalho Pratico Sistemas Digitais Calculo Mediana Media Moda MIPS
Sistemas Digitais
PUC
1
Atividade Avaliativa A1 Sistemas Digitais - Tabelas Verdade e Expressões Lógicas
Sistemas Digitais
UVA
54
Aula 5-4 Máquinas de Estados Finitos-2022 1
Sistemas Digitais
UFPE
7
CE3512 Sistemas Digitais - Lista de Exercicios 4 - Projeto de Sequencias Numericas
Sistemas Digitais
FEI
1
Trabalho Final - Sistemas Digitais 2022-2
Sistemas Digitais
UFU
46
Aula 5-3 Registradores e Contadores-2022 1
Sistemas Digitais
UFPE
12
CE3512 Sistemas Digitais - Lista de Exercicios 2 - Multiplexadores e Portas Universais
Sistemas Digitais
FEI
11
Lista de Exercícios de Projeto de Sistemas Digitais - Lista 3
Sistemas Digitais
FEI
Preview text
Fundamentos de Sistemas Digitais 4646B04 28062022 1 5 TP4 FUNDAMENTOS DE SISTEMAS DIGITAIS 1 ORIENTAÇÕES GERAIS Entrega do TP4 01julho Sextafeira 09h45 a Não haverá extensão de prazo pois as notas devem ser entregues 72 horas antes da G2 3 dias úteis A G2 é no dia 0607 quartafeira as notas devem ser publicadas até sábado 9h45 Compõe as 72 horas úteis sábadosegunda segundaterça terçaquarta b O trabalho pode ser desenvolvido individualmente ou em duplas A especificação do trabalho a ser realizado é definido pela fórmula çã onde d1 e d2 correspondem aos dígitos menos significativo da matrícula sem dígito verificador do aluno ou dupla Há 4 especificações diferentes 0 a 3 detalhadas abaixo Exemplo de dupla 201011194 e 211010467 çã 1 2 3 c Entregar um arquivo em formato zip nomeandoo nomeAluno1nomeAluno2zip contendo 3 arquivos relatoriopdf tp4asm mipstxt d Em hipótese alguma serão aceitos códigos fontes eou demais elementos plagiados Em caso de ocorrência desta grave infração a nota de todos os alunos envolvidos será zerada 2 AVALIAÇÃO Parte 1 3 pontos Relatório relatoriopdf contendo 5 seções 1 pseudocódigo do programa explicando o mesmo 2 uma tabela que relacione as principais variáveis do pseudocódigo com os registradores da arquitetura MIPS 3 um exemplo da área de dados com a solução esperada diferente da apresentada incluindo outro valor de n 4 telas capturadas do simulador MARS com explicação do que as telas apresentam ver abaixo um exemplo Estas telas devem apresentar a simulação com a área de dados definida pelos alunos 5 telas capturadas do simulador MODELSIM com explicação do que a tela apresenta ver abaixo exemplos Apresentar diagramas de tempos que mostrem os estados dos registradores e a memória de dados Por exemplo i memória de dados no início da simulação ii média dos vetores iii memória de dados ao final da simulação Parte 2 4 pontos Código em linguagem assembly tp4asm com comentários e corretamente indentado Parte 3 3 pontos Arquivo com o dump de memória mipstxt que permita simular o programa em assembly com o código VHDL do processador fornecido Fundamentos de Sistemas Digitais 4646B04 28062022 2 5 3 ESPECIFICAÇÕES DO TP4 1 Calcular VM valor médio máximomínimo dos valores contidos nos vetores A B C todos com dimensão n VM 1 2 3 2 Criar um vetor D com os elementos dos três vetores A B C que sejam maioresmenores que VM gravando o vetor D na memória de dados 3 Gravar o número de elementos de D na área de dados no endereço k ESPECIFICAÇÃO Valor médio VM vetor D 0 máximo maiores que VM 1 máximo menores que VM 2 mínimo maiores que VM 3 mínimo menores que VM IMPORTANTE 1 Para executar a divisão por n utilizar o código de divisão serial seção 4 deste documento ou no Moodle divserialasm 2 Utilizar o wavedo disponível no Moodle 3 Usar apenas as 20 instruções do subconjunto das instruções do processador MIPS especificadas na disciplina e as pseudoinstruções la blt bgt quando necessário Instruções que não pertencem ao subconjunto inviabilizam a simulação VHDL 31 Exemplo de execução para a especificação 0 Abaixo a área da memória de dados a ser utilizada no TP4 com um conjunto de valores em decimal para exemplificar a execução do problema para a especificação 0 Cada alunogrupo terá necessariamente uma área de dados com valores diferentes do apresentado abaixo incluindo o valor de n data A word 810 100 560 380 600 87 B word 800 555 817 124 890 456 C word 345 200 700 180 600 490 n word 6 k word 0 D word 0 Obtemos as seguintes médias 41 6 2537 é 41 422 42 6 1 3642 é1 42 607 43 6 2 2515 é2 43 419 Fundamentos de Sistemas Digitais 4646B04 28062022 3 5 VM 422 607 419 DEF média máxima Assim o vetor D 810 800 817 890 700 elementos maiores que a média máxima E o valor de k 5 número de elementos de D IMPORTANTE Gerar o dump da memória de dados em hexadecimal como abaixo a simulação para efeitos de visualização no MARS e no MODELSIM pode ser em formato decimal Para visualizar no MARS em decimal Settingsà Values displayed in hexadecimal Para simular em VHDL é necessário que o arquivo esteja em formato hexadecimal como abaixo 0x10010000 0x0000032a 0x00000064 0x00000230 0x0000017c 0x00000258 0x00000057 0x00000320 0x0000022b 0x10010020 0x00000331 0x0000007c 0x0000037a 0x000001c8 0x00000159 0x000000c8 0x000002bc 0x000000b4 0x10010040 0x00000258 0x000001ea 0x00000006 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x10010060 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4 CÓDIGO ASSEMBLY PARA DIVISÃO SERIAL subrotina divider divide o conteúdo de 1 por s0 e retorna em v1 text globl main main exemplo de uso da divisão la s1 d1 lw s10s1 lê o dividendo la s0 d2 lw s00s0 lê o divisor jal divider resposta em v0 e v1 fim j fim s1 s0 v0 resto v1 divisão divider lui t0 0x8000 máscara para isolar bit mais significativo li t1 32 contador de iterações xor v0 v0 v0 registrador Pv0Av1 com 0 e o dividendo s1 add v1 s1 0 dloop and t2 v1 t0 isola em t2 o bit mais significativo do registador A v1 sll v0 v0 1 desloca para a esquerda o registrado PA sll v1 v1 1 beq t2 0 di1 ori v0 v0 1 coloca 1 no bit menos significativo do registador Pv0 di1 sub t2 v0 s0 subtrai Pv0 do divisor s0 blt t2 0 di2 add v0 t2 0 se a subtração deu positiva Pv0 recebe o valor da subtração ori v1 v1 1 e Av1 recebe 1 no bit menos significativo di2 addi t1 t1 1 decrementa o número de iterações bne t1 0 dloop jr ra data d1 word 0x3FABCD 4172749 resposta em v1 28910xB4B resto em v0 103640C d2 word 0x5A3 1443 Algoritmo 1 desloca PA para a esquerda 1 bit 2 sub ß PB 3 if sub0 then A00 else A01 Pßsub P A B n n n1 Deslocamento 0 1 n1 n1 n1 Controle sub Fundamentos de Sistemas Digitais 4646B04 28062022 4 5 5 SEÇÃO 4 DO RELATÓRIO TELAS CAPTURADAS DO SIMULADOR MARS a Área de dados antes de iniciar a execução b Área de dados ao final da execução 6 SEÇÃO 5 DO RELATÓRIO TELAS CAPTURADAS DO SIMULADOR MODELSIM a Mostrar o correto carregamento dos dados na memória de dados abaixo os valores também são apresentados em notação em decimal b Mostrar o correto cálculo das médias assim como a leitura dos vetores Neste exemplo temos a primeira média 422 em v1 e resto 5 em v0 não usado no problema assim como a leitura do segundo vetor em t2 data A word 810 100 560 380 600 87 B word 800 555 817 124 890 456 C word 345 200 700 180 600 490 n word 6 k word 0 D word 0 Leitura do segundo vetor Média e resto do primeiro vetor em v1 e v0 A C k n B D Fundamentos de Sistemas Digitais 4646B04 5 5 c Simulação completa com a gravação na memória de dados do vetor D 810 800 817 890 700 e número de elementos de D igual a 5 na posição de memória mem19 OBSERVAR O TEMPO DE SIMULAÇÃO para esta implementação 50 µs Somatório 1 Divisão 1 Média 1 Somatório 2 Divisão 2 Média 2 Somatório 3 Divisão 3 Média 3 Máxima média k número de elementos em D n Vetor D na memória de dados