segunda-feira, 25 de março de 2013

Temporização de vídeo da ULA e do clone (60 Hz)

Eu tinha feito medições de temporizações de vídeo do TK90X que, entre outras coisas, resultou em parâmetros para que Rotatrix e Bifrost* pudessem funcionar no computador brasileiro. Como estou testando o clone de ULA do Fábio Belavenuto, resolvi fazer novamente os testes para comparação. 














Nos testes anteriores, eu tinha usado uma TV de tubo que não fornece os resultados mais confiáveis. Desta vez empreguei uma TV de LCD Panasonic modelo TC-L32C20B. Os limites das telas ficam bem melhores definidos neste aparelho. 


Nesta postagem serão mostrados os testes realizados com a frequência de interrupção de 60 Hz. Pretendo fazer os testes em 50 Hz futuramente. 

ULA da Microdigital

Os programas minfo e fusetest indicaram que o tempo de duração de um quadro de vídeo é de 59736 estados T, ou simplesmente 59736 T. Cada T vale o inverso da frequência do clock que, no caso de TK90X, tem valor nominal de 3575611 Hz (padrão PAL-M). Portanto cada quadro dura 59736÷3575611 segundos, ou 16,707 ms. O recíproco deste valor corresponde a 59,857 Hz, um pouco inferior (2,39%) à 60 Hz que é o valor nominal. 

O teste seguinte é o Videotime 2 em que são anotados os tempos em vários pontos da tela:

Fonte: TK90X Fan e Einar Saukas
Na TV de LCD a imagem fica assim:


que é bem melhor do que no teste anterior com TV a tubo:


No ajuste do parâmetro 'Delay mod 4' não pude evitar totalmente a cintilação do limite das cores vermelha/ciano da borda, portanto fixei o valor em 0. Os tempos obtidos foram (valores mínimos):
  • 1) 5320 T; 
  • a) 8512 T;
  • b) 8536 T;
  • c) 8664 T; 
  • 2) 8688 T; 
  • 3) 8740 T; 
  • 4) 8760 T; 
  • 5) 8888 T; 
  • 6) 8908 T; 
  • 7) 52516 T;
  • 8) 52540 T; 
  • 9) 52668 T; 
  • 10) 52692 T; 
  • 11) 57480 T. 
O primeiro parâmetro a calcular é a duração da exibição de uma linha, incluindo as bordas e o retraço. Corresponde às diferenças de tempos entre os pontos 3 e a, 4 e b, c e 5, 2 e 6, mas os valores variam de 220 a 228 T. Outra forma de medir é entre os pontos 3 e 7, 4 e 8, 5 e 9, 6 e 10, em que devem haver 192 linhas (tamanho da parte útil da tela, isto é, da parte acessível para impressão). O valor é aproximadamente 228 T a não ser no caso do par de pontos 3 e 7, onde este é o valor exato ( (52516−8740)/192=228 ). Isto significa que estes pontos têm precisão maior nas determinação de tempos, enquanto outros estão sujeitos a erros. Portanto uma linha possui duração de 228 T ou 63,765 μs, que corresponde a 15683 Hz.

Dentro do período de 228 T, a tela útil do TK90X de 256 pixels de largura, é varrido num período de 128 T (diferenças de tempos entre os pontos b e c, 5 e 4, 9 e 8). Ou seja, cada pixel corresponde a ½ T.

A borda esquerda (pontos a e b ou 7 e 8) é varrida em 24 T; a borda direita (pontos c e 2 ou 9 e 10) também dura 24 T. Foram escolhidos pontos onde a precisão é maior.

Somando os períodos das bordas e da tela útil, totaliza-se 176 T. Os 52 T restantes não são exibidos na TV, período que corresponde ao retraço horizontal, isto é, o tempo necessário para o feixe de elétrons voltar para o lado esquerdo da tela na TV de tubo. 

Dentro do período 59736 T cabem 262 linhas de 228 T de duração. Entre as 262 linhas, 192 são da parte útil da tela. A borda superior pode ser medida pelos pontos 1 e 3 e corresponde a (8740−5320)/228 = 15 linhas. A borda inferior, de mesma forma é medida pelos pontos 11 e 10, resultando em (57480−52692)/228+1 = 22 linhas (deve-se somar 1 porque a linha em 10 fica uma posição abaixo da última linha útil da tela). As 33 linhas restantes não aparecem na TV e correspondem ao retraço vertical, isto é, o tempo do feixe de elétrons do tubo retornar ao topo da tela.

Resumindo:

  • cada quadro tem período de 59736 T (16,707 ms) ou frequência de 59,857 Hz;
  • cada quadro é composto por 262 linhas, sendo 15 da borda superior, 192 de área útil,  22 da borda inferior e 33 não são exibidas (retraço vertical); 
  • cada linha tem período de 228 T (63,765 μs), sendo 24 T (6,712 μs) para borda esquerda, 128 T (35,80 μs) para tela útil, 24 T (6,712 μs) para borda direita e 52 T (14,54 μs) de retraço horizontal. 
ULA clonada

Os programas minfo e fusetest informaram que cada quadro dura 60192 T (16,834 ms), um pouco acima da ULA da Microdigital. 

Videotime 2 forneceu os seguinte parâmetros: 
  • 1) 5088 T;
  • a) 8508 T;
  • b) 8532 T; 
  • c) 8660 T; 
  • 2) 8684 T; 
  • 3) 8736 T; 
  • 4) 8760 T; 
  • 5) 8884 T; 
  • 6) 8904 T; 
  • 7) 52512 T; 
  • 8) 52536 T;
  • 9) 52668 T; 
  • 10) 52692 T; 
  • 11) 57252 T. 
Analisando os dados de maneira semelhante à ULA original, os resultados são: 
  • cada quadro tem período de 60192 T (16,834 ms) ou frequência de 59,404 Hz; 
  • cada quadro é composto por 264 linhas, sendo 15 de borda superior, 192 da tela útil, 21 da borda inferior e 36 não exibidas (retraço vertical); 
  • cada linha tem período de de 228 T (63,765 μs), sendo 24 T (6,712 μs) para borda esquerda, 128 T (35,80 μs) para tela útil, 24 T (6,712 μs) para borda direita e 52 T (14,54 μs) de retraço horizontal. 
Concluindo, há pequenas diferenças de temporização entre as ULAs da Microdigital e a clonada. Entretanto não parece haver discrepância suficiente para ser notada nos softwares, pois roda o Rotatrix e Bifrost* para TK90X sem problemas visíveis. O vídeo abaixo mostra o Rotatrix rodando no clone: 



4 comentários:

  1. Prof. Flávio, mais uma vez um belo artigo!!

    Achei estranho a diferença grande nos pontos 1 e 11!! Acho que não devo ter verificado isso.

    Nos outros pontos (a até 10) será difícil ficar 100% igual, devido às características do componente moderno, acredito que possa ser considerado OK.

    Outra coisa descoberta que não percebi é o tamanho da tela, 60192 T está muito errado para os 59736 T da original, isso devo acertar mudando o contador vertical.

    Obrigado mais uma vez!

    ResponderExcluir
    Respostas
    1. Que bom que você já vai implementar as correções. Quanto mais fiel à ULA da Microdigital, melhor. Vou continuar com os testes. Um abraço!

      Excluir
  2. Acertei as temporizações, agora bate!!

    ResponderExcluir
    Respostas
    1. Agora podemos considerar que a ULA está pronta.

      Excluir

Seu comentário é bem vindo, mas peço que use este espaço adequadamente.