Documentação

Primeiros passos
- Criar ou abrir um projetoUm projeto é o arquivo que contém todos os circuitos em que você trabalha, salvo na sua conta. Projeto → Novo inicia um projeto totalmente novo e vazio — se o atual tiver alterações não salvas, ele primeiro pede confirmação, para que nada se perca por acidente. Projeto → Abrir mostra um navegador dos seus projetos salvos, organizados em pastas, cada um com uma miniatura de pré-visualização ao vivo; clique em um para carregá-lo. Ambas as ações estão no menu Projeto, no canto superior esquerdo da barra superior.
- Criar um circuitoUm projeto contém um ou mais circuitos, cada um mostrado como uma aba na barra de circuitos. Você adiciona um circuito com o botão + dessa barra, ou pelo menu Circuit → New. Dê a ele um nome — não vazio e único dentro do projeto — e uma nova aba abre sobre uma tela vazia pronta para peças. Alterne entre circuitos clicando em suas abas.
- Obter ajuda de um componenteCada componente da paleta tem seu próprio tópico de ajuda — uma descrição, exemplos resolvidos e, em muitos casos, uma tabela-verdade. A forma mais rápida de chegar é contextual: clique com o botão direito em qualquer componente no painel de Componentes e escolha Mostrar ajuda de [nome]; o painel de Ajuda abre direto nesse tópico, sem precisar buscar. Você pode chegar ao mesmo conteúdo digitando o nome do componente na caixa de busca do menu Ajuda, ou navegando pelo capítulo Componentes do índice de documentação (Ajuda → Ver documentação).
- Salvamento e salvamento automáticoNada é gravado na sua conta até você salvar. Circuito → Salvar circuito (ou ⌘S / Ctrl+S) grava apenas o circuito que você está editando; Projeto → Salvar grava o projeto inteiro, e Projeto → Salvar como salva uma cópia com um nome ou pasta novos, deixando o original intacto. Um asterisco ao lado do nome do projeto no caminho indica que há alterações não salvas. O salvamento automático, desativado por padrão, é uma configuração separada em Preferências: ative-o e ele volta a salvar o projeto silenciosamente em um intervalo entre 1 e 30 minutos — mas só depois de você tê-lo salvado com um nome pelo menos uma vez, e só quando há algo novo para gravar.
- Tour pela interfaceO espaço de trabalho é composto por uma barra superior fixa e um conjunto de painéis flutuantes ao redor de um canvas infinito. A barra superior contém os menus Projeto, Circuito, Visualizar, Ferramentas e Ajuda à esquerda, o caminho de projeto/circuito no meio, e seu menu de conta à direita. O canvas é onde os circuitos são construídos: arraste componentes até ele, cabeie-os entre si, e navegue ou dê zoom livremente. Ao redor dele flutuam o painel de Componentes (a paleta de peças), o painel de Propriedades (ajustes do que estiver selecionado) e, quando abertos, os painéis de Pacote, Barra de ferramentas, Alinhar e Analisador Lógico — cada um pode ser mostrado ou ocultado pelo menu Visualizar, arrastado para uma nova posição e redimensionado.

