Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
O SLG46880 e o SLG46881 apresentam vários novos blocos que não apareciam nos dispositivos GreenPAK anteriores. Esta nota de aplicação descreve os blocos de Memória Dinâmica (DM) e como usá-los.
A principal vantagem dos blocos DM é que eles podem ser reconfigurados para executar diferentes funções em diferentes estados da Máquina de Estado Assíncrono (ASM) de 12 estados do SLG46880 / 1. Isso os torna um componente muito flexível, uma vez que podem ser usados de uma forma no estado 0 e de outra forma no estado 1.
Abaixo, descrevemos as etapas necessárias para entender como o chip GreenPAK foi programado para criar o Bloco de Memória Dinâmica. No entanto, se você deseja apenas obter o resultado da programação, baixe o software GreenPAK para visualizar o arquivo de design GreenPAK já concluído. Conecte o Kit de Desenvolvimento GreenPAK ao seu computador e acesse o programa para criar o IC personalizado para a Memória Dinâmica.
Etapa 1: Noções Básicas do Bloco DM
Existem 4 blocos DM no Dialog GreenPAK SLG46880 / 1. Um bloco DM não configurado é mostrado na Figura 1.
Todos os blocos DM no SLG46880 / 1 têm os seguintes recursos:
● 2 tabelas de consulta: um LUT de 3 bits e um LUT de 2 bits
● 2 multiplexadores
● 1 CNT / DLY
● 1 bloco de saída
A Figura 2 mostra o mesmo bloco DM com conectores coloridos. (Essas cores não aparecem dentro do GreenPAK ™ Designer, elas são meramente ilustrativas.) Os conectores verdes são entradas para o bloco DM da Matriz. As conexões laranja são conexões dedicadas dentro do bloco DM, que não podem ser alteradas ou movidas. Os conectores azuis são conexões de relógio para o bloco do contador. O conector roxo pode ser usado para acionar uma transição de estado, mas não é uma conexão de matriz geral. Os conectores amarelos são saídas de matriz do bloco DM.
Etapa 2: Criação de novas configurações de bloco DM
Para criar uma nova configuração de bloco DM, você precisará selecionar um bloco DM e abrir seu painel de propriedades, mostrado na Figura 3. Agora você pode criar uma nova configuração para este bloco DM clicando no ícone “+” no canto superior direito. Neste ponto, você pode renomear a configuração se desejar e configurar o bloco DM como quiser, usando seu painel de propriedades. Você pode excluir uma configuração desnecessária selecionando-a no menu suspenso e clicando no botão “-“.
Cada bloco DM pode ter até 6 configurações diferentes. Qualquer configuração de bloco DM pode ser usada em qualquer um dos 12 estados do ASM, mas apenas uma configuração por bloco DM por estado é permitida. A Figura 4 mostra como a barra do gerenciador de recursos indica que uma das configurações DM0_0 foi usada. O número de configurações para DM0_0 foi aumentado de 0/6 para 1/6.
Etapa 3: use um bloco DM para acionar uma transição de estado
A Figura 5 mostra algumas maneiras diferentes de acionar uma transição de estado. Criamos novas configurações para DM0_0 e DM1_0, e as denominamos “myConfig” e “myConfig1”. O DM superior é simplesmente usado como uma porta AND de 3 bits, uma vez que o mux superior passa a saída da porta AND, e o buffer de 2 bits a passa para o bloco de saídas. (O LUT de 2 bits também poderia ter sido configurado como um buffer para o bloco CNT / DLY.) O conector “para ASM é usado para acionar uma transição de estado do estado 0 para o estado 1. Da mesma forma, uma conexão de matriz do Pin5 é usada para acionar uma transição de estado do estado 0 para o estado 2. Finalmente, DM1_0 é configurado para que ambos os muxes passem pelo sinal do Pin6. O contador é configurado como um atraso de borda de 100 µs e o LUT de 2 bits é uma porta AND. Assim como em DM0_0, o bloco de saída é usado para disparar outra transição de estado.
Etapa 4: usando um bloco DM para interagir com blocos fora do ASM
Como você deve ter notado na seção anterior, o bloco de saída de DM0_0 tem 3 saídas "para a matriz", enquanto o bloco de saída de DM1_0 não tem nenhuma saída de matriz. Isso também é válido para DM0_1 e DM1_1; DM0_1 tem 3 saídas de matriz, enquanto DM1_1 não tem nenhuma. As 3 saídas “para a matriz” podem ser conectadas a quaisquer outros conectores da matriz, como pinos, LUTs, DFFs, etc. Isso é mostrado na Figura 6.
Observe que, uma vez que uma conexão tenha sido feita entre um pino “para a matriz” e outros blocos fora da área da Máquina do Estado, ela existirá em todos os estados, independentemente da configuração de DM usada. Na Figura 6, a seção superior mostra myConfig0 de DM0_0, que existe no Estado 0. A seção inferior mostra myConfig1 de DM0_0, que existe no Estado 1. A conexão "para Matriz" superior em ambas as configurações é conectada ao Pin3, enquanto a do meio um está conectado a LUT0 de 2 bits. Apenas uma dessas conexões “para a matriz” pode estar “ativa” a qualquer momento. Existem 4 opções no menu do painel de propriedades para o bloco de saída de DM0_0 e DM0_1: ● Out0 / 1/2 keep ● Bypass para out0, out1 / 2 keep ● Bypass para out1, out0 / 2 keep ● Bypass para out2, out1 / 1 mantenha Essas configurações são usadas para determinar quais das três saídas estão ativas em cada configuração. Se a primeira opção for selecionada, a saída do LUT de 2 bits do bloco DM não será passada para nenhuma das três saídas "para Matriz". O valor desses três sinais permanecerá inalterado nesse estado. No entanto, se qualquer uma das outras três opções for usada, a saída da LUT de 2 bits do bloco DM será passada para out0, out1 ou out2, respectivamente, e o valor das outras duas saídas será mantido inalterado.
Etapa 5: Exemplo de Design
No exemplo de design acima, IN0, IN1 e IN2 são OU juntos. Enquanto isso, IN3 é atrasado em 1 ms e, em seguida, AND'd com a saída da porta OR. O bloco to Matrix é configurado de forma que a saída do bloco DM seja enviada para OUT0 em STATE0, enquanto os valores em OUT1 e OUT2 são mantidos.
Conclusão
Graças à sua reconfigurabilidade, os blocos de memória dinâmica no Dialog GreenPAK SLG46880 / 1 são extremamente flexíveis e podem ser usados de várias maneiras. Depois de aprender a trabalhar com blocos DM, você será capaz de criar projetos mais complexos juntando diferentes configurações de bloco DM em diferentes estados ASM.