Jump to content

Is there solution can implement the reverse operation of set_rate() ?

Recommended Posts

I implemented two modules in the SystemC-AMS: A and B.

The time step of A module is 1s, while the time step of B is 60s.

I use set_rate(60) function to read the output from A as the input of B, but I also want input of A(1s time step) can read the output of B(60s time step). 

Since I cannot set_rate(1/60), is there any solution? 


Thanks a lot.

Link to comment
Share on other sites

Yes, you'll need to add a helper module C, which upsamples your slow signal to the fast rate, i.e., which input rate is 1 and output rate is 60. In the simplest case, you can just duplicate 60 times the same value. However, you may also implement some kind of interpolation. Note: By creating a feedback loop, you will also have to specify a suitable delay and initial samples to restore causality!

I suggest that you read the section 2.1 "Modeling fundamentals" of the the SystemC AMS User's Guide to gain further insight.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...