• DocumentCode
    314515
  • Title

    Small: A programming language for state machine design

  • Author

    Norvell, Theodore S.

  • Author_Institution
    Fac. of Eng., Memorial Univ. of Newfoundland, St. John´´s, Nfld., Canada
  • Volume
    1
  • fYear
    1997
  • fDate
    25-28 May 1997
  • Firstpage
    8
  • Abstract
    A small and simple language for sequential design is introduced. Synchronous state-machine design is often expressed using graphical notations such as Algorithmic State Machine (ASM) charts and state transition diagrams. An alternative is to use common hardware description languages such as VHDL or Verilog. For both teaching and design purposes, neither approach is satisfactory. ASM charts and similar notations invite unstructured designs and allow parallelism only at the outermost level. Educational implementations appear not to exist. VHDL and Verilog are geared toward asynchronous behaviour - in expressing synchronous designs the clock signals must be made explicit. Also they are large, complex languages with complex semantic foundations. SMALL (State Machine Algol-Like Language) is a small and simple imperative programming language, designed specifically for hardware implementation. It bears roughly the same relationship to ASM charts as Algol-like software languages bear to flowcharts
  • Keywords
    hardware description languages; high level languages; logic CAD; sequential circuits; sequential machines; Small; State Machine Algol-Like Language; hardware implementation; imperative programming language; sequential design; state machine design; Algorithm design and analysis; Clocks; Computer languages; Design engineering; Education; Flowcharts; Hardware design languages; Noise measurement; Signal design;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Electrical and Computer Engineering, 1997. Engineering Innovation: Voyage of Discovery. IEEE 1997 Canadian Conference on
  • Conference_Location
    St. Johns, Nfld.
  • ISSN
    0840-7789
  • Print_ISBN
    0-7803-3716-6
  • Type

    conf

  • DOI
    10.1109/CCECE.1997.614776
  • Filename
    614776