source: sources/src/casc.h @ 47

Last change on this file since 47 was 47, checked in by buchmann, 15 years ago

This patch simplifies SystemCASS.

Remove:

  • ckeckings about multiwriting on registers and ports
  • checkings related to FSM modeling
  • regression tests related to the checkings
File size: 1.5 KB
Line 
1/*------------------------------------------------------------\
2|                                                             |
3| Tool    :                  systemcass                       |
4|                                                             |
5| File    :                 casc.h                            |
6|                                                             |
7| Author  :                 Buchmann Richard                  |
8|                                                             |
9| Date    :                   09_07_2004                      |
10|                                                             |
11\------------------------------------------------------------*/
12#ifndef __CASC_H__
13#define __CASC_H__
14
15#ifdef __cplusplus
16#define EXTERN extern "C"
17#else
18#define EXTERN extern
19#endif
20
21#include <cstdio>
22#include <stdint.h>
23
24EXTERN char unstable;
25EXTERN int32_t pending_write_vector_nb;
26
27namespace sc_core {
28
29struct sc_module;
30
31inline void transition        (void);
32EXTERN void update            (void);
33inline void moore_generation  (void);
34EXTERN void mealy_generation  (void);
35EXTERN bool casc_check_version(const char*);
36}
37
38#ifdef SCHEDULING_BY_CASC
39#include <systemcass_version_ext.h>
40
41namespace sc_core {
42
43EXTERN void initialize        ()
44{
45  casc_check_version (SYSTEMC_VERSION);
46}
47
48EXTERN void simulate_1_cycle (void) 
49{
50  transition ();
51  update     ();
52  moore_generation ();
53  mealy_generation (); 
54}
55} // end of sc_core namespace
56
57#endif
58
59
60#endif
61
Note: See TracBrowser for help on using the repository browser.