⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csma128.cta

📁 很好的一本书
💻 CTA
📖 第 1 页 / 共 5 页
字号:
/* * File: CTA-model of Carrier Sense Multiple Access Collision Detect *       Protocol (CSMA/CD). * modules: Sender, Medium * author:  Dirk Beyer, 2002 * last change: mvogel 2002-03-18 *  * Based on: "A case study: the CSMA/CD protocol", Sergio Yovine, *           VERIMAG-SPECTRE, November 18, 1994 */ // This module represents the template for one sender.MODULE Sender{  INPUT    propTime   : CONST; // time for signal propagation. (paper: Sigma)    transmTime : CONST; // time for data transmission. (paper: Lambda)    collDetect : SYNC;  // Collision detection by medium.  MULTREST    // Senders syncronisation events.    begin      : SYNC; // Begin of data transmitting    end        : SYNC; // End of data transmitting    busy       : SYNC; // Busy signaling by medium.  // Set initial state of automaton and clock values.  INITIAL STATE(Sender) = init AND x = transmTime + 1;  AUTOMATON Sender  {    STATE init         { TRANS { SYNC ?collDetect;                                 DO x' = x;                                 GOTO init;                               }                         TRANS { DO x' = x;                                 GOTO send;                               }                       }    STATE send         { INV FALSE;                         TRANS { SYNC #begin;                                 DO x' = 0;                                 GOTO transmit;                               }                         TRANS { SYNC #busy;                                 DO x' = 0;                                 GOTO collDetected;                               }                         TRANS { SYNC ?collDetect;                                 DO x' = 0;                                 GOTO collDetected;                               }                       }    STATE collDetected { INV x <= propTime + propTime;                         TRANS { SYNC ?collDetect;                                 DO x' = x;                                 GOTO collDetected;                               }                         TRANS { DO x' = transmTime + 1;                                 GOTO send;                               }                       }    STATE transmit     { INV x <= transmTime;                         TRANS { SYNC ?collDetect;                                 DO x' = 0;                                 GOTO collDetected;                               }                         TRANS { GUARD x = transmTime;                                 SYNC #end;                                 DO x' = transmTime + 1;                                 GOTO init;                               }                       }  }  LOCAL    // A clock to measure the time in a state.    x:  CLOCK(5);  // transmTime + 1}// Module of the whole system.MODULE System{  LOCAL    // Constants for time bounds.    propTime = 1   : CONST; // time for signal propagation. (paper: Sigma)    transmTime = 4 : CONST; // time for data transmission. (paper: Lambda)    collDetect     : SYNC;  // Collision detect signal. (Same signal for all)    // Begin signals for every Sender.    begin1        : SYNC;    begin2        : SYNC;    begin3        : SYNC;    begin4        : SYNC;    begin5        : SYNC;    begin6        : SYNC;    begin7        : SYNC;    begin8        : SYNC;    begin9        : SYNC;    begin10        : SYNC;    begin11        : SYNC;    begin12        : SYNC;    begin13        : SYNC;    begin14        : SYNC;    begin15        : SYNC;    begin16        : SYNC;    begin17        : SYNC;    begin18        : SYNC;    begin19        : SYNC;    begin20        : SYNC;    begin21        : SYNC;    begin22        : SYNC;    begin23        : SYNC;    begin24        : SYNC;    begin25        : SYNC;    begin26        : SYNC;    begin27        : SYNC;    begin28        : SYNC;    begin29        : SYNC;    begin30        : SYNC;    begin31        : SYNC;    begin32        : SYNC;    begin33        : SYNC;    begin34        : SYNC;    begin35        : SYNC;    begin36        : SYNC;    begin37        : SYNC;    begin38        : SYNC;    begin39        : SYNC;    begin40        : SYNC;    begin41        : SYNC;    begin42        : SYNC;    begin43        : SYNC;    begin44        : SYNC;    begin45        : SYNC;    begin46        : SYNC;    begin47        : SYNC;    begin48        : SYNC;    begin49        : SYNC;    begin50        : SYNC;    begin51        : SYNC;    begin52        : SYNC;    begin53        : SYNC;    begin54        : SYNC;    begin55        : SYNC;    begin56        : SYNC;    begin57        : SYNC;    begin58        : SYNC;    begin59        : SYNC;    begin60        : SYNC;    begin61        : SYNC;    begin62        : SYNC;    begin63        : SYNC;    begin64        : SYNC;    begin65        : SYNC;    begin66        : SYNC;    begin67        : SYNC;    begin68        : SYNC;    begin69        : SYNC;    begin70        : SYNC;    begin71        : SYNC;    begin72        : SYNC;    begin73        : SYNC;    begin74        : SYNC;    begin75        : SYNC;    begin76        : SYNC;    begin77        : SYNC;    begin78        : SYNC;    begin79        : SYNC;    begin80        : SYNC;    begin81        : SYNC;    begin82        : SYNC;    begin83        : SYNC;    begin84        : SYNC;    begin85        : SYNC;    begin86        : SYNC;    begin87        : SYNC;    begin88        : SYNC;    begin89        : SYNC;    begin90        : SYNC;    begin91        : SYNC;    begin92        : SYNC;    begin93        : SYNC;    begin94        : SYNC;    begin95        : SYNC;    begin96        : SYNC;    begin97        : SYNC;    begin98        : SYNC;    begin99        : SYNC;    begin100        : SYNC;    begin101        : SYNC;    begin102        : SYNC;    begin103        : SYNC;    begin104        : SYNC;    begin105        : SYNC;    begin106        : SYNC;    begin107        : SYNC;    begin108        : SYNC;    begin109        : SYNC;    begin110        : SYNC;    begin111        : SYNC;    begin112        : SYNC;    begin113        : SYNC;    begin114        : SYNC;    begin115        : SYNC;    begin116        : SYNC;    begin117        : SYNC;    begin118        : SYNC;    begin119        : SYNC;    begin120        : SYNC;    begin121        : SYNC;    begin122        : SYNC;    begin123        : SYNC;    begin124        : SYNC;    begin125        : SYNC;    begin126        : SYNC;    begin127        : SYNC;    begin128        : SYNC;    // End signals fro every Sender.    end1          : SYNC;    end2          : SYNC;    end3          : SYNC;    end4          : SYNC;    end5          : SYNC;    end6          : SYNC;    end7          : SYNC;    end8          : SYNC;    end9          : SYNC;    end10          : SYNC;    end11          : SYNC;    end12          : SYNC;    end13          : SYNC;    end14          : SYNC;    end15          : SYNC;    end16          : SYNC;    end17          : SYNC;    end18          : SYNC;    end19          : SYNC;    end20          : SYNC;    end21          : SYNC;    end22          : SYNC;    end23          : SYNC;    end24          : SYNC;    end25          : SYNC;    end26          : SYNC;    end27          : SYNC;    end28          : SYNC;    end29          : SYNC;    end30          : SYNC;    end31          : SYNC;    end32          : SYNC;    end33          : SYNC;    end34          : SYNC;    end35          : SYNC;    end36          : SYNC;    end37          : SYNC;    end38          : SYNC;    end39          : SYNC;    end40          : SYNC;    end41          : SYNC;    end42          : SYNC;    end43          : SYNC;    end44          : SYNC;    end45          : SYNC;    end46          : SYNC;    end47          : SYNC;    end48          : SYNC;    end49          : SYNC;    end50          : SYNC;    end51          : SYNC;    end52          : SYNC;    end53          : SYNC;    end54          : SYNC;    end55          : SYNC;    end56          : SYNC;    end57          : SYNC;    end58          : SYNC;    end59          : SYNC;    end60          : SYNC;    end61          : SYNC;    end62          : SYNC;    end63          : SYNC;    end64          : SYNC;    end65          : SYNC;    end66          : SYNC;    end67          : SYNC;    end68          : SYNC;    end69          : SYNC;    end70          : SYNC;    end71          : SYNC;    end72          : SYNC;    end73          : SYNC;    end74          : SYNC;    end75          : SYNC;    end76          : SYNC;    end77          : SYNC;    end78          : SYNC;    end79          : SYNC;    end80          : SYNC;    end81          : SYNC;    end82          : SYNC;    end83          : SYNC;    end84          : SYNC;    end85          : SYNC;    end86          : SYNC;    end87          : SYNC;    end88          : SYNC;    end89          : SYNC;    end90          : SYNC;    end91          : SYNC;    end92          : SYNC;    end93          : SYNC;    end94          : SYNC;    end95          : SYNC;    end96          : SYNC;    end97          : SYNC;    end98          : SYNC;    end99          : SYNC;    end100          : SYNC;    end101          : SYNC;    end102          : SYNC;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -