Eletrônica
Z80 NMOS e CMOS
Além dos que estão na foto, eu possuo ainda dois outros Z80 contidos no CP200 e TK85.
O Z80 foi projetado pela Zilog em 1976, empregando a tecnologia NMOS. Mais tarde começaram a ser produzidas versões CMOS desta CPU.
Transistores MOS são dispositivos cuja condutividade elétrica entre os terminais dreno (drain) e fonte (source) depende da tensão aplicada sobre o terceiro terminal, a porta (gate). Neste aspecto lembra os transistores bipolares, nos quais a corrente entre os terminais coletor e emissor depende do corrente que percorre a base. A semelhança cessa quando se observa que a porta é separada do semicondutor através de um isolante elétrico (óxido de silício) e, portanto, a passagem de corrente é quase nula.
Sendo assim, a entrada de um transistor de efeito de campo MOS (ou MOSFET) idealmente não drenaria corrente. Entretanto isto é meia verdade, pois dois condutores (ou semicondutores) separados por um isolante forma um capacitor, que conduz corrente alternada. Em frequências elevadas, na faixa de MHz, a intensidade da corrente é considerável.
Apesar disso, transistores MOS mostraram-se bastante adequados para implementação de lógica integrada. Quando empregados em comutação, estes transistores comportam-se como um resistor de baixo valor (estado de condução) ou como um isolante (estado de corte). Assim como nos transistores bipolares há os tipos complementares NPN e PNP, existem MOSFET de tipo N (NMOS) e de tipo P (PMOS).
Os transistores NMOS eram mais fáceis de fabricar e possuíam características favoráveis em circuitos digitais, tornando-se bastante popular em circuitos de elevada integração. A lógica NMOS é baseada em resistores e MOSFETs de tipo N para manipular os níveis lógicos 0 e 1. Uma característica intrínseca deste tipo de circuito lógico é a maior dissipação de energia devido aos resistores, quando os transistores estavam em estado de condução (nível lógico 0).
A abordagem CMOS (
complementary MOS) substitui os resistores por transistores PMOS que, em par complementar com NMOS, dissipavam bem menos energia. Isto ocorria porque enquanto um dos transistores entrava em estado de condução, o outro se tornava praticamente um isolante. Entretanto esta tecnologia demorou para amadurecer, principalmente pela dificuldade em se fabricar transistores PMOS. Com o desenvolvimento das técnicas na indústria de semicondutores, os obstáculos foram superados e hoje CMOS é dominante em eletrônica digital.
Durante os testes de longa duração de determinação do
clock do
TK90X, percebi que o Z80 estava levemente aquecido. Apesar de não ser uma temperatura que cause dano ao componente, achei estranho, pois na minha memória ele trabalhava sempre frio. Depois percebi o que aconteceu: eu trocara o Z80 que era CMOS por um NMOS (eu vivo fuçando no meu TK90X!).
Dos cinco Z80 da foto:
os da ST com código Z84C00 são CMOS, e o da SGS e da Zilog com código Z8400 são NMOS. O MK3880 da Mostek também é NMOS (este é do meu TK95).
Como fazer para distinguir se um Z80 é NMOS ou CMOS? Velesoft deu uma dica, o comportamento da instrução extra-oficial
OUT (C),0
difere entre as versões. Na versão NMOS o valor 0 é enviado para a porta I/O, enquanto na CMOS é enviado o valor 255. Portanto o trecho em
assembly:
LD BC,254
OUT (C),0
serve para distinguir entre as versões no
TK90X.
Para introduzir estes códigos, basta digitar no BASIC:
10 BORDER 2 : PAPER 2 : INK 9 : CLEAR 4e4
20 POKE 50000,237 : POKE 50001,113 : POKE 50002,201
30 RAND USR 50000 : PAUSE 0
e executar com RUN.
Se a borda ficar
preta, a instrução extra-oficial enviou valor 0 e portanto a CPU é
NMOS; se ficar
branca, foi enviado o valor 255 e o Z80 é
CMOS. Eu fiz os testes com os microprocessadores acima e o comportamento foi o esperado. Os leitores também podem fazer o mesmo.
Alguém que entende de código de máquina pode questionar que nos POKEs não há a instrução
LD BC,254
, que atribuiria o endereço da porta da ULA que muda a cor da borda. O truque é que
USR
atribuirá valor 50000 para os registradores BC que, sendo um valor par, irá habilitar a porta da ULA.
loading...
-
Consumo Dos Tk
Aproveitando que montei a Power TK e também pela informação dada pelo Victor Trucco de que a TBBlue consome um pouco mais de uma centena de miliamperes, resolvi medir o consumo nos meus equipamentos. Usei dois multímetros digitais junto à fonte,...
-
Problema Com Poke No Bionic Commando
Para tempo infinito no Bionic Commando 128K, há dois diferentes POKEs sugeridos no The Tipshop. Desses dois, o que parece funcionar é POKE 34610,0. Disassembly deste trecho do programa revela: 34607 LD HL,35750 ; HL...
-
Detecção De Ram 48/128
Conforme tinha prometido na postagem sobre incompatibilidade do Bubble Bobble, eu vou mostrar a rotina de detecção de tamanho de RAM 48/128K que elaborei na ocasião. A ideia era fazer uma rotina que não altere o conteúdo da RAM a ser testada;...
-
Perda De Dados Em Eprom
Assim como nós, apreciadores dos computadores clássicos, envelhecemos, o mesmo acontece com os equipamentos pelos quais temos tanto carinho. Dos componentes eletrônicos, os capacitores eletrolíticos são os que mais rapidamente se degradam. ...
-
Porta 32765 (#7ffd)
Apesar de já ter comentado sobre esta porta de entrada e saída (I/O) do Spectrum 128 e da TKMEM-128, julguei conveniente repetir, pois ajudará na compreensão da listagem BASIC publicada ontem. Fonte: Wikipédia Esta é uma das novas portas introduzidas...
Eletrônica