Jump to content

Implement a timer at LT level


Recommended Posts

Hi All:

 

Get to implement a timer module in SytemC-TLM. And it is at LT level. The Time used for interrupt generation is from sc_time_stamp.

 

My current implementation is using TLM payload event queue, which means the timer caculates the expected wait time for the request and do "notify(x ns)" for the payload event queue.

 

Which the drawback is:

 

1.When I add the cancel function for a ongoing time request, I can't delete the "time request" from the event queue. I do a workaround like saving some tags when the timeout happened to achieve the "cancel"

 

2.When I add a stop function for the timer, I also need a tag and did lots of workaround in order to fullfil the stop/re-start function.

 

So, is there any foward way to do this? If i do my own queues instead of using Payload event queue(But I guess I still need to use notify(x ns) in some way), may I somehow delete a ongoing requests?

 

Thanks

 

BR

Link to comment
Share on other sites

  • 2 weeks later...

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.

Guest
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...