10
1 ASM (Algorithmic State Machine ) Chart É uma representação mais adequada (para MdEs de alto nível ou que apresentem um grande número de entradas e saídas) do que diagramas e tabelas de estado. Permite descrever bem projetos RTL Um ASM Chart descreve o sistema funcionalmente sem fazer distinção entre o controle e o caminho dos dados. No entanto, tão logo se tenha um ASM Chat com as funções especificadas, pode-se refiná-lo em duas partições, uma para o fluxo ou caminho dos dados e uma outra para o controlador.

ASMChart

Embed Size (px)

DESCRIPTION

asm chart

Citation preview

  • *ASM (Algorithmic State Machine) Chart uma representao mais adequada (para MdEs de alto nvel ou que apresentem um grande nmero de entradas e sadas) do que diagramas e tabelas de estado.Permite descrever bem projetos RTLUm ASM Chart descreve o sistema funcionalmente sem fazer distino entre o controle e o caminho dos dados. No entanto, to logo se tenha um ASM Chat com as funes especificadas, pode-se refin-lo em duas parties, uma para o fluxo ou caminho dos dados e uma outra para o controlador.

  • *ASM (Algorithmic State Machine) Chart Elementos grficos usados em um ASM Chart1. Bloco de estado

    2. Blocos de deciso

    3. Bloco de sada condicional

  • *ASM (Algorithmic State Machine) Chart Bloco de EstadoUm Bloco de estado especfica um estado da MdE e um grupo de aes que ocorrem naquele estado. Todas as aes de um mesmo estado ocorrem em paralelo. Sadas do tipo Moore devem ser atribudas em blocos de estado.As aes em um bloco de estado so incondicionalmente executadas.Um estado pode executar tantas aes quanto necessrias, devendo-se suprir hardware para todas elas.Um registrador s pode receber uma atribuio por estado (regra da designao nica)

  • *ASM (Algorithmic State Machine) Chart Blocos de EstadoOs Blocos de Estados so interligados por transies.Os Estados so executados seqencialmente. Cada estado pode executar aes independentes, inclusive podendo fazer novas atribuies a variveis com diferentes atribuies em estados anteriores).Exemplo:

    s1Designao do estadoAes ou atribuies de sadas (Moore) que ocorrem no estados1s2

  • *ASM (Algorithmic State Machine) Chart Bloco de EstadoA quantidade de hardware requerido por um estado determinado pelo quantidade de funes que ele executaUnidades funcionais que implementam operaes com dados podem ser reutilizadas (ou compartilhadas) por diferentes estados. Neste caso, torna-se necessrio a presena de multiplexadores que se responsabilizem pelo roteamento dos dados que chegam para a unidade compartilhada.

  • *ASM (Algorithmic State Machine) Chart Blocos de DecisoIndicam que uma dada condio est para ser testada ou avaliada e que o fluxo de execuo depende deste teste.Um bloco de deciso pode incluir vrios caminhos para o ASM Chart.Define que estado prximo deve ser executado em funo das entradas ou do estado presente.Exemplos:

  • *ASM (Algorithmic State Machine) Chart Bloco de Sada CondicionalUsado para atribuies de sinais de sada de uma MdE do tipo Mealy.A condio que determina se esta sada ser gerada (j que depende de condies de entradas) devem ser especificadas em um bloco de deciso.Exemplo

    i10y = c + d1

  • *ASM (Algorithmic State Machine) Chart Flow chart de uma MdE do tipo Moore

    E0/0

    E1/0

    x=1

    x=0

    E2/1

    x=0

    x=1

    x=1

    x=0

    Z 0

    X = 1

    Z 0

    X = 1

    Z 1

    X = 1

    N

    N

    N

    E0

    E1

    E2

  • *ASM (Algorithmic State Machine) Chart Flow chart de uma MdE do tipo Mealy

    E0

    E1

    x=1/z=0

    x=0/z=0

    x=0/z=0

    x=1/z=1

    Z 1

    Z 0

    X = 1

    Z 0

    S

    X = 1

    Z 0

    N

    E0

    E1

  • *

    ASM (Algorithmic State Machine) Chart

    ExemploRepresentao algortmica:Entrada: bit xSada: bit zz = 0;While(1) {Cnt8 = 7;While (x = 0);z = 1;While (Cnt8 > 0) {Cnt8 = cnt8 1;}z = 0;While (x = 1);} ASM Chart:

    Cnt8 7Z 0

    X = 1

    Cnt8 Cnt8 - 1Z 1

    Cnt8 = 0

    Z 0

    X = 1

    N

    N

    E0

    E1

    E2

    N

    Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*Tpicos em Microprocessadores DigitaisTpicos em Microprocessadores Digitais*