Re: [myhdl-list] Re: Problems inferring RAM when it is buried in system
Brought to you by:
jandecaluwe
From: Tom D. <td...@di...> - 2005-11-30 20:42:18
|
George Pantazopoulos wrote: > It seems that some unit tests I would want to do require a human in the >loop. Examples would be verifying that sounds are being produced, or >certain messages displayed on an LCD screen. How do these fit into this >flow, if the flow is to be automated? > > I've learned everything I know about unittests from the MyHDL manual, check out the unittest section: http://www.jandecaluwe.com/Tools/MyHDL/manual/unittest.html You need to figure out a test strategy for your system. I would not make a single module that I didn't test before combining it with other modules though and unittests make a great way to thoroughly test a module. And provide a means to retest later when new features are added or modified. It is much easier to troubleshoot a problem in simulation than in hardware, so it well worth your while to create a simulation environment that more closely represents the real system. > Rather than unit tests, I've been doing test-benches and viewing the >resulting waveforms with gtkwave. I'm running into the probem quite >often that my system looks great in simulation, but does not work >correctly (or at all sometimes) after being synthesized. > > Waveform viewing is very tedious and is difficult to really verify operation. I only look at waveforms out of desperation to help diagnose a problem. > I'd like to add unit tests to my flow, but I could really use some >guidance and example code for this. What should I unit test? Should a >unit test always be completely automated, etc? > > Like I said before, I would unittest everything and automate it all. Since you are testing in python, it becomes fairly simple to automate. > Could you tell me about co-simulation? I've had a tough time browsing >the web looking for non-expert information about it. How would I go >about doing this with myHDL and other free/low-cost tools? > > Co-simulation here refers to a mixed MyHDL and HDL simulation environment. Again check the manual for a great source of information: http://www.jandecaluwe.com/Tools/MyHDL/manual/cosim.html Tom |