rupertsmith Posted October 14, 2013 Report Share Posted October 14, 2013 Hi, I'm fairly new to SystemC, and still trying to get my head around lots of things. I have developed a simplified version of a message format , that I intend to work with in hardware (simplified it just to try things out in SystemC land). This has been done purely in OO software, no SystemC at all, with a suite of tests to confirm that it works correctly. Basically, a test stack that captures the method calls to build a message, and the message calls to read a message, and confirms that what went in = what came out. I have been working towards a hardware description of the serializers and deserializers that will translate this message format to and from its wire format. That is, on the wire it is a stream of bytes, in an application it might be held in memory in a different layout, and these functional units translate between the two. On one side I have some tests, which are very software oriented, on the other I have a hardware model, that I intend to refine into an RTL description. I am thinking it would be very useful, if I can get my tests passing against the software version, then use the same tests against the hardware model, as it is developed. And so to my question: Am I right in thinking that part of the purpose of TLM is to be able to span levels of abstraction in a system model (and make it possible to do the kind of testing I describe above)? To what degree is this the purpose of TLM? That is, does it really have some other purpose that I am failing to understand? Thanks in advance for your helpful replies. Rupert Smith Quote Link to comment Share on other sites More sharing options...
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.