Simulink solver small time delta sampling

1 view (last 30 days)
Claudio Rey
Claudio Rey on 31 Aug 2020
Commented: Claudio Rey on 3 Sep 2020
There are problems that require adding a sample location that is very close to the current sample. Such problems involve Boolean signals in mixed signal domains such as PLLs where a very small latency e.g., a femtosecond is required. Clearly you do not want to run the simulator at 10^12 Hz or anywhere close to that. In my opinion there has to be an event driven approach where a sample is added as needed. The usual approach to cross from the signal domain to an event domain requires detecting signals crossing thresholds. One kludge is for the Boolean edge to start a timer and look for a crossing one femtosecond later. This is wasteful.
  3 Comments
Claudio Rey
Claudio Rey on 1 Sep 2020
The fixed step solver does not make sense in this application.
Yes I mentioned the workaround is to use zero crossing detection and that is what I have done in the past. What we need instead is to be able to create extra tiny time steps after an event. The variable pulse delay block seems to address this but it is restricted to the mixed signal blockset however it is poorly documented. E.g., the variable pulse delay has a buffer size but it is not clear what to enter there. Even using a buffer size of 1 appears to work.
Claudio Rey
Claudio Rey on 2 Sep 2020
I have investigated the variable pulse delay block and the problem is that it cannot be used in accelerator mode. It forces you into using normal mode for the simulator. This completely negates its usefulness. So we are back to square one.

Sign in to comment.

Answers (1)

Nikhil Sonavane
Nikhil Sonavane on 3 Sep 2020
You may consider using stiff solvers for your case. Here's a link to stiff solvers-
  1 Comment
Claudio Rey
Claudio Rey on 3 Sep 2020
Thanks Nikhil, what we need is a block like the variable pulse delay (mixed signal blockset) that works with the accelerator. Changing the solver does not appear to me to be relevant, am I missing something?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!