Motorola 68020 - Motorola 68020
Informação geral | |
---|---|
Lançado | 1984 |
Projetado por | Motorola |
atuação | |
Máx. Taxa de clock da CPU | 12,5 MHz a 33 MHz |
Largura de dados | 32 bits |
Largura do endereço | 32 bits |
Cache | |
Cache L1 | Icache de 256 bytes |
Arquitetura e classificação | |
Conjunto de instruções | Motorola 68000 series |
Especificações físicas | |
Transistores | |
Pacote (s) | |
Produtos, modelos, variantes | |
Variante (s) | |
História | |
Antecessor | Motorola 68010 |
Sucessor | Motorola 68030 |
O Motorola 68020 (" sessenta e oito-oh-vinte ", " sessenta e oito-oh-dois-oh " ou " seis-oito-oh-dois-oh ") é um microprocessador de 32 bits da Motorola , lançado em 1984 Foi disponibilizada também uma versão de menor custo, conhecida como 68EC020 . De acordo com as práticas de nomenclatura comuns aos designs da Motorola, o 68020 é geralmente referido como "020", pronunciado "oh-dois-oh" ou "oh-vinte".
Descrição
O 68020 tem dados internos e externos de 32 bits e barramentos de endereço, em comparação com os primeiros modelos 680x0 com dados de 16 bits e barramentos de endereço de 24 bits. A ALU do 68020 também é nativamente de 32 bits, portanto, pode executar operações de 32 bits em um ciclo de clock, enquanto o 68000 levou um mínimo de dois ciclos de clock devido a sua ALU de 16 bits. Os métodos de embalagem mais recentes permitiram que o '020 apresentasse mais pinos externos sem o tamanho grande que o método anterior de embalagem dupla em linha exigia. O 68EC020 reduziu o custo por meio de um barramento de endereço de 24 bits. O 68020 foi produzido em velocidades que variam de 12 MHz a 33 MHz.
Melhorias em relação ao 68010
O 68020 possui uma unidade lógica aritmética (ALU) de 32 bits, dados externos de 32 bits e barramentos de endereço. Ele adiciona instruções extras e modos de endereçamento adicionais. O 68020 (e 68030) tem um pipeline de três estágios adequado. Embora o 68010 tivesse um "modo de loop", que acelerava os loops através do que era efetivamente um minúsculo cache de instruções, ele continha apenas duas instruções curtas e, portanto, era pouco usado. O 68020 substituiu isso por um cache de instrução adequado de 256 bytes, o primeiro processador da série 68k a apresentar verdadeira memória cache on-chip.
Os processadores 68000 e 68010 anteriores só podiam acessar dados de palavra (16 bits) e palavra longa (32 bits) na memória se estivessem alinhados por palavra (localizados em um endereço par). O 68020 não tem restrições de alinhamento no acesso aos dados. Naturalmente, os acessos desalinhados são mais lentos do que os acessos alinhados porque requerem um acesso extra à memória.
O 68020 tem um pequeno cache de instrução mapeada diretamente de 256 bytes, organizado como 64 entradas de quatro bytes. Embora pequeno, ele ainda fez uma diferença significativa no desempenho de muitos aplicativos. A redução resultante no tráfego de ônibus foi particularmente importante em sistemas que dependem fortemente de DMA .
Suporte a coprocessador
O 68020 possui uma interface de coprocessador que suporta até oito coprocessadores. A CPU principal reconhece as instruções da "linha F" (com os quatro bits de código de operação mais significativos todos um) e usa ciclos de barramento especiais para interagir com um coprocessador para executar essas instruções. Dois tipos de co-processadores foram definidos: flutuante unidades de ponto ( MC68881 ou MC68882 FPUs ) e a unidade de gestão de memória paginada ( MC68851 PMMU). Apenas uma PMMU pode ser usada com uma CPU. Em princípio, várias FPUs podiam ser usadas com uma CPU, mas isso não era comum. A interface do coprocessador é assíncrona, portanto, é possível executar os coprocessadores em uma taxa de clock diferente da CPU.
Recursos de multiprocessamento
O suporte a multiprocessamento é implementado externamente pelo uso de um pino RMC para indicar um ciclo indivisível de leitura-modificação-gravação em andamento. Todos os outros processadores precisam impedir o acesso à memória até que o ciclo seja concluído. O suporte de software para multiprocessamento inclui as instruções TAS , CAS e CAS2 .
Em um sistema multiprocessador, os coprocessadores não podiam ser compartilhados entre CPUs. Para evitar problemas com retornos do coprocessador, erro de barramento e exceções de erro de endereço, geralmente era necessário em um sistema multiprocessador que todas as CPUs fossem do mesmo modelo e que todas as FPUs fossem do mesmo modelo também.
Conjunto de instruções
As novas instruções incluem algumas pequenas melhorias e extensões para o estado de supervisor, várias instruções para gerenciamento de software de um sistema de multiprocessamento (que foram removidas no 68060), algum suporte para linguagens de alto nível que não eram muito usadas (e foram removidas do processadores 680x0 futuros), instruções de multiplicação (32 × 32 → 64 bits) e divisão (quociente de 64 ÷ 32 → 32 bits e restos de 32 bits) maiores e manipulações de campo de bits.
Os novos modos de endereçamento adicionam indexação escalonada e outro nível de indireção a muitos dos modos pré-existentes.
Embora o 68000 tivesse um 'modo supervisor', ele não atendia aos requisitos de virtualização de Popek e Goldberg devido à única instrução 'MOVE from SR' ser desprivilegiada, mas sensível. Sob o 68010 e posterior, isso foi tornado privilegiado, para melhor oferecer suporte ao software de virtualização.
Arquitetura
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Com barramentos de endereço internos e externos completos de 32 bits, os registradores de endereço (A0 a A7) poderiam utilizar sua largura total de 32 bits e eram capazes de endereçar todo o espaço de endereço de 4 GB.
As larguras efetivas maiores dos registradores de endereço apresentavam algum problema para o software anterior que não era considerado " limpo de 32 bits ". Alguns programas usavam os 8 bits altos (bits 24-31) de endereços para conter vários bits de sinalização, com o entendimento de que as CPUs 680x0 anteriores ignorariam com segurança esses bits altos. Esse software teve que ser reescrito para se ajustar ao maior espaço de endereço físico disponível para as CPUs 68020 e posteriores.
Uso
O 68020 foi usado nos computadores pessoais Apple Macintosh II e Macintosh LC , estações de trabalho Sun 3 , Amiga 1200 (nota: o Amiga 1200 usava a variante 68EC020 de baixo custo), os analisadores de rede Hewlett-Packard 8711 Series e membros posteriores da HP 9000 /300 família e da Alpha Microsystems AM-2000. Além disso, o 68020 foi uma atualização alternativa ao 68008 do computador Sinclair QL na interface do Super Gold Card da Miracle Systems .
O Amiga 2500 e o A2500UX foram enviados com o A2620 Accelerator usando um 68020, uma unidade de ponto flutuante 68881 e a unidade de gerenciamento de memória 68851. O 2500UX é fornecido com o Amiga Unix, exigindo um processador '020 ou' 030.
Vários osciloscópios digitais de meados dos anos 80 ao final dos anos 90 usaram o 68020, incluindo o LeCroy 9300 Series (modelos de ponta incluindo modelos com sufixo "C" usaram o 68EC030 mais poderoso ; os modelos 9300 com um processador 68020 podem ser atualizados para o 68EC030 com uma mudança da placa da CPU) e a série LeCroy 9400 anterior (todos os modelos exceto o 9400 / 9400A que usava o 68000 ), junto com alguns modelos da Série Tektronix TDS. Os HP 54520, 54522, 54540 e 54542 também usam o 68020, junto com um coprocessador matemático 68882.
É também o processador usado a bordo dos trens TGV para decodificar as informações de sinalização que são enviadas aos trens através dos trilhos. Além disso, está sendo usado no controle de vôo e sistemas de radar da aeronave de combate Eurofighter Typhoon .
A central telefônica DMS-100 da Nortel Networks também usou o 68020 como o primeiro microprocessador do núcleo de computação SuperNode.
Variante
O 68EC020 é uma versão de custo mais baixo do Motorola 68020. A principal diferença entre os dois é que o 68EC020 tem apenas um barramento de endereço de 24 bits, em vez do barramento de endereço de 32 bits do 68020 completo e, portanto, só é capaz de endereço 16 MB de memória.
O computador Amiga 1200 e o console de jogo Amiga CD32 usam o 68EC020 de custo reduzido; as placas de arcade Namco System 22 , Taito F3 e Konami GX também usaram este processador. O protótipo do Atari Jaguar II também apresentou isso para substituir o 68000 do console Atari Jaguar original . Ele também encontrou uso em impressoras a laser. A Apple o usou no LaserWriter IIɴᴛx. A Kodak o usou no Ektaplus 7016PS e a Dataproducts no LZR 1260.
Em 2014, a Rochester Electronics restabeleceu a capacidade de fabricação do microprocessador 68020 e ela ainda está disponível hoje.
Dados técnicos
Nome formal | MC68020 |
Taxa de clock da CPU | 12,5, 16,67, 20, 25, 33 MHz (mínimo 8 MHz, sem geração de clock no chip) |
Alimentação de tensão | 5 V |
Força maxima | 1,75 W |
Processo de produção | HCMOS, peça de silicone 3/8 " |
Portador de chip | PGA 169 (114 pinos usados) 34,16 mm × 34,16 mm (53 ° C / W sem dissipador de calor) |
Barramento de endereços | 32 bits (4 GB de acesso linear direto) |
Barramento de dados | 32 bits |
Conjunto de instruções | 101 instruções CISC |
Cache | Icache de 256 bytes |
Registro |
|
Manuseio de filial | Previsão de ramo:
|
Transistores | ~ 200.000 |
atuação | 10 MIPS a 33 MHz |