Interface
- Janela de PerfilPerfil abre a partir do menu de conta no canto superior direito (clique no seu nome ou avatar) e edita as informações pessoais vinculadas à sua conta: nome e sobrenome, país, gênero, uma biografia curta e uma foto de avatar. O e-mail é exibido mas é somente leitura, pois vem do seu provedor de login. As alterações são gravadas ao pressionar Salvar; fechar a caixa de diálogo sem salvar as descarta.
- Janela de PreferênciasPreferências abre a partir do menu de conta e controla três coisas: o idioma da interface, quais painéis são exibidos por padrão ao abrir um projeto, e o salvamento automático. Alterar o Idioma aqui muda a interface imediatamente, da mesma forma que escolhê-lo em qualquer outro lugar do aplicativo. A lista de Painéis padrão define quais dentre Componentes, Propriedades, Pacote e Barra de ferramentas ficam visíveis em um projeto recém-aberto — não afeta os painéis que você já abriu na sessão atual. Cada alteração é gravada no momento em que você pressiona Salvar.
- Painel de AlinharO painel de Alinhar alinha, distribui e espaça uniformemente os elementos selecionados no canvas: alinhamento à esquerda, centro, direita, topo, meio ou base, além de distribuição e espaçamento horizontal e vertical com uma margem configurável. Aparece automaticamente ao selecionar 2 ou mais elementos, e também pode ser fixado aberto pelo menu Exibir.
- Painel de Analisador LógicoO painel de Analisador Lógico mostra um diagrama de tempos ao vivo de até 16 sinais, um por cada sonda de Analisador Lógico colocada no canvas. Cada canal pode ser ativado ou desativado, renomeado e recolorido; o diagrama rola em tempo real enquanto a simulação é executada, facilitando comparar as relações de tempo entre sinais.
- Painel de ComponentesO painel de Componentes é a paleta de todos os elementos que você pode colocar no canvas, organizada por categoria: portas, entradas, saídas, elementos sequenciais, decodificadores, outros componentes e anotações. Arraste um componente para o canvas para posicioná-lo, ou dê um duplo clique para inseri-lo automaticamente centralizado na área visível no momento. Clique com o botão direito em um componente para um menu rápido, incluindo um link para o próprio tópico de ajuda. O catálogo completo, agrupado por categoria, aparece abaixo.
- Painel de EmpacotamentoO painel de Empacotamento define como o circuito ativo aparece ao ser encapsulado como componente reutilizável: a forma do corpo (linear, quadrada ou hexagonal), quais elementos luminosos aparecem como luzes no corpo, rótulos de serigrafia livres e a posição de cada terminal. O posicionamento dos terminais é automático por padrão; um modo manual permite arrastar os terminais para reordená-los ou reposicioná-los, dentro dos limites da forma ativa.
- Painel de PropriedadesO painel de Propriedades edita o elemento atualmente selecionado: largura de bits, número de entradas, atraso de propagação, cor, rótulo e outros campos específicos do componente. Quando nada está selecionado, mostra em vez disso os metadados do próprio circuito ativo: descrição, notas, URL de referência e palavras-chave de busca, para documentar o circuito em si.

Fiação
- Como cabear dois componentesUm fio transporta um sinal da porta de saída de um componente até a porta de entrada de outro. Você o desenha arrastando de uma saída para uma entrada; quando o ponteiro alcança uma porta compatível, o fio se encaixa no lugar. Uma vez conectado, o fio é colorido conforme o valor que carrega: verde significa nível lógico ALTO (1), uma linha escura significa nível lógico BAIXO (0) e o vermelho marca um fio flutuante que nada alimenta.
- Usando barramentos (fios de vários bits)Um barramento é um único fio que transporta vários bits de uma vez, de modo que uma conexão move um número binário inteiro em vez de um bit. Você cria um barramento definindo a largura de bits de um componente acima de 1; barramentos são desenhados como linha pontilhada para distingui-los dos fios simples de 1 bit. Para alcançar um bit individual, separe o barramento com um Splitter; para recombinar bits em um barramento, agrupe-os do modo inverso. Um barramento e um fio de 1 bit não podem se unir diretamente: suas larguras devem coincidir.

Subcircuitos
- Criar um subcircuitoUm subcircuito empacota um circuito em um bloco reutilizável, como um chip sob medida. Você constrói um circuito normal cujos pinos de entrada (Input) e saída (Output) se tornam os terminais do bloco, e então o transforma em subcircuito de um pai com Circuit → New sub-circuit, ou clicando com o botão direito numa aba e escolhendo Insert. O subcircuito passa a ser um filho exclusivo desse pai, listado no menu suspenso ↓ da aba do pai. Selecione-o ali para entrar e editá-lo; uma trilha de navegação mostra Projeto → Circuito → Subcircuito para você sempre saber onde está.
- O que é um subcircuitoUm subcircuito é um circuito instanciado dentro de outro circuito, assim como um componente é colocado na tela. Ele é armazenado exclusivamente sob o seu pai e nunca aparece na lista principal de circuitos; você o acessa pelo menu suspenso da seta para baixo (↓) na aba do pai. Ao abrir um subcircuito, você entra nele como o circuito ativo e editável, com uma trilha de navegação Projeto › Pai › Subcircuito para que sempre saiba onde está e possa clicar em qualquer ancestral para voltar.
- Regras de inserção de subcircuitosTrês regras oficiais governam o que pode ser inserido em quê. (a) Um circuito pode inserir QUALQUER outro circuito, desde que isso não crie um ciclo recursivo. (b) Um circuito também pode inserir seus PRÓPRIOS subcircuitos, reutilizando-os dentro do mesmo pai. (c) Um sub-circuito NÃO pode inserir nenhum circuito ou subcircuito — o aninhamento tem um nível de profundidade a partir de cada contexto de edição, por isso, enquanto você edita um subcircuito, o comando Inserir fica desativado. Juntas, essas regras mantêm a hierarquia finita e garantem que o achatador sempre termine.
- Terminais e exposição no pacoteOs terminais de SAÍDA de um subcircuito são utilizáveis pela fiação do pai — você pode conectá-los a portas, componentes ou até a outro subcircuito dentro do mesmo pai. Mas eles NÃO são expostos no pacote do pai (sua interface de footprint) a menos que sejam ligados a um dos PRÓPRIOS terminais de Saída do pai. Os pinos do pacote derivam apenas dos componentes de Entrada e Saída próprios de um circuito, nunca diretamente dos terminais de um subcircuito. Assim, uma saída de subcircuito que permanece interna aciona a lógica do pai silenciosamente, enquanto uma roteada para uma Saída do pai torna-se um pino visível no pacote do pai.

