Request for a MATLAB Code Segment equivalent to "always" construct of Verilog or Verilog-AMS

1 Ansicht (letzte 30 Tage)

I like to have an code segment in MATLAB equivalent to "always" construct in Verilog or Verilog-AMS. I am explaining the idea with the following example.

$$$$$$$$$$$ Verilog-AMS Code Segments $$$$$$$$$$$$$$$$$$$

always @(posedge start)

       begin
       TimeOfStart[NumberOfStart] = $abstime;
       if ((NumberOfStart == 0) && expr)
           begin
             NumberOfStart = NumberOfStart + 1;
             $display("Entered 0th NumberOfStart.\n");
             $display("Delay calculation Initiated %f: \n", TimeOfStart[0]);
             @(cross(($abstime - (TimeOfStart[0] + delay)), +1, TimeTolerance))
             begin
               if(((TimeEndExpr - TimeOfStart[0] ) < 0) || ((TimeEndExpr - TimeOfStart[0]) > delay))
                  begin
                    TimeOfMatch[0] = $abstime;
                    match = 1'b1;
                    $display("match is asserted. \n");
                  end 
             end 
             @(cross(($abstime - (TimeOfMatch[0] + KeepMatchHighTime)), +1, TimeTolerance))
             begin
                match = 1'b0;
             end  
           end  
       end

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Here once the always block is entred after receiving a posedge of start, the code within the begin end executes sequentially. The execution is like a thread as another posedge of start will start another always block. Basically the posedge of the start event triggers the rest of the code segment. How can I implement this kind of stuff in MATLAB?

Antworten (1)

Sean
Sean am 31 Jan. 2011
You should look in to using a timer object. A timer can be triggered at a regular period (analogous to a rising clock edge), and can then run a Matlab function. See the following discussion of timers in the Matlab documentation:

Tags

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by