Jump to content
david.wcc

SystemC Guides for Beginners

Recommended Posts

The beginner's best option is his/her knowledge/understanding

of ANSI C++, and digital hardware. Bhasker's work is outdated,

as is most of the content at www.asic-world.com. The official

Users' Guide from www.accellera.org is helpful, provided one

is some what aware of what one is trying to find out.

Unfortunately there are no good tutorial style material.

Share this post


Link to post
Share on other sites

I would like to point out what differences between them.

1. A SystemC Primer focus on digital hardware. However, some descriptions are outdated.

Users may refer SystemC 2.0.1 Language Reference Manual Revision 1.0 to modify them.

2. SystemC 2.0.1 Language Reference Manual Revision 1.0 only shows you the definition of SystemC.

3. SystemC Version 2.0 User’s Guide will explain how to build the communication protocol on SystemC.

Unfortunately, the codes of examples in those documents are outdated or not complete.

If somebody mix three of them and fix the mentioned problems, then it will be a good material.

Share this post


Link to post
Share on other sites

On our website there's a tutorial and a number of videos and examples of TLM2 and SystemC (see www.doulos.com/knowhow/systemc and www.doulos.com/knowhow/systemc/tlm2), though I must admit the tutorial is quite hardware orientated.

There used to be a tutorial on the Forte Design Systems website, but I can't find it any more.

I would recommend downloading the latest standard (IEEE 1666-2011) via

http://www.accellera.org/downloads/ieee/

I certainly would *not* recommend either the 2.0 user guide or the 2.0.1 reference manual, they are very out-of-date. To paraphrase someone, every time I see sc_bit I reach for my revolver :-)

Probably the best general book is "SystemC from the Ground Up" by David C Black, Jack Donovan, Bill Bunton and Anna Keist.

regards

Alan

Share this post


Link to post
Share on other sites

Most of the material mentioned here is okay, except

that none have full-length real-world examples that

show the beginner how to analyse and use the built-in

SystemC features to model a full-blown real-world

system. Example a 32 bit Booth multiplier.

Share this post


Link to post
Share on other sites

Most of materials mentioned TLM, however, there are many discussions on TLM. For example, specification model, component-assembly model, bus-arbitration model, Bus-functional model, Cycle-accurate computation model and implementation model introduced by Lukai Cai and Daniel Gajski,"Transaction Level Modeling: An Overview". It will be great to understand them for choosing a right model on your simulation. In fact, I participated a project for developing the smart meter specified by IEC 62056 few years ago but our work was not successful because of the wrong modeling methodology(software and hardware developing are separated or we didn't have any abstraction modeling for the specification). TLM can be the solution for that.

Share this post


Link to post
Share on other sites

For the smart meter development, the hardware consists of MCU, DSP,and an external memory. We programmed after finished the hardware.

Although MCU provides some functions like DSP and embedded memory on it. We still need external chips to meet SPEC's requirement due to the signal accuracy and the memory capacity. Once, the performance can't satisfy the SPEC and we had to do everything again. With TLM, we can get modules from IP providers and have abstraction modeling for the specification. Finally we can make a SoC (System on Chip)

according to SPEC. In other words, we won't have useless circuits on the hardware. Well, that will be easy to program because we may do it during TLM stage.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×