Menus
- Inserir (menu Circuito)A linha Inserir do menu Circuito abre um submenu que lista todos os outros circuitos e subcircuitos do projeto que podem ser colocados como uma instância ao vivo no canvas ativo — o mesmo submenu também está disponível no menu de clique direito do canvas quando nada está selecionado. Escolher um posiciona uma instância do pacote centralizada na vista atual, conectada ao mesmo circuito ao vivo que representa.
- Menu AjudaO menu Ajuda é a porta de entrada para a documentação. Oferece uma caixa de busca, abre o painel flutuante de Ajuda e abre o índice completo da documentação.
- Menu CircuitoO menu Circuito trabalha com os circuitos dentro do projeto. Crie um novo circuito de nível superior, adicione um subcircuito dentro do circuito ativo, importe um circuito ou salve o circuito ativo.
- Menu FerramentasO menu Ferramentas está reservado para ferramentas de análise e utilidades. Por enquanto é um espaço reservado e abrigará recursos de análise de circuitos mais pesados em uma versão futura.
- Menu ProjetoO menu Projeto gerencia todo o arquivo do projeto. Aqui você cria um novo projeto, abre um existente, salva ou salva o atual com outro nome, reabre um projeto recente e edita as propriedades do projeto.
- Menu VerO menu Ver mostra ou oculta os painéis da área de trabalho e controla o painel de Alinhamento. Uma marca de seleção ao lado de um painel indica que ele está visível.

