Provided by: alliance_5.1.1-1.1build1_amd64 bug

NAME

       BEH - Generic behavioural data structures

DESCRIPTION

       BEH  is  a  generic  data  structure  supporting vlsi concepts.  It allows representation of a behavioral
       description in a data structure.

       The goal of BEH is to define an ad hoc single data structure (object), with well known fixed meaning  for
       each  concept  manipulated  within  a  behavioural  description.  So  any tools that needs to work with a
       behavioral view can be build upon it using these structures.

       For each object (data structure), a set of functions has been defined in order to add, delete  or  access
       it.  These  functions  are  defined  in  a low-level library libBeh108.a. Some other functions are higher
       level. They are defined in a high-level library libBhl108.a. There  are  also  some  parsers-drivers.   A
       pareser  reads  a behavioural description file in a given format and build up a complete BEH data base. A
       driver creates a text file in a given behavioural description  format  from  a  BEH  data  base.  A  VHDL
       parser-driver is available in the libBvl103.a library.

       The behavioural view envolves the following notions:

       figure              behavioural representation of a circuit (see BEFIG).

       port list           ordered list of the circuit's logical ports (see BEPOR).

       generic             a global data (constants) relative to a circuit other than logical ports (see BEGEN).

       simple output       a simple output port of the circuit (see BEOUT).

       bused output        a bused output port of the circuit (see BEBUS).

       input               an input port of the circuit (see BERIN).

       internal register   an internal memorizing element (see BEREG).

       internal signal     an internal simple signal of the circuit (see BEAUX).

       internal bus        an internal bused signal of the circuit (see BEBUX).

       assert              a  condition,  noticed  by  the circuit designer, that insures a correct usage of the
                           circuit. The validity of these conditions is to be checked continuously at  run  time
                           (see BEMSG).

       In  order  to  use  BEH,  concepts  on  use of libraries are needed. And, since these libraries are under
       development, the code is subject to change.

       To enable work, a static version of each library is always present for the  user.  Libraries  and  header
       files are suffixed by a number (the library's version). The programmer can prefer to work with an earlier
       version of a library rather than the most recent one. However, it is recommended to  adapt  softwares  to
       libraries as soon as possible in order to spotlight potential compatibility problems before old libraries
       are removed.

       A makefile is necessary for all BEH applications.  This is required  because  any  soft  must  be  easily
       recompilable,  and  knowing the needed libraries for a BEH based program is not an easy matter.  It can't
       be achieved an other way, so do use makefile.

       For each behavioural description format a parser and a driver have been developed . These  are  organized
       in as many seperate libraries as description format. So if a parser or driver changes it is not needed to
       recompile BEH. Only a relink of the application is needed.

       In terms of software organization, BEH is splitted into two libraries for the basic functions,  a  header
       file  for  structures  and  variable  declarations,  and  , up to now, one parser-driver library for VHDL
       format.

       It is to be noticed that library's version number is incremented when, at least, one  function  composing
       the library has been modified. Therefore, BEH libraries may evolve independently form each other.

       Here follows the list of the libraries and their contents.

       libBeh108.a:        beh_addbefig,  beh_addbeaux,  beh_addbebux,
                           beh_addbegen,  beh_addbebus,  beh_addbemsg,
                           beh_addbeout,  beh_addbepor,  beh_addbereg,
                           beh_addberin,  beh_addbiabl,  beh_addbinode,
                           beh_delbefig,  beh_delbeaux,  beh_delbebux,
                           beh_delbegen,  beh_delbebus,  beh_delbemsg,
                           beh_delbeout,  beh_delbepor,  beh_delbereg,
                           beh_delberin,  beh_delbiabl,  beh_delbinode,
                           beh_frebefig,  beh_frebeaux,  beh_frebebux,
                           beh_frebegen,  beh_frebebus,  beh_frebemsg,
                           beh_frebeout,  beh_frebepor,  beh_frebereg,
                           beh_freberin,  beh_frebiabl,  beh_frebinode,
                           beh_rmvbefig,  beh_rmvbeaux,  beh_rmvbebux,
                           beh_rmvbegen,  beh_rmvbebus,  beh_rmvbemsg,
                           beh_rmvbeout,  beh_rmvbepor,  beh_rmvbereg, beh_rmvberin

       libBhl108.a:        beh_debug

       The  libraries  are  organized  in  such a way that no cycle can appear through calls. It means that if a
       given library a function calls another function in another library, then none of the  functions  of  this
       one does call any function that belongs to the first library.

EXAMPLE

       In order to use BEH libraries, one needs something like that in its makefile:

              HEADER = -I/labo/include
              LIB = -L/labo/lib -lBeh108 -lBhl108 -lBvl109 -llog200 -lMut315

SEE ALSO

       mbk(1), log(3)