Componentes
- Alimentação (VCC)Uma fonte constante cuja saída é sempre nível lógico ALTO (1). Representa o trilho de alimentação, VCC, a tensão positiva que uma família lógica interpreta como nível verdadeiro ou afirmado. Use-a onde um sinal deva ser permanentemente 1: para amarrar em alto uma entrada não usada, para fixar uma habilitação ligada ou para fornecer um operando constante à lógica.
- Anotação de imagemA anotação de Imagem coloca uma figura na área de trabalho apenas para documentação. Ela não tem terminais de entrada ou saída e não participa da simulação, portanto nunca afeta valores lógicos nem temporização. Use-a para incorporar um trecho de datasheet, um diagrama de pinos, uma foto de referência ou um logotipo do projeto ao lado do circuito que explica. Como todas as anotações, é um auxílio visual cujo único trabalho é tornar o diagrama mais fácil de ler e entender.
- Anotação de regiãoA anotação de Região é um retângulo tracejado usado para agrupar e destacar uma área do circuito. Como as demais anotações, ela não carrega sinal nem participa da simulação. Você a dimensiona com sua largura e altura e a colore com a paleta de design de 24 cores. Ao desenhar um limite visível ao redor de um conjunto de componentes, uma região aproveita a forma como nossa percepção agrupa o que está delimitado por uma borda comum, tornando os blocos funcionais imediatamente reconhecíveis.
- Anotação de textoA anotação de Texto é um rótulo livre colocado na área de trabalho para notas, títulos e chamadas. Ela não tem terminais nem papel lógico, portanto nunca afeta a simulação. Você controla o tamanho da fonte, a família tipográfica (Poppins, monospace ou serif), o estilo (normal, negrito, itálico, negrito-itálico) e a cor a partir da paleta de design de 24 cores. Uma rotulação clara transforma um diagrama de fiação em um documento que se explica sozinho, que é exatamente o propósito de uma anotação.
- BotãoUma fonte momentânea: emite nível lógico ALTO (1) apenas enquanto você o mantém pressionado e volta ao nível lógico BAIXO (0) assim que você solta. Espelha um botão real ligado com um resistor de pull-down, cujo estado de repouso padrão é 0 e que é levado a 1 apenas enquanto o contato está fechado. É a ferramenta ideal para gerar um pulso curto e deliberado, como um tique de clock manual ou um disparo único.
- Buffer de três estadosÉ uma conexão comutável mais do que uma função lógica: enquanto EN está em HIGH a saída Q repete a entrada D sem alterações, e enquanto EN está em LOW a saída deixa de excitar por completo e fica flutuante em alta impedância (Z). Esse terceiro estado é o que permite que vários dispositivos compartilhem um mesmo barramento: cada um o excita apenas quando habilitado e os demais ficam de fora.
- ClockO clock é uma fonte de sinal de marcha livre que alterna sua saída automaticamente entre 0 e 1 com um período fixo, produzindo uma onda quadrada com ciclo de trabalho de 50%. Não precisa de entradas; você só define o período. O clock é o batimento de todo circuito síncrono: suas bordas de subida definem os instantes em que flip-flops, contadores e registradores de deslocamento se atualizam, então quase todo elemento sequencial que você colocar acabará ligado a um clock.
- Codificador de prioridadeUm codificador de prioridade entrega o indice binario da entrada ativa de maior prioridade, ignorando entradas ativas de menor prioridade. Um sinalizador de valido distingue o caso todo-zero de um indice genuino 0. E o inverso de um decodificador e a forma padrao de arbitrar requisicoes concorrentes.
- Combinador de barramentoUm barramento é um feixe de fios que transporta um valor de vários bits como uma única linha. O Combinador compõe N linhas individuais de 1 bit em um único barramento de saída de N bits, de modo que a entrada i se torna o bit i do barramento. Ele não realiza lógica nem adiciona atraso: é apenas uma conveniência de fiação que permite combinar sinais controlados separadamente em uma única linha de barramento. É a contraparte exata do Divisor — onde o Divisor decompõe um barramento, o Combinador o remonta.
- Comparador de magnitudeCompara dois barramentos sem sinal A e B e informa o resultado em três saídas separadas: A>B, A=B e A<B. Exatamente uma delas está em HIGH a cada momento, porque dois números são sempre maior, igual ou menor. Responde a pergunta que um subtrator apenas insinua, e a responde sem produzir uma diferença que depois seria preciso interpretar.
- ContadorO contador é um contador crescente síncrono pronto. A cada borda de subida do clock ele incrementa seu valor armazenado e o apresenta no barramento Value; quando a contagem atinge a entrada Max Value, ela retorna a 0 na próxima borda. Um Reset assíncrono força a contagem a 0 imediatamente, sobrepondo o clock, e uma saída Zero vai a alto sempre que a contagem é 0. Ele empacota toda uma cadeia de flip-flops e portas em um único bloco, ideal para temporização, endereçamento, contagem de eventos e sequenciamento.
- Decodificador BCD para 7 segmentosConverte um dígito BCD de 4 bits nas sete linhas de segmento que o desenham. A entrada é um número de 0 a 9; as saídas a até g excitam cada uma uma barra do display. Existe para que você não tenha que deduzir, porta por porta, quais barras acendem para cada dígito: esse mapeamento é o componente inteiro.
- Decodificador de linhasUm decodificador ativa exatamente uma de suas linhas de saida, escolhida pelo valor binario de sua entrada. Uma entrada de n bits ativa uma de 2^n saidas, produzindo um padrao one-hot. Decodificadores traduzem codigos binarios compactos em linhas de controle individuais e sao a contraparte dos codificadores.
- Demultiplexador (DEMUX)Um demultiplexador e o inverso do multiplexador: encaminha uma unica entrada de dados para exatamente uma de varias saidas, escolhida pelas linhas de selecao. As saidas nao selecionadas ficam inativas. Um DEMUX com n linhas de selecao ativa uma de 2^n saidas e e o elemento basico de distribuicao de dados.
- Detector de LSBO detector de LSB informa o indice do bit menos significativo em 1 no barramento de entrada, com um sinalizador de habilitacao que fica alto apenas se ao menos um bit estiver em 1. Varrendo de baixo, isola o um mais baixo, a operacao por tras do find-first-set e da logica de alocacao.
- Detector de MSBO detector de MSB informa o indice do bit mais significativo em 1 no barramento de entrada, junto com um sinalizador de habilitacao que fica alto apenas se ao menos um bit estiver em 1. Varrendo do topo, localiza o primeiro um, a funcao classica de prioridade usada para normalizacao e estimativa de magnitude.
- Detector de paridadeUm detector de paridade recalcula a paridade de uma palavra recebida e a compara com o bit de paridade transmitido. Uma divergencia significa que um numero impar de bits mudou, entao ativa uma flag de erro. A paridade de um unico bit detecta qualquer erro de peso impar mas nao consegue localiza-lo nem corrigi-lo.
- DIP switchUm banco de chaves independentes em um único encapsulamento. Cada posição tem seu próprio pino de saída e seu próprio estado, e você a comuta clicando nela. É a forma organizada de alimentar um circuito com várias entradas fixas de uma vez: aquele tipo de ajuste que se define antes de simular e quase nunca se mexe de novo.
- Display de 16 segmentosUm display alfanumérico cujos dezesseis segmentos LED, incluindo diagonais e barras horizontais divididas, podem formar cada dígito 0-9 e cada letra maiúscula A-Z, ao contrário do de 7 segmentos, que só faz dígitos. No PaizLogic ele lê um barramento de 7 bits e mostra o caractere ASCII correspondente. Peças reais como o Maxim MAX6954 armazenam uma fonte ASCII de 16 segmentos completa no chip e acionam o display a partir de uma palavra serial, a mesma ideia que o PaizLogic esconde atrás de uma única entrada de 7 bits.
- Display de 7 segmentosUm display numérico formado por sete LEDs em forma de barra, rotulados de a a g, dispostos em um oito. No PaizLogic ele recebe um barramento de 4 bits em sua única entrada e acende o padrão de segmentos do dígito hexadecimal daquele valor, de 0 a F. Internamente, escolher quais segmentos acender para cada dígito é uma função combinacional dos quatro bits de entrada, exatamente o trabalho que um decodificador BCD para 7 segmentos faz no hardware real.
- Divisor de barramentoUm barramento é um feixe de fios que transporta um valor de vários bits como uma única linha. O Divisor decompõe um barramento de entrada de N bits em N linhas individuais de 1 bit, de modo que o bit i do barramento se torna a saída i. Ele não realiza lógica nem adiciona atraso: é apenas uma conveniência de fiação que permite rotear ou observar cada bit separadamente. Como o simulador já oferece suporte a fanout, a mesma fonte de sinal pode alimentar o barramento e cada bit dividido permanece sincronizado com ela.
- EEPROMMemória não volátil: comporta-se exatamente como a RAM (leitura combinacional, escrita síncrona na borda de subida de CLK com WE em HIGH, RST assíncrono) mas seu conteúdo persiste — as escritas simuladas são salvas com o circuito, e as células também podem ser editadas à mão no painel de Propriedades, como na ROM.
- Flip-flop DO flip-flop D (de dados) é o elemento de memória fundamental do projeto digital síncrono. A cada borda de subida do clock ele amostra a entrada D e a armazena na saída Q, mantendo esse valor até a próxima borda. As entradas assíncronas PRE (preset) e CLR (clear) forçam Q para 1 ou 0 imediatamente, independentemente do clock, e CLR vence se ambas forem ativadas. Por capturar o dado apenas em um instante bem definido, o flip-flop D é o bloco padrão para registradores, pipelines e máquinas de estados.
- Flip-flop JKO flip-flop JK é o mais versátil dos flip-flops síncronos. A cada borda de subida do clock, suas duas entradas selecionam uma de quatro ações: J=0 K=0 mantém, J=1 K=0 seta Q em 1, J=0 K=1 zera Q e J=1 K=1 alterna Q. Ele elimina o estado proibido do flip-flop SR redefinindo essa combinação como uma alternância útil. As entradas assíncronas PRE e CLR sobrepõem o clock (CLR vence). Qualquer outro flip-flop pode ser construído a partir de um JK, por isso é um primitivo predileto para ensino e projeto de contadores.
- Flip-flop SRO flip-flop SR (set-reset) é a célula de armazenamento síncrona mais simples. Em uma borda de subida do clock, S=1 seta Q em 1, R=1 zera Q e S=R=0 mantém o valor anterior. A combinação S=R=1 é proibida porque pede setar e resetar a célula ao mesmo tempo, deixando Q e Q' indefinidos. As entradas assíncronas PRE e CLR agem imediatamente (CLR vence). O flip-flop SR é o ancestral conceitual de todos os outros e corresponde diretamente ao latch de portas cruzadas presente nos bits de memória reais.
- Flip-flop TO flip-flop T (toggle) tem uma única entrada de dados T. A cada borda de subida do clock ele inverte sua saída armazenada Q quando T vale 1 e a mantém quando T vale 0. As entradas assíncronas PRE e CLR setam ou limpam Q imediatamente (CLR vence). Como uma sequência de comutações divide a frequência pela metade naturalmente, o flip-flop T é o elemento clássico de contadores binários e divisores de clock, e é funcionalmente um flip-flop JK com J e K unidos.
- Fonte de entradaFonte de sinal controlada pelo usuário. Cada bit é um interruptor independente que você alterna manualmente: um bit em 1 leva seu fio ao nível lógico ALTO e um bit em 0 o leva ao nível lógico BAIXO. Com uma largura maior que 1 bit, os terminais formam um barramento que transporta um número binário, e toda a fonte pode ser associada a um pino do pacote para que o circuito acabado a exponha como entrada externa.
- Gerador de paridadeUm gerador de paridade calcula um unico bit de verificacao a partir de um barramento de entrada fazendo XOR de todos os seus bits. Para paridade par o bit torna par o total de uns; para paridade impar torna-o impar. Anexado aos dados, esse bit permite ao receptor detectar qualquer corrupcao de um unico bit.
- InterruptorUma fonte com travamento: um clique a alterna entre nível lógico BAIXO (0) e ALTO (1), e ela mantém esse estado até você clicar de novo. Onde um botão retorna sozinho, um interruptor lembra, o que o torna a escolha natural para um ajuste ou modo que deve permanecer fixo. Modela uma chave unipolar real, cujo nível definido depende de ser ligada com um resistor de pull-up ou de pull-down.
- Latch DO latch D é um elemento de armazenamento sensível ao nível, o primo transparente do flip-flop D. Enquanto a entrada Enable está em alto o latch é «transparente» e Q simplesmente segue D; quando Enable vai a baixo o latch se «fecha» e mantém o último valor que D teve. As entradas assíncronas PRE e CLR forçam Q imediatamente (CLR vence). Por responder a todo o nível alto de Enable e não a uma única borda, um latch é mais rápido e menor que um flip-flop disparado por borda, mas muito mais sensível a glitches de entrada, por isso é usado deliberadamente, por exemplo em clocks de duas fases e bancos de registradores.
- LED (diodo emissor de luz)Uma saída luminosa de um único bit. O LED acende na cor escolhida quando sua entrada carrega um 1 digital (ALTO) e permanece apagado com um 0 (BAIXO). É a forma mais simples de visualizar um sinal lógico na área de trabalho: conecte qualquer saída e observe o nível. No hardware real, um LED é um diodo semicondutor que emite luz quando a corrente flui no sentido direto, portanto só importa o nível de sua única entrada, não os barramentos.
- LED RGBUma saída luminosa de três entradas que mistura luz vermelha, verde e azul de forma aditiva para produzir uma cor. Cada uma de suas três entradas controla um canal. Com entradas de um bit, cada canal simplesmente liga ou desliga, dando as oito cores primárias/secundárias da mistura aditiva (vermelho + verde = amarelo, vermelho + azul = magenta, verde + azul = ciano, os três = branco). Os LEDs RGB de cor real vão além: acionam cada canal com 8 bits de brilho, então 8 + 8 + 8 = 24 bits codificam 256 x 256 x 256 = 16.777.216 cores, a origem da 'cor verdadeira de 24 bits'.
- Matriz de LED RGBA Matriz de LED RGB é um arranjo retangular de pixels, cada um contendo uma cor de 24 bits (8 bits de vermelho + 8 de verde + 8 de azul, seguindo o modelo de canais sRGB). É um sumidouro de exibição com estado: não aciona nenhuma saída, mas lembra a cor de cada pixel até que você a sobrescreva. Três métodos de escrita independentes permitem endereçar a matriz com diferentes granularidades, e são aplicados do menor para o maior em cada passagem, de modo que um método posterior sobrescreve um anterior na mesma célula. As cores são mascaradas para 24 bits antes do armazenamento.
- Multiplexador (MUX)Um multiplexador encaminha uma de varias entradas de dados para uma unica saida. O valor binario nas linhas de selecao indica qual entrada e conectada, de modo que um MUX com n linhas de selecao escolhe entre 2^n entradas. E o bloco basico de roteamento e selecao de dados nos sistemas digitais.
- Nó de junçãoUm ponto de derivação sobre um fio. O nó toma o sinal que chega à sua entrada e o repete, sem alterações, em até três ramos, de modo que uma fonte possa alcançar vários destinos. Não carrega lógica nem acrescenta atraso: é o desenho de uma conexão compartilhada, não um componente que faça algo ao sinal.
- Porta ANDA porta AND fornece 1 apenas quando todas as entradas são 1; se qualquer entrada for 0, a saída é 0. Implementa a conjunção lógica (A · B) e é a base para habilitar, mascarar e detectar coincidências.
- Porta NANDA porta NAND é uma AND seguida de um inversor: a saída é 0 apenas quando todas as entradas são 1, e 1 caso contrário. NAND é funcionalmente completa — qualquer função booleana pode ser construída apenas com NAND — por isso é uma das portas mais importantes no hardware real.
- Porta NORA porta NOR é uma OR seguida de um inversor: a saída é 1 apenas quando todas as entradas são 0, e 0 se qualquer entrada for 1. Como NAND, NOR é funcionalmente completa — qualquer circuito lógico pode ser construído apenas com NOR.
- Porta NOT (inversor)A porta NOT, ou inversor, tem uma única entrada e fornece seu complemento lógico: 1 vira 0 e 0 vira 1 (Y = Ā). É a porta mais simples e aparece onde os sinais precisam ser negados, restaurados ou atrasados.
- Porta ORA porta OR fornece 1 quando pelo menos uma entrada é 1, e 0 apenas quando todas as entradas são 0. Implementa a disjunção lógica (A + B) e é usada para combinar condições, alarmes e qualquer decisão de 'pelo menos um'.
- Porta XNOR (NOR exclusivo)A porta XNOR é o inverso da XOR: fornece 1 quando suas entradas são iguais e 0 quando diferem; com mais entradas fornece 1 para um número par de uns. Calcula A ⊙ B e é o elemento natural de comparação de igualdade e de paridade par.
- Porta XOR (OU exclusivo)A porta XOR fornece 1 quando suas entradas diferem e 0 quando são iguais; com mais entradas fornece 1 para um número ímpar de uns. Calcula A ⊕ B e é o coração de somadores, verificadores de paridade e comparadores.
- RAMMemória de acesso aleatório: as leituras são combinacionais (a saída sempre mostra a palavra em ADDR) e as escritas são síncronas — na borda de subida de CLK com WE em HIGH, a palavra DIN é armazenada em ADDR. RST limpa todas as células de forma assíncrona. A memória sempre inicia zerada; seu conteúdo é estado de execução e não é salvo com o circuito.
- Registrador de deslocamento PISOUm registrador de deslocamento PISO (entrada paralela, saída serial) faz o oposto de um SIPO. Ativar Reset carrega todas as N entradas paralelas D no registrador de uma vez; depois, a cada borda de subida do clock, ele desloca a palavra para a direita e apresenta um bit por vez na única saída serial Q, começando pelo bit menos significativo. Após N clocks, toda a palavra saiu em série. Registradores PISO transformam uma palavra paralela em um fluxo serial, a metade transmissora da conversão paralelo-série e a base dos enlaces de dados seriais.
- Registrador de deslocamento SIPOUm registrador de deslocamento SIPO (entrada serial, saída paralela) aceita um bit por vez em sua entrada serial DATA e desloca a palavra armazenada para a esquerda a cada borda de subida do clock, de modo que o bit mais novo entra na posição Q0 e os bits antigos sobem em direção a Q(N-1). Após N clocks, toda a palavra fica disponível em paralelo nas N saídas Q. Um Reset assíncrono limpa o registrador para 0. Registradores SIPO transformam uma única linha serial em uma palavra paralela, a metade receptora da conversão série-paralelo.
- ROMMemória somente leitura: uma tabela de palavras pré-carregadas endereçada pelo barramento ADDR. Enquanto EN está em HIGH a saída apresenta a palavra armazenada no endereço atual; com EN em LOW a saída flutua (alta impedância), permitindo que várias memórias compartilhem um mesmo barramento de dados. O conteúdo é editado no painel de Propriedades como palavras hexadecimais e o circuito não pode modificá-lo.
- Seletor de bitUm seletor de bit extrai um unico bit de um barramento de entrada. O valor nas linhas seletoras e um indice no barramento, e a saida e o bit indicado. E na pratica um multiplexador cujas entradas de dados sao os fios individuais de um barramento, sendo a forma natural de testar ou rotear um bit de uma palavra.
- Sonda do Analisador LógicoUma derivação de entrada única que amostra um nó do canvas e envia seu valor a um canal do Analisador Lógico (menu Ferramentas). Ela não realiza nenhuma lógica nem impulsiona nada de volta ao circuito — conectar a entrada de uma Sonda a um nó nunca muda o comportamento desse nó, apenas o observa. Coloque até 16 sondas, uma por canal; cada uma é desenhada no diagrama de tempos do analisador com a cor própria da sonda, para você distinguir de relance a qual nó pertence cada traço.
- Terminal de saídaUma sonda somente leitura que exibe o valor presente no fio ou barramento que a alimenta. Nunca gera um sinal próprio; apenas informa se sua entrada está em nível lógico ALTO (1) ou BAIXO (0), ou o número binário transportado por um barramento de vários bits. Como uma entrada, uma saída pode ser associada a um pino do pacote para que o circuito acabado a exponha como resultado externo nomeado.
- Terra (GND)Uma fonte constante cuja saída é sempre nível lógico BAIXO (0). Representa o trilho de referência, terra ou GND, o nó de zero volt que uma família lógica interpreta como nível falso ou desafirmado. Use-a onde um sinal deva ser permanentemente 0: para amarrar em baixo uma entrada não usada, para manter afirmado um clear ativo em baixo ou para fornecer um operando constante 0 à lógica.

Referência
- Alinhar à baseMove cada componente selecionado para que suas bordas inferiores fiquem alinhadas na mesma linha horizontal: a borda inferior do componente mais abaixo.
- Alinhar à direitaMove cada componente selecionado para que suas bordas direitas fiquem alinhadas na mesma linha vertical: a borda direita do componente mais à direita.
- Alinhar à esquerdaMove cada componente selecionado para que suas bordas esquerdas fiquem alinhadas na mesma linha vertical: a borda esquerda do componente mais à esquerda.
- Alinhar ao topoMove cada componente selecionado para que suas bordas superiores fiquem alinhadas na mesma linha horizontal: a borda superior do componente mais acima.
- Centralizar horizontalmenteAlinha os componentes selecionados em um eixo vertical comum para que seus centros horizontais coincidam, sem alterar suas posições verticais.
- Centralizar verticalmenteAlinha os componentes selecionados em um eixo horizontal comum para que seus centros verticais coincidam, sem alterar suas posições horizontais.
- Distribuir horizontalmenteMantém fixos os componentes mais à esquerda e mais à direita e reposiciona os intermediários para que os espaços horizontais entre eles sejam iguais.
- Distribuir verticalmenteMantém fixos os componentes mais acima e mais abaixo e reposiciona os intermediários para que os espaços verticais entre eles sejam iguais.
- Espaçar horizontalmenteOrganiza os componentes selecionados da esquerda para a direita com um espaço horizontal fixo entre eles, obtido do valor de espaço do painel.
- Espaçar verticalmenteEmpilha os componentes selecionados de cima para baixo com um espaço vertical fixo entre eles, obtido do valor de espaço do